Генетические алгоритмы В чем преимущества половых генетических алгоритмов по сравнению с бесполыми?

Интуитивно я думаю, что если я хочу найти «лучший» набор параметров, я могу просто взять 1 парня с лучшими показателями из подмножества множества детей, заставить этого парня создать 100 детей, похожих на него, выбрать лучшего исполнителя. и повторить. Какой цели служит выбор двух лучших и скрещивание? Если на то пошло, почему бы не выбрать 3, 4 или 10 родителей («выведенных из оргии» зигот), от которых будет создаваться каждое поколение детей?


person pete    schedule 07.07.2012    source источник


Ответы (4)


«из подмножества множества детей» — как были созданы эти дети и какой механизм отличает их друг от друга? "родить 100 детей, похожих на себя" - если не точно таких же, как он сам, то какой механизм делает их похожими, но не идентичными?

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

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

person hatchet - done with SOverflow    schedule 07.07.2012

Подумайте об этом так: ваш лучший парень, возможно, лучше среднего, скажем, в 3 областях из 10. Небольшие его вариации (его бесполый ребенок), вероятно, будут иметь преимущества в тех же 3 областях. областей: может быть 4, а может и 2, в зависимости от мутации. Но лучший парень и лучшая девушка лучше, возможно, в 5 областях из 10 (он лучше среднего в 3, она лучше среднего в 3 и, возможно, есть 1, где они пересекаются), и поэтому, если они имел большое количество детей, один из них может быть лучше среднего в 5 областях (и, возможно, один из них не унаследует никаких преимуществ — такие вот перерывы). И если этот ребенок с 5 областями преимущества спаривается с другим ребенком с 5 областями преимущества, то, несмотря на то, что есть больше шансов на перекрытие преимущества, все еще есть хороший шанс (в нашем мире «10 генов»), что великий. у ребенка будут еще более выгодные гены).

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

person Larry OBrien    schedule 08.07.2012

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

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

Это связано с теоремой схемы.

person Novak    schedule 08.07.2012

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

На самом деле, вы можете использовать сочетание одиночного и двойного родителя в своем GA. Как уже указывалось в одном ответе, единственный родительский элемент эквивалентен локальному поиску, и технически вы будете реализовывать меметический алгоритм, который обычно является улучшением простого ГА.

person rlinden    schedule 13.07.2012