Смекни!
smekni.com

Применение метода моделируемого отжига к задаче составления школьного расписания (стр. 2 из 4)

Основные шаги алгоритма:

1. Выбор начального решения и начальной температуры

2. Оценка начального решения

3. Основной шаг алгоритма

1) Случайное изменение текущего решения

2) Оценка измененного решения

3) Критерий допуска

4. Уменьшение температуры и, если температура больше некоторого порога, то переход к основному шагу

Выбор начального решения

Хорошей стратегий является случайный выбор начального решения. Также в качестве начального решения можно предложить решение полученное другими методами. Это предоставляет алгоритму базу, на основании которой он будет строить более оптимальное решение.

Оценка решения

Этот этап полностью завит от специфики задачи. Единственным требованием является получение в качестве оценки одного вещественного числа, которое будет характеризовать оптимальность предлагаемого решения. Это число в алгоритме имитации отжига принятно называть энергией. Если выбор такого числа является затруднительным, то, возможно, стоит отказаться от использования предлагаемого метода.

Основной шаг алгоритма

Основной шаг при некоторой температуре повторяется несколько раз. Возможно, что один раз. Также возможен вариант с зависимостью числа повторов от температуры.

Случайное изменение решения

Этот этап сильно зависит от специфики задачи. Однако, изменение стоит производить локальные. Например, для задачи коммивояжера, хорошей стратегий будет обмен, в текущем порядке следования городов, двух случайных городов местами. В результате изменения у нас будет два решения: текущее и измененное.

Критерий допуска

Для определенности будем считать, что оптимизация заключается в минимизации энергии. В большинстве случаев этот подход справедлив. Критерий допуска заключается в проверке и возможной замене текущего решения измененным.

Если измененное решение имеет меньшую энергию, то оно принимается за текущее. Если же измененное решение имеет большую энергию, то оно принимается с вероятностью P = exp(-δE/T), где:

P — вероятность принять измененное решение,

δE — модуль разности между энергией оптимального решения и энергий измененного решения,

T — текущая температура.

Уменьшение температуры

Важной частью алгоритма является уменьшение температуры. При большой температуре вероятность выбора менее оптимального решения высока. Однако, в процессе работы алгоритма температура снижается, и вероятность выбора менее оптимального решения снижается.

Выбор способа уменьшения температуры может быть различным и выбирается экспериментально. Главное, чтобы температура монотонно убывала к нулю. Хорошей стратегий является умножение на каждом шаге температуры на некоторый коэффициент немного меньший единицы.

Выбор начальной и пороговой температуры

Этот выбор тоже следует производить экспериментально. Естественными рекомендациями могут служить выбор пороговой температуры близкой к нулю, а начальной достаточно высокой.

Области применения:

1. Создание пути

2. Реконструкция изображения

3. Назначение задач и планирование

4. Размещение сети

5. Глобальная маршрутизация

6. Обнаружение и распознавание визуальных объектов

7. Разработка специальных цифровых фильтров

При помощи моделирования такого процесса ищется такая точка или множество точек, на котором достигается минимум некоторой числовой функции

, где
. Вводится последовательность точек
пространства X. Алгоритм последовательно находит следующую точку по предыдущей, начиная с точки
, которая является начальным приближением. Алгоритм останавливается по достижении точки
.

Точка

по алгоритму получается на основе текущей точки
следующим образом. К точке
применяется оператор Α, который случайным образом модифицирует соответствующую точку, в результате чего получается новая точка
. Точка
становится точкой
с вероятностью
, которая вычисляется в соответствии с распределением Гиббса:

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

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

Метод моделируемого отжига широко применяется в обработке и распознавании изображений. Известно, однако, что моделируемый отжиг не определяет однозначно алгоритм отыскания глобального оптимума, а лишь указывает, что искомый алгоритм принадлежит обширному классу алгоритмов, отличающихся друг от друга процессом изменения специального параметра - так называемой "температуры " отжига. Только при определенной зависимости этой температуры от времени алгоритмы моделируемого отжига обеспечивают сходимость к глобальному максимуму оптимизируемой функции.

Эвристика

Эвристика (др. греч ευρίσκω «отыскиваю», «открываю») — наука, изучающая творческую деятельность, методы, используемые при открытии новых концептов, идей и взаимосвязей между объектами и совокупностями объектов, а также методики процесса обучения. Эвристические методы (другое название эвристики) позволяют ускорить процесс решения задачи.

Эвристикой, в зависимости от контекста, называют

· эвристический алгоритм, представляющий совокупность приёмов в поиске решения задачи, которые позволяют ограничить перебор;

· способ обучения, берущий свои истоки от сократовской майевтики.

В Древней Греции под эвристикой понимали способ обучения, практикуемый Сократом, когда учитель приводит ученика к самостоятельному решению какой-либо задачи, задавая ему наводящие вопросы. В настоящее время эвристическими способами решения задач называют способы, позволяющие минимизировать перебор возможных решений, зачастую основанные на интуиции. Значительный интерес к исследованию эвристических методов возник в связи с возможностью решения ряда задач (распознавание объектов, доказательство теорем и т. д.), в которых человек не может дать точный алгоритм решения, с помощью технических устройств.

Основным назначением эвристики является построение моделей процессов решения какой-либо новой задачи. Существуют следующие типы таких моделей:

· модель слепого поиска, которая опирается на так называемый метод проб и ошибок;

· лабиринтная модель, в которой решаемая задача рассматривается как лабиринт, а процесс поиска решения — как блуждание по лабиринту;

· структурно-семантическая модель, которая считается в настоящее время наиболее содержательной и которая отражает семантические отношения между объектами, входящими в задачу.

Целевая функция

Функция, связывающая цель (оптимизируемую переменную) с управляемыми переменными в задаче оптимизации.

В широком смысле целевая функция есть математическое выражение некоторого критерия качества одного объекта (решения, процесса и т.д.) в сравнении с другим. Примером критерия в теории статистических решений является, например, среднеквадратический критерий точности аппроксимации. Цель – найти такие оценки, при которых целевая функция достигает минимума.

Важно, что критерий всегда привносится извне, и только после этого ищется правило решения, минимизирующее или максимизирующее целевую функцию.

Транзакция

Транза́кция (англ. transaction) — в информатике, группа последовательных операций, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта. Транзакции обрабатываются транзакционными системами, в процессе работы которых создаётся история транзакций.