Uploaded by mtv_125

Муравьинный алгоритм1

advertisement
Муравьиный алгоритм
https://dic.academic.ru/dic.nsf/ruwiki/264533#.D0.92.D0.B0.D1.80.D0.B8.D0.B0.D1.86.D0.B8.D0.B8_.D
0.B0.D0.BB.D0.B3.D0.BE.D1.80.D0.B8.D1.82.D0.BC.D0.B0
оптимизации
Муравьиный алгоритм (алгоритм оптимизации подражанием муравьиной колонии, англ. ant
colony optimization, ACO) — один из эффективных полиномиальных алгоритмов для нахожден
ия приближённых решений задачи коммивояжёра, а также аналогичных задач поиска маршрут
ов на графах. Суть подхода заключается в анализе и использовании модели поведения мурав
ьёв, ищущих пути от колонии к источнику питания и представляет собой метаэвристическую (а
нгл. metaheuristic, meta — «за пределами» и heuristic —
«найти») оптимизацию. Первая версия алгоритма, предложенная доктором наук Марко Дориго
[1] [2]
в 1992 году, была направлена на поиск оптимального пути в графе.
Содержание


























1 История
2 Обзор
2.1 Краткое изложение
2.2 Подробнее
3 Вариации алгоритма
3.1 Элитарная муравьиная система
3.2 MMAS (Max-Min муравьиная система)[11]
3.3 Пропорциональные псевдослучайные правила
3.4 Ранговая муравьиная система (ASrank)
3.5 Длительная ортогональная колония муравьёв (COAC)
4 Схожесть
5 Приложение
5.1 Пример: псевдо-код и формула
5.2 Другие примеры
5.2.1 Работа-магазин: проблемы планирования
5.2.2 Автомобиль: проблема маршрутизации
5.2.3 Задача о назначениях
5.2.4 Поставленной задачи
5.2.5 Другое
6 Трудности в определении
7 Стигмержи алгоритмы
8 Похожие методы
9 См. также
10 Примечания
11 Литература
12 Ссылки
История




Хронология алгоритма.
Хронология алгоритмов муравейника:
1959 — ПьерПоль Грассе изложил теорию Stigmergy, чтобы объяснить поведение колонии термитов.[3];
1983 — Денеборг и его коллеги проанализировали коллективное поведение муравьёв[4];
1988 — Мэйсон и Мандерский опубликовали статью о «само-организации» среди муравьёв[5];
1989 — Работа Арона, Госса, Денерборга и Пастелеса «коллективное поведение аргентински
х муравьёв», которая дала идею алгоритма муравьиной колонии.[6];







1989 — Реализация модели поведения в поисках питания Еблингом и его коллегами[7];
1991 — М. Дориго предложил понятие «Муравьиная система» в своей докторской диссертаци
и (которая была опубликована в 1992 году).
2001 — IREDA и его сотрудники опубликовали первый многоцелевой алгоритм[8]
2002 — Первое применение в разработке графики, Байесовские сети;
2002 — Бьянки и ее коллеги предложили первый стохастический алгоритм[9];
2004 — Злочин и Дориго показывают, что некоторые алгоритмы эквивалентны: стохастическог
о градиентного спуска, перекрёстной энтропии и алгоритмы для оценки распределения
2005 — Первые применения в проблеме сворачивания белка.
Обзор
В основе алгоритма лежит поведение муравьиной колонии — маркировка более удачных путе
й большим количеством феромона. Работа начинается с размещения муравьёв в вершинах гр
афа (городах), затем начинается движение муравьёв — направление определяется вероятно
стным методом, на основании формулы вида:
, где:



