Непрерывные генетические алгоритмы
| Категория реферата: Рефераты по математике
| Теги реферата: рассказы, культурология как наука
| Добавил(а) на сайт: Платонов.
Предыдущая страница реферата | 2 3 4 5 6 7 8 9 10 11 12 | Следующая страница реферата
Таблица 1. Соответствие десятичных кодов и кодов Грея. Таким образом, при кодировании целочисленного признака мы разбиваем его на тетрады и каждую тетраду преобразуем по коду Грея. В практических реализациях генетических алгоритмов обычно не возникает необходимости преобразовывать значения признака в значение гена. На практике имеет место обратная задача, когда по значению гена необходимо определить значение соответствующего ему признака. Таким образом, задача декодирования значения генов, которым соответствуют целочисленные признаки, тривиальна. Кодирование признаков, которым соответствуют числа с плавающей точкой Самый простой способ кодирования, который лежит на поверхности – использовать битовое представление. Хотя такой вариант имеет те же недостатки, что и для целых чисел. Поэтому на практике обычно применяют следующую последовательность действий: Разбивают весь интервал допустимых значений признака на участки с требуемой точностью. Принимают значение гена как целочисленное число, определяющее номер интервала (используя код Грея). В качестве значения параметра принимают число, являющиеся серединой этого интервала. Рассмотрим вышеописанную последовательность действий на примере: Допустим, что значения признака лежат в интервале [0,1]. При кодировании использовалось разбиение участка на 256 интервалов. Для кодирования их номера нам потребуется таким образом 8 бит. Допустим значение гена: 00100101bG (заглавная буква G показывает, что используется кодирование по коду Грея). Для начала, используя код Грея, найдем соответствующий ему номер интервала: . Теперь посмотрим, какой интервал ему соответствует… После несложных подсчетов получаем интервал . Значит значение нашего параметра будет . Основные генетические операторы Как известно в теории эволюции важную роль играет то, каким образом признаки родителей передаются потомкам. В генетических алгоритмах за передачу признаков родителей потомкам отвечает оператор, который называется скрещивание (его также называют кроссовер или кроссинговер). Этот оператор определяет передачу признаков родителей потомкам. Действует он следующим образом: из популяции выбираются две особи, которые будут родителями; определяется (обычно случайным образом) точка разрыва; потомок определяется как конкатенация части первого и второго родителя. Рассмотрим функционирование этого оператора:
Допустим разрыв происходит после 3-го бита хромосомы, тогда
|