powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Про алгоритм имитации отжига
24 сообщений из 49, страница 2 из 2
Про алгоритм имитации отжига
    #40002137
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван FXS
условие, сформулированное в Википедии, ничем не ограничивает то, как далеко -- в пространстве параметров -- от минимума окажется шарик, выскочив из этого минимума.

Да, прямых ограничений нет. Только вероятностные, которые при большом числе скачков действуют точно так же. Аналогия из той же физики: электрон из атома в твоём теле может оказаться на другом конце галактики, формулы квантовой механики это не ограничивают, но обычно он всё же пасётся где-то неподалёку.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002138
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Аналогия из той же физики: электрон из атома в твоём теле может оказаться на другом конце галактики, формулы квантовой механики это не ограничивают, но обычно он всё же пасётся где-то неподалёку.
Охохонюшки ...
Не "квантовой механики", а "закона сохранения заряда". Так то - да, но, как обычно, "есть ньюанс".
Принцип локальной инвариантности (следствие постулатов специальной теории относительности) запрещает "телепортацию" зарядов.
Следствием принципа локальной инвариантности является наличие токов, связанных с перемещением зарядов.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002189
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван FXS, возможно эти цитаты с вашей же страницы сви-педии немного примирят с самой статьёй.
в начале статьи: авторПредполагается, что атомы уже выстроились в кристаллическую решётку, но ещё допустимы переходы отдельных атомов из одной ячейки в другую. Т.е. предполагается, что область поиска уже хорошо локализована. Да даже метод половинного деления требует предварительной локализации.

в конце статьи: автороднако при правильной политике генерации случайной точки в пространстве X, как правило, происходит улучшение начального приближения.
Из рекомендации в пдфе по ссылке с той же стр. сви-педии. авторДля реализации метод отжига нам необходимо иметь случайную функцию
G : S → S, которая будет по элементу s ∈ S давать элемент G(s) ∈ S,
который должен быть близким к элементу s .
Из рекомендаций в статье из недр инета:
авторКонкретная схема отжига задаётся следующими параметрами:
- выбором закона изменения температуры
- выбором порождающего семейства распределений
- выбором функции вероятности принятия нового значения
авторЧем выше температура, тем больше допустимы "ухудшающие" изменения (аналогичные случайным флуктуациям в нагретом веществе), и больше их вероятность. Можно также найти ещё кучку вариантов отжигов: с разной ф-цией температуры, быстрый или сверхбыстрый отжиг, или, наоборот, "тушения" ...

Видно же, что научный специалист излагает качественнее статьиписаки, в рецензируемых статьях изложение также качественнее.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002191
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, я не знаю, в каком оптимизационном методе додумались использовать физаналогии на принципах ОТО/СТО )) , кв. алгоритмы сейчас не в счёт.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002244
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
выбором порождающего семейства распределений
Какая она должна быть? По форме. Есть ли рекомендации?
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002294
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Некий шаблончик. Как я его себе виду для целевой функции одного аргумента y=f(x)

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
  /**
   *
   * @param t - temperature function depends on time t(x)
   * @param d - distribution function d()
   * @param p - new value probability function p()
   * @param g - given function g(x)         
   * @return
   */
  def annealing(t: Double => Double, d: Void => Double, p: Void => Double, g: Double => Double) : Double = {
    // TODO: Implement
    0.0
  }
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002544
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98
Видно же, что научный специалист излагает качественнее статьиписаки

Да совершенно пофиг. За последние четверть века в случайном поиске просто нагородили большую кучу красивых аналоговых терминов, чтобы его продать, но сущность всё равно осталась прежней: хреновой.

Случайный поиск применялся в случаях, когда аналитического решения нет, а вычислительной мощности не хватало на детерминированные методы. Сейчас мощностей на них хватает с запасом и круг задач для случайного поиска сузился до окрестности нуля.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002646
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В топике 1000 ферзей я ошибочно классифицировал алгоритм ученых из Юта который
формально улучшал расстановку с NP до P как Генетический алгоритм.

