Б.К. Лебедев1 СТРУКТУРА ХРОМОСОМ ПРИ КОДИРОВАНИИ

advertisement
Материалы Международной конференции
“Интеллектуальные САПР”
11. Nissen V. Einfuhrung in evolutionare 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. Родзин С.И. Гибридные интеллектуальные системы на основе алгоритмов эволюционного программирования// Новости ИИ. 2000. №3.
УДК 681.3.001.63
Б.К. Лебедев1
СТРУКТУРА ХРОМОСОМ ПРИ КОДИРОВАНИИ СПИСКОВ,
СОДЕРЖАЩИХ ФИКСИРОВАННЫЕ ЧИСЛА НУЛЕЙ И ЕДИНИЦ
Разработка генетического алгоритма включает три основных компонента:
разработка структуры, принципов кодирования и декодирования хромосом; разработка основных генетических операторов; разработка общей структуры генетического поиска [1,2].
Представление исходной формулировки задачи в виде трех компонент в
очень большой степени определяют усилия, необходимые для ее решения [3,4].
Для некоторых задач решение полностью определяется списком, составленным из нулей и единиц М = < 0, 1, 1, 0, 0, 1> с фиксированным числом нулей - n0
и числом единиц – n1. С помощью списка М можно некоторое множество А, мощность которого А= n0 + n1 , разбить на два подмножества А1 и А2 такие, что
А1= n0, аА2= n1.
Представим матрицу Р смежности (или инцидентности), задающей некоторый граф G, в виде набора строк Ri , R = {Ri | i = 1,2,3,…,n}, где Ri = {rij | j =
1,2,…, n }. Каждая строка Ri содержит фиксированное число нулей - n0 и число
единиц – n1, n= n0 + n1. Путем последовательного объединения строк Ri матрица
смежности R также представляется в виде списка R* с фиксированным числом
нулей и единиц. Для представления неориентированных графов можно воспользоваться “треугольной” матрицей (той частью основной матрицы, которая расположена выше или ниже главной диагонали), строки которой имеют переменную длину от 1 до n. Если для всех строк “треугольной” матрицы число единиц – n1 больше
нуля, то граф связен.
Разработка структуры хромосомы производилась так, чтобы гены в одних и
тех же локусах хромосом являлись гомологичными, так как это упрощает выполнение генетических операторов кроссинговера и мутации.
Будем использовать множество нулей в качестве опорного множества для кодирования списка М. Сформируем на базе опорного множества нулей множество
позиций Р (рис.1), в которых могут располагаться единицы, образующие совместно с нулями список М. Если число нулей n0, то число позиций Р равно n0+ 1. Каждая из n1 единиц может быть расположена в любой из позиций pi ∈ P = { pi  i = 1,
2, …, (n0 + 1)}.
Всевозможным вариантам размещения единиц в позициях Р совместно с
опорным множеством нулей соответствуют всевозможные списки М. Распределение единиц по позициям будем задавать с помощью списка Q, размер которого
1
Работа выполнена при поддержке РФФИ, гранты №01-01-000-44, 02-01-01-275
51
Известия ТРТУ
Тематический выпуск
равен n1, а значением элемента списка является число, лежащее в диапазоне 1 ÷ (n0
+ 1). Таким образом, Q является кодом списка М.
Рис.1
Например, пусть n1 = 4, n0 = 4, Q = 5, 3, 3, 1. Тогда М* = <1, 0, 0, 1, 1, 0, 0, 1>.
Отметим, что порядок расположения элементов в списке Q не имеет значения, важно только, какие значения имеют элементы списка Q. На основе выше изложенного хромосома, задающая набор графов, имеет следующую структуру
(рис.2).
H
H1
H2
…
Hi
…
Hn
Рис.2
Хромосома Н = { Hi | i = 1, 2, …, n } представляет собой объединение множества частей Hi . Каждая часть Hi соответствует графу Gi (задаваемому матрицей
смежности Ri). В свою очередь, каждая часть Hi = { Hik | k = 1, 2, …, ni } является
объединением частей Hik (рис.3). Каждая часть Hik соответствует строке Rij матрицы Ri.
Hi
Hi1
Hi2
…
Hik
…
Hini
Рис.3
Структура Hik (рис.4) эквивалентна структуре кода Q, несущего информацию
ik
о списке M (строке Rij). Hik состоит из генов gl , значениями которых являются
числа, лежащие в диапазоне 1 ÷ wik, где wik равно числу нулей плюс единица. Число
генов в Hik равно числу единиц в строке Rij .
Hik
ik
g1
ik
g2
…
ik
gl
…
ik
gv
Рис.4
Как уже указывалось выше, порядок расположения элементов в списке Q и,
следовательно, в части Hik хромосомы не имеет значения. Это приводит к избыточности пространства решений, представленного хромосомами. Пусть Pik - число
перестановок элементов в списке Hik. Это значит, что одной строке Rij матрицы Ri
соответствует Pik списков Hik. Тогда одному множеству графов соответствует
∑∑ P
ik
i
хромосом.
k
Устранить избыточность можно путем использования модифицированной
структуры хромосомы, отличающейся от основной тем, что в пределах каждой
части Hik гены упорядочены по возрастанию их значений.
При формировании отдельной хромосомы генам в пределах Hik присваиваются случайные значения в диапазоне 1 ÷ wik.
52
Материалы Международной конференции
“Интеллектуальные САПР”
При использовании модифицированной структуры в пределах каждой части
Hik осуществляется упорядочение генов по возрастанию их значений.
Постоянными параметрами, определяемыми исходным заданием (исходными
данными) и необходимыми для оперирования с хромосомами и декодирования,
являются: n - число графов; ni - число строк rik каждого графа Gi; для каждой строки rik число нулей - (wik - 1) и число единиц - vik. Трудоемкость декодирования как
основной, так и модифицированной хромосом имеет одну и ту же оценку - О(L),
где L - длина хромосомы.
Основными генетическими операторами являются кроссинговер и мутация.
Кроссинговер заключается в обмене гомологичными генами либо гомологичными
участками между родительской парой хромосом.
Для описанной выше основной структуры хромосомы для любой пары хромосом гомологичными являются гены, расположенные в одном и том же локусе, а
гомологичными участками являются участки, соответствующие одной и той же
части хромосом Hi либо Hik. В соответствии с этим используются три типа кроссинговера: 1, 2, 3. При кроссинговере 1 осуществляется обмен гомологичными
частями Hi, при кроссинговере 2 - обмен гомологичными частями Hik, а при кроссинговере 3 - обмен гомологичными генами.
Во всех случаях реализация кроссинговера осуществляется следующим образом. Последовательно просматриваются гомологичные участки или гены и с вероятностью PK1 для 1 (рис.5), PK2 для 2 (рис.6), PK3 для 3 (рис.7) осуществляется
обмен.
В случае модифицированной структуры хромосомы гомологичными будут те
участки хромосом, которые не приводят к нарушению упорядоченности значений
генов в пределах каждой части Hik. Поэтому после выбора родительской пары
осуществляется разбиение каждой Hik на гомологичные участки. Сначала проводятся секущие линии, разделяющие в хромосоме части Hik друг от друга, т.е. ограничивающие Hik. Затем в каждой Hik последовательно просматриваются локусы,
К К К
К
К
К
К
К
начиная со второго. Если для пары генов
локусе
ik
К
ik
ik
g1 l и g2 l , расположенных в текущем
ik
ik
l родительской пары хромосом, выполняются условия g1 l ≥ g2 l −1 и
ik
g2 l ≥g1 l −1 , то между локусами (l - 1) и l проводится секущая линия (рис.8).
H1
H11 H12 H13 H14
H1i
H1i1 H1i2 H1i3 H1i4
H2
H21 H22 H23 H24
H2i
H2i1 H2i2 H2i3 H2i4
⇓
⇓
H1' H21 H12 H23 H14
H1i
H1i1 H2i2 H1i3 H2i4
H2' H11 H22 H13 H24
H2i
H2i1 H1i2 H2i3 H1i4
Рис.5
Рис.6
53
Известия ТРТУ
Тематический выпуск
H1ik
3
1
2
4
5
H1ik
2
3
3
4
7
H2ik
1
3
5
4
3
H2ik
1
2
6
6
6
⇓
⇓
H1ik
1
1
2
4
3
H1ik
1
3
6
6
7
H2ik
3
3
5
4
5
H2ik
2
2
3
4
6
Рис.7
Рис.8
Участки хромосом между двумя соседними секущими линиями для данной
родительской пары хромосом будут гомологичными, т.к. обмен участками не приведет к нарушению упорядоченности генов в Hik.
Таким образом, кроссинговер 3 для модифицированных хромосом выполняется следующим образом. Предварительно родительская пара разбивается на гомологичные участки. Затем осуществляется последовательный просмотр пар гомологичных участков и с вероятностью PK3 осуществляется обмен (см. рис.8).
Суть оператора мутации - в произвольном изменении значений генов. Реализация оператора мутации осуществляется следующим образом. Последовательно
просматриваются локусы хромосом. При этом отслеживается номер части Hik, в
которой расположен рассматриваемый локус. С вероятностью Pm осуществляется
мутация гена в рассматриваемом локусе. При этом, в случае использования основ-
К
ной структуры хромосомы, гену присваивается случайное значение в диапазоне 1 ÷
wik, где wik - число горизонтальных участков в маршруте, реализующем ребро rik,
плюс единица. На рис.9 мутации подверглись гены, расположенные во втором и
четвертом локусах, wik = 8.
В случае модифицированной структуры хромосомы ген
ik
gl
принимает слу-
чайное значение в следующем диапазоне:
ik
ik
ik
1 ≤ g l ≤ g l +1 , если g l первый в Hik и | Hik | > 1;
ik
ik
ik
ik
ik
g l −1 ≤ g l ≤ wik, если g l - последний в Hik и | Hik | > 1;
ik
ik
g l −1 ≤ g l ≤ g l +1 , если g l - ни первый, ни последний и | Hik | >1;
ik
1 ≤ g l ≤ 2, если | Hik | = 1.
При таком способе гены по-прежнему останутся упорядоченными по возрастанию их значений в пределах каждой части Hik. На рис.10 мутации подверглись
гены во втором и пятом локусах. Во втором локусе ген может принять значение в
интервале
54
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
Как видно из алгоритмов, реализующих операторы кроссинговера и мутации,
оценка их временной сложности имеет вид
(L), где L - длина хромосомы.
Итак, достоинством предложенной структуры хромосомы и принципов ее декодирования является:
1) отсутствие сложных элементов;
2) линейные оценки пространственных сложностей и временных сложностей
алгоритма декодирования равняется O(H);
3) хромосомы и гены, расположенные в одних и тех же локусах, гомологичные.
О
ЛИТЕРАТУРА
1. Handbook of Genetic Algorithms, Edited by Lowrence Davis, Van Nostrand Reinhold, New
York, 1991. 385p.
2. Курейчик В.М. Генетические алгоритмы: Монография. Таганрог: Изд-во ТРТУ, 1998.
242 с.
3. Лебедев Б.К. Методы поисковой адаптации в задачах автоматизированного проектирования СБИС: Монография. Таганрог: Изд-во ТРТУ, 2000. 192 c.
4. Лебедев Б.К. Методы поисковой адаптации для решения оптимизационных задач // Новости искусственного интеллекта. М., 2000, №3. С.66-79.
УДК.621.3.342
В.В. Курейчик, О.В. Смирнова1
ЭВОЛЮЦИОННОЕ МОДЕЛИРОВАНИЕ ПРИ ПРИНЯТИИ РЕШЕНИЙ
Основой для возникновения ЭМ считается модель биологической эволюции и
методы случайного поиска [1]. В [1] отмечено, что случайный поиск (СЛП) возник
как реализация простейшей модели эволюции, когда случайные мутации моделировались случайными шагами оптимального решения, а отбор - «устранением»
неудачных вариантов.
Эволюционный поиск [2-4] с точки зрения преобразования информации в искусственных системах (ИС) – это последовательное преобразование одного конечного нечеткого множества промежуточных решений в другое. Само преобразование можно назвать алгоритмом поиска, или генетическим алгоритмом (ГА).
Основная задача генетических алгоритмов оптимизировать целевую функцию. Другими словами, ГА анализирует популяцию хромосом, представляющих
комбинацию элементов из некоторого множества, и оптимизирует функцию F(n).
Здесь n - число генов в хромосоме. ЦФ оценивает каждую хромосому. Генетические алгоритмы манипулируют популяцией хромосом на основе механизма натуральной эволюции.
1
Работа выполнена при поддержке РФФИ, грант №02-01-01-275
55
Download