Научная статья на тему 'Разбиение на основе гибридной многоуровневой адаптации'

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

CC BY
269
57
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАЗБИЕНИЕ / АДАПТИВНАЯ СИСТЕМА / ЭВОЛЮЦИОННЫЙ / МНОГОУРОВНЕВЫЙ / ПОИСК РЕШЕНИЯ / PARTITIONING / ADAPTIVE SYSTEM / EVOLUTIONARY / MULTILEVEL / SEARCH OF THE DECISION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Лебедев Б. К., Лебедев О. Б.

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

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

Partitioning on the basis of multilevel adaptation

In work the problem of partitioning is represented as adaptive system, on the basis of a combination evolutionary, multilevel, and parallel approaches to search of the decision. The new approach, algorithms and techniques of management are deИзвестия scribed by process of evolutionary search of the decision on the basis of mechanisms of collective alternative adaptation.

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

Раздел II. Автоматизация проектирования

УДК 658.512

Б.К. Лебедев, О.Б. Лебедев

РАЗБИЕНИЕ НА ОСНОВЕ ГИБРИДНОЙ МНОГОУРОВНЕВОЙ

АДАПТАЦИИ*

Введение. Весьма популярными алгоритмами разбиения графа 0(Х, и) на части являются итеративные алгоритмы, требующие для своей работы некоторого начального разбиения [1-3]. Итеративные алгоритмы делятся на детерминированные и вероятностные. В детерминированных алгоритмах изменение разбиения (решения) реализуется на основе четкой, детерминированной зависимости от из. -мум (<аокадьную яму»). В вероятностных алгоритмах переход к новому решению осуществляется случайным образом. Недостатком алгоритмов, реализующих чисто , . -ния этой трудности состоит в группировке сильно связанных подсхем в кластеры и дальнейшем объединении этих кластеров в узлы (вершины) перед выполнением алгоритма. Размерность данной задачи, таким образом, значительно уменьшается, что ведет к снижению времени поиска [4].

Недавно был разработан новый класс алгоритмов разбиения гиперграфа, которые основаны на многоуровневой парадигме [5-7]. В этих алгоритмах создан упорядоченный набор последовательно уменьшающихся гиперграфов. Находится разбиение самого маленького гиперграфа, затем это разбиение последовательно проектируется на следующий уровень, и на каждом уровне используется итерационный алгоритм для улучшения качества решения. Эксперименты представленные в [5-7] показывают, что многоуровневая парадигма позволяет существенно улучшить решения за приемлемое время.

Повышение эффективности итерационных алгоритмов связано с разработкой методов, основанных на моделировании естественных процессов. К ним относятся методы моделирования отжига, метод эволюционного моделирования, эволюционной адаптации [8-11]. Особый интерес представляет поисковая адаптация, основанная на использовании обучающихся автоматов, моделирующих поведение объекта адаптации в среде. Трудности использования такого подхода связаны, в пер,

.

.

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

Адаптивная система разбиения верхнего уровня. Задача разб иения гиперграфа формулируется следующим образом.

* Работа выполнена при поддержке РФФИ (гранты № 07-01-00174, № 08-01-00473). 52

Дан гиперграф Н=(Х,Е), где Х={хг | 1=1,2,.,.,п} - множеств о вершин, а Е={е} | в] сХ,]=1,2,...,ш} - множество ребер (каждое ребро - подмножество связываемых им вершин). Вес ребер задается множеством Ч/=(щ | ¡=1,2,... ,п}. Необходимо сформировать /с-узлов, т.е. множество X разбить на к непустых и непересекающих-ся подмножеств Ху: Х=иХУ, (У1]) [Х{ пХ] =0], Ху0. На формируемые узлы накладываются ограничения. С помощью вектора Ы=(пу | у=1,2,...,к} задается максимально допустимое число вершин назначенных в у-й узел. Ограничения на назначение в узел имеют вид:

Х <Пу, у=1,2,...,к.

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

р1 = ,

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

Вторым, часто используемым, критерием является Б2 - суммарное число вы:

Р2 = ЕУъ У=1,2,...,к,

где %, - число выв одов узла Ху.

Возможно использование критерия Р, являющегося аддитивной сверткой критериев р и ¥2:

Р=к1 Р1+к2 ^2,

где к1 и к2 - коэффициенты значимости критериев Р1, Р2.

