Научная статья на тему 'Структура хромосом при кодировании списков, содержащих фиксированные числа нулей и единиц'

Структура хромосом при кодировании списков, содержащих фиксированные числа нулей и единиц Текст научной статьи по специальности «Математика»

CC BY
93
41
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Структура хромосом при кодировании списков, содержащих фиксированные числа нулей и единиц»

11. Nissen V. Einführung in evolutionäre algorithmen. Braunschweig: Vieweg, 1997.

12. Montana D.J. Strongly typed genetic programming// Evolutionary computation. 1995.

13. Nordin P., Banzhaf W. Evolving turing-complete programs for a register machine with selfmodifying code// Proc. of the sixth int. conf. on genetic Programming. San Francisko: Morgan Kaufmann, 1995.

14. Родзин (IM. Гибридные интеллектуальные системы на основе алгоритмов эволюционного программирования// Новости ИИ. 2000. №3.

УДК 681.3.001.63

Б.К. Лебедев1

СТРУКТУРА ХРОМОСОМ ПРИ КОДИРОВАНИИ СПИСКОВ,

СОДЕРЖАЩИХ ФИКСИРОВАННЫЕ ЧИСЛА НУЛЕЙ И ЕДИНИЦ

Разработка генетического алгоритма включает три основных компонента: разработка структуры, принципов кодирования и декодирования хромосом; разработка основных генетических операторов; разработка общей структуры генетического поиска [1,2].

Представление исходной формулировки задачи в виде трех компонент в очень большой степени определяют усилия, необходимые для ее решения [3,4].

Для некоторых задач решение полностью определяется списком, составленным из нулей и единиц М = < 0, 1, 1, 0, 0, 1>с фиксированным числом нулей - n0 и числом единиц - n1. С помощью списка М можно некоторое множество А, мощность которого \А I = n0 + n1 , разбить на два подмножества А1 и А2 та кие, что \A11 = n0, а IА2 I = n1.

Представим матрицу Р смежности (или инцидентности), задающей некоторый граф G, в виде набора строк Ri , R = (Ri | i = 1,2,3,.,.,n}, где Rt = (ry | j = 1,2,..., n }. Каждая строка Ri содержит фиксированное число нулей - n0 и число единиц - n1, n= n0 + n1. Путем последовательного объединения строк Ri матрица смежности R также представляется в виде списка R* с фиксированным числом нулей и единиц. Для представления неориентированных графов можно воспользоваться “треугольной” матрицей (той частью основной матрицы, которая располо-

), -1 n. “ ” - n1

, .

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

Будем использовать множество нулей в качестве опорного множества для кодирования списка М. Сформируем на базе опорного множества нулей множество позиций Р (рис.1), в которых могут располагаться единицы, образующие совместно с нулями список М. Если число нулей n0, то число позиций Р равно n0+ 1. Каждая из n1 единиц может быть расположена в любой из позиций pt е P = (pt / i = 1, 2, ..., (n0 + 1)}.

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

1 Работа выполнена при поддержке РФФИ, гранты №01-01-000-44, 02-01-01-275

равен п1, а значением элемента списка является число, лежащее в диапазоне 1 + (п0 + 1). Таким образом, Q является кодом списка М.

Рис.1

Например, пусть п1 = 4, п0 = 4, Q = 5, 3, 3, 1. Тогда М* = <1, 0, 0, 1, 1, 0, 0, 1>. Отметим, что порядок расположения элементов в списке Q не имеет значения, важно только, какие значения имеют элементы списка Q. На основе выше из, ,

(рис.2). __________________________________________

Hi H2 H нп

Рис.2

Хромосома Н = {Hi | i = 1, 2, ..., п } представляет собой объединение множества частей Hi . Каждая часть Hi соответствует графу Gi (задаваемому матрицей смежности Я). В свою очередь, каждая часть Hi = {И* | к = 1, 2, ..., ni} является объединением частей Ик (рис.3). Каждая часть Ик соответствует строке Щ матрицы Я. _________________________________________

Hi H,2 Hk Hini

Рис.3

Структура Нк (рис.4) эквивалентна структуре кода Q, несущего информацию

о списке М (строке Я,]). Нік состоит из генов g¡k, значениями которых являются числа, лежащие в диапазоне 1 +- wik, где wik равно числу нулей плюс единица. Число генов в Иік равно числу единиц в строке Ку .

ik ik ik ik

g 1 g 2 gl g V

Рис.4

Как уже указывалось выше, порядок расположения элементов в списке Q и, следовательно, в части Ик хромосомы не имеет значения. Это приводит к избыточности пространства решений, представленного хромосомами. Пусть Рк - число перестановок элементов в списке Ик Это значит, что одной строке Щ матрицы Щ соответствует Рк списков Ик. Тогда одному множеству графов соответствует

.

i к

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

При формировании отдельной хромосомы генам в пределах И* приеваивают-ся случайные значения в диапазоне 1 +- ^¡к.

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

