Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГА / ГА / tikhomirov.docx
Скачиваний:
78
Добавлен:
26.04.2015
Размер:
1.11 Mб
Скачать
      1. Операция скрещивания с использованием хранилища хромосом.

Создается отдельная пустая популяция “Graveyard”, которая не участвует в генетических операциях. В эту популяцию добавляются особи, которые не попали в следующее поколение эволюции, при этом размер контролируется путем выбора произвольных n особей. Также в это хранилище попадают гены, которые удаляются из хромосом в процессе упрощения (п. 3.7) но могут пригодиться в последующих итерациях генетического алгоритма. Такой подход позволяет всегда иметь разнообразие в особях.

Операции скрещивания (рис. 9):

  1. Стандартная операция скрещивания, действие которой заключается в обмене генами между особями в текущей популяции.

  2. Операция скрещивания между особью из текущей популяции и из популяции «Graveyard», причем право на участие в отборе имеет особь, основа которой была в популяции, участвующей в эволюции.

Каждая операция скрещивания состоит из двух вариантов:

  1. Обмен несколькими «State» генами между особями, то есть происходит обмен состояниями.

  2. Обмен одним из составных генов между особями, то есть обмен переходами, условиями и действиями на переход. Причем возможен обмен генами, которые находятся в разных «State» генах.

Рис. 9. Схема операции скрещивания.

      1. Операция инъекции хромосом

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

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

Алгоритм работы операции выглядит следующим образом: находятся все различия между двумя хромосомами и затем производится скрещивание между хромосомой из текущей популяции и «разностной» хромосомой.

Ниже предложены основные этапы работы этой операции:

  • Выбор особи из текущей популяции;

  • Выбор особи из хранилища результатов предыдущих запусков генератора;

  • Получение «разности» между хромосомой из хранилища результатов предыдущих запусков генератора и хромосомой из популяции;

  • Операция скрещивания между разностной хромосомой и хромосомой из популяции.

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

Рис. 10. Пример получения хромосомы разности двух хромосом

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