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

Операция мутации состоит в том, что производятся случайные изменения в произвольных генах особи. Все варианты операции мутации в данной работе являются в модифицировании какого-либо гена хромосомы, то есть производят модифицирование поддерева в хромосоме.

Ниже описаны некоторые из используемых подопераций мутации:

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

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

  3. мутация существующего перехода:

  • мутация действий:

    • изменение действия на переходе;

    • добавление случайного действия;

    • удаление уже существующего действия;

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

    • изменения случайного условия на переходе;

    • добавление случайного условия;

    • удаление уже существующего условия;

  • обмен переходами между двумя состояниями.

    Для генов условий и действий, содержащих деревья разбора, были применены следующие варианты мутаций (рис. 11):

    1. Изменение типа операции в вершине (например: с операции «+» на «-»);

    2. Изменение значения в вершине;

    3. Замена какого-либо поддерева на случайное поддерево;

    4. Замена вершины использования переменной в клеточном автомате:

    • на использование другой переменной;

    • на случайное поддерево;

    • на случайную константу.

    Рис. 11. Примеры мутаций деревьев разбора

    В процессе разработки операции мутации хромосом были опробованы два подхода работы с исходной хромосомой:

    • Операция мутации проводится над копией хромосомы, родительская хромосома тоже участвуют в отборе;

    • Операция мутации проводится над копией хромосомы, родительская хромосома исключается из отбора, но может участвовать в других генетических операциях;

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

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

    Выводы по главе 2

    Разработана удобная форма представления произвольного клеточного автомата для генетического алгоритма. Описаны основные генетические операции для разработанного представления, разобраны их вариации,

    Глава 3. Применение генетического алгоритма для генерации клеточных автоматов на основе тестовых наборов

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

      1. Недостатки существующих генетических алгоритмов при решении поставленной задачи.

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

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

    Другой проблемой является такое состояние популяции, когда лучшее значение функции приспособленности не меняется на протяжении большого числа поколений, такое состояния является стагнацией генетического алгоритма.

    В данной работе рассматриваются несколько способов преодолеть описанные выше недостатки:

    1. специальный генетический алгоритм, который состоит из нескольких режимов работы;

    2. модифицированный алгоритм скрещивания хромосом;

    3. алгоритм каскадной фитнесс функции;

    4. специальный алгоритм отбора нового поколения;

    5. упрощение клеточных автоматов.

    Все эти модификации позволяют улучшить «сходимость» генетического подхода при решении поставленной задачи.

      1. Создание начального поколения.

    Начальное поколение состоит из фиксированного числа случайно генерированных автоматов. Все автоматы в поколении имеют одинаковое наперед заданное количество состояний, но количество переходов между состояниями и условия переходов и действия задаются случайным образом. Таким образом, все начальное поколение не содержит каких-либо наперед заданных хромосом.