Научная статья на тему 'Организация генетического поиска для мультихромосомных представлений решений'

Организация генетического поиска для мультихромосомных представлений решений Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Текст научной работы на тему «Организация генетического поиска для мультихромосомных представлений решений»

40 100 41 27

45 110 39 29

50 125 46 29

Эксперименты показали, что разработанный ГАСЭС позволяет получать высокие результаты за приемлемое время. А именно, ГАСЭС получает оптимальные результаты в среднем на 75-150 итерациях в силу его целенаправленного поиска, тогда, как ПГ А может получить решение на любой итерации, например, на 50 или 130, т.е. совершенно случайным образом. Из таблицы 2 видно, что на большом количестве вершин качество решений ГАСЭС получается лучше, чем у ИГА в среднем в 1,4-2,3 раза.

ЛИТЕРАТУРА

1. Курейчик В.М. Математическое обеспечение конструкторского и технологического проектирования с применением САПР. М.: Радио и связь, 1990. 352c.

2. Naveed Sherwani. Algorithms for VLSI physical design automation. Kluwer academic publishers. Boston /Dordrecht/ London. 1995.

3. Куре йчик B.M., Курейчик В. В. Генетический алгоритм разбиения графа // Известия Академии наук. Теория и системы управления, №4, 1999.

4. Рябец ММ. Применение генетических алгоритмов в задаче К-кусочного разбиения. Из-

3, 1999. -

“Интеллектуальные САПР”. 116с.

5. T. N. Bui, B. R. Moon. “Genetic algorithm and graph partitioning”, IEEE Trans. Comput., vol.45, pp. 841-855, 1996.

6. D. Levine. “A genetic algorithm for the set partitioning problem”, in 5th Int. Conf. Genetic Algorithms, 1993. pp.481-487.

7. D. R. Jones, M. A. Beltramo. “Solving Partitioning Problem with Genetic Algorithms”. Proceed. of 4th Int. Conf. on Genetic Algorithms, San Diego, July 1991.

8. Гладков Л. А., Полупанов А. А. Самоорганизующийся генетический алгоритм - эффек-

// V

конференции студентов и аспирантов. Таганрог: изд-во ТРТУ, 2000. С.103.

9. . . : . : - , 1998.

242 .

УДК 681.3.001.63

В.И. Божич, О.Б. Лебедев, В.Б. Лебедев1

ОРГАНИЗАЦИЯ ГЕНЕТИЧЕСКОГО ПОИСКА ДЛЯ МУЛЬТИХРОМОСОМНЫХ ПРЕДСТАВЛЕНИЙ РЕШЕНИЙ

Методы поисковой адаптации на основе механизмов генетики являются эффективным средством решения оптимизационных задач автоматизированного про.

Преимуществом этих методов является параллельная обработка множества альтернативных решений, что является мощным средством выхода из локальных оптимумов. ГА являются по своей сути алгоритмами случайного поиска, однако, заложенная в них стратегия эволюционного развития на основе естественного отбора приводит к синтезу решений, близких к оптимальным [1,2].

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

Тем не менее, эффективность ГА во многом определяется как учетом специфики решаемой задачи, так и использованием новых и модифицированных процедур поиска.

Специфика решаемой задачи прежде всего учитывается при разработке , .

Одним из средств повышения эффективности генетического алгоритма является структурирование хромосом и многохромосомные представления решения. Каждая часть структурированной хромосомы или каждая хромосома в случае многохромосомных представлений отвечает за определенный аспект решения. Это упрощает и делает более целенаправленным процесс генетического поиска [3].

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

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

Например: при фиксированных Н1, Н3, Н4 искать оптимальное решение

только лишь за счет изменения Н2.

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

В общем случае возможны три подхода к комбинированию постановок: последовательный, параллельный и параллельно-последовательный.

Рис.1

При последовательном подходе (рис.1) на каждом г-м этапе осуществляется генетический поиск путем модификации хромосом, входящих в заданный для этого этапа набор ЫНг модифицируемых типов хромосом. Это означает, что в полном объеме используется кроссинговер К1, при котором осуществляется обмен гомологичными хромосомами между парой наборов (решений), а кросси нговер К2, при котором осуществляется обмен гомологичными генами между парой гомологичных хромосом и мутация, применяются только к тем хромосомам, которые входят в набор типов модифицируемых хромосом.

,

вид: ЫН1 = {Н1} ; ЫН2 = {Н2} ; ЫН3 = {Н3} ; ЫН4 = {Н4 } . В набор может входить от одного до четырех типов хромосом. На первом этапе в качестве исходной служит популяция Пн . На втором - популяция П1, сформированная после

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

При параллельном поиске производится распараллеливание процесса генетического поиска (рис.2).

.2

В начале формируется исходная популяция Пн . Д™ каждой параллельной вет-

- ЫН г , .

, -

ществляется генетический поиск путем модификации хромосом, входящих в соответствующий набор типов модификации хромосом. После некоторого числа генераций (поколений) осуществляется случайное или направленное перемещение хромосом между любыми популяциями П1 — П4 , сформированными на данный момент на параллельных ветвях. После этого на втором шаге модифицированные популяции П10 — П 40 вновь подвергаются обработке генетическими процедурами на парал-. - .

-

реализуется последовательная комбинация постановок (рис.3).

Рис.3

На рис. 4 представлен псевдокод алгоритма, реализующий параллельнопоследовательный подход.

В качестве исходных данных вводятся массивы задача и генетика. Массив генетика включает основные параметры, управляющие процессом генетического поиска:

1) N1 - число параллельных ветвей;

2) N2 - число последовательных постановок в одной ветви;

3) С - число шагов;

4) NH. - набор типов модифицируемых хромосом в соответствии с выбран-

‘, J

ной структурой параллельно-последовательного поиска;

5) М - объем начальной популяции Пн ;

6) Т - число генераций поколений, реализуемых для каждой популяции П.. ;

У

7) Pk1, Pk2, P - вероятности кроссинговеров и мутации;

8) L - число пар для кроссинговера;

9) t1 - тип селекции при выборе родительской пары;

10) 12 - тип селекции при отборе популяции с редукцией.

С помощью процедуры ФОРМ(задача) формируется массив база, включаю, .

Algorithm МУЛЬТИХРОМОСОМА; begin

задача=ИСХОДНЫЕ_ДАННЫЕ;

генетика=НАСТРОЙКА;

база=ФОРМ(задача);

пар^опул=НАЧ^ЕНЕРАЦИЯ(задача, база, генетика);

С=ЧИСЛО_ШАГОВ;

N1 = ЧИСЛО_ПАРАЛЛЕЛЕЙ;

Ш=ДЛИНА_ПОСЛЕДОВА ТЕЛЬНОСТИ;

=1;

while К<С do

{

I=1;

while I < N1 do

{

J=1;

while J< N2 do

{

nonyл(I)=ЭBOЛЮЦИЯ(nonyл(I), задача, база, генетика);

J=J+1;

};

I=I+1;

};

пар_попул=ОБМЕН(пар_попул);

C=C+1;

};

end

Puc.4

Процедурой НАЧ_ГЕНЕРАЦИЯ(задача, база, генетика) осуществляется генерация начальной популяции Пн °бъемом М, на базе которой формируется начальный набор популяции пар^опул.Пи = {R | j = 1,2,...,M}, Rj = {H 1j, H 2 j, H 3 j, H 4 j}. Причем пар_попул={попул(Т), I=1,2,...,N1} изначально вся попул(Т)= ПИ .

С этой целью в каждой формируемой хромосоме каждому гену, лежащему в . , ,

1 < g1. < n +1 — i для первого типа хромосом, в диапазоне i < g2. < n — 1 для второго типа хромосом, в диапазоне — < g4. < —, g3. е {0,1} .

S ' S

Далее на каждом шаге (число шагов С) процесс параллельнопоследовательной обработки набора популяций пар_попул. С помощью процедуры ЭВОЛЮЦИЯ(попул(\), задача, база, генетика) в каждом узле (i,j) параллельнопоследовательной структуры производится эволюционирование популяции по-

пул(Т), в соответствии с набором NH..

В конце каждого шага процедурой ОБМЕН(пар_попул) осуществляется обмен хромосомами между популяциями попул(Т) и формируется новый набор популяций _ . ,

, -

.

На рис. 5 представлен псевдокод алгоритма генетического поиска, реализованного в каждом узле параллельно-последовательной структуры на базе популяции попул(Т).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Algorithm ЭВОЛЮЦИЯ(попул(Т), задача, генетика) begin

фитнесс=РАСЧЕТ(попул(Т), задача, база);

= _ ; while T>0 do {

кросс_попул=0; мут_попул=0;

L= _ ;

while L>0 do

{

род_пара=ВЫБОР(попул(1), фитнесс, генетика); доч_пара=КРОСС_2(род_пара, генетика); доч_пара=КРОСС_1(доч_пара, генетика); кросс_попул=В№ЮЧИТЬ(кросс_попул, доч_пара);

L=L-1;

};

тек_попул=ОБЪЕДИНИТЬ(попул(1), кросс_попул); мут_попул=МУТАЦИЯ(тек_попул, генетика); тек_попул=ОБЪ^ИНИТЬ(тек_попул, мут_попул); фитнесс=РАСЧЕТ(тек_попул, генетика); лучш_^еш=ВЫДЕЛИТЬ(тек_попул, фитнесс); попул(Т)=СЕЛЕКЦИЯ(тек_попул, фитнесс);

Т=Т-1;

};

end;

Рис.5

В начале для каждого генотипа популяции попул(Г), задаваемого набором хромосом, процедурой РАСЧЕТ (попул(Г), задача, база) рассчитывается значение , .

Далее на каждой генерации (число генераций 7) последовательно реализуются операторы комбинированного кроссинговера и мутации, а затем расширенная популяция подвергается редукции с помощью селекционного отбора, т.е. уменьшается до начального объема.

Оператор кроссинговера выполняется L раз. Каждый раз процедурой ВЫБОР (попул(Г), фит несс, генетика) выбирается родительская пара - р од^ар а. Выбор осуществляется одним из способов, задаваемых при настройке механизмов . , -

га и т.д.

С помощью процедуры КРОСС_2(род_пара, генетика) реализуется кроссин-

2 _ .

КРОСС_1(доч_пара, генетика) реализуется кроссинговер К1. Полученная в результате последовательного выполнения кроссинговеров К2 и К1 дочерняя пара хромосом процедурой ВКЛЮЧИТЬ(кросс_пара, доч пара) включается в массив

_ . -рой ОБЪЕДИНИТЬ(попул(Г), кросс_попул) массивы попул(Г) и кросс_попул объединяются в тек_попул.

Хромосомы популяции тек_попул подвергаются с помощью процедуры МУТАЦИЯ(тек_попул, генетика) мутации, при этом образуется популяция мутантов мут^опул. Процедурой ОБЪЕДИНИТЬ(тек^опул, мут_попул) массивы текпопул и мут_попул объединяются в текпопул.

Процедурой РАСЧЕТ(тек_попул, задача, база) для всех новых членов попу-_ .

Процедурой ВЫДЕЛИТЬ(тек_попул, фитнесс) выбирается лучшее решение

_ , .

Последним этапом в пределах одного поколения является реализация процесса “естественного отбора”, т.е. сокращения популяции тек_попул до размеров начальной популяции нач_попул. Селекция реализована процедурой

СЕЛЕКЦИЯ(тек_попул, фитнесс).

, -раметров трудоёмкость алгоритма имеет линейную зависимость и пропорциональна O(N), где N - число блоков.

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

Источником усовершенствования может стать правильная настройка управ.

разработанных генетических процедур.

ЛИТЕРАТУРА

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

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

3. . . -

вания СБИС: Монография. Таганрог: Изд-во ТРТУ, 2000. 192 с.

УДК 681.32

Л.А. Зинченко, И.А. Харламов1

ГЕНЕТИЧЕСКИЙ АЛГОРИТМ ПАРАМЕТРИЧЕСКОЙ ИДЕНТИФИКАЦИИ

Параметрическая оптимизация - это процедура определения значений внутренних параметров проектируемого объекта заданной структуры, при которых достигается наилучшее сочетание его свойств [1]. Она применяется для определения различных числовых значений параметров проектируемого объекта, например

, : , -ские размеры деталей в механическом узле или в оптическом приборе и т.п. [2].

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

, .

Формализация задачи параметрической оптимизации сводится к ее формулировке в виде задачи математического программирования:

тт 2(Х),

I (X) = £ АГ.(Х ) = £ | ^2,(Х) — ^ 1<(X) |

г=0 г=0

^ = е ;

Х={хо, XI,..., хп}, где х- е Д ,

где 2(Х) - целевая функция, X - вектор управляемых (проектных) параметров, е -приемлемая точность вычислений, Б1 - допустимая область в пространстве управ.

Для решения подобных задач применяют следующие стратегии: симплекснопоследовательные методы поиска, субградиентные методы оптимизации [3], полиномиальные методы аппроксимации [2,3] и некоторые другие. В данной работе предлагается метод решения задачи параметрической идентификации с помощью генетического алгоритма (ГА), базирующегося на биологических механизмах эво-.

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

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

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