Поиск косяка рыбы
Поиск косяков рыб (FSS), предложенный Бастосом Фильо и Лимой Нето в 2008 году, в своей базовой версии: [1] алгоритм унимодальной оптимизации, основанный на коллективном поведении косяков рыб. Механизмы питания и координированного движения послужили вдохновением для создания операторов поиска. Основная идея состоит в том, чтобы заставить рыб «плыть» к положительному градиенту, чтобы «есть» и «набирать вес». В совокупности более тяжелые рыбы оказывают большее влияние на процесс поиска в целом, из-за чего барицентр косяка рыбы смещается в сторону лучших мест в пространстве поиска на протяжении итераций. [2]
ФСС использует следующие принципы: [3]
- Простые вычисления для всех особей (например, рыб)
- Различные средства хранения информации (например, вес рыбы и барицентр школы)
- Локальные вычисления (т. е. плавание состоит из отдельных компонентов)
- Низкая коммуникация между соседними особями (т.е. рыбы должны мыслить локально, но при этом быть социально осведомленными)
- Минимальный централизованный контроль (в основном для самоконтроля школьного радиуса)
- Некоторые различные механизмы разнообразия (чтобы избежать нежелательного скапливающегося поведения)
- Масштабируемость (по сложности задач оптимизации/поиска)
- Автономия (т.е. способность самоконтроля функционирования)
Алгоритм
[ редактировать ]FSS — это популяционный алгоритм поиска, основанный на поведении плавающих рыб, которые расширяются и сжимаются в поисках пищи. Каждая рыба -мерное местоположение представляет собой возможное решение проблемы оптимизации. Алгоритм использует веса для всех рыб, что представляет собой совокупный отчет о том, насколько успешным был поиск каждой рыбы в косяке. FSS состоит из операторов подачи и перемещения, причем последний разделен на три подкомпонента, а именно: [4]
Индивидуальная составляющая движения
[ редактировать ]Каждая рыба в стае выполняет локальный поиск в поисках перспективных регионов в пространстве поиска. Это делается так, как показано ниже:
где и представлять положение рыбы до и после отдельного оператора перемещения соответственно. представляет собой равномерно распределенное случайное число, варьирующееся от -1 до 1 и — параметр, определяющий максимальное смещение для этого движения. Новая позиция принимается только в том случае, если приспособленность рыбы улучшается при смене позиции. Если это не так, рыба остается в том же положении и .
Коллективно-инстинктивный компонент движения
[ редактировать ]Среднее значение отдельных движений рассчитывается на основе следующего:
Вектор представляет собой средневзвешенное значение перемещений каждой рыбы. Это означает, что рыбы, у которых наблюдалось более высокое улучшение, привлекут рыбу на свою позицию.После вектора вычислений, каждой рыбе будет предложено двигаться в соответствии с:
Коллективно-волевая составляющая движения
[ редактировать ]Этот оператор используется для регулирования возможностей исследования/эксплуатации школы в процессе поиска. Прежде всего, барицентр школы рассчитывается исходя из позиции и вес каждой рыбы:
и тогда, если общий школьный вес увеличился по сравнению с последней итерацией к текущей, рыбы притягиваются к барицентру согласно уравнению А. Если общий вес косяка не увеличился, рыбы расходятся от барицентра согласно уравнению Б:
уравнение А:
уравнение Б:
где определяет размер максимального перемещения, выполняемого с использованием этого оператора. это евклидово расстояние между рыбами положение и школьный барицентр. — равномерно распределенное случайное число, изменяющееся от 0 до 1.
Помимо операторов движения, был также определен оператор кормления, используемый для обновления веса каждой рыбы в соответствии с:
где весовой параметр рыбы , - это изменение приспособленности между последней и новой позицией, и представляет собой максимальное абсолютное значение вариации приспособленности среди всех рыб в стае. допускается изменять только от 1 до , который является определяемым пользователем атрибутом. Вес всех рыб инициализируется значением .
Псевдокод для ФСС
[ редактировать ]- Инициализация пользовательских параметров
- Инициализировать позиции рыб случайным образом
- пока условие остановки не выполнено, сделайте
- Рассчитайте приспособленность для каждой рыбы
- Запуск индивидуального движения оператора
- Рассчитайте приспособленность для каждой рыбы
- Запуск оператора кормления
- Запустить оператор коллективно-инстинктивного движения
- Запуск оператора коллективно-волевого движения
- закончиться, пока
Параметры и линейно затухают по закону:
и аналогично:
где и определяемые пользователем начальные значения для и , соответственно. — максимальное количество итераций, разрешенное в процессе поиска.
Вариации ФСС
[ редактировать ]dFSS (поиск косяков рыб на основе плотности)
[ редактировать ]Эта версия отлично подходит для мультимодальных гипермерных функций. Он включает в себя модификации предыдущих операторов: Кормление и Плавание, а также новые: Операторы Памяти и Разделения. Последние два были введены для учета разделения основной школы на подгруппы. Некоторые изменения были также включены в условия остановки, которые теперь также должны учитывать подгруппы. [5]
wFSS (поиск косяков рыбы по весу)
[ редактировать ]wFSS — это нишевая версия FSS, основанная на весе, предназначенная для создания нескольких решений. Стратегия ниширования основана на новом операторе, называемом форматором ссылок. Этот оператор используется для определения лидеров рыб с целью формирования подстай. [6]
FSS-SAR (Регулярный поиск косяков рыбы во избежание застоя)
[ редактировать ]В исходной версии алгоритма индивидуальный компонент движения может перемещать рыбу только в том случае, если это улучшает физическую форму. Однако в очень гладком пространстве поиска будет много безуспешных движущихся испытаний, и алгоритм может не сойтись.Для решения этих проблем был введен параметр X , для которого 0 <= X <= 1 в индивидуальной составляющей движения. X экспоненциально затухает вместе с итерациями и измеряет вероятность ухудшения допуска для каждой рыбы. Это означает, что каждый раз, когда рыба пытается переместиться в положение, которое не улучшает ее физическую форму, выбирается случайное число, и если оно меньше X, движение разрешается. [7]
bFSS (поиск косяков бинарных рыб)
[ редактировать ]BFSS намеревалась справиться с преждевременной конвергенцией. Предлагается использовать схему двоичного кодирования для внутренних механизмов поиска косяков рыб. Он объединил FSS с нечетким моделированием в оболочке для выбора функций. [8]
MOFSS (Многоцелевой поиск косяков рыбы)
[ редактировать ]В МОФСС операторы адаптированы для решения многокритериальных задач. Алгоритм развертывает внешний архив для хранения лучших недоминируемых решений, найденных в процессе поиска. Этот подход широко использовался для различных многокритериальных оптимизаторов, основанных на биологии. [9] [10] Кроме того, решения из Внешнего архива используются для управления перемещением рыбы в версии предложения. [11]
См. также
[ редактировать ]- Алгоритмы оптимизации муравьиной колонии
- Алгоритм искусственной пчелиной семьи
- Оптимизация роя частиц
Внешние ссылки
[ редактировать ]Ссылки
[ редактировать ]- ^ CJA B Filho., FB de Lima Neto, AJCC. Линс, А.И.С. Насименто и М.П. Лима, « Новый алгоритм поиска, основанный на поведении косяков рыб », «Системы, человек и кибернетика», SMC 2008. Международная конференция IEEE, 2008 г., стр. 2646-2651.
- ^ де Лима Нето, Фернандо Буарк и Марсело Гомес Перейра де Ласерда. « Алгоритмы мультимодального поиска косяков рыб на основе местной информации для разделения косяков ». Конгресс БРИКС по вычислительной разведке 2013 г. и 11-й Конгресс Бразилии по вычислительной разведке. ИИЭР, 2013 г.
- ^ «FBLN – профессор доктор Фернандо Буарк де Лима Нето, бакалавр наук, магистр DIC-доктор философии (Имперский колледж/Великобритания), Hab (BR) SM-IEEE (США) Александр фон Гумбольдт-научный сотрудник (DE) ) Сотрудник Академии наук (PE/BR)» .
- ^ Дж. Б. Монтейро, IMC Альбукерке, ФБЛ Нето и ФВС Феррейра, « Оптимизация многоплатообразных функций с помощью FSS-SAR (программа предотвращения стагнации) », представлено на серии симпозиумов IEEE по вычислительному интеллекту, 2016.
- ^ Мадейро, СС, де Лима-Нето, FB, Бастос-Филью, CJA, и Насименту Фигейреду, EM (2011, июнь). Плотность как механизм сегрегации в косяках рыб. Поиск задач мультимодальной оптимизации . На Международной конференции по роевой разведке (стр. 563-572). Шпрингер Берлин Гейдельберг.
- ^ Ф. Буарке Де Лима Нето и М. Гомес Перейра де Ласерда, « Поиск косяков рыбы по весу », в книге «Системы, человек и кибернетика» (SMC), Международная конференция IEEE 2014 г. IEEE, 2014, стр. 270–277.
- ^ Дж. Б. Монтейро, IMC Альбукерке, ФБЛ Нето и ФВС Феррейра, « Оптимизация многоплатообразных функций с помощью FSS-SAR (программа предотвращения стагнации) », представлено на серии симпозиумов IEEE по вычислительному интеллекту, 2016.
- ^ Сарго, Жоао АГ и др. « Поиск косяков двоичных рыб применен к выбору функций: применение к повторной госпитализации в отделение интенсивной терапии ». Международная конференция IEEE по нечетким системам, 2014 г. (FUZZ-IEEE). ИИЭР, 2014.
- ^ Деб, К., Тиле, Л., Лауманнс, М., и Зитцлер, Э. (2002) Масштабируемые тестовые задачи многоцелевой оптимизации , В: Конгресс IEEE по эволюционным вычислениям (стр. 825–830).
- ^ Небро, Эй-Джей, Дурилло, Джей-Джей, Гарса-Ньето, Дж., КоэльоКоэльо, Калифорния, Луна, Ф. и Альба, Э. (2009) SMPSO: новая метаэвристика на основе PSO для многокритериальной оптимизации. [ мертвая ссылка ] , В: Симпозиум IEEE по вычислительному интеллекту в принятии многокритериальных решений (стр. 66–73). doi:10.1109/MCDM.2009.4938830
- ^ Бастос-Фильо, Кармело Х.А. и Аугусто К.С. Гимарайнш. « Многоцелевой поиск косяков рыб ». Международный журнал исследований роевого интеллекта (IJSIR) 6.1 (2015): 23-40.