Лекция 11 :: Методы роевой...

41
Естественные модели параллельных вычислений Лекция 11 :: Методы роевой оптимизации Ершов Н.М. [email protected] Проект комиссии Президента РФ по модернизации и техническому развитию экономики России Создание системы подготовки высококвалифицированных кадров в области суперкомпьютерных технологий и специализированного программного обеспечения Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 1 / 41

Transcript of Лекция 11 :: Методы роевой...

Page 1: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Естественные моделипараллельных вычислений

Лекция 11 :: Методы роевой оптимизации

Ершов Н.М.

[email protected]

Проект комиссии Президента РФпо модернизации и техническому развитию экономики России

«Создание системы подготовки высококвалифицированных кадров вобласти суперкомпьютерных технологий и специализированного

программного обеспечения»

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 1 / 41

Page 2: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Роевой интеллект

Под роевой оптимизацией понимается класс алгоритмов,направленных на решение сложных оптимизационных задач(дискретная оптимизация, многомерная оптимизация имногокритериальная оптимизация), работа которых основана намоделировании коллективного поведения различных колонийживых организмов.Системы роевого интеллекта (swarm intelligence) представляютсобой модели разнообразных типов колллективного поведения вколониях различных живых организмов — стаях птиц (bird flocks),косяках рыб (fish schools), колониях муравьев и т. п.Отличительной особенностью таких моделей является то, чтокаждый отдельный организм в этой модели выполняет оченьпростые действия, подчиненные своей локальной цели,взаимодействуя с ограниченным числом других организмов врассматриваемой колонии.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 2 / 41

Page 3: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Модель Рейнолдса

Работы в области роевого интеллекта были инспирированыисследованиями разнообразных реальных колоний. Например,метод роя частиц основан на исследовании и моделированииколлективного поведения стай птиц, проведенного Рейнолдсом.Целью этих исследований было построение реалистическиханимаций полета стаи птиц.Особенностью поведения птичьих стай является то, что в них нетникакого единого центра управления, тем не менее вся стаядемонстрирует весьма цельное поведение.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 3 / 41

Page 4: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Модель Рейнолдса

Рейнолдсом были сформулированы три простых принципа,которых должна придерживаться каждая отдельная птица:1) каждая птица старается не приближаться к другим птицам на

расстояние меньшее некоторой заданной величины;2) каждая птица старается выбрать свой вектор скорости наиболее

близким к среднему вектору скорости среди всех птиц в своейлокальной окрестности;

3) каждая птица старается расположиться в геометрическом центремасс своей локальной окрестности.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 4 / 41

Page 5: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Принципы Рейнолдса

1) 2) 3)

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 5 / 41

Page 6: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Принципы Рейнолдса

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 6 / 41

Page 7: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Коллективная оптимизация

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 7 / 41

Page 8: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Методы роевой оптимизации

Указанные соображения и легли в основу построенияразнообразных математических методов оптмизации, один изкоторых — муравьиные алгоритмы — был подробно рассмотреннами на предыдущей лекции.В некоторых работах по роевой оптимизации принято относить ксистемам роевого интеллекта и генетические алгоритмы, которыепри некоторой интерпретации могут рассматриваться, как колониинеких простых организмов, взаимодействие между которымиосуществляется с помощью операторов скрещивания и отбора.В настоящей лекции мы рассмотрим еще три подхода кпостроению алгоритмов роевой оптимизации — метод роя частиц(уже классический алгоритм оптимизации), алгоритмбактериального поиска и пчелиный алгоритм.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 8 / 41

Page 9: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Метод роя частиц

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 9 / 41

Page 10: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Задача оптимизации

Пусть задана функция f : Rn → R , требуется найти глобальныймаксимум этой функции, т. е. точку x0 такую, что f (x0) ≥ f (x)для любого x ∈ Rn.Суть подхода, на котором основан метод роя частиц, заключаетсяв том, что глобальный максимум функции f ищется с помощьюсистемы (роя), состоящей из m частиц.Частицы выполняют поиск, перемещаясь по пространствурешений Rn.Положение i-ой частицы задается вектором xi ∈ Rn, значениеf (xi ) определяет функцию качества этой частицы в текущиймомент времени.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 10 / 41

Page 11: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Траектории частиц

Каждая частица в рое обладает своей собственной скоростьюvi ∈ Rn, которая определяет как изменяются координаты частицысо временем:

xi ← xi + τvi ,

