Алгоритм спиральной оптимизации - Spiral optimization algorithm

Спираль разделяет глобальное (синий) и интенсивное (красный) поведение.

В алгоритм спиральной оптимизации (SPO) это незамысловатая концепция поиска, вдохновленная спиральными явлениями в природе. Первый алгоритм SPO был предложен для двумерной безусловной оптимизации.[1]на основе двумерных спиральных моделей. Это было распространено на n-мерные проблемы путем обобщения двумерной спиральной модели на n-мерную спиральную модель.[2]Есть эффективные настройки для алгоритма SPO: настройка периодического направления спуска.[3]и настройку сходимости.[4]

Метафора

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

Алгоритм

Алгоритм спиральной оптимизации (SPO)

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

0) Установите количество точек поиска  и максимальное количество итераций .1) Поместите начальные точки поиска  и определить центр , , а затем установите .2) Определите скорость шага  по правилу.3) Обновите точки поиска: 4) Обновите центр:  куда .5) Установить . Если  удовлетворено, затем прекратить и вывести . В противном случае вернитесь к шагу 2).

Параметр

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

Настройка 1 (настройка направления периодического спуска)[3]

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

  • Набор следующее: куда это единичная матрица и это нулевой вектор.
  • Поместите начальные точки случайным образом, чтобы удовлетворить следующему условию:

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

  • Набор на Шаге 2) следующим образом: где достаточно малая Такие как или же .

Настройка 2 (Настройка сходимости)[4]

Этот параметр гарантирует, что алгоритм SPO сходится к стационарной точке при максимальной итерации. . Настройки и начальные точки такие же, как и в приведенной выше настройке 1. Настройка как следует.

  • Набор на Шаге 2) следующим образом: куда это итерация, когда центр обновляется заново на шаге 4) и Такие как . Таким образом, мы должны добавить следующие правила о к алгоритму:
•(Шаг 1) .
• (Шаг 4) Если тогда .

Будущие работы

  • Алгоритмы с указанными выше настройками детерминированы. Таким образом, включение некоторых случайных операций делает этот алгоритм мощным для глобальная оптимизация. Cruz-Duarte et al.[5] продемонстрировал это, включив в спиральные поисковые траектории стохастические возмущения. Однако эта дверь остается открытой для дальнейших исследований.
  • Найти соответствующий баланс между спиралями диверсификации и интенсификации в зависимости от целевого класса проблемы (включая ) важен для повышения производительности.

Расширенные работы

Много расширенных исследований было проведено на SPO из-за его простой структуры и концепции; эти исследования помогли повысить эффективность глобального поиска и предложили новые приложения.[6][7][8][9][10][11]

Рекомендации

  1. ^ Тамура, К .; Ясуда, К. (2011). «Первичное исследование спиральной динамики, вдохновленное оптимизацией». IEEJ Transactions по электротехнике и электронике. 6 (S1): 98–100. Дои:10.1002 / тройник.20628.
  2. ^ Тамура, К .; Ясуда, К. (2011). «Оптимизация, вдохновленная спиральной динамикой». Журнал расширенного вычислительного интеллекта и интеллектуальной информатики. 132 (5): 1116–1121. Дои:10.20965 / jaciii.2011.p1116.
  3. ^ а б Тамура, К .; Ясуда, К. (2016). «Алгоритм спиральной оптимизации с использованием периодических направлений спуска». Журнал SICE по контролю, измерениям и системной интеграции. 6 (3): 133–143. Bibcode:2016JCMSI ... 9..134T. Дои:10.9746 / jcmsi.9.134.
  4. ^ а б Тамура, К .; Ясуда, К. (2020). «Алгоритм спиральной оптимизации: условия и настройки сходимости». IEEE Transactions по системам, человеку и кибернетике: системы. 50 (1): 360–375. Дои:10.1109 / TSMC.2017.2695577.
  5. ^ Крус-Дуарте, Дж. М., Мартин-Диас, И., Муньос-Миньярес, Дж. У., Санчес-Галиндо, Л. А., Авина-Сервантес, Дж. Г., Гарсиа-Перес, А., и Корреа-Сели, К. Р. (2017). Первичное исследование алгоритма стохастической спиральной оптимизации. Международное осеннее совещание по энергетике, электронике и вычислительной технике (ROPEC) 2017 IEEE, 1–6. https://doi.org/10.1109/ROPEC.2017.8261609
  6. ^ Насир, А. Н. К .; Тохи, М. О. (2015). «Улучшенный алгоритм спиральной динамической оптимизации с инженерным приложением». IEEE Trans. Syst., Man, Cybern., Syst.. 45 (6): 943–954. Дои:10.1109 / tsmc.2014.2383995.
  7. ^ Насир, А. Н. К .; Ismail, R.M.T.R .; Тохи, М. О. (2016). «Адаптивный метаэвристический алгоритм спиральной динамики для глобальной оптимизации с приложением к моделированию гибкой системы» (PDF). Appl. Математика. Modell. 40 (9–10): 5442–5461. Дои:10.1016 / j.apm.2016.01.002.
  8. ^ Уади, А .; Bentarzi, H .; Ресиуи, А. (2013). «многокритериальный дизайн цифровых фильтров с использованием техники спиральной оптимизации». SpringerPlus. 2 (461): 697–707. Дои:10.1186/2193-1801-2-461. ЧВК  3786071. PMID  24083108.
  9. ^ Benasla, L .; Belmadani, A .; Рахли, М. (2014). «Алгоритм спиральной оптимизации для решения комбинированных экономических и эмиссионных задач». Int. J. Elect. Power & Energy Syst. 62: 163–174. Дои:10.1016 / j.ijepes.2014.04.037.
  10. ^ Сидарто, К. А .; Кания, А. (2015). «Нахождение всех решений систем нелинейных уравнений с помощью спиральной динамики вдохновило оптимизацию с кластеризацией». Журнал расширенного вычислительного интеллекта и интеллектуальной информатики. 19 (5): 697–707. Дои:10.20965 / jaciii.2015.p0697.
  11. ^ Kaveh, A .; Махджуби, С. (октябрь 2019 г.). «Подход к оптимизации гипотрохоидной спирали для оптимизации размеров и компоновки ферменных конструкций с множественными частотными ограничениями». Разработка с помощью компьютеров. 35 (4): 1443–1462. Дои:10.1007 / s00366-018-0675-6.