Оптимизация методом муравьиной колонии как метаэвристика

Тип работы:
Реферат
Предмет:
Физико-математические науки


Узнать стоимость

Детальная информация о работе

Выдержка из работы

УДК 519. 854. 2
ОПТИМИЗАЦИЯ МЕТОДОМ МУРАВЬИНОЙ КОЛОНИИ КАК
МЕТАЭВРИСТИКА
© 2008 П. В. Конников, В. А. Кудинов
Курский государственный университет
П. В. Конников — аспирант кафедры программного обеспечения и администрирования информационных систем
konnikov@gmail. com
В. А. Кудинов — кандидат педагогических наук, проректор по НИР
kudinovva@yandex. ru
В статье рассмотрена оптимизация методом муравьиной колонии с использованием метаэвристического подхода, дано формальное определение абстрактной задачи комбинаторной оптимизации, описана модель феромона — центральное понятие оптимизации методом муравьиной колонии, кратко освещены современные подходы к решению задач комбинаторной оптимизации, а также основные понятия метаэвристического подхода к решению задач.
Ключевые слова: муравьиная колония, комбинаторная оптимизация, модель феромона, метаэвристика.
Методы комбинаторной оптимизации
Оптимизация методом муравьиной колонии (ОМК) предназначена для решения сложных задач комбинаторной оптимизации.
Методы решения задач комбинаторной оптимизации (КО) можно разделить на точные и приближенные. Точные методы, например метод ветвей и границ, позволяют всегда находить оптимальное решение, но для решения NP-полных задач решение будет найдено за экспоненциальное время, так как пока не предложен ни один точный алгоритм решения хотя бы одной NP-полной задачи за полиномиальное время. Приближенные методы решения задач КО позволяют решать даже NP-полные задачи за приемлемое для практических нужд время с малой погрешностью, что повышает интерес к дальнейшему изучению приближенных методов решения задач КО.
Одним из методов приближенного решения задач КО является ОМК, который показывает хорошую производительность в сравнении с другими приближенными методами решения задач КО [4]. Алгоритмы ОМК являются частью научного направления Swarm intelligence, которое занимается изучением алгоритмов, основанных на наблюдениях за поведением децентрализованных самоорганизующихся систем.
ОМК была сформулирована как метаэвристика в работе [1] и нашла широкое применение для решения многих задач КО, таких как задача коммивояжёра [2], квадратичная задача о назначениях [3], задача маршрутизации [7].
Формализация задачи комбинаторной оптимизации
Абстрактная задача комбинаторной оптимизации в общем виде может быть сформулирована следующим образом.
• пространства поиска Я, определяемого как конечное множество переменных дискретного выбора-
• множества ограничений на эти переменные О —
• целевой функции /: Я, которую необходимо минимизировать1.
Пространство поиска Я — это множество дискретных переменных X со
то есть присвоение значения vJt переменной Xt, обозначается через Xt vj. Решение s G S, при котором каждая переменная выбора принимает значение, удовлетворяющее всем ограничениям из множества Q, является возможным решением данной задачи КО. Если множество Q пусто, то P называется задачей без ограничений, в противном случае — задачей с ограничениями. Решение s * GS называется глобальным оптимумом, если V sGS (f (s *)& lt- f (s)). Множество всех глобальных оптимумов обозначается через S * Я S. Будем говорить, что найдено решение задачи КО, если получено хотя бы одного решение s * GS *.
Модель феромона
Инстанцированная дискретная переменная Xt = vJj называется компонентой решения и обозначается ctj. Множество всех возможных компонент решения обозначается через C.
Параметер T'-ij, — след феромона — присваивается каждой компоненте cij.
Множество всех следов феромона обозначается через T. Значение параметра Tу обозначается через ту и называется величиной феромона. Величина феромона обновляется в процессе поиска по алгоритму ОМК.
В алгоритмах ОМК искусственные муравьи строят решение задачи КО перемещаясь по так называемому графу построения GC (V, E). Полностью связный граф построения состоит из множества вершин V и ребер E. Множество компонент C может быть сопоставленно как множеству вершин V графа GC, так и множеству его ребер E. Муравьи, перемещаясь от вершины к вершине вдоль ребер графа построения, последовательно выстраивают частичное решение. Дополнительно муравьи оставляют определенное количество феромона на компонентах, то есть либо на вершинах, либо на ребрах, по которым они перемещаются. Количество оставляемого феромона Ат может зависеть от требуемого качества решения. Каждый муравей используют информацию о феромоне при выборе наиболее «перспективной» области пространства поиска.
Оптимизация методом муравьиной колонии как метаэвристика2
Можно дать следующее определение метаэвристики. Метаэвристика — это такой метод решения широкого класса вычислительных задач путем комбинирования существующих процедур с открытым интерфейсом и закрытой реализацией, которое
1 Целевую функцию можно также максимизировать, но достаточно ограничиться рассматрением только лишь минимизации целевой функции.
2 Название происходит от греческого предлога «meta» (в значении «высший уровень») и «heuristic» (от греч. eupicKeiv, «искать»).
Определение 1. Задача комбинаторной оптимизации P = (S, Q, f) состоит из
значениями
Инстанцирование переменной Xt,
приводит к максимально эффективному решению.
Метаэвристический подход обычно применяется для решения задач, не имеющих удовлетворительного специфичного для задачи алгоритма, или в том случае, когда нет практической необходимости реализовывать такой метод. Наиболее часто метаэвристики используются в решении задач КО, но также они могут применяться к любым другим, которые можно свести к решению логических уравнений.
Метаэвристика ОМК проиллюстрирована в Алгоритме 1. Алгоритм состоит из шага инициализации и цикла из трех процедур. Каждая итерация цикла состоит из:
1. построения решения всеми муравьями,
2. его улучшения (необязательный этап) путем использования алгоритма локального поиска,
3. обновления феромонов.
Далее каждая процедура рассматривается более подробно.
Алгоритм 1. (Метаэвристика «Оптимизация методом муравьиной колонии»)
Установка параметров, инициализация следов феромона while не встретится условие окончания do Построение Решения Муравьями
Применение Скрытых Действий // необязательный этап Обновление Феромонов
end
Процедура Построение_Решения_Муравьями
Процедура Построение_Решения_Муравьями заключается в том, что m искусственных муравьев выстраивают решения из элементов конечного множества доступных компонент решения C = { С у}, i = 1,…, n, j= 1,…, | D, |. Построение решения начинается с пустого частичного решения sp=Я. Затем на каждом шаге построения текущее частичное решение sp расширяется путем добавления к нему допустимой компоненты решения из множества допустимых соседей N (sp)яС. Процесс построения решения может быть рассмотрен как путь на графе построения GC (V, E). Допустимые пути в GC неявно определены посредством механизма построения решения, который определяет множество N (sp) по отношению к частичному решению sp.
Выбор компоненты решения из N (sp) осуществляется стохастически на каждом шаге построения. Точные правила вероятностного выбора компонент решения различны и зависят от конкретного алгоритмма ОМК. Наиболее известное правило относится к одному из алгоритмов ОМК — Ant System (AS) [4]:
(1)
С, IG N (sp)
где Ту — величина феромона, сопоставленная компоненте су, а п — это функция, которая присваивает на каждом этапе построения эвристическое значение каждой
допустимой компоненте решения Су G N (sp). Значения, которые возвращает данная функция, обычно называют эвристической информацией. а и в — положительные параметры, значения которых определяют относительную важность феромона и эвристической информации.
Процедура Применение_Скрытых_Действий
Перед обновлением феромонов, когда возможное решение построено, могут потребоваться некоторые дополнительные операции. Их часто называют скрытыми действиями, которые реализуют действия специфичные для задачи и/или централизованные действия, которые не могут быть выполнены одним муравьем. Наиболее часто используемое скрытое действие состоит в применении локального поиска к построенному решению: локально оптимизированные решения впоследствии используются для определения какие феромоны необходимо обновлять.
Процедура Обновление_Феромонов
Целью обновления феромона является повышение величины феромона, сопоставленной оптимальному или перспективному решению и уменьшение тех величин феромона, которые сопоставлены плохим решениям. Обычно это достигается в 2 этапа: во-первых, путем уменьшения всех величин феромона с помощью операции распыления феромона, во-вторых, путем увеличения слоев феромона, сопоставленных с выбранным множеством оптимальных решений Supd:
туЧ 1-Р)j Р X F (s) — (2)
sGSupd | CyGs '-
где Supd — множество решений, которые будут обновлены, p G (0 — 1] - параметр,
называемый показатель распыления, а F: SIR + - функция такая, что
V s^ s'- G S (f (s)& lt- f (s'- H F (s)& lt- F (s'-)). F обычно называют функцией
соответствия.
Распыление феромона необходимо для того, чтобы избежать слишком быстрого схождения алгоритма. Распыление представляет собой полезную форму «забывания», благоприятствуя изучению новых областей пространства поиска. Различные алгоритмы ОМК, например Ant Colony System (ACS) [5] и MAX -MIN Ant System (MMAS) [6], различаются по способу обновления феромона.
Реализация правила обновления, представленная формулой (2), получена путем различных описаний множества Supd, которое во многих случаях является подмножеством Siter U{ sbs}, где Siter — множество решений, построенных в текущей итерации, а sbs — лучшее из всех решений, найденных на предыдущих итерациях. Примером может служить правило обновления феромона, применяемое в алгоритме Ant System (AS), называемое AS-обновление:
Supd * Siter. (3)
Другим примером правила обновления феромона, которое чаще используется на практике, может служить IB-обновление (IB означает лучшее в итерации, от англ. iteration best):
Supd ^ argmaxF (s).
s GStter
Правило IB-обновления усиливает вероятность нахождения оптимального решения, по сравнению с правилом AS-обновления. Также это правило увеличивает скорость нахождения оптимального решения и вероятность преждевременной сходимости. Еще большее усиление вероятности нахождения оптимального решения вносит правило BS-обновления, где BS означает использование sbs — лучшего из всех решений, найденных на предыдущих итерациях. В этом случае Supd присваивается {sbs}. На практике алгоритмы ОМК, которые используют различные вариации правил IB- и BS-обновлений и дополнительно включают механизмы, позволяющие избежать преждевременной сходимости, дают лучшие результаты, нежели те, которые используют правило AS-обновления.
Библиографический список
1. Dorigo, M. Ant Algorithms for Discrete Optimization / M. Dorigo, G. D. Caro,
L. M. Gambardella // Artificial Life. — 1999. — Vol. 5. № 2. — P. 137−172.
2. Dorigo, M. Ant colonies for the travelling salesman problem / M. Dorigo,
L. M. Gambardella // BioSystems. — 1997. — Vol. 43. № 2. — P. 73−81.
3. Gambardella, L. M. Ant Colonies for the Quadratic Assignment Problem /
L. M. Gambardella, E. D. Taillard, M. Dorigo // The Journal of the Operational Research Society. — 1999. — Vol. 50. № 2. — P. 167−176.
4. Dorigo, M. Ant system: optimization by a colony of cooperating agents / M. Dorigo,
V. Maniezzo, A. Colorni // Systems. — 1996. — Vol. 26. № 1. — P. 29−41.
5. Dorigo, M. Ant Colony Optimization / M. Dorigo, T. Stutzle. — Cambridge:
MIT Press, 2004. — 305 p.
6. Dorigo, M. The Ant Colony Optimization Metaheuristic: Algorithms, Applications and Advances / M. Dorigo, T. Stutzle // Handbook of Metaheuristics. — 2003. -
P. 251−286.
7. Bullnheimer, B. Applying the ant system to the vehicle routing problem /
B. Bullnheimer, R. F. Hartl, C. Strauss // Meta-Heuristics: Advances and Trends in Local Search Paradigms for Optimization. — 1999. — P. 285−296.

ПоказатьСвернуть
Заполнить форму текущей работой