где τ — некоторая единица измерения скорости(продолжительность одного такта работы алгоритма, например,можно положить τ = 1).Последовательность (дискретная) положений i-ой частицы будемназывать ее траекторией.Ключевая особенность метода роя частиц заключается в способеобновления скорости отдельных частиц, которое выполняется поформуле

vi ← vi + α(pi − xi ) + β(g − xi ).

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 11 / 41

Page 12: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Обновление скорости частицы

Первое слагаемое в

vi ← vi + α(pi − xi ) + β(g − xi ).

представляет собой инерцию частицы.Вектор pi (второе слагаемое) служит простейшей модельюиндивидуальной памяти — он равен лучшей точке траектории i-ойчастицы за все время ее существования. Говорят, что второеслагаемое реализует принцип простой ностальгии — каждаячастица «хочет» вернуться в ту точку, где ею было достигнутолучшее значение функции f .Вектор g (третье слагаемое), представляет собой лучшую точку,обнаруженной за время своего существования всем роем, т. е.представляет собою некую коллективную память. Третьеслагаемое определяет некоторую простую схему социальноговзаимодействия между отдельными частицами роя.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 12 / 41

Page 13: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Обновление скорости частицы

Другими словами, изменение скорости каждой частицы (т. е. ееускорение) определяется как некая взвешенная сумма двухвекторов, первый из которых направлен на лучшую точку,обнаруженную данной частицей, а второй — на лучшую точку,обнаруженную всем роем.Коэффициенты α и β могут выбираться из разных соображений.Численные эксперименты показали, что лучшей являетсявероятностная схема — либо оба коэффициента выбираютсяслучайным образом из диапазона [0, 1], либо значение αвыбирается случайным образом из этого диапазона, а значение βполагается равным 1− α.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 13 / 41

Page 14: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Формальная схема метода

ParticleSwarmOptimization(f , n,m)

1: Случайное распределение m частиц по пространству решений Rn

2: Вычисление векторов pi и g3: Случайная инициализация скоростей частиц4: while Не выполнен критерий останова do5: for i ∈ [1 . . .m] do6: α, β ← Random(0, 1)7: vi ← vi + α(pi − xi ) + β(g − xi )8: xi ← xi + τvi9: if f (xi ) > f (pi ) then

10: pi ← xi11: if f (xi ) > f (g) then12: g ← xi13: return g

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 14 / 41

Page 15: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Особенности метода роя частиц

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 15 / 41

Page 16: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Вариации метода

Большая часть предложенных вариаций базового алгоритмаКеннеди и Эберхарта касается модификации формулы скорости.Основная проблема, связанная с применением этой формулызаключается в том, что возникающие при этом скорости частицмог быть сколь угодно большими, это привносит некоторуюнеустойчивость в работу метода.Простейший способ ограничить скорости частиц заключается впрямом запрете на превышение некоторой максимальной скоростиvmax.Другой, более естественный, способ ограничения модуля скоростизаключается в введении некоторого «сопротивления среды»,задаваемого положительным коэффициентом γ < 1:

vi ← γ(vi + α(pi − xi ) + β(g − xi )

).

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 16 / 41

Page 17: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Вариации метода

Другие, менее значительные, изменения базового алгоритмакасаются следующих моментов:

I способ начального распределения частиц по пространствурешений;

I способ выбора начальной скорости частиц;I схема вычисления коэффициентов α и β;I обновление вектора g только после вычисления новых координат

всеми частицами роя;I использование в формуле скорости вектора g , вычисленного не

для всего роя (глобальная операция), а только для некоторогоподмножества i-ой частицы (ее локальной окрестности в некоторойметрике, не связанной с пространством решений).

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 17 / 41

Page 18: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Метод роя частиц и дискретная оптимизация

Также были предложены и исследованы вариации метода роячастиц, применимые к задачам дискретной оптимизации.Проблемой является то, что в дискретном пространстве решений(например, на множестве двоичных последовательностей) понятиескорости частицы полностью теряет свой смысл.Один из вариантов решения этой проблемы, предложенный самимЭберхартом, заключается в том, что k-ая компонента скоростичастицы, ограниченная интервалом [0, 1] трактуется, каквероятность изменения k-ой координаты этой частицы — чембольше скорость, тем чаще меняется координата (например, 0 на1 и наоборот).Такой прием позволяет отделить пространство решений отпространства скоростей и, в частности, эффективно решатьзадачи оптимизации в дискретных пространствах решений.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 18 / 41

Page 19: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Параллельная реализация

Имеется две базовые схемы распараллеливания метода роячастиц — с централизованным и локальным управлением. Влюбом случае частицы помещаются на различные процессорывычислительной системы, либо по одной (мелкозернистыйпараллелизм), либо группами (крупнозернистый параллелизм).В первом случае используется вариант метода с глобальнымвычислением вектора g . Каждый рабочий процесс независимо отостальных вычисляет координаты xi , вектор скорости vi ивектор pi , после чего обменивается информацией (pi посылаетсямастер-процессу, g — рабочему процессу).При увеличении числа рабочих процессов будет возрастать ивремя ожидания рабочих процессов, т. е. снижаться общаяэффективность. Снизить относительное время ожидания можно,если разрешить каждой частице делать несколько несколькоперемещений между двумя последующими стадиямисинхронизации.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 19 / 41

Page 20: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Параллельная реализация

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 20 / 41

Page 21: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Бактериальный поиск

Алгоритм бактериального поиска, разработанный КевиномПассино, основан на моделировании процесса поиска питательныхвеществ бактериями наиболее изученного вида E. coli, хотяповедение таких бактерий свойственно и бактериям многих другихвидов.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 21 / 41

Page 22: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Типы движения бактерии E. coli

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 22 / 41

Page 23: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Хемотаксис бактерий

Каждая клетка E. coli во время своего движения фактическиотслеживает градиент количества питательных веществ.Если клетка движется в направлении градиента (количествопитательных веществ постепенно возрастает), то частотакувырканий сокращается — участки прямолинейного движениястановятся более длинными.Если же количество питательных веществ начинает снижаться(движение против градиента), то эта частота уведичивается, чтоприводит к частой смене направления движения, пока не будетнайдено правильное направление.Такой способ движения в микробиологии называетсяхемотаксисом.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 23 / 41

Page 24: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Размножение бактерий

Особенностью колоний бактерий, которой не обладают колониивысших животных (птиц, рыб и т. п.), является то, что бактериимогут очень быстро размножаться.Например, бактерии E. coli делятся примерно раз в 12 минут, т. е.за одни сутки одна бактерия теоретически может организоватьколонию, состоящую примерно из 2120 клеток.Это свойство позволяет бактериям эффективно обживать областис высоким содержанием питательных веществ.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 24 / 41

Page 25: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Рассеяние бактерий

Собственная скорость движения бактерий E. coli являетсядостаточно низкой (приблизительно 0.03 милимметра в секунду),что не позволяет бактериям самостоятельно передвигаться набольшие расстояния.Широкое распространение бактерий в природе обеспечивается ихпереносом некоторыми носителями, например, водой иликакими-нибудь животными.Явление переноса (рассеяния) бактерий также используется валгоритме бактериального поиска.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 25 / 41

Page 26: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Алгоритм бактериального поиска

Пусть требуется найти глобальный максимум функции f (x)(функция качества), определенной в некотором пространстверешений (например, в Rn).Алгоритм, предложенный Кевином Пассино, заключается в том,что решение оптимизационной задачи ищется с помощью колонииискусственных бактерий, количество которых s поддерживается наодном и том же фиксированном уровне.Сам алгоритм состоит из нескольких вложенных друг в другациклов.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 26 / 41

Page 27: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Внутренний цикл алгоритма

Самый внутренний цикл алгоритма моделирует движение(хемотаксис) бактерий, каждая из которых выполняет несколькошагов заданной длины δ в текущем направлении, задаваемомвектором ei единичной длины.Этот цикл завершается либо в том случае, когда значениефункции качества в новой точке окажется меньше текущегозначения, либо после выполнения максимально допустимогочисла шагов.После завершения цикла, каждая бактерия случайным образомвыбирает новое направление движения.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 27 / 41

Page 28: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Цикл отбора и размножения

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 28 / 41

Page 29: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Цикл рассеяния

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 29 / 41

Page 30: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Роевое поведение бактерий

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 30 / 41

Page 31: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Роевое поведение бактерий

Чтобы учесть такой способ коммуникации, функция качествамодифицируется добавлением специального слагаемого:

˜f (x) = f (x) + µ

s∑i=1

h(‖xi − x‖),

где функция h(r), определяющая «сигнал» i-ой бактерии,дошедший от нее до точки x , имеет форму

r

h

d0

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 31 / 41

Page 32: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Роевое поведение бактерий

Смысл такой динамической добавки к функции качествазаключается в том, что две бактерии, оказавшиеся на расстояниименьшем d друг от друга, испытывают взаимное притяжение(напомним, что бактерии движутся в направлении градиентафункции качества), а бактерии, расстояние между которымибольше d — небольшое отталкивание.В результате это приводит к образованию отдельных кластеров избактерий, каждый из которых «обживает» свою область впространстве решений.В некоторых задачах такое поведение обеспечивает болееэффективный поиск глобального максимума.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 32 / 41

Page 33: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Пчелиный поиск

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 33 / 41

Page 34: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Поведение пчел в природе

Пчелы могут выполнять поиск пищи одновременно во многихнаправлениях на расстоянии более чем 10 километров от улья.На первом этапе небольшое количество разведчиков выполняетслучайный поиск мест с высоким содержанием нектара.При возвращении в улей пчелы исполняют специальный «танец»(являющийся, по сути, специфической формой коммуникациеймежду пчелами), в котором оказывается закодированнойинформация о расстоянии до найденного источника пищи, онаправлении к этому источнику, и о качестве и количественайденного там нектара.Чем ближе окажется источник и чем выше его качество, тембольше пчел последует за данным разведчиком.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 34 / 41

Page 35: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Поведение пчел в природе

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

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 35 / 41

Page 36: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Параметры алгоритма

Пусть решается стандартная задача оптимизации (максимизации)функции f (x) в пространстве решений Rn.Алгоритм пчелиного поиска использует для своей работыследующие числовые параметры:

I s — число пчел-разведчиков;I p — число выбранных точек (решений) для дальнейшего

исследования (p < s);I e — число лучших (элитных) точек (e < p);I se — число пчел для более полного исследования e элитных

решений;I sp — число пчел для более полного исследования оставшихся

(p − e) выбранных решений;I δ — размер окрестности, в которой пчелы выполняют более

тщательный поиск.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 36 / 41

Page 37: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Алгоритм пчелиного поиска

Сам алгоритм тогда заключается в выполнении следующих шагов.В начале случайным образом выбирается m решений, каждое изкоторых представляет собой одну пчелу-разведчика.Лучшие m решений исследуются более тщательно (локальныйпоиск) — для этого в их δ-окрестности просматривается rслучайных точек (r = se или r = sp в зависимости от элитностиданной точки), из которых выбирается лучшая.Оставшиеся (s −m) решений заменяются на случайные точки изпространства решений (случайный поиск).Алгоритм завершается, когда оказывается выполненнымнекоторое условие останова (достигнута необходимая точность,исчерпано число итераций и т. п.).

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 37 / 41

Page 38: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Алгоритм пчелиного поиска

BeesAlgorithm(f , n)1: Выбираем s случайных решений xi ∈ Rn

2: while Не выполнено условие останова do3: Упорядочиваем решения по убыванию функции качества4: for i ∈ [1 . . .m] do5: x̃ ← xi6: for j ∈ [1 . . . r ] do7: x ← случайное решение в δ-окрестности точки xi8: if f (x) > f (x̃) then9: x̃ ← x

10: xi ← x̃11: for i ∈ [m + 1 . . . s] do12: xi ← случайное решение в Rn

13: return Лучшее найденное решение

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 38 / 41

Page 39: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Свойства алгоритма пчелиного поиска

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

I статистический контроль качества;I классификация и кластеризация объектов;I составление расписаний;I робототехника;I поиск оптимальных маршрутов (задача TSP);I интеллектуальный анализ данных и т.д.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 39 / 41

Page 40: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Библиография

1 C. W. Reynolds, Flocks, herds and schools: a distributed behavioralmodel, Computer Graphics, 21, 4, pp. 25-34.

2 J. Kennedy, R. C. Eberhart, Particle swarm optimization, Proceedingsof IEEE International Conference on Neural Networks, Piscataway, NJ,pp. 1942–1948, 1995.

3 K. M. Passino, Biomimicry of bacterial foraging for distributedoptimization and control, IEEE Control Systems Magazine, 22, pp.52–67, 2002.

4 D. T. Pham, A. Ghanbarzadeh, E. Koc, S. Otri, S. Rahim, M. Zaidi,The Bees Algorithm — A Novel Tool for Complex OptimisationProblems, Proceedings of IPROMS 2006 Conference, pp. 454–461,2006.

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 40 / 41

Page 41: Лекция 11 :: Методы роевой оптимизацииhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides11.pdf · Естественные модели параллельных

Спасибо за внимание!

Ершов Н.М. (ВМК МГУ) Лекция 11 :: Роевая оптимизация ЕМПВ :: 2011 41 / 41