(Некоторое время я размышлял, подходит ли это вопрос для сайта вопросов и ответов. Я думаю, что да - ответы могут быть частично субъективными, но я надеюсь, что в ответах я ищу объективные критерии. Возможно, SO - не лучший сайт в сети, но давайте попробуем здесь.)
Я задаю этот вопрос, потому что совсем недавно я попытался использовать алгоритм geneti c для проблема оптимизации с большим пространством параметров, и она не удалась, то есть не улучшалась со временем. Я перешел на имитацию отжига, и сходимость стала намного лучше. Так что либо моя реализация GA была неправильной, либо это был неподходящий инструмент для работы.
Типичным примером применения GA является задача коммивояжера, геном которой является порядком посещения городов. В этом есть смысл: «Объединение» или «пересечение» смешивает и переупорядочивает подмаршруты, которые потенциально уже являются оптимальными локально, но, изменяя порядок, в котором эти подмаршруты посещаются, можно повысить общую эффективность. Похожим примером может быть задача о рюкзаке.
Другой пример, с которым я столкнулся, - это использование ГА для нахождения максимума двумерной функции, координаты которой - геном. Вероятно, это было выбрано в качестве простого педагогического примера, чтобы сосредоточиться на том, как может быть реализован GA, но опять же, вопрос о том, является ли GA правильный выбор здесь в первую очередь, кажется менее чем ясным: разведение просто «произвольно» меняет местами координаты или - в эта реализация - берет среднее значение отдельных геномов, теряя всю историю оптимизации. Таким образом, для меня это пример проблемы, которая по своей сути не подходит для ГА, потому что смешивание геномов (координат), которое является основной идеей ГА, здесь не кажется полезным. И без него, то есть когда он сводится только к мутациям, ГА представляет собой просто случайное блуждание по фазовому пространству с перезапусками.
В общем, ГА более подходят для задач с дискретными пространствами решений с высокой комбинаторной сложностью, чем исследование непрерывных фазовых пространств. Какие еще аспекты следует учитывать?