вероятность перехода по пути
величина, обратная весу (длине)
,
ого перехода,
количество феромона на
ом переходе,
величина, определяющая «жадность» алгоритма,
-
величина, определ
яющая «стадность» алгоритма и
Решение не является точным и даже может быть одним из худших, однако, в силу вероятност
ности решения, повторение алгоритма может выдавать (достаточно) точный результат.
В литературе было предложено несколько метаэвристических моделей ACO. Среди них три н
аиболее успешные:
1) ant system (Dorigo 1992, Dorigo et al. 1991, 1996)
2) ant colony system (ACS) (Dorigo & Gambardella 1997)
3) MAX-MIN ant system (MMAS) (Stutzle & Hoos 2000)
Краткое изложение
В реальном мире, муравьи (первоначально) ходят в случайном порядке и по нахождению про
довольствия возвращаются в свою колонию, прокладывая феромонами тропы. Если другие м
уравьи находят такие тропы, они, вероятнее всего, пойдут по ним. Вместо того, чтобы отслеж
ивать цепочку, они укрепляют её при возвращении, если в конечном итоге находят источник п
итания. Со временем феромонная тропа начинает испаряться, тем самым уменьшая свою пр
ивлекательную силу. Чем больше времени требуется для прохождения пути до цели и обратн
о, тем сильнее испарится феромонная тропа. На коротком пути, для сравнения, прохождение
будет более быстрым и как следствие, плотность феромонов остаётся высокой. Испарение ф
еромонов также имеет свойство избежания стремления к локальнооптимальному решению. Если бы феромоны не испарялись, то путь, выбранный первым, был
бы самым привлекательным. В этом случае, исследования пространственных решений были
бы ограниченными. Таким образом, когда один муравей находит (например, короткий) путь от
колонии до источника пищи, другие муравьи, скорее всего пойдут по этому пути, и положитель
ные отзывы в конечном итоге приводят всех муравьёв к одному, кратчайшему, пути.
Подробнее
Оригинальная идея исходит от наблюдения за муравьями в процессе поиска кратчайшего пут
и от колонии до источника питания.
1. Первый муравей находит источник пищи (F) любым способом (а), а затем возвращается к гнез
ду (N), оставив за собой тропу из феромонов (b).
2. Затем муравьи выбирают один из четырёх возможных путей, затем укрепляют его и делают п
ривлекательным.
3. Муравьи выбирают кратчайший маршрут, так как у более длинных феромоны сильнее испари
лись.
Среди экспериментов по выбору между двумя путями неравной длины, ведущих от колонии к
источнику питания, биологи заметили, что, как правило, муравьи используют кратчайший мар
шрут.[6] [10] Модель такого поведения заключается в следующем:
 Муравей (так называемый «Блиц») проходит случайным образом от колонии
 Если он находит источник пищи, то возвращается в гнездо, оставляя за собой след из феромо
на
 Эти феромоны привлекают других муравьёв находящихся вблизи, которые вероятнее всего п
ойдут по этому маршруту
 Вернувшись в гнездо они укрепят феромонную тропу
 Если существует 2 маршрута, то по более короткому, за то же время, успеют пройти больше м
уравьёв, чем по длинному
 Короткий маршрут станет более привлекательным
 Длинные пути, в конечном итоге, исчезнут из-за испарения феромонов
Муравьи используют окружающую среду как средство общения. Они обмениваются информац
ией косвенным путём, через феромоны, в ходе их «работы». Обмен информации имеет локал
ьный характер, только те муравьи, которые находятся в непосредственной близости, где оста
лись феромоны — могут узнать о них. Такая система называется «Stigmergy» и справедлива
для многих социальных животных (был изучен в случае строительства столбов в гнёздах терм
итов). Данный механизм решения проблемы очень сложен и является хорошим примером сам
оорганизации системы. Такая система базируется на положительной (другие муравьи укрепля
ют феромонную тропу) и отрицательной (испарение феромонной тропы) обратной связи. Теор
етически, если количество феромонов будет оставаться неизменным с течением времени по
всем маршрутам, то невозможно будет выбрать путь. Однако изза обратной связи, небольшие колебания приведут к усилению одного из маршрутов и систем
а стабилизируется к кратчайшему пути.
Вариации алгоритма
Вот одни из самых популярных вариаций муравьиного алгоритма:
Элитарная муравьиная система
MMAS (Max-Min муравьиная система)[11]
Добавляются граничные условия на количество феромонов (τmax,τmin). Феромоны откладывают
ся только на глобально лучших или лучших в итерации путях. Все рёбра инициализируются зн
ачением τmax
Пропорциональные псевдослучайные правила
Представлена выше[12]
Ранговая муравьиная система (ASrank)
Все решения ранжируются по степени их пригодности. Количество откладываемых феромоно
в для каждого решения взвешено так, что более подходящие решения получают больше феро
монов, чем менее подходящие.
Длительная ортогональная колония муравьёв (COAC)
Механизм отложения феромонов COAC позволяет муравьям искать решения совместно и эф
фективно. Используя ортогональный метод, муравьи в выполнимой области могут исследоват
ь их выбранные области быстро и эффективно, с расширенной способностью глобального пои
ска и точностью.
Ортогональный метод планирования и адаптивный метод регулирования радиуса могут также
быть расширены на другие алгоритмы оптимизации для получения более широких преимуще
ств в решении практических проблем.[13]
Схожесть
Приложение
Пример: псевдо-код и формула
procedure ACO_MetaHeuristic
while(not_termination)
generateSolutions()
daemonActions()
pheromoneUpdate()
end while
end procedure
Рёбра:
Муравей будет двигаться от узла
к узлу
с вероятностью:
, где
— это количество феромонов на ребре
;
— параметр, контролирующий влияние
;
привлекательность ребра
, где d расстояние);
(начальное значение, как правило,
— параметр, контролирующий влияние
.
Обновление феромонов
где
— количество феромона на дуге
— скорость испарения феромона
— количество отложенного феромона, обычно определяется как
где
— стоимость
-го пути муравья (обычно длина).
Другие примеры
Работа-магазин: проблемы планирования
Автомобиль: проблема маршрутизации
Задача о назначениях
Поставленной задачи
Другое
Трудности в определении
Стигмержи алгоритмы
Термин «stigmergy» был введён французским биологом П.П. Грассе в 1959 году для описания поведения термитов. Он определял его как: «Stimulation of
workers by the performance they have achieved.» Термин происходит от двух греческих слов sti
gma (знак, метка) и ergon (работа, действие).[14]
Похожие методы
См. Роевой интеллект
См. также

Групповая робототехника
Примечания
1. ↑ A. Colorni, M. Dorigo et V. Maniezzo, Distributed Optimization by Ant Colonies, actes de la premièr
e conférence européenne sur la vie artificielle, Paris, France, Elsevier Publishing, 134—142, 1991.
2. ↑ M. Dorigo, Optimization, Learning and Natural Algorithms, PhD thesis, Politecnico di Milano, Italie,
1992.
3. ↑ P.-P. Grasse, La reconstruction du nid et les coordinations interindividuelles chez Belicositermes natalensis et Cubitermes sp. La theorie de la Stigmergie : Essai d’i
nterpretation du comportement des termites constructeurs, Insectes Sociaux, numero 6, p. 4180, 1959.
4. ↑ J.L. Denebourg, J.M. Pasteels et J.C. Verhaeghe, Probabilistic Behaviour in Ants : a Strategy of Er
rors?, Journal of Theoretical Biology, numero 105, 1983.
5. ↑ F. Moyson, B. Manderick, The collective behaviour of Ants : an Example of SelfOrganization in Massive Parallelism, Actes de AAAI Spring Symposium on Parallel Models of Intellig
ence, Stanford, Californie, 1988.
6. ↑ 1 2 S. Goss, S. Aron, J.-L. Deneubourg et J.-M. Pasteels, The selforganized exploratory pattern of the Argentine ant, Naturwissenschaften, volume 76, pages 579—
581, 1989
7. ↑ M. Ebling, M. Di Loreto, M. Presley, F. Wieland, et D. Jefferson,An Ant Foraging Model Implement
ed on the Time Warp Operating System, Proceedings of the SCS Multiconference on Distributed Si
mulation, 1989
8. ↑ S. Iredi, D. Merkle et M. Middendorf, BiCriterion Optimization with Multi Colony Ant Algorithms, Evolutionary MultiCriterion Optimization, First International Conference (EMO’01), Zurich, Springer Verlag, pages 359
—372, 2001.
9. ↑ L. Bianchi, L. M. Gambardella et M. Dorigo, An ant colony optimization approach to the probabilisti
c traveling salesman problem, PPSNVII, Seventh International Conference on Parallel Problem Solving from Nature, Lecture Notes in Co
mputer Science, Springer Verlag, Berlin, Allemagne, 2002.
10. ↑ J.-L. Deneubourg, S. Aron, S. Goss et J.-M. Pasteels, The selforganizing exploratory pattern of the Argentine ant, Journal of Insect Behavior, volume 3, page 159,
1990
11. ↑ T. Stützle et H.H. Hoos, MAX MIN Ant System, Future Generation Computer Systems, volume 16,
pages 889—914, 2000
12. ↑ M. Dorigo et L.M. Gambardella, Ant Colony System : A Cooperative Learning Approach to the Trav
eling Salesman Problem, IEEE Transactions on Evolutionary Computation, volume 1, numero 1, pag
es 53-66, 1997.
13. ↑ X Hu, J Zhang, and Y Li (2008). Orthogonal methods based ant colony search for solving continuo
us optimization problems. Journal of Computer Science and Technology, 23(1), pp.2-18.
14. ↑ Bonabeau, E.
«Editor’s Introduction: Stigmergy.» special Issue of Artificial Life on Stigmergy. Volume 5, Issue 2 / S
pring 1999, p.95-96. http://www.stigmergicsystems.com/stig_v1/stigrefs/article1.html
Литература

M. Dorigo, 1992. Optimization, Learning and Natural Algorithms, PhD thesis, Politecnico di Milano, It
aly.








M. Dorigo, V. Maniezzo & A. Colorni, 1996.
«Ant System: Optimization by a Colony of Cooperating Agents», IEEE Transactions on Systems, Ma
n, and Cybernetics-Part B, 26 (1): 29-41.
M. Dorigo & L. M. Gambardella, 1997.
«Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem». IEEE
Transactions on Evolutionary Computation, 1 (1): 53-66.
M. Dorigo, G. Di Caro & L. M. Gambardella, 1999.
«Ant Algorithms for Discrete Optimization». Artificial Life, 5 (2): 137—172.
E. Bonabeau, M. Dorigo et G. Theraulaz, 1999. Swarm Intelligence: From Natural to Artificial System
s, Oxford University Press. ISBN 0-19-513159-2
M. Dorigo & T. Stützle, 2004. Ant Colony Optimization, MIT Press. ISBN 0-262-04219-3
M. Dorigo, 2007. «Ant Colony Optimization». Scholarpedia.
C. Blum, 2005 «Ant colony optimization: Introduction and recent trends». Physics of Life Reviews, 2:
353—373
M. Dorigo, M. Birattari & T. Stützle, 2006 Ant Colony Optimization: Artificial Ants as a Computational
Intelligence Technique. TR/IRIDIA/2006-023
Ссылки



Оптимизация муравьиной колонии (англ.)
Муравьиный алгоритм. Библиография
Ant Colony Optimization Home Page
Одномер
ные
Прямые
методы
Первого
порядка
Методы оптимизации
Метод золотого сечения • Дихотомия • Метод парабол • Перебор по сетке • Ме
тод Фибоначчи • Троичный поиск
Метод Гаусса • Метод Нелдера — Мида • Метод Хука — Дживса • Метод конф
игураций • Метод Розенброка
Градиентный спуск • Метод Зойтендейка • Покоординатный спуск • Метод соп
ряжённых градиентов • Квазиньютоновские методы • Алгоритм Левенберга —
Марквардта
Второго п
Метод Ньютона • Метод Ньютона — Рафсона
орядка
Метод МонтеСтохасти
Карло • Имитация отжига • Эволюционные алгоритмы • Дифференциальная эв
ческие
олюция • Муравьиный алгоритм • Метод роя частиц
Методы л
инейного Симплекспрограмм метод • Алгоритм Гомори • Метод эллипсоидов • Метод потенциалов
ирования
Методы н
елинейно
Последовательное квадратичное программирование
го
программ
ирования


Категории:
Алгоритмы оптимизации
Эволюционные алгоритмы
Download