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

Задана двумерная плоскость определенной размерности с координатной сеткой, которая делит плоскость на ячейки. При этом задаются данные для различных временных шагов, то есть состояние системы в начале, несколько промежуточных состояний и конечное состояние системы (рис. 3).

Рис. 3. Набор временных срезов

Предполагается, что каждая ячейка плоскости управляется одним и тем же клеточным автоматом.

Цель поставленной задачи – вырастить клеточный автомат, который наиболее точно описывает заданную физическую систему.

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

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

Глава 2. Строение хромосомы клеточного автомата для генетического программирования

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

    1. Строение хромосомы клеточного автомата

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

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

Количество базовых генов соответствует количеству состояний в клеточном автомате. Таким образом, базовый ген, под названием «StateGene» описывает определенное состояние автомата. «StateGene» состоит из генов переходов клеточного автомата, которые называются «TransitionGene» (рис.4).

Рис. 4. Строение хромосомы.

Каждый ген перехода состоит из списка генов условий на переход и генов действий, которые будут осуществляться в случае этого перехода. В случае отсутствия гена перехода из состояния n1 в n2, это означает, что в клеточном автомате, описываемом заданном геном нет перехода из состояния n1 в n2 (рис. 5). То есть длина хромосомы зависит от количества состояний в клеточном автомате, который описывает данная хромосома.

Рис. 5. Строение гена переходов.

Условия переходов бывают двух видов:

  1. Условия наличия рядом с текущей клеткой определенного числа клеток с состояниями [k,.., m]. Этот вид условия задается в виде специальной строки, состоящей из трех частей:

      • номер состояния;

      • операция сравнения;

      • константа;

  1. Условия соотношения данных между текущей клеткой и определенной из окружающих клеток. Этот вид условия задается при помощи специального дерева, в верхнем узле которого находится операция сравнения, а ниже по дереву операции вычисления условия. Значения условий сравниваются с нулем. Таким образом, вместо двух деревьев разбора, хранится только одно дерево разбора и константа. Также такой подход упрощает реализацию генетических операций.

В случае отсутствия генов условий подразумевается, что условие на данный переход всегда является истинным.