Я ошибался. Это действительно иммитация отжига. Хотя с генетикой у него есть что-то общее.
Случайный фактор например. И способность обобщать.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002650
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

и не то, и не другое:
он *всегда* шагает к экстремуму максимальными шагами
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002652
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Частный случай.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002658
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Частный случай.


... градиентного спуска
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002660
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вряд-ли вы приложите производную к расстановке ферзей.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002662
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Вряд-ли вы приложите производную к расстановке ферзей.


к счастью, в данном случае производная не требуется для определения наилучшего шага
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002731
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже в старый градиентный метод добавляют случайность и адаптивность.
Возможно кое-кто удивится, но методы перебора во всю используются в НСках. Это часть круга задач для случайного поиска. Ну а радиус круга для НСок знают сейчас все. Или я не прав? А что накрутили физику в отжиг - все подсматривают у природы: если у этой тупой дуры получается, давайте у себя пробовать.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002736
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
выбором порождающего семейства распределений
Какая она должна быть? По форме. Есть ли рекомендации?Наверное от задачи зависит. По крайней мере вариант есть: дисперсия пропорциональна температуре.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002739
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да у природы можно такого насмотреться... С температурой-то оно всё понятно.
И очень хорошо ложиться на такие "обжигания" горшков и функций.

А что делать скажите с резкой траекторией частиц в микро-мире? Почему частицы
теряют массу? Исчезают. Телепортируются. Или не дай бох начинают распадаться
с выделением тепла. Что здесь нам природа помогает? Да нунафик. Только запутывает
или заставляет поверить в Терри Пратчета и "черепаху на слонах".
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002838
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это троллигн такой? )) было же недавно совсем, 43млрд/14млрд и закончилось хвалой зелёным человечкам на почве зелёного змия и неустоявшейся психики.
Там же много умозрительного, а с другой стороны кв. кри--графия и т.п. -- я о другом не слышал. Вот если у нас биты и байты будут самопроизвольно меняться, как это называется - вирус? или косяк?))
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002855
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98
Даже в старый градиентный метод добавляют случайность и адаптивность.

Добавляли. Потому что просчитать целевую функцию в Х-1 случайных точках - быстрее, чем в Х неслучайных, а сделать У-1 шагов переменного размера быстрее, чем У постоянных. Но подобная оптимизация - весьма специализированный инструмент, который нынче напрочь нигде не нужен.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40002860
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно я не знаю сегодняшней фактуры. Только думаю, что в НС по-прежнему используется. И не только потому, что есть уже готовое. А ещё и потому, что расширяется область применения НСок в направлении роста размерности задач. Т.о., сохраняется актуальным требование сокращения перебора. Вот так от умозрительно говоря. Не исключу, что в военных решениях для "поля боя" требование скорейшего ответа очень актуально.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40003052
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Немножко покопался. Я думаю, ТС и сам находил похожее.

Только из одной статьи:
Реализации и св-ва различных вариантов МО.
Метод отжига, Лопатин АС.,2005, С-ПбГУ
Для Больцмановской схемы доказано (см.[1]), что
при достаточно больших Т0 и общем кол-ве шагов К, выбор такого семейства распределений (изменение Т по Больцману)
гарантирует нахождение глобального минимума.
T(k) = T0 / ln(1 + k), где k > 0.

[1] Metropolis N., Rosenbluth A. W., Rosenbluth M. N., Teller A. H., and Teller E. Equation of State Calculations by Fast Computer achines // J. Chemical Physics. 21. 6. June. 1953. P. 10871092.

Недостаток схемы Больцмана в её медленной сходимости. Например, чтобы понизить Т в 40 раз, требуется много итераций:
e^40 ~ 2.35*10^17

Здесь ([14], быстрый отжиг, T(k) = T0 / k) предложена для T схема Коши без потери гарантии найти глобальный минимум. Но использовать удобно оказалось только в dim=1, а для бОльших размерностей глобальность гарантирована только при ещё более медленной сходимости.