Пусть имеется начальное решение задачи разбиения. Другими словами задано разбиение множество Х на к непустых и непересекающихся подмножеств Ху. На каждом шаге адаптивной поисковой процедуры осуществляются групповые парные перестановки вершин между узлами. Формирование непересекающегося множества пар вершин таких, что вершины каждой пары принадлежат разным узлам, и каждая вершина принадлежит только одной паре, осуществляется на двух уровнях. На верхнем уровне формируется множество непересекающихся пар узлов (МПУ) -Р={р11 Р1=<Х,Х]>; (Ы,г) [рпрг=0; ир=Х}. На нижнем уровне для каждой пары узлов р1=<Х-,Х]> формируется множество непересекающихся пар вершин (МПВ) -Уг^Уь^х^; хеХ; хеХ]; Хер,; Х^ер,}.

Исходное формирование множества непересекающихся пар узлов выполняется следующим способом. Если число узлов нечетное, то к ним добавляется пустой узел Х0, не содержащий вершин, для того чтобы число узлов было четным. Не те, , . Х

Х1

Х2. Для образования множества пар узлов формируются две опорные линейки позиций - верхняя и нижняя, с числом позиций в каждой - к/2 (рис. 1).

© © © © ©

и х X X !'

© © © © ©

1 2 3 4 5 4-позиция в линейке

Рис. 1. Две опорные линейки позиций для образования множества пар узлов

Х1

, Х2 -

нейки. Между узлами, занимающими одну и ту же позицию в верхней и нижней , ( . 1).

Множество пар узлов и множество пар вершин эволюционируют в процессе работы адаптивных поисковых процедур. Для модификации множества пар узлов используются два оператора Б1 и Б2. При выполнении оператора Б1 в выбранной паре узлов р1 производится взаимный обмен узлами между одноименными позициями в опорных линейках. Оператор Б2 осуществляет парный обмен узлами между соседними позициями в нижней опорной линейке. Оператор Б2 реализован и двух модификациях Б12 и Б22. При выполнении Б12 рассматриваются такие пары соседних позиций в нижней опорной линейке, у которых первый элемент пары -позиция с нечетным номером, а второй элемент пары - позиция с четным номером. При выполнении Б22 рассматриваются такие пары соседних позиций в нижней , - , второй элемент пары - позиция с нечетным номером. Операторы Б12 и Б22 выполняются поочередно по одному на каждой итерации. Эволюционные изменения МПУ производятся под управлением автоматов адаптации [10]. Принципы работы адаптивной системы верхнего уровня рассмотрены ниже.

Рассмотрим механизмы управления процессом эволюционного изменения множества непересекающихся пар узлов, выполняющимся на верхнем уровне разбиения. Каждому узлу Xi ставится в соответствие автомат адаптации (АА) ааЗеЛЛЗ, представленный на рис. 2. Если aa3i находится в одном из состояний группы С1, то для узла Х предпочтительным будет расположение в верхней опорной линейке позиций. Есл и aa3i находится в одном из состояний группы С2, то дл я узла Xi предпочтительным будет расположение в нижней опорной линейке позиций.

