Научная статья на тему 'Генетический алгоритм компоновки с элементами самоорганизации'

Генетический алгоритм компоновки с элементами самоорганизации Текст научной статьи по специальности «Математика»

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

Текст научной работы на тему «Генетический алгоритм компоновки с элементами самоорганизации»

ЛИТЕРАТУРА

1. Holland John H., Adaptation in Natural and Artificial Systems: An Introductory Analysis with Application to Biology, Control, and Artificial Intelligence. USA: University of Michigan, 1975.

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

3. Батищев ДА. Генетические алгоритмы решения экстремальных задач. Воронеж: Изд-во ВГТУ, 1995.

4. Букатова ИЛ. Эволюционное моделирование и его приложения. М.:Наука, 1991.

5. . . ,

решений. Монография. Таганрог: Изд-во ТРТУ, 2001.

6. Куре йчик В.В. Курейчик В.М. Об управлении на осно ве генетического поиска// Автоматика и телемеханика РАН №10. М.: Изд-во Наука, 2001.

УДК 681.3.06

Б.К. Лебедев, А.А. Полупанов1

ГЕНЕТИЧЕСКИЙ АЛГОРИТМ КОМПОНОВКИ С ЭЛЕМЕНТАМИ САМООРГАНИЗАЦИИ

. -

торных проблем в многоуровневом процессе проектирования СБИС [1, 2].

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

,

задач большой размерности [3-7]. Однако, в силу того, что задача разбиения относится к классу NP-полной, актуальность разработки новых эффективных алгоритмов разбиения сохраняется. Поэтому был разработан новый генетический алгоритм разбиения графа на подграфы с элементами самоорганизации (ГАСЭС), ис-

[8].

разработанного и реализованного на ЭВМ ГАСЭС, был реализован простой гене-

( ) [9].

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

В основе предложенной методики поиска заложен принцип многодетной

,

.

включается в новую популяцию.

Пользователю предоставляется возможность настройки основных параметров , ,

как по качеству целевой функции, так и по временному критерию.

. -

. -

лируется следующим образом: дан гиперграф Н=(Х, Е), где X = (х,- | i = l, 2, ..., n} -

множество вершин, а Е = (е,- | е, с X, j = l, 2, ..., m} - множество рёбер (каждое реб-

- ).

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

у = { щ | г = 1, 2, п}. Необходимо сформировать К - узлов, т.е. множество X разбить на К непустых и непересекающихся подмножеств Х„:

х = иХ V, (У г, у),

X,- п Ху = 0, Ху Ф 0.

На формируемые узлы накладывается ограничение на максимально допустимое число вершин назначенных в у-й узел с помощью вектора N = {пу | V = 1, 2, ..., к}, которое имеет вид:

|Ху| < пу, где V = 1, 2, ..., к (1)

Основным критерием является Б - суммарная стоимость рёбер в разрезе:

р , з = {у I е е С},

у=-?

где С = {еу | (У у) [еу- п Ху ф еу]} - множество рёбер в разрезе.

=( , ) -

даче о назначении множества гиперрёбер Е в К узлов при выполнении следующего условия: каждое гиперребро может быть назначено только в один узел. Будем считать, что гиперребро еу назначено в узел zv, если всё множество составляющих его

вершин назначено в этот узел.

Введём булевы переменные:

У = [1, если вершина х1 назначена в узел zv;

[0, в противном случае. к = [1, если гиперребро еу назначено в узел ;

[0, в противном случае.

Согласно описанным условиям, должны выполняться ограничения:

к

Е Угу = 1; г = 1 2, -, П.

у=1

Установим связь между переменными ку и уу с помощью следующей группы :

X Угу - куу ®^); у = 1, 2, •••, т; V = 1, 2, ..., к,

ге1у

где 0(еу) - мощность множества еу, т.е. 0(е,-) = | еу |, а 1у = {, | х( е е}.

При пробном назначении гиперрёбер в узлы, в соответствии с этой группой

,

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

к т

максимизировать Б = ,

у=1 у=1 к

ЕУ,у =1; г = 1 2 •, п;

у=1

X У,у - к* 0(у у = !, 2, •••, т; у = 1, 2, ..., к.

ге1]

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

Особенность разработанного ГАСЭС. Особенность разработанного ГАСЭС является эвристический генетический поиск решения, а именно элемент самоорга-, :

)

( ) ;

б) получении “качественных” потомков от применения ГО, используя параметр п, т.е. кратность применения ГО к выбранным родителям.

На рис.1 представлена структурная блок-схема ГАСЭС.

Рис.1.Структурная блок-схема ГАСЭС

Поясним суть работы ГАСЭС.

В начале работы алгоритма случайным образом создаётся начальная популяция хромосом фиксированного размера. Пользователем задаётся параметр п для каждого ГО. Далее случайным образом, натуральное число п < т, где т -мощность начальной популяции, присваивается количеству хромосом равному п из начальной популяции. Таким образом мощность множества хромосом из кото, п.

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

после выполнения очередного ГО.

Производится оценка ЦФ для всех хромосом в начальной популяции и фиксируется наилучшая ЦФ. После того, как выбраны хромосомы-родители, оцениваются их ЦФ. Заметим, что порядок применения ГО к выбранным хромосомам не важен, т.к. он не влияет на качество получаемых решений. Осуществляется реализация оператора кроссинговер (ОК). После получения потомков производится оценка их ЦФ. Если ЦФ хотя бы одного из потомков "лучше" ЦФ родителя, то все потомки заносятся в новую популяцию, а параметр п уменьшается в 2 раза. После чего реализуется следующий ГО — оператор мутации (ОМ). В противном случае ОК реализуется заново, причём количество реализаций связано с параметром п для , . . п,

оператора, но тем более качественные получаются решения. Заметим, что в этом случае параметр п остаётся прежним, происходит лишь его случайное перепри-своение хромосомам из начальной популяции для очередной реализации ГО. Если по истечении п попыто к для ГО, так и не было получено потомка с ЦФ лучшей, чем у родителя, то, по окончании последней реализации ГО заносятся все потомки с худшими ЦФ. Таким образом, параметр п как бы даёт шанс на получение "лучших" хромосом в результате реализации ГО и всего ГАСЭС.

Указанный механизм “производства” потомков может включаться пользова-

( ). ,

ОИ формируется новая популяция, в которую входит прежняя популяция и хромо, . -вой популяции на основе элитной селекции, в результате которой в новую популяцию попадает нужное количество хромосом с "лучшими" ЦФ. Таким образом, завершилась одна итерация ГАСЭС.

Далее оцениваются ЦФ всех хромосом новой популяции. Фиксируется наи. . протяжении пяти поколений (итераций) ЦФ новой популяции не улучшилась, то происходит увеличение параметра п на константу 5.

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

Кодирование хромосом и примеры генетических операторов.

Для данной задачи структура хромосомы следующая: все хромосомы являются гомологичными; гены представляют собой вершины гиперграфа; длина хромосомы, т.е. количество генов в ней, равна числу вершин гиперграфа; первые п генов хромосомы относятся к у-му узлу, а их количество не превышает пу и т.д.

Влияние параметра п на выполнение ГО.

Например, рассмотрим влияние параметра п на работу одного из ГО, а именно ОК. Пусть в начальной популяции содержится 100 хромосом, а параметр п=3, т.е. для ОК будут выбраны случайным образом две хромосомы из подпопуляции размера п, которая содержится в начальной популяции (рис.2).

ЦФ=7 ; XI 121417

ЦФ=11 , Х2 111315

ЦФ=14 , Х3 П И15

8110111315

6 8 2 4 7

7110121316

Рис.2. Подпопуляция размера п

- , 1 2.

Производим над ними ОК:

В результате ОК мы получили двух потомков Х1 и Х2. Целевая функция одной из получившихся хромосом, т.е. Хь оказалась лучше целевой функции хромо-1, , п

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

Как уже говорилось выше, параметр п влияет на количес тво повторений ГО, позволяя таким образом получать лучшие решения. То есть, если при первом выполнении ГО получаются потомки с ЦФ худшей, чем ЦФ хромосомы-родителя, то в наихудшем случае ГО выполнится п раз.

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

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

- , п=2 п=3

(рис.3).

XI

11=1;

Х3

Х2

п=2;

Х3

Х2

п=3;

Х3

121417 811011 |3|5 61 91

11 1415 71101 21 31 6 81 91

111315 61 81 21417 Э|10|

11 1415 71101 21 31 6 81 Э |

1 11 31 5 61 81 21417 Э|10|

11 |4 I 5 7|10| 2| 3| 6 81 Э |

ЦФ=8 ; X!

=>

ЦФ=10; Хз ЦФ=9 ; Х2

=>

ЦФ=8 ; Хз

ЦФ=Э ; Х2

=>

ЦФ=8 ; Хз

711012

ШИ

711012

6 8 2

7|10|2

6 8 2

15

7 2 6

5 8 4

511013

5 8 4

5|10|3

Рис.3. Выполнение ОК с учётом параметра п

Если по истечении последней попытки выполнения ГО, так и не было получено хромосомы с ЦФ лучшей, чем ЦФ хромосомы-родителя, то в новую популяцию заносятся все потомки, полученные при последней (п=3) реализации ГО, т.е. Х2 и Х3.

Увеличение параметра п на заданную величину пр оисходит по истечении заданного числа итераций, но лишь в том случае, когда не происходило улучшения ЦФ новой популяции по сравнению с ЦФ прежней популяции.

Выбор хромосом в новую популяцию осуществляется при помощи элитной селекции с учётом ЦФ.

Результаты экспериментальных исследований. Тестирование алгоритмов проводилось на 1ВМ совместимом компьютере: СРи АМБ 5x86 \ 133 М^ \ 16МЬ 81ММ. Основное внимание было уделено тестированию генетических алгоритмов, а именно ПГА [2] и ГАСЭС [9], т.к. эти алгоритмы принадлежат одному классу.

Приведём зависимости времени работы ПГА и ГАСЭС от числа вершин и значений целевых функций от числа итераций:

1

Зависимость времени работы алгоритмов от числа вершин

ПГА ГАСЭС

кол-во вершин, п время работы, с. кол-во вершин, п время работы, с.

10 1.70 10 6.65

15 2.04 15 10.27

20 2.14 20 12.42

25 2.64 25 15.76

30 3.18 30 20.87

35 3.68 35 23.95

40 3.96 40 30.54

45 4.83 45 41.79

50 5.11 50 42.01

При работе алгоритмов, граф каждый раз разбивался на два подграфа, по возможности с равным количеством вершин (например, если мощность разбиваемого графа равнялась 35, то мощности подграфов соответственно равнялись 17 и 18). , -.

Из таблицы 1 видно, что временные зависимости ПГА и ГАСЭС от числа вершин — линейные.

2

Значения ЦФ алгоритмов от числа итераций

количество вершин число рёбер графа Н число рёбер в разрезе (ПГА) число рёбер в разрезе (ГАСЭС)

10 21 6 6

15 32 12 9

20 44 17 12

25 53 19 13

30 67 27 18

35 85 31 22

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

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