Comments 8
Правильно ли я понял, что это -- что-то вроде комбинации градиентного спуска и генетического алгоритма?
Согласен с комментарием выше, все операторы есть в генетическом алгоритме.
Хемотаксис = оператор мутации в ГА
Репродукция = оператор репродукции в ГА
Элиминация-дисперсия = оператор разнообразия в ГА или реализация модели де Фриза для ГА
Алгоритм использовал когда-то. Не впечатлил. Достаточно примитивная метаэвристика. Я бы предложил, что не к той задаче приложил, но это не отменяет того факта, что доступные инструменты в BFA являются лишь скромным подмножеством инструментов в ГА. Но да, BFA более легковесное.
Про био-вдохновлённые алгоритмы интересно читать, особенно в их биологическом аспекте.
Но когда доходит до реализации в коде и математических формулах, ощущение словно их авторы стараются сделать один сложнее другого, чисто чтобы пройти академический анти-плагиат и фармить себе дальше хирш через цитирования.
А когда смотришь на их названия и источники вдохновения более «экзотических» алгоритмов из разряда: алгоритм кукушки, стаи волков, голодного студента в ожидание степухи и т.п., ощущение что ещё и проверяют грань дозволенного, где наконец-то поймут что они откровенно стебутся и журнал отклонит публикацию статьи.
Совершенно верно. Повторили один в один мой комментарий к предыдущей статье автора)) без бенчмаркинга, цифр, все это пустое. Последний раз когда я увидел реально мощный алгоритм - муравьиный. Я испробовал, показал крутые результаты. После этого начался понос роевых алгоритмов. Не утверждаю, что все, но многие из них это треш для распила грантов и отчёта ради отчётов.
А не подскажете, как с ними бенчмарки проводить наиболее объективным образом? Если поделитесь статьёй которую можно за пример использовать для тестирования их - отдельное спасибо.
Мне роевые алгоритмы очень нравятся как концепт, но когда их начинают обмазывать трёхмерными интегралами, логарифмами, гауссовыми уравнениями или ещё лучше, квантовые уравнения 4х-мерных шахмат и это всё разом - хочется вообще плакать.
У меня в планах всё лежит пет-проект с целью попробовать самостоятельную реализацию роевого алгоритма с нуля в реалтайме, с визуализацией, но в рамках KISS - Keep It Super Simple.
Отдельно хочется ещё его в железо запихнуть, какие-нибудь простенькие танкетки на esp32 сделать, простенькими квадриками или руками-манипуляторами.
По бенчмаркам - это обычно к зарубежным статьям, там легче с этим. Я обычно по задачам быстро нахожу, например "TSP benchmarks" - мне нравится именно задача коммивояжёра, потому что для неё есть много решений и бенчмарок известных, это такая тестовая классическая NP полная задача, можно найти статьи в которых пишут о своих результатах. Есть проект с предзагруженными бенчмарками:
https://github.com/optimizationBenchmarking/tspSuite/tree/master/src/main/resources/org/logisticPlanning/tsp/benchmarking/instances
У каждой бенчмарки свое название, можно искать прямо по названию. Но опять же, легче находить в англоязычных статьях.
Алгоритмы, вдохновлённые природой. Часть 2