Обсуждение статьи "Популяционные алгоритмы оптимизации: Изменяем форму и смещаем распределения вероятностей и тестируем на "Умном головастике" (Smart Cephalopod, SC)" - страница 2

 
fxsaber #:

Если правильно понял, то почти во всех статьях были показаны разные стратегии поиска. При этом не было игры с распределениями.

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

Судя по цифрам, Леви всех порвал. Получается, что для каждой стратегии поиска нужно делать несколько модификаций и смотреть влияние на общий рейтинг.

Автор крут! Спасибо!

Закомментировал переход на распределения.

и получил результат лучше, чем у равномерного распределения.

Спасибо.

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

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

 
fxsaber #:

В ГА MT5 все входные жестко заданы и распределение, похоже, просто равномерное.


Благодаря данному циклу статей стало понятно, что результаты могут сильно варьироваться не только от стратегии поиска, но и от ее значений входных параметров. Плюс задание распределений.

Как найти оптимальный для своей задачи - не совсем понятно. Потому что нужно оптимизировать оптимизируемое.

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

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

 
fxsaber #:
Просьба показать, как на тестовых функциях измерить качество ГА MT5.

Штатный ГА невероятно крутой, но есть недостатки - ограничена длина хромосомы, отсюда ограничение на шаг и на количество параметров (шаг и количество параметров связаны обратно пропорционально, увеличиваешь одно - уменьшается другое).

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

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

 
В статье приняты поправки с определением момента.
 

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

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

Более сложные методы оптимизации используют вероятностные распределения для моделирования неопределенности и аппроксимации сложных функций. Они позволяют эффективно исследовать пространство параметров и находить оптимальные решения с учетом случайности и шума в данных.

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


Правильно ли понимаю, что в каком-то сложном методе оптимизации столкнулись с использование неравномерной вероятности, после чего решили обобщить и исследовать?

Как дошли до смещения?


Понимаю, что неслучайно произошло, и ощущаете многое интуитивно. Просто у меня до такого уровня понимания, мягко говоря, далеко. Сейчас выглядит, как некое волшебство. Осознаю, что до такого варианта при текущих представлениях даже случайно не дошел бы.

 
fxsaber #:

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

Правильно ли понимаю, что в каком-то сложном методе оптимизации столкнулись с использование неравномерной вероятности, после чего решили обобщить и исследовать?

Как дошли до смещения?

Понимаю, что неслучайно произошло, и ощущаете многое интуитивно. Просто у меня до такого уровня понимания, мягко говоря, далеко. Сейчас выглядит, как некое волшебство. Осознаю, что до такого варианта при текущих представлениях даже случайно не дошел бы.

Идея применять распределения, отличные от равномерного, пришла году так в 2011-2012, когда показалось логичным исследовать более тщательно окрестности известных координат, и меньше обращать внимания на отдалённые, неизвестные.

Позднее узнал, что некоторые другие алгоритмы применяют не равномерные распределения, но в основном используется нормальное распределение.

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

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

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

Возможно, мои статьи не соответствуют четкому научному повествованию и далеки от математической строгости, но я стараюсь теоретическим больше предпочитать практические аспекты.


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

 
Andrey Dik #:

я стараюсь теоретическим больше предпочитать практические аспекты.

Спасибо за развернутый ответ. В своих потугах аналогично вижу смысл больше отдавать предпочтения практике.

Поэтому жду обертку для возможности применить данные алгоритмы.

Причина обращения: