Лекция
Сразу хочу сказать, что здесь никакой воды про генетическое программирование , и только нужная информация. Для того чтобы лучше понимать что такое генетическое программирование , настоятельно рекомендую прочитать все из категории Эволюционные алгоритмы.
В искусственном интеллекте генетическое программирование (ГП) — автоматическое создание или изменение программ с помощью генетических алгоритмов. С помощью этой методологии «выращиваются» программы, все лучше и лучше (в соответствии с определенной функцией приспособленности для хромосом) решающие поставленную вычислительную задачу.
![]() |
Этот раздел не завершен.
Вы поможете проекту, исправив и дополнив его.
|
Выбор способа кодирования программы в генетическом алгоритме — один из основных вопросов генетического программирования. Об этом говорит сайт https://intellect.icu . Программа должна быть закодирована в таком виде, чтобы легко было автоматически вносить случайные изменения (оператор мутации) и объединять два алгоритма в один (оператор скрещивания).
Способы кодирования можно разделить на два класса:
![]() |
Этот раздел не завершен.
Вы поможете проекту, исправив и дополнив его.
|
Недревовидные представления программ также были предложены и успешно реализованы, например, линейное генетическое программирование, подходящее для традиционных императивных языков.
В древовидном представлении оператор скрещивания реализуется обменом между двумя деревьями какими-либо узлами вместе с их потомками (поддеревьями).
Пример:
individual.Children[randomChildIndex] = otherIndividual.Children[randomChildIndex];
В отличие от оператора скрещивания, оператор мутации затрагивает только одну хромосому. В древовидном представлении он может быть реализован изменением информации в узле или добавлением / удалением узла или целого поддерева. При этом надо следить за корректностью результатов оператора.
Пример:
individual.Information = randomInformation();
или
individual = generateNewIndividual();
Метагенетическое программирование — это ГП, в котором изменяется и, тем самым, «выращивается» не только заданная компьютерная программа, но и сами применяемые операторы скрещивания и мутации.
Комментарии
Оставить комментарий
Эволюционные алгоритмы
Термины: Эволюционные алгоритмы