Работа группы автоматов ЛЛ3={аа3{ | i=1,2,...,k} осуществляется под действием управляющих сигналов вырабатываемых после окончания очередной итерации перераспределения вершин между узлами - “поощрения” и “нак^ания”. На рис. 2 переходы под действием сигнала “поощрение” помечены знаком (+), а пере-

“ ” (-).

На первом такте работы группы автоматов адаптации ЛАЗ для каждого узла Х рассчитывается число ti его связей с узлами верхней опорной линейки и число Ь,■ связей с узлами нижней опорной линейки.

На втором такте работы группы автоматов адаптации ЛАЗ вырабатываются управляющие сигналы - “поощрения ” и “наказания”.

Введем Правило предпочтения. Будем считать ра сположение узла Х в рассматриваемой линейке II предпочтительным, если число связей узла Xi с узлами, расположенными в этой же линейке, меньше числ а связей узла Х с уз лами, распо-

,2.

Рис. 2. Граф-схема переходов автомата адаптации

Если по выше рассмотренному правилу и в соответствии с состоянием автомата адаптации aa3i предпочтительной является одна и та же линейка, то вырабатывается сигнал “поощрение”.

Если по выше рассмотренному правилу предпочтительной является одна линейка, а в соответствии с состоянием автомата адаптации аа3{ предпочтительной , “ ”.

На третьем такте работы группы автоматов адаптации ЛЛЗво всех автоматах адаптации aa3i осуществляются переходы под действием управляющих сигналов.

На четвертом такте работы группы автоматов адаптации ЛЛ3 для каждого узла Xi определяется значение индикатора соответствия Qi.

Если узел XI расположен в линейке, являющейся предпочтительной в соответствии с состоянием аа3, то Qi=1. В противном случае Qi=0.

Процедура обмена узлами между линейками осуществляется на основе анализа индикаторов соответствия и будет рассмотрена ниже. Адаптивная система верхнего уровня представлена на рис. 3.

^ Кин<ц ^

Рис. 3. Адаптивная система верхнего уровня

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

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

На каждой итерации эволюционного процесса осуществляется модификация МПУ для которого выполняется процедура “Перераспределение вершин для за”, . -ния отслеживается с помощью автомата адаптации А4. Если на некотором интервале итерационного процесса модификации МПУ не приводят к улучшению оцен-, . 4

приведена на рис. 4.

Рис. 4. Граф-схема переходов А4

Автомат адаптации А4 обладает двумя группами состояний:

С = (ец\ i=1,2,...,m} и С2 = (С2г \ i=1,2,...,n}, соответствующим двум альтернативам А1 и А2.

. 4. , - . -

натива А1 - модификация МПУ; А2 - прекраще ние работы.

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

На первом такте определяется - есть улучшение оценки решения после смены МПУ или нет.

На втором такте вырабатывается сигнал “поощрения” (+), если есть улучшение , ” ” (-), .

На третьем такте под действием сигналов “поощрения” и ”нак^ания” А4 переходит в новое состояние.

На четвёртом такте реализуются альтернативы, в соответствии с состояниями 4. , 4 -

нии, соответствующем альтернативе Л1, то управляющему сигналу П4 присваивается значение “да”, а если в состоянии, соответствующем альтернативе Л2 , то -“ ”. Л2 -

ход. Вырабатывается сигнал г, под действием которого АА, находящийся в состоянии с21, переходит в с11. Таким образом, в начале каждого шага адаптивной системы АА находится в группе С1.

Как уже рассматривалось выше, модификация МПУ производится с помощью операторов В1 , Б12 и Б22

Взаимный обмен узлами между одноименными позициями в опорных линейках в выбранной паре узлов р1=<ХХ> производится оператором В1 на основе анализа значений индикаторов соответствия Qi и QJ■.

Если (Qi =0 и Qj =0), то производится обмен.

Если (Qi =1 и Qj =0) или =0 и Qj =1), то обмен с вероятностью Р1.

Если (Qi =1 и Qj =1), то обмен производится с вероятностью Р2.

Наилучшие результаты получаются при значениях Рх=0.5, Р2 = 0.1.

Эволюционная процедура перераспределения вершин между парами узлов. Рассмотрим теперь эволюционную процедуру перераспределения вершин

( ).

Рассмотрим пару узлов рх=<ХьХ]>, между которыми осуществляется пере.

( . 5).

Мощности множеств X и X могут быть разными. Пусть \Х\=п,-, а \Х\=п, ni <п,. Число позиций в опорных линейках равно большему значению из ni и п,. В позиции верхней линейки, начиная с первой, помещаются вершины меньшего по мощности узла X В позиции н ижней линейки, начиная с первой, помещаются

вершины большего по мощности узла X. Тогда между вершинами, занимающими одну и ту же позицию в верхней и нижней опорной линейке, образуются ni пар х^Х; х1еХ^; Х^еръ Х^ер,}.

Рис. 5. Две опорные линейки позиций для образования множества пар вершин

Структурная схема процедуры “Перераспределение вершин для заданного МПУ” приведена на рис. 6.

( Начало ]

п—

Групповая парная перестановка элементов между парой узлов

Работа АА1

Расчет й, Ы. Работа коллектива автоматов ААЗ

I

Работа АА2 после модификации МПВ

N1/ да

Модификация

т

Конец

Рис. 6. Структурная схема процедуры “Перераспределение для заданного МПУ”

Процедура включает два цикла внутренний и внешний. На каждой итерации внешнего цикла осуществляется модификация множества пар вершин V и перераспределение вершин для заданного множества пар вершин ¥1 . На каждой итерации внутреннего цикла осуществляется групповая парная перестановка вершин для заданного множества пар вершин ¥,. Для каждой пары вершин Уые¥ь сформированной для пары узлов р1=<Х{гХ3>, определяется приращение 8 числа с вязей, если произвести обмен этими вершинами между узлами X и Ху Затем производится обмен вершинами во всех парах с отрицательным значением приращения 8 числа .

Итерационные процессы на внутреннем и внешнем циклах управляются с помощью автоматов адаптации АА1 и АА2 соответственно. Структура и механизмы поведения автоматов адаптации АА1 и АА2 аналогичны автомату адаптации АА4 (см. рис. 4).

Описанная процедура выполняется параллельно во всех парах узлов.

1

Pi=<Xi,XJ> для заданного множества пар вершин V. На втором такте работы АА1 вырабатывается сигнал “поощрения” (+), если есть уменьшение числа связей siJ-между парой узлов pi=<Xi)Xj>, или сигнал ’’наказание” (-), если уменьшение числа . -му циклу групповые парные перестановки вершин для заданного множества пар вершин Vj не приводят к уменьшение числа связей Sj, то запоминается достигнутое (лучшее) значение числа связей (Sj)u, управляющему сигналу U1 присваивается “ ”

уже внешнего цикла производится модификация множества пар вершин Vl.

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

АА2 отслеживает динамику изменения числа связей (s,) между парой узлов Pi=<XiX]> в процессе эволюционной модификации множества пар вершин Vl. На втором такте работы АА2 вырабатывается сигнал “поощрения” (+), если есть уменьшение числа связей (s,) между парой узлов pl=<Xi,XJ>, или сигнал ”наказа-” (-), . -ционного процесса по внешнему циклу модификации множества пар вершин Vl не приводят к уменьшению числа связей (s,), то управляющему сигналу U2 присваивается значение “нет” и осуществляется выход из процедуры “перераспределение

”.

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

, , , ). по параметру Cut - число цепей, попавших в разрез.

В табл. 1 приведены сравнительные оценки по результатам тестирования разработанного алгоритма ГМА со стандартным многоуровневым алгоритмом hMetis (hM) [7], FM-шгоритмом, и алгоритмом, основанным на эвристике Kemighan-Lin (KL) [5]. В табл. 1 в колонке cut представлено число соединений в разрезе полученное алгоритмом ГМА. Результаты двух других алгоритмов описаны в процентах к разбиению, найденному с помощью ГМА.

Как видно из табл. 1, ГМА. значительно улучшил результаты FM. Ощутимо улучшение результатов МПЭА по сравнению к hMetis, который является очень сильным алгоритмом. Анализируя данные (см. табл. 1) можно сделать вывод, что разработанный алгоритм находит решения, не уступающие по качеству, а иногда и превосходящие своих аналогов в среднем на 5-10%.

Определены теоретические оценки пространственной и временной сложности разработанного алгоритма. ПСА и ВСА алгоритма - O(N2).

Таблица 1

Test Cut МПЭА FM hM KL

ibmOl 180 6.1 0.0 0.0

iUnCC 262 1.5 0.0 00

ЬіпОЗ 931 23.1 2.6 20

ibmOl 516 16.5 4.8 11

1чи05 1640 141 46 2.1

іЬтОб 876 10 9 1 3 1 0

ihinC )7 815 27.3 4.9 1.2

іЬтОв 1112 14.2 1.7 16

Ьт09 620 47.1 0.6 00

lbmlO 1249 20.3 1.6 11

ibmll 941 53.7 1.6 1.2

ibml2 1835 22.8 4.8 2.3

ibml3 823 43.0 1.9 0.8

ibml4 1758 673 4 5 2.1

ibml5 2587 998 4.7 3 2

ibm 16 1680 41.0 5.4 2B

ibml7 2126 43.1 5.9 3.5

ibml8 1490 14.2 3.3 2.0

.

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

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

Организация поисковой процедуры произведена на основе интеграции мно-, .

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

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

БИБЛИОГРДФИЧЕСКИЙ СПИСОК

1. Naveed Sherwani. Algorithms for VLSI Physical Design Automation. Kluwer academic publishers. Boston /Dordrecht/ London. 1995.

2. M. Sarrafzadeh and C. K. Wong. An Introduction to VLSI Physical Design. New York: McGraw Hill. 1996.

3. Деньдобренко Б.П., Малика Л.С. Автоматизация проектирования радиоэлектронной аппаратуры. М., Высш. шк., 2002

4. J. Cong, C. Wu, ‘Global Clustering-Based Performance-Driven Circuit Partitioning’, Proc. ISPD, 2002.

5. G. Karypis. Multilevel hypergraph partitioning. In J. Cong and J. Shinnerl, editors, Multilevel Optimization Methods for VLSI, chapter 6. Kluwer Academic Publishers, Boston, MA, 2002.

6. Yongseok Cheon, Seokjin Lee, Martin D. F. Wong, “Stable Multiway Circuit Partitioning for ECO”, 2003

7. Navaratnasothie Selvakkumaran and George Karypis, “Multi-Objective Hypergraph Partitioning Algorithms for Cut and Maximum Subdomain Degree Minimization”, ICCAD 2003.

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

9. C. Alpert and A. Kahng. A hybrid multilevel/genetic approach for circuit partitioning. In Proceedings of the Fifth ACM/SIGDA Physical Design Workshop, pages 100-105, 2002.

10. Куре йчик B.M., Лебедев Б.К., Лебедев О.Б. Поисковая адаптация: теория и практика. -М.: Физматлит, 2006.

11. Mazumder P., Rudnick E. Genetic Algorithm For VLSI Design, Layout & Test Automation. India, Pearson Education, 2003.

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