Раздел I. Эволюционное моделирование, генетические и бионические алгоритмы
В.М. Курейчик ГИБРИДНЫЕ ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ*
Введение. Создание интеллектуальных систем автоматизированного проектирования (ИСАПР) является одной из важнейших проблем науки и техники сего.
и использование в них бионических технологий, «биоинспирированных» алгоритмов, а также методов и средств эволюционного моделирования (ЭМ) и проектирования (ЭП) [1-5]. Под ЭП будем понимать комплекс средств автоматизированного проектирования, состоящего из семи видов обеспечений. Основным из них является математическое обеспечение, которое состоит из моделей эволюции, генетических и эволюционных алгоритмов, использующихся на всех стадиях разработки, создания и эксплуатации ИСАПР. Эволюционное проектирование на основе ИСАПР включает методы эволюционного моделирования, программирования и адаптацию к внешней среде.
В работе предлагается новая структура гибридных генетических алгоритмов для создания математического обеспечения, позволяющая повысить качество технических решений. Генетические алгоритмы (ГА) - это новая технология решения задач оптимизации, искусственного интеллекта, проектирования и т.п. [1-9]. Автор рассматривает формальное задание генетических алгоритмов, новые модифицированные генетические операторы, ориентированные на использование знаний о ре, -
, , время работы ГА.
1. Генетические алгоритмы. Генетические алгоритмы (ГА) отличаются от других оптимизационных и поисковых методов и алгоритмов [1-3,6,7,9] тем, что:
♦ анализируют и преобразуют закодированное множество исходных параметров;
♦ осуществляют поис к из части популяции, популяции или множества по-
( ), ;
♦ ( ), оценки качества альтернативных решений;
♦ используют детерминированные, вероятностные и комбинированные правила анализа оптимизационных задач.
В ГА предварительно анализируется множество входных параметров оптимизационной задачи и находится некоторое множество альтернативных решений, которое называется популяцией. Каждое решение кодируется как последовательность конечной длины в некотором алфавите. ГА работает до тех пор, пока не бу-
* Работа выполнена при поддержке РФФИ (гранты № 05-08-18115, № 06-01-00272) и программ развития научного потенциала высшей школы 2006-2008 гг. (РНП.2.1.2.3193, РНП 2.1.2.2238).
дет получено решение заданного качества или будет выполнено заданное количе-, -
, . начальной популяции и ГА начинает свою работу с создания исходного множества
. « » « » , . этого оценивается эффективность каждого альтернативного решения, которые подвергаются селекции. Во всех моделях эволюции используется принцип «выжи-», . . , -
шие решения переходят в следующую генерацию. Затем процесс повторяется вновь [1-3, 4-6].
Г енетические алгоритмы манипулируют популяцией хромосом на основе механизма натуральной эволюции. Приведем формальное определение ГА [7].
ГА=(Рг0ЛРгТ,к,Т,ЬрА,(ЦФ,ОГР,ГУ),ГО,Г),
где Р° - исходная популяция хромосом (адьтернативных решений),
Р°=(Р°1, Р°ъ-, Р°г,), Р?1£ Р0 - хромосома (адьтернативное решение), принадлежащее /-ой исходной популяции; N - мощность популяции, т.е. число входящих в нее хромосом, N=^1; Р,Тк£ РТ - к-я хромосома, принадлежащая / -ой популяции, находящейся в Тпоколении эволюции; Т = 0,1,2,... - номер поколения, проходящего популяцией во время эволюции (иногда число поколений связывают с числом генераций генетического алгоритма, обозначаемых буквой О); Ц - длина / -ой хро-( ), . . ( , -дированное решение, представленное в заданном алфавите), например, \Р1Т\=Ь/;
А - , , -
пример, А1={0,1}, А2={0,1,2,...,10}, А3={0,1,2,*}, А4={А,Б,С,Б}, здесь * - метка, означающая любой символ в алфавите А2; (ЦФ,ОГР,ГУ) - целевая функция, ограничения и граничные условия, которые определяются на основе заданной модели исходной решаемой задачи; ГО - генетические операторы; t - критерий окончания .
2. Простой генетический алгоритм. Эволюционный пр оцесс представляется как способность «лучших» хромосом оказывать большее влияние на состав новой популяции на основе длительного выживания из более многочисленного потомства. Основные этапы эволюционного поиска следующие:
1. .
1 = 0. Вычисляется приспособленность каждой хромосомы в популяции, а затем определяется средняя приспособленность всей популяции.
2. Устанавливается 1 = 1 + 1. Производится выбор двух родителей (хромосом) для реализации оператора кроссинговера. Он выполняется случайным образом пропорционально приспособляемости родителей.
3. . -
изводится оператор кроссинговера над генотипами выбранных хромосом. Далее с вероятностью 0,5 выбирается один из потомков Р1(1) и сохраняется как член новой популяции. После этого к Р1(1) последовательно применяется оператор инверсии, а затем мутации с заданными вероятностями. Полученный генотип потомка сохраняется как Рк(1).
4. ,
чтобы ее размер оставался постоянным. Текущая популяция обновляется заменой отобранных хромосом на потомков Рк(1).
5. ( ) -
счет средней приспособленности всей полученной популяции.
6. 1 = 1 , 7, , 2.
7. .
Данный алгоритм известен как упрощенный «репродуктивный план Д. Хол» [1,8,10]. Заметим, что в практических задачах вместо понятия «приспособ» « ».
Простой генетический алгоритм (ПГА) был впервые описан Д. Гольдбергом на основе работ Д. Холланда [2,7]. Его механизм несложен. Предварительно ПГА случайно генерирует популяцию последовательностей - хромосом (адьтернатив-
). -ние последовательности хромосом и перестановка их частей. Далее ПГА реализует множество простых операций к начальной популяции и генерирует новые решения. ПГА состоит из трех операторов: репродукция, кроссинговер, мутация.
- ,
значению их ЦФ. Копирование хромосом с «учшим» значением ЦФ имеет большую вероятность для попадания в следующую генерацию. Рассматривая эволю-. , , ( ) -
« ». -ляется в алгоритмической форме различными способами. Самый простой - создать модель «колеса рулетки», в которой каждая хромосома имеет поле, пропорциональное значению ЦФ. В генетических алгоритмах можно выделять два основных механизма воспроизводства хромосом: потомки являются точными копиями роди-( ); « » -чия от родителей. В генетических алгоритмах в основном используют комбинации .
3. Модифицированные генетические операторы. При реализ ации генетических операторов (ГО) одним из важнейших вопросов является определение мес-
( ). большое количество точек разрыва может привести к полной потере лучших решений. Маленькое количество точек разрыва часто приводит к попаданию решения в локальный оптимум, далекий от глобального. Поэтому необходим поиск разумного компромисса в этом вопросе. Автор предлагает использовать ГО на основе чисел Фибоначчи, золотого сечения, множества Кантора, дихотомического деления и др. Отметим, что необходимо проводить эксперименты и подбирать пара, .
Рассмотрим построение модифицированных ГО на основе простых чисел и чисел Каталана [11]. Как известно, простые числа легко определяются на основе решета Эратосфена [11]. Приведем, например, ряд простых чисел (ПЧ) не превышающих 100: 1, 3, 7, 11, 13, 17, 19, 23, 29. 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73,
79. 83, 89, 97 . . .
, . выбирать такую, чтобы последнее число ряда ПЧ было меньше, чем Ь-1. Здесь Ь -( ).
, , .
Оператор кроссинговера (ОК).
Даны две родительских хромосомы:
Р! 1 | 2 3 | 4 5 6 7 | 8 9 10;
Р2 а | Ь с | d е f g | И I к |.
Можно выбрать любое число из ряда длины Ь-1=10-1=9, т.е. 1,3 или 7. Известно, что можно выполнить одно, двух или многоточечный ОК. Выберем одновременно три точки разрыва. Здесь можно предложить большое число вариантов .
.
-
Р1 Р2 :
Р1 = 1 bc45 67 hik;
Р1 = a23de f g8910.
.1 .
РисЛ.Блок оператора кроссинговера
Здесь г - число точек разрыва; L - длина хромосомы; г < L-1; q - проверка окончания работы блока (она может выполняться: по значению ЦФ, по времени, по числу генераций и т.п.). Если в результате ОК получаются нереальные решения, то по определенным правилам происходит замена повторяющегося гена на отсутствующий из хромосомы потомка.
ОК с разным числом точек разрыва.
Рассмотрим реализацию ГО на основе чисел Каталана. По аналогии с числами Фибоначчи существует последовательность чисел Каталана [10]. Она задается :
(2п)!
Кп (п) =-
(1)
(п + 1)!(и!)
Если последовательность начинается с элемента, равного 1, т.е. п=1, то пер-9 :
к =1,2,5,14,42,429,1430,4862.
Например, при п=4 получим k(4) = —(2 4)!— = 12345—678
(4 + 1)!(и)! 12345 1234
Очевидно, что
к (0) = 1, т.к. 0!=1 и при п=2 к =____(2п)!__= (2'2)! = 2
(п + 1)!(п!) 3!2!
2!
а при п = 1 к(1) = —= 1,
2!1!
к(2) = 2, к(3) = 5, к(4) = 14, к(5) = 42, к(6) = 429, к(7) = 1430, к(8) = 4862.
Выполнение ГА на основе чисел Каталана эффективно при наличии хромосом большой длины при малом числе испытаний. Механизм реализации ГА на основе ПЧ и чисел Каталана идентичны.
Рассмотрим оператор мутации (ОМ). Пусть задана родительская хромосома: Р = 1 2 3 4 5 6 7 8 9 10 11 12.
Здесь также г = Ь-1. Тогда из последовательности чисел Каталана (ЧК) получим, что можно выполнить разрывы после гена 1, гена 2 и(или) гена 5.
Выполним трехточечный ОМ:
Р= 1| 2|3 4 5 |6 7 8 9 10 11 12.
Здесь возможны следующие модификации ОМ: а) Р1 = 2 3 1 4 6 5 7 8 9 10 11 12.
1 2. 1 -3 5 6.
В настоящее время перспективными считаются нечеткие ГО [12]. В них нечеткими величинами являются гены хромосомы и строительные блоки с функция, . -гается использовать для выбора эффективных точек разрыва в ГО.
70- . . -
люции - прерывистого равновесия [13]. Согласно этой новой модели эволюция происходит редкими и быстрыми толчками. Следует отметить, что эти идеи высказывали еще Ч. Дарвин, Г. де Фриз [6-10] и др. В этой модели отмечается различие причин, от которых зависят темпы микро- и макроэволюции. В настоящее время эту модель эволюции называют моделью прерывистого равновесия Гулда-Элдриджа [13]. На рис.2 и рис.3 приведены условные структуры микро- и макроэволюции согласно модели Гулда-Элдриджа.
Рис. 2. Структура макроэволюции Рис. 3. Структура микроэволюции
Макроэволюция основана на анализе и преобразовании популяций альтерна-. . Филогенетический дрейф - это возникновение разнонаправленных видов в силу случайных эволюционных флуктуаций [13]. Он аналогичен генетическому ( ), .
Эффект «бутылочного горлышка» [13] -
, -
мым случайностью сохранения немно-, ,
уцелевших после резкого сокращения численности родительской популяции. Приведем условную схему ГА на основе эффекта бутылочного горлышка ( . 4).
Вариант практического использования покажем на примере задачи о
рюкзаке [14]. Цель - показать, каким
образом можно использовать практически разработанный комплекс алгоритмов для выбора эффективной ЦФ.
Постановка задачи следующая. Дан набор элементов и рюкзак. Каждый элемент имеет объём V и стоимость с. Необходимо разместить элементы в рюкзаке таким образом, чтобы их суммарная стоимость была максимальной. Проблема заключается в том, что не все элементы могут поместиться в рюкзаке. п .
♦ У=^1^2,...^п} - вектор объёмов вещей;
♦ С={сьс2,...сп} - вектор ценно;
♦ Уг - объём рюкзака.
Рис.4. Схема ГА на основе эффекта «бутылочного горлышка»
Ограничения: Хау^У-, а1=[0,1].
Стандартная целевая функция: F=£c .
Цель: F—»max.
Был сформирован набор ЦФ, включающих традиционную ЦФ:
f(х)=Z ck,
k
f (= Z ck
k
и несколько модифицированных ЦФ:
f (x) = X ck-
(2)
(3)
(4)
ПГА решения задачи о рюкзаке был протестирован со всеми выбранными це. -ров, для каждого из которых построен ландшафт ЦФ. Для каждого тестового при-
k
мера и каждой ЦФ ПГА запускался по 1000 раз. Оказалось, что выбранная ЦФ (3) является лучшей для решения задачи о рюкзаке при помощи простого генетиче-.
Пример трехуровневой гибридной схемы с набором различных ГА показан на рис.5.
Рис.5. Пример трехуровневой схемы
Приведем основную идею новой структуры ГА. Она позволяет сократить время поиска и получить локально-оптимальные решения.
1. :
1.1. На основе «создателя».
1.2. .
1.3. .
1.4. .
1.5. .
1.6. « ».
1.7. « ».
1.8. -
даче
2. :
2.1. :
2.2.1. Один со многими.
2.3. .
2.4. .
2.5. .
3. ( ).
4. .
5. .
6. .
7. .
8. .
9. .
Здесь используется альтернативное решение изменяющейся длины. Кроме того, вводится концепция нечеткости для определения ЦФ и правил реализации ГО.
В заключении отметим, что модифицированные генетические операторы должны выполняться в блоке эволюционной адаптации совместно с экспертной
.
как число точек разреза и вероятность применения генетического оператора.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Holland John H. Adaptation and Artificial Systems: An Introductory Analysis with Application to Biology, Control, and Artificial Intelligence. USA: University of Michigan, 1975.
2. Goldberg David E. Genetic Algorithms in Search, Optimization and Machine Learning. USA: Addison-Wesley Publishing Company, Inc., 1989.
3. Handbook of Genetic Algorithms. Edited by Lawrence Davis. USA: Van Nostrand Reinhold, New York, 1991.
4. Practical Handbook of Genetic Algorithms. Editor I. Chambers. V.3, Washington,USA, CRC Press, 1999.
5. Handbook of Bioinspired Algorithms and Applications. Edited by S. Olarin, A. Y. Zomaya, 2006, Chapman & Hall CRC, USA.
6. Fedько ВТ. Эволюция, нейронные сети, интеллект: модели и концепции эволюционной кибернетики. - М.: Комкнига, 2005.
7. Гла дков Л А., Курейчик В.В., Курейчик В.М. Генетически е алгоритмы: Учебное пособие / Под редакцией В.М. Курейчика. - Ростов-на-Дону: Ростиздат, 2004.
8. . ., . ., . . -лирования. - М.: Физматлит, 2003.
9. Интеллектуальные системы: Монография / Под редакцией В.М. Курейчика. - М.: Физ-
, 2005.
10. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы: Учебное пособие / Под редакцией В.М. Курейчика. - М.: ФИЗМАТЛИТ, 2006.
11. Андерсон Д. Дискретная математика и комбинаторика. - М.: Вильямс, 2003.
12. . ., . . /
НТК «AIS-05», «CAD-2005». - М.: Физматлит, 2005, Т.1. - С. 39-45.
13. . . : / .
- М.: Комкнига, 2005.
14. Каляда А.В., Курейчик В.М. Анализ ландшафтов целевых функций при генетическом
. 10 , 2, - .: , 2006.
- С. 392-399.
Б.К. Лебедев, В.Б. Лебедев
БИОНИЧЕСКИЕ ПРОЦЕДУРЫ НАХОЖДЕНИЯ МИНИМАЛЬНОГО ПОКРЫТИЯ'
.
конечное множество X, а также семейство его подмножеств G ={Xi | i=1,2,...,n}
таких, ч то Xi — X и U Xi = X.
i
Задача о минимальном покрытии множествами заключается в отыскании набора P — G с минимальным числом подмножеств Xi ^ P и X^ F такого, чтобы
* Работа выполнена при поддержке РФФИ (грант № 06-01-81018, № 05-08-18115) и программ развития научного потенциала высшей школы 2006-2008 гг. (РНП.2.1.2.3193, РНП 2.1.2.2238).