[14] Szu H. H., Hartley R. L. Fast Simulated Annealing // Physical Letters A. 122. 1987. P. 157162.
Ну и т.д.

Что ж получается. Если по Б. с 40 до 1 Цельсия? (или Кельвинов?) итераций 10^17, это ж сколько времени считать? А в дискретном случае у нас наберётся столько разных значений Х?
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40003078
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98
это ж сколько времени считать?

Дохрена, всё правильно. Поэтому его и не надо применять в случаях, когда полный перебор быстрее.

Что-то меня на лекции пробило, так что многа букафф:

Все итерационные алгоритмы оптимизации характеризуются и могут быть классифицированы по следующим критериям:
1) Алгоритм генерации списка точек-кандидатов.
2) Выбор центра и размера гиперкуба (N-мерного куба) в пределах которого находятся точки п.1.
3) Алгоритм выбора кандидата.

Для базового покоординатного спуска это:
1) Точки в центрах граней.
2) Центр в текущей точке, размер фиксирован.
3) Берётся кандидат со значением целевой функции ближе остальных к оптимуму.

Для базового случайного поиска отличие только в п.1: точки выбираются случайным образом в пределах гиперкуба.
Для алгоритма отжига гиперкуб со временем сжимается и кандидат выбирается случайным образом используя ГСЧ с хитровывернутым распределением.

Трудоёмкость п.1 детерминированных методов зависит от числа измерений пространства целевой функции (количества её параметров) и может доходить до O(3 N ). Трудоёмкость случайного поиска выбирается произвольно и может быть в том числе O(1) (ценой сходимости). Число итераций зависит от пункта 2. Итоговое время работы алгоритма - их перемножение.

Отсюда следует, что стохастические алгоритмы начинают рулить на больших мерностях, в простых случаях лучше пользоваться детерминированными.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40003128
Иван FXS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Берётся кандидат со значением целевой функции ближе остальных к оптимуму
-- это вот вы вместо "берётся лучший кандидат" так написали? Вообще-то оптимум нам не известен...

Dimitry Sibiryakov
Для алгоритма отжига гиперкуб со временем сжимается
-- не вижу этого в описании алгоритма отжига.
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40003139
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван FXS, "не вижу" -- а следовало бы. Мож на странице свисти-странице этого и нет, а вообще есть указания на уменьшение Т и рекомендации ограничивать скачки по Х коррелированно Т.

Dimitry Sibiryakov, как обобщение в первом приближении годится. Только вот главные вопросы-то и не отвечены:
авторПоэтому его и не надо применять в случаях, когда полный перебор быстрее. ....
Отсюда следует, что стохастические алгоритмы начинают рулить на больших мерностях, в простых случаях лучше пользоваться детерминированными. а) А когда полный перебор быстрее? б) Как решить, что случай простой?
Я лишь однажды прогал и то вариант координатного спуска. Поэтму только гадаю. Например (а) и dim=1, Если точек всё же много, и ф-ция ожидается достаточно резко изгибистая. Я предположу отжиг. Вот так от, не считая. Пусть и без гарантии глобальности (если конечно это допустимо).

Или фезевая задача всех расстановок, напр. N=15. Какой метод выбрать? Практика говорит, что спуск (хотя и не отжиг).
...
Рейтинг: 0 / 0
Про алгоритм имитации отжига
    #40003152
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98
а) А когда полный перебор быстрее? б) Как решить, что случай простой?

Когда число циклов вычисления целевой функции (напоминаю: число шагов * число кандидатов на каждом шаге) итерацонного поиска имеет сравнимый порядок с диапазоном определения целевой функции.

А для этого надо составить целевую функцию в виде f(X), где X - N-мерный вектор.
...
Рейтинг: 0 / 0
24 сообщений из 49, страница 2 из 2
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Про алгоритм имитации отжига
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]