Cтраница 4
При построении новых структур для последующего их опробывания оператор кроссинговера использует лишь информацию, присутствующую в структурах текущей базы знаний. Если конкретная информация отсутствует либо в силу ограниченности памяти, либо из-за потери в процессе отбора на предыдущем этапе итерации, то этот оператор не в состоянии создать содержащую ее новую структуру. Для привнесения новой информации в базу знаний предусмотрен оператор мутации, который произвольным образом изменяет одну или несколько компонент выбранной структуры. [46]
Наблюдается большое сходство между эволюционными стратегиями и эволюционными программированием в их приложениях к задачам оптимизации непрерывных функций с действительными значениями. Действительно, оба метода похожи на генетические алгоритмы. Принципиальное различие между ними заключается в том, что эволюционное программирование не связано с конкретной формой представления особей, поскольку оператор мутации не требует применения какого-либо специального способа кодирования. [47]
Мутация 2-го и 3-го потомков. Реализуется в случае выполнения условия мутации. При этом применяется оператор мутации ко второму и третьему потомкам г-й особи. Оператор мутации представляет собой механизм однобитной мутации, при которой инвертируется один бит строки-хромосомы. [48]
![]() |
Схема модифицированного оператора кроссинговера.| Пример оператора мутации.| Пример оператора сегрегации. [49] |
Возможны случаи, когда выбранные строительные блоки могут иметь частичное или полное совпадение элементов. При полном совпадении элементов производится копирование в потомка только одного из строительных блоков. При частичном совпадении - строительный блок из первого родителя копируется полностью, а из второго родителя копируются несовпадающие элементы. Оператор мутации может выполняться случайно и направленно. [50]
В оптимизационных задачах, с нашей точки зрения, интерес может представлять использование ОМ, основанных на знаниях о решаемой задачи. Такие ОМ называются аргументированными знаниями. В них могут переставляться местами любые выбранные гены в хромосоме. Как правило, в таких ОМ точка или точки мутации определяются не случайно, а направленно. Например, в позиционном операторе мутации две точки мутации выбираются случайно, а затем ген, соответствующий второй точке мутации, размещается в позицию перед геном, соответствующим первой точке мутации. [51]
В случае AI популяция решений ( заданных размещений) формируется случайным образом. В случае АЗ популяция решений получается путем неоднократного применения последовательного алгоритма. Формирование популяции АЗ производится совместно случайным и направленным образом. Отметим, что ЛПР на основе блока эволюционной адаптации может создавать любое число популяций другими способами. После формирования популяции к каждому ее элементу применяется оператор мутации, причем ОМ может выполняться независимо для каждого элемента популяции. [52]
![]() |
Представление эволюционной программы в виде псевдокода. [53] |
Каждая особь в эволюционной программе представляет одно из потенциальных решений, т.е. в данном случае некоторый граф. Исходная популяция графов Р ( 0), формируемая случайным образом либо создаваемая при реализации какого-либо эвристического процесса, считается отправной точкой ( k 0) эволюционной программы. Функция приспособленности, которая обычно задается, связана с системой ограничений решаемой задачи. Эта функция определяет приспособленность каждого графа путем выявления лучших и худших особей. Очень часто такие операторы обусловливаются характером решаемой задачи. Например, если ищется граф типа дерево, то можно предложить оператор мутации, который удаляет ветвь из одного графа и добавляет новую ветвь, объединяющую два отдельных подграфа. Другие возможности заключаются в проектировании мутации независимо от семантики задачи, но с включением в функцию приспособленности дополнительных ограничений - штрафов для тех графов, которые не являются деревьями. [54]