Муравьиный алгоритм 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 Одномер ные Прямые методы Первого порядка Методы оптимизации Метод золотого сечения • Дихотомия • Метод парабол • Перебор по сетке • Ме тод Фибоначчи • Троичный поиск Метод Гаусса • Метод Нелдера — Мида • Метод Хука — Дживса • Метод конф игураций • Метод Розенброка Градиентный спуск • Метод Зойтендейка • Покоординатный спуск • Метод соп ряжённых градиентов • Квазиньютоновские методы • Алгоритм Левенберга — Марквардта Второго п Метод Ньютона • Метод Ньютона — Рафсона орядка Метод МонтеСтохасти Карло • Имитация отжига • Эволюционные алгоритмы • Дифференциальная эв ческие олюция • Муравьиный алгоритм • Метод роя частиц Методы л инейного Симплекспрограмм метод • Алгоритм Гомори • Метод эллипсоидов • Метод потенциалов ирования Методы н елинейно Последовательное квадратичное программирование го программ ирования Категории: Алгоритмы оптимизации Эволюционные алгоритмы