Постоянными параметрами, определяемыми исходным заданием (исходными данными) и необходимыми для оперирования с хромосомами и декодирования, являются: п - число графов; п{ - число строк гк каждого графа О; для каждой строки гк число нулей - (^к - 1) и число единиц - ук. Трудоемкость декодирования как основной, так и модифицированной хромосом имеет одну и ту же оценку - О(Ь), где Ь - длина хромосомы.

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

Для описанной выше основной структуры хромосомы для любой пары хромосом гомологичными являются гены, расположенные в одном и том же локусе, а гомологичными участками являются участки, соответствующие одной и той же части хромосом Hi либо Нк. В соответствии с этим используются три типа крос-синговера: К1, К2, К3. При кроссинговере К1 осуществляется обмен гомологичными частями Н, при кроссинговере К2 - обмен гомологичными частями Нк, а при крос-синговере К3 - обмен гомологичными генами.

Во всех случаях реализация кроссинговера осуществляется следующим образом. Последовательно просматриваются гомологичные участки или гены и с вероятностью РК1 для К1 (рис.5), РК2 для К2 (рис.6), РК3 для К3 (рис.7) осуществляется .

В случае модифицированной структуры хромосомы гомологичными будут те

,

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

лк ik

начиная со второго. Если для пары генов g1^ и g2 ^ , расположенных в текущем

, „ у ik ^ ik

локусе I родительской пары хромосом, выполняются условия g1, > g2,_

I _1

g2г|k >*11_1 , то между локусами (I -1) и I проводится секущая линия (рис.8).

Н11 Н12 Н1з Н14 Н1, Н1„ Н1.2 Н1,з Н1.4

$ $ $ *

Н21 Н22 Н23 Н24 Н2, Н2„ Н2а Н2зз Н2М

Н21 Н12 Н23 Н14 Н1, Н1и Н2а Н1,з Н2и

Н2' Н11 Н22 Н1з Н24 Н2, Н2.1 Н1.2 Н2,з Н1.4

Рис.5

Рис.6

И1к 1 3 1 2 4 5 И1к 2 3 3 4 7

% % ♦ X

И21к | 1 3 5 4 3 И2к 1 2 6 6 6

и и

И1гк 1 1 2 4 3 И1к 1 3 6 6 7

И2гк 3 3 5 4 5 И2к 2 2 3 4 6

Рис.7 Рис.8

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

Таким образом, кроссинговер К3 для модифицированных хромосом выполняется следующим образом. Предварительно родительская пара разбивается на го. -логичных участков и с вероятностью РК3 осуществляется обмен (см. рис.8).

Суть оператора мутации - в произвольном изменении значений генов. Реализация оператора мутации осуществляется следующим образом. Последовательно просматриваются локусы хромосом. При этом отслеживается номер части Ик, в которой расположен рассматриваемый локус. С вероятностью Рт осуществляется мутация гена в рассматриваемом локусе. При этом, в случае использования основной структуры хромосомы, гену присваивается случайное значение в диапазоне 1 + wik, где wik - число горизонтальных участков в маршруте, реализующем ребро гк, плюс единица. На рис.9 мутации подверглись гены, расположенные во втором и четвертом локусах, wik = 8.

В случае модифицированной структуры хромосомы ген g ^ принимает случайное значение в следующем диапазоне:

1 ¿g ^ ¿gf+1, если g I первый в Ик и | Ик | > 1;

gf_1 ^g1¡k ^к, если - последний в Ик и | Ик| > 1;

гк ¡к ¡к ¡к „ „

g 1_1 ^g¡ -gl+l, если gl - ни первый, ни последний и | Ик| >1;

1 ¿g,^ ¿2, если | Ик | = 1.

При таком способе гены по-прежнему останутся упорядоченными по возрастанию их значений в пределах каждой части Ик На рис.10 мутации подверглись гены во втором и пятом локусах. Во втором локусе ген может принять значение в интервале 2 +- 3, в пятом локусе - в интервале 4 +- 8.

Hik 3 7 8 2 1 7 Hik 2 2 3 4 7 8

H'ik 3 1 8 5 1 7 H'ik 2 3 3 4 6 8

Рис.9 Рис.10

Как видно из алгоритмов, реализующих операторы кроссинговера и мутации, оценка их временной сложности имеет вид O(L), где L - длина хромосомы.

Итак, достоинством предложенной структуры хромосомы и принципов ее декодирования является:

1) отсутствие сложных элементов;

2) линейные оценки пространственных сложностей и временных сложностей алгоритма декодирования равняется O(H);

3) хромосомы и гены, расположенные в одних и тех же локусах, гомологичные.

ЛИТЕРАТУРА

1. Handbook of Genetic Algorithms, Edited by Lowrence Davis, Van Nostrand Reinhold, New York, 1991. 385p.

2. Курейчик B.M. Генетические алгоритмы: Монография. Таганрог: Изд-во ТРТУ, 1998. 242 с.

3. Лебедев Б.К. Методы поисковой адаптации в задачах автоматизированного проектирования СБИС: Монография. Таганрог: Изд-во ТРТУ, 2000. 192 с.

4. Лебедев Б.К. Методы поисковой адаптации для решения оптимизационных задач // Новости искусственного интеллекта. М., 2000, №3. С.66-79.

УДК.621.3.342

В.В. Курейчик, О.В. Смирнова1 ЭВОЛЮЦИОННОЕ МОДЕЛИРОВАНИЕ ПРИ ПРИНЯТИИ РЕШЕНИЙ

Основой для возникновения ЭМ считается модель биологической эволюции и методы случайного поиска [1]. В [1] отмечено, что случайный поиск (СЛП) возник как реализация простейшей модели эволюции, когда случайные мутации моделировались случайными шагами оптимального решения, а отбор - устранением»

.

[2-4] -

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

, ( ). Основная задача генетических алгоритмов оптимизировать целевую функ. , , комбинацию элементов из некоторого множества, и оптимизирует функцию F(n).

n - . . -

ские алгоритмы манипулируют популяцией хромосом на основе механизма натуральной эволюции.

1 Работа выполнена при поддержке РФФИ, грант №02-01-01-275

i Надоели баннеры? Вы всегда можете отключить рекламу.