Муравьиные алгоритмы
12.1. Биологический прототип и простейшие модели
Муравьи появились на земле более 100 миллионов лет назад и в настоящее время их популяция составляет особей [1], общий вес которой соизмерим с весом проживающих людей. Большинство муравьев являются социальными насекомыми, которые живут колониями от 30 до миллиона особей. При относительно простом поведении каждой отдельной особи муравьиные колонии представляют сложную социальную структуру и способны решать сложные задачи, например, находить оптимальные пути от гнезда до источника пищи. Это привлекло внимание многих исследователей, которые изучали механизмы взаимодействия особей колонии. Среди них, прежде всего, привлекла внимание исследователей непрямая форма связи между особями, которая была названа "стигметрия" ("stigmergy") и представляет собой разнесенное во времени взаимодействие, при котором одна особь изменяет некоторую область окружающей среды, а другие особи используют эту информацию в процессе решения задачи. Эта информация (изменение окружающей среды) носит локальный характер – она может быть изменена (и воспринята) только насекомыми, посетившими данный локус – участок среды. Стигметрия является непрямой и асинхронной формой коммуникации, в которой насекомые изменяют окружающую среду для передачи информации другим насекомым, которые реагируют на это изменение. Слово "stigmergy" образовано из двух греческих слов: "stigma", означающее знак; "ergon" - работа. Особи воспринимают сигналы (в виде знаков), которые порождают некоторый отклик или действие. Определены две формы стигметрии[2]: сематектоническая (sematectonic) и знаковая(sign-based). Сематектоническая относится к коммуникации посредством изменения физических характеристик окружающей среды. Примером сематектонической стигметрии являются действия при постройке гнезда, его очистке и выращивании выводка. Сигнальная стигметрия реализует коммуникацию с помощью сигнального механизма в виде химических соединений, откладываемых муравьями.
Конкретно, во многих муравьиных колониях стигметрия реализуется с помощью специального фермента "феромона", который откладывается муравьем в процессе движения. При этом муравей помечает феромоном посещенный участок среды. Остальные муравьи воспринимают "запах" отложенного феромона и стараются следовать по отмеченному пути. Это порождает асинхронную и непрямую схему коммуникации, где муравьи передают информацию друг другу с помощью феромона. При этом возникает положительная обратная связь – даже малое количество феромона заставляет муравьев идти по помеченному пути и откладывать на нем все большее количество фермента. Адаптивность поведения муравьев основана на восприятии испарений феромона, которое в природе продолжается несколько суток. Можно провести аналогию между распределением феромона в окружающем колонию пространстве и глобальной памятью муравейника, которая носит динамический характер.
Муравьиные алгоритмы (МА), как и большинство, ранее рассмотренных видов эволюционных алгоритмов, основаны на использовании популяции потенциальных решений и разработаны для решения задач комбинаторной оптимизации, прежде всего, поиска различных путей на графах. Кооперация между особями (искусственными муравьями) здесь реализуется на основе моделирования стигметрии. При этом каждый агент, называемый искусственным муравьем, ищет решение поставленной задачи. Искусственные муравьи последовательно строят решение задачи, передвигаясь по графу, откладывают феромон и при выборе дальнейшего участка пути учитывают концентрацию этого фермента. Чем больше концентрация феромона в последующем участке, тем больше вероятность его выбора.
Реальные муравьи благодаря стигметрии способны находить кратчайший путь от гнезда до источника пищи достаточно быстро и без визуального (прямого контакта). Более того, они способны адаптироваться к изменениям окружающей среды. Были проведены многочисленные эксперименты с реальными муравьями, которые показали следующие результаты.
Рассмотрим эксперименты с препятствиями, которые показаны на рис.12.1,рис.12.2,рис.12.3,рис.12.4 [3].
Здесь на первом рисунке показано движение муравьев между гнездом и источником пищи без препятствия. Далее на рис.12.1,рис.12.2,рис.12.3,рис.12.4 показан характер движения в том случае, когда на пути возникло препятствие.
Из рисунков видно, что при появлении препятствия в начальной фазе движения рис.12.3 муравьи с одинаковой вероятностью выбирают и короткий и длинный путь поскольку концентрация феромона сначала одинакова для обоих вариантов. Но по прошествии некоторого времени за счет того, что по короткому пути муравьи быстрее проходят путь, на нем концентрация феромона становится выше и поэтому муравьи выбирают оптимальный путь.
Не менее известный эксперимент с двумя мостами был проведен с колонией аргентинских муравьев, который представлен на рис.12.5,рис.12.6 [4].Здесь на пути между гнездом и пищей необходимо сделать выбор одного из двух мостов.
Здесь на рис.12.5 показан случай с двумя эквивалентными путями между гнездом и пищей. Эксперименты показали одинаковую концентрацию муравьев на обоих возможных путях. Далее на рис.12.6 представлен случай, когда мосты имеют разную длину. В начальной фазе муравьис равной вероятностью выбирают мосты. Но далее, при увеличении концентрации феромона на коротком пути они выбирают оптимальный путь.
Пусть и обозначают число муравьев на путях A и B соответственно в момент времени . Эмпирически было найдено, что вероятность выбора моста в момент времени происходит в соответствии со следующей формулой [4]:
( 12.1) |
где характеризует степень "привлекательности" неисследованной ветви, и определяет смещение при использовании феромона в процессе выбора варианта решения. На основе вероятностей, определяемых (12.1), правило выбора муравьем моста можно сформулировать следующим образом. Пусть случайным образом генерируется число U(0,1) в интервале (0,1).
Если , то муравей выбирает путь A, иначе – путь B.
Отметим, что несмотря на то, что муравьиная колония демонстрирует сложное адаптивное поведение, которое позволяет ей решать трудные задачи, поведение одного муравья подчиняется достаточно простым правилам. Муравья можно рассматривать как агента, подвергающегося воздействию и формирующего на него соответствующую реакцию: муравей воспринимает концентрацию феромона и на этой основе выполняет действие. Поэтому муравей абстрактно может рассматриваться как простой вычислительный агент. Искусственный муравей алгоритмически моделирует простое поведение реального муравья (точнее его интересующие нас аспекты). Логика поведения искусственного муравья представлена в алгоритме А12.1 [2].
Этот алгоритм выполняется в каждой точке, где муравью необходимо принять решение (выбор последующего пути).