Сравните и сопоставьте метод Монте-Карло и эволюционные алгоритмы - PullRequest
12 голосов
/ 19 сентября 2011

Какова связь между методом Монте-Карло и эволюционными алгоритмами ? На первый взгляд они кажутся несвязанными методами моделирования, используемыми для решения сложных задач. Для каких проблем лучше всего подходит каждый? Могут ли они решить тот же набор проблем? Какая связь между двумя (если она есть)?

Ответы [ 2 ]

17 голосов
/ 19 сентября 2011

«Монте-Карло», по моему опыту, сильно перегружен.Люди, кажется, используют его для любой техники, которая использует генератор случайных чисел (глобальная оптимизация, анализ сценариев (Google «Симуляция Монте-Карло» в Excel)), стохастическая интеграция ( расчет Пи , который каждый использует для демонстрации MC).Я полагаю, поскольку вы упомянули в своем вопросе об эволюционных алгоритмах, что вы говорите о методах Монте-Карло для математической оптимизации: у вас есть своего рода фитнес-функция с несколькими входными параметрами, и вы хотите минимизировать (или максимизировать) эту функцию.

Если ваша функция хорошо себя ведет (есть единый глобальный минимум, к которому вы придете независимо от того, с каких входов вы начинаете), тогда вам лучше всего использовать метод минимизации с определением, такой как метод сопряженного градиента.методы классификации обучения включают в себя поиск параметров, которые минимизируют ошибку наименьших квадратов для гиперплоскости по отношению к обучающему набору.другой, хорошо ведущий себя, парабалоид в n-мерном пространстве.Рассчитайте уклон и покатитесь вниз.Easy peasy.

Если, однако, ваши входные параметры являются дискретными (или если ваша функция пригодности имеет разрывы), то более невозможно точно рассчитать градиенты.Это может произойти, если ваша фитнес-функция рассчитывается с использованием табличных данных для одной или нескольких переменных (если переменная X меньше 0,5, используйте эту таблицу, иначе используйте эту таблицу).В качестве альтернативы у вас может быть программа, которую вы получили от НАСА и которая состоит из 20 модулей, написанных разными командами, которые вы запускаете как пакетное задание.Вы снабжаете его входом, и он выплевывает число (например, черный ящик).В зависимости от входных параметров, с которых вы начинаете, вы можете получить ложный минимум.Методы глобальной оптимизации пытаются решить эти типы проблем.

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

Эволюционные алгоритмы слабо основаны на эволюционных аналогиях.Имитация отжига основана на аналогиях с отжигом в металлах.Техники роя частиц также основаны на биологических системах.Во всех случаях вы должны сравнивать результаты с простой случайной (иначе говоря, «монте-карло») выборкой конфигураций ... это часто дает эквивалентные результаты.

Мой совет - начать с использования детерминированного градиентного методапоскольку они обычно требуют гораздо меньшего количества функциональных оценок, чем стохастические методы / методы Монте-Карло.Когда вы слышите шаги копыта, думайте, что лошади не зебры.Запустите оптимизацию из нескольких разных начальных точек, и, если вы не имеете дело с особо неприятной проблемой, вы должны получить примерно одинаковый минимум.Если нет, то у вас могут быть зебры, и вам следует рассмотреть возможность использования метода глобальной оптимизации.

3 голосов
/ 19 сентября 2011

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

Другие методы Монте-Карло: метрополия, Ван-Ландау, параллельный отпуск и т. Д.

OTOH, Эволюционные методы используют «техники», заимствованные у природы, такие как мутация, кроссинговер и т. д.

...