Различие между программированием экспрессии гена и декартовым генетическим программированием

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

  1. (как) эти существенно различные понятия?
  2. Я считал, что косвенное кодирование инструкций по GP является эффективной техникой (и GEP и CGP, делают это). Там был достигнут своего рода согласие, что косвенное кодирование имеет устаревшего классического древовидного GP оснований?
12
задан Kyle Rozendo 13 August 2010 в 10:11
поделиться

1 ответ

Ну, похоже, что есть некоторая разница между программированием экспрессии генов (GEP) и картезианским генетическим программированием (CGP или то, что я считаю классическим генетическим программированием), но эта разница может быть более раздута, чем это действительно должно быть. Обратите внимание, что я никогда не использовал GEP, поэтому все мои комментарии основаны на моем опыте работы с CGP.

В CGP нет различия между генотипом и фенотипом, другими словами - если вы смотрите на "гены" CGP, вы также смотрите на их выражение. Здесь нет кодирования, т.е. дерево экспрессии является самим геном".

В GEP генотип выражается в фенотипе, поэтому, если вы смотрите на гены, вы не сможете легко узнать, как будет выглядеть экспрессия. Изобретательница" GP, Кандида Феррейра, написала действительно хорошую статью, и есть несколько других ресурсов, которые пытаются дать краткий обзор всей концепции.

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

Отбор:

  • случайный
  • колесо рулетки
  • top-n
  • take half
  • и т.д.

Частота турнира:

  • раз в эпоху
  • раз на каждый экземпляр данных
  • раз в поколение.

Структура турнира:

  • Берем 3, убиваем 1 и заменяем его ребенком двух других.
  • Отсортируйте всех особей в турнире по пригодности, убейте нижнюю половину и замените ее потомком верхней половины (где нижняя - худшая пригодность, а верхняя - лучшая).
  • Случайно выберите особей из турнира для спаривания и убейте лишних особей.

Племена
Популяция может быть разделена на племена, которые развиваются независимо друг от друга:

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

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

Это лишь некоторые из вещей, которые могут сильно повлиять на производительность CGP, и когда я говорю "сильно", я имею в виду, что это в том же порядке или больше, чем производительность Ferriera. Так что если Ферриера не слишком много возилась с этими идеями, то она могла наблюдать гораздо более медленную работу CGP... особенно если она ничего не делала для борьбы с застоем. Поэтому я бы был осторожен, читая статистику производительности GEP, потому что иногда люди не учитывают все имеющиеся там "оптимизации".

7
ответ дан 2 December 2019 в 21:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: