Алгоритм имитации отжига

Алгоритм имитации отжига

Алгори́тм имита́ции о́тжига (англ. Simulated annealing) — общий алгоритмический метод решения задачи глобальной оптимизации, особенно дискретной и комбинаторной оптимизации. Один из примеров методов Монте-Карло.

Содержание

Общее описание

Алгоритм основывается на имитации физического процесса, который происходит при кристаллизации вещества, в том числе при отжиге металлов. Предполагается, что атомы уже выстроились в кристаллическую решётку, но ещё допустимы переходы отдельных атомов из одной ячейки в другую. Предполагается, что процесс протекает при постепенно понижающейся температуре. Переход атома из одной ячейки в другую происходит с некоторой вероятностью, причём вероятность уменьшается с понижением температуры. Устойчивая кристаллическая решётка соответствует минимуму энергии атомов, поэтому атом либо переходит в состояние с меньшим уровнем энергии, либо остаётся на месте. (Этот алгоритм также называется алгоритмом Н. Метрополиса, по имени его автора).

При помощи моделирования такого процесса ищется такая точка или множество точек, на котором достигается минимум некоторой числовой функции F(\overline{x}), где \overline{x}=(x_1,\;\ldots,\;x_m)\in X. Вводится последовательность точек \overline{x_0},\;\overline{x_1},\;\ldots,\;\overline{x_n} пространства X. Алгоритм последовательно находит следующую точку по предыдущей, начиная с точки \overline{x_0}, которая является начальным приближением. Алгоритм останавливается по достижении точки \overline{x_n}.

Точка \overline{x_{i+1}} по алгоритму получается на основе текущей точки \overline{x_i} следующим образом. К точке \overline{x_i} применяется оператор \Alpha, который случайным образом модифицирует соответствующую точку, в результате чего получается новая точка \overline{x^*}. Точка \overline{x^*} становится точкой \overline{x_{i+1}} с вероятностью P(\overline{x^*},\;\overline{x_{i+1}}), которая вычисляется в соответствии с распределением Гиббса:

P(\overline{x^*}\to\overline{x_{i+1}}\mid\overline{x_i})=\left\{
\begin{matrix}
1, & F(\overline{x^*})-F(\overline{x_i})<0 \\
\exp\left(-\dfrac{F(\overline{x^*})-F(\overline{x_i})}{Q_i}\right), & {F(\overline{x^*})-F(\overline{x_i})\geqslant 0}
\end{matrix}\right\}.

Здесь Q_i>0 — элементы произвольной убывающей, сходящейся к нулю положительной последовательности, которая задаёт аналог падающей температуры в кристалле. Скорость убывания и закон убывания могут быть заданы по желанию создателя алгоритма.

Алгоритм имитации отжига похож на градиентный спуск, но за счёт случайности выбора промежуточной точки должен будет попадать в локальные минимумы реже, чем градиентный спуск. Алгоритм имитации отжига не гарантирует нахождения минимума функции, однако при правильной политике генерации случайной точки в пространстве X, как правило, происходит улучшение начального приближения.

Применение

Обучение нейронных сетей.

Решение комбинаторных задач, например, задачи о расстановке ферзей.

Примечания

Ссылки

Визуализатор применения метода отжига в задаче о расстановке ферзей.
Метод глобальной минимизации (последовательный спуск по точкам локальных минимумов).


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Полезное


Смотреть что такое "Алгоритм имитации отжига" в других словарях:

  • Метод отжига — Алгоритм имитации отжига (англ. Simulated annealing)  общий алгоритмический метод решения задачи глобальной оптимизации, особенно дискретной и комбинаторной оптимизации. Один из примеров методов Монте Карло. Содержание 1 Общее описание 2… …   Википедия

  • Метод роя частиц — (МРЧ)  метод численной оптимизации, для использования которого не требуется знать точного градиента оптимизируемой функции. МРЧ был доказан Кеннеди, Эберхартом и Ши[1] [2] и изначально предназначался для имитации социального поведения.… …   Википедия

  • Стохастичность — (др. греч. στόχος цель, предположение) означает случайность. Стохастический процесс это процесс, поведение которого не является детерминированным, и последующее состояние такой системы описывается как величинами, которые могут быть предсказаны,… …   Википедия

  • Список алгоритмов — Эта страница информационный список. Основная статья: Алгоритм Ниже приводится список алгоритмов, группированный по категориям. Более детальные сведения приводятся в списке структур данных и …   Википедия

  • Программируемые алгоритмы —       Служебный список статей, созданный для координации работ по развитию темы.   Данное предупреждение не устанавл …   Википедия

  • Метод Нелдера-Мида — Последовательные симплексы в методе Нелдера Мида для функции Розенброка (англ.) (вверху) и функции Химмельблау (англ.) (внизу) Не путать с «симплекс методом» из линейного программирования  методом оптимизации линейной системы с ограничениями.… …   Википедия

  • Метод деформируемого многогранника — Последовательные симплексы в методе Нелдера Мида для функции Розенброка (англ.) (вверху) и функции Химмельблау (англ.) (внизу) Не путать с «симплекс методом» из линейного программирования  методом оптимизации линейной системы с ограничениями.… …   Википедия

  • Локальный поиск (оптимизация) — Алгоритмы локального поиска  группа алгоритмов, в которых поиск ведется только на основании текущего состояния, а ранее пройденные состояния не учитываются и не запоминаются. Основной целью поиска является не нахождение оптимального пути к… …   Википедия

  • Метрополис, Николас Константин — Николас Константин Метрополис Nicholas Constantine Metropolis Дата рождения: 11 июня 1915(1915 06 11) …   Википедия

  • GSL — GNU Scientific Library Тип Numerical library Разработчик GNU Project Написана на C Версия 1.12 16 декабря 2008 Лицензия GNU General Public License …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»