Пожалуйста, исправьте меня, если я ошибаюсь, но я понимаю, что кроссоверы, как правило, приводят к локальным оптимумам, в то время как мутация увеличивает случайное блуждание поиска, тем самым, как правило, помогает избежать тенденций на локальном оптимальном уровне. Это понимание я получил от чтения: Introduction to Genetic Algorithms и Wikipedia's article on Genetic Operators.Объединение нескольких генетических операторов
Мой вопрос: какой лучший или самый идеальный способ выбрать, какие люди проходят кроссовер и которые проходят мутацию? Есть ли правило для этого? Каковы последствия?
Заранее спасибо. Это довольно конкретный вопрос, который немного сложно для Google (для меня как минимум).
Это отличный ответ. Возможно, это пропустило это в моих лекциях или еще что-то. Но ваше замечание относительно мутации и того, как это должно произойти только по очень низкой скорости, - это то, что мой профессор мог пропустить. Благодаря! – oaskamay
Я никогда не выбирал людей для мутации случайным образом. Мои GA обычно выбирают человека, а затем определяют, происходит ли кроссовер. Если это так, я выбираю другого человека и пересекаю его, производя ребенка (ren). Затем для каждого из детей (или первого выбранного человека, если xover не произошло), я определяю, будет ли он мутировать. Подводя итог, каждый индивид 1) не пересекается, не мутируется или 2) пересекается, не мутируется или 3) не пересекается, не мутируется или 4) не пересекает и не мутирует. GA - это своего рода алхимия, вам просто нужно попробовать, что работает для вашего домена. – zegkljan
Если вы «посещаете» людей один за другим, как вы можете определить, могут ли они участвовать в кроссовере? Я имею в виду, это звучит сложно, не зная относительной пригодности. –