Роевые и муравьиные алгоритмы
11.2.Локальный роевой алгоритм
Локальный РА (Local Best PSO) использует для коррекции вектора скорости частицы только локальный оптимум, который определяется на множестве соседних (ближайших в некотором смысле) частиц. То есть считается, что данной частице может передавать полезную информацию только ее ближайшее окружение. При этом отношение соседства задается некоторой "социальной" сетевой структурой, которая образует перекрывающееся множества соседних частиц, которые могут влиять друг на друга. Соседние частицы обмениваются между собой информацией о достигнутых лучших результатах и поэтому стремятся двигаться в сторону локального в данной окрестности оптимума. Характеристики роевого локального алгоритма сильно зависят от структуры используемой "социальной сети". Поток информации через "социальную сеть" зависит от: 1) степени связности узлов сети, 2) числа кластеров, 3) среднего расстояния между узлами сети. В сильно связной социальной сети большинство частиц могут сообщаться друг с другом, что способствует быстрому распространению информации о достигнутых оптимумах и вследствие этого высокой скорости сходимости процесса поиска решения в отличие от мало связных сетей. Однако это часто достигается ценой преждевременной сходимости к локальным экстремумам. С другой стороны, для мало связных сетей с большим числом кластеров возможна ситуация, когда пространство поиска покрывается неудовлетворительно, вследствие чего трудно получить глобальное оптимальное решение. Каждый кластер содержит сильно связанные особи и покрывает только часть пространства поиска. Сетевая структура обычно содержит несколько кластеров, которые слабо связаны между собой. Следовательно, исследуется информация только в ограниченной части пространства поиска. В РА используются различные социальные структуры, типовые сетевые структуры которых представлены на рис.11.3.
На рис.11.3a) представлена структура "звезда", где все частицы связаны друг с другом (образуют полный граф) и могут соответственно обмениваться информацией. В этом случае каждая частица стремится сместиться в сторону глобальной лучшей позиции, которую нашел рой. Очевидно, что основной РА, рассмотренный в предыдущем разделе, использует по умолчанию фактически структуру "звезда" на всем рое.
Исследования показывают, что РА на этой структуре имеет лучшую сходимость, но и имеет тенденцию попадать в ловушки локальных экстремумов. Поэтому данную структуру можно рекомендовать, прежде всего, для унимодальных задач с одним экстремумом.
На следующем рис.11.3 б) приведена сетевая структура "кольцо", где каждая частица общается со своими ближайшими соседями. При каждая частица связана только с двумя ближайшими соседями по кольцу, как это показано на рисунке. В этом случае каждая частица пытается сместиться в сторону лучшего соседа. Следует отметить, что множества соседних окружений перекрываются и вследствие этого возможен обмен информацией не только между ближайшими соседями. Поэтому данная структура позволяет находить и глобальный экстремум, но с меньшей скоростью. Данная структура лучше зарекомендовала себя при решении мульти-модальных задач (со многими экстремумами).
В сетевой структуре "колесо", показанной на рис.11.3 в), особи фактически изолированы друг от друга. Только одна частица выступает в качестве "фокальной точки", через которую идет обмен информации. В этом случае "фокальная частица" сравнивает характеристики всех соседних частиц и стремится в сторону лучшего соседа. Если новая позиция "фокальной частицы" имеет лучшие характеристики, то она сообщает это всем своим соседям. Данная сетевая структура замедляет распространение хороших решений через рой.
Социальная структура "пирамида" образует трехмерный каркас, как это показано на рис. 11.3 г).
Далее на рис.11.3 д) представлена четырех-кластерная социальная структура, в которой четыре кластера (клики) связаны друг с другом двумя соединениями.
Наконец, на рис.11.3 е) приведена социальная структура, где частицы объединены в решетку, которая часто называется социальной сетевой структурой фон Неймана. Данный тип согласно проведенным экспериментальным исследованиям показывает лучшие результаты при решении многих задач.
Следует отметить, что нет единого рецепта по использованию некоторой сетевой структуры. Для различных задач эффективными могут быть различные сетевые структуры, определяющие отношение соседства. В целом полно связная структура (звезда) дает лучшие результаты для унимодальных задач, в то время, как слабо связные структуры предпочтительнее для мульти модальных задач.
При коррекции скорости частицы в локальных РА вклад данной частицы пропорционален расстоянию между ней и лучшей позицией своего окружения, которое задается одной из рассмотренных сетевых структур. Таким образом, скорость частицы вычисляется следующим образом:
( 11.5) |
где - лучшая позиция, которая найдена по координате соседями частицы . При этом локальная лучшая позиция определяется как лучшая позиция в окружении в соответствии с выражением
( 11.6) |
где
( 11.7) |
при числе соседей . Здесь локальная лучшая позиция относится к лучшей позиции соседнего окружения.
Следует отметить, что, в основном, РА частицы в окружении не связаны друг с другом. Выбор соседей выполняется на основе индексов частицы[2].Однако, кроме этого, разработаны методы, где соседнее окружение формируется на основе пространственной близости.
Существуют, по крайней мере, две причины, по которым отношение соседства по индексам предпочтительнее:
- экономия в вычислительных ресурсах, так как не требуется пространственное упорядочение частиц, где необходимы вычисления евклидовых расстояний между частицами со сложностью ;
- это способствует распространению информации о хороших решениях для всех частиц, безотносительно их текущего расположения в пространстве поиска.
Ниже представлен псевдокод локального РА.
Рассмотренные две версии глобального и локального РА похожи в том смысле, что в обоих присутствует социальная компонента изменения скорости частицы, которая направляет ее (в конечном счете) в сторону глобальной лучшей позиции. Это возможно вследствие того, что локальные соседние области перекрываются.
Но существуют, по крайней мере, два основных различия между этими двумя подходами относительно их характеристик (свойств) сходимости:
- благодаря большему взаимодействию частиц в глобальном РА он сходится быстрее, чем локальный РА. Однако эта быстрая сходимость достигается ценой сужения пространства поиска.
- вследствие большего разнообразия потенциальных решений локальный РА менее подвержен преждевременной сходимости к локальным экстремумам. Часто сетевые социальные структуры (например, такие как "кольцо") позволяют улучшить характеристики РА для многих задач.