Научная статья на тему 'Планирование СБИС на основе метода муравьиной колонии'

Планирование СБИС на основе метода муравьиной колонии Текст научной статьи по специальности «Математика»

CC BY
377
60
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПЛАНИРОВАНИЕ СБИС / МУРАВЬИНАЯ КОЛОНИЯ / ОПТИМИЗАЦИЯ / PLANNING VLSI / ANT COLONY / OPTIMIZATION

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

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

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

PLANNING VLSI ON THE BASIS OF THE ANT COLONY METHOD

New technologies, principles and mechanisms of the planning VLSI decision using mathematical methods in which principles of natural mechanisms of decision-making are put in pawn are offered. For compact representation of the slicing floorplan a modification Polish expression is used. It has allowed to create the space of decisions in which frameworks the search process which is based on modeling of adaptive behaviour of ant colony is organized. In comparison with existing algorithms improvement of results is reached.

Текст научной работы на тему «Планирование СБИС на основе метода муравьиной колонии»

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

1. John Koza. Genetically Breeding Populations of Computer Programs to Solve Problems of Artificial Intelligence. Proceedings of the Second International Conference on Tools for AI. Herndon, Virginia, November 6-9, 1990. Los Alamitos, CA: IEEE Computer Society Press. - P. 819-827.

2. John Koza. Integrating Symbolic Processing into Genetic Algorithms. Workshop on Integrating Symbolic and Neural Processes at AAAI-90 in Boston. July 29, 1990.

3. John Koza. Genetic Programming: On the Programming of Computers by Means of Natural Selection. Cambridge, MA: The MIT Press, 1992. - 840 p.

4. Zelinka Ivan. Symbolic regression - an overview. http://www.mafy.lut.fi/EcmiNL/ old-er/ecmi35/node70.html.

5. Ricardo Poli, William B. Langdon, Nicolas F. McPhee. A field guide to Genetic programming. http://www.gp-field-guide.org.uk. 2008. - 250 p.

6. Курейчик В.М., Родзин С.И. Эволюционные алгоритмы: генетическое программирование // Известия академии наук. Теория и системы управления. - 2002. - № 1.

Лисяк Мария Владимировна

Технологический институт федерального государственного автономного

образовательного учреждения высшего профессионального образования «Южный

федеральный университет» в г. Таганроге.

E-mail: maria-lisyak@yandex.ru.

347928, г. Таганрог, пер. Некрасовский, 44.

Тел.: 88634360524.

Lisyak MariaVladimirovna

Taganrog Institute of Technology - Federal State-Owned Educational Establishment of

Higer Vocational Education “Southern Federal University”.

E-mail: maria-lisyak@yandex.ru.

44, Nekrasovskiy, Taganrog, 347928, Russia.

Phone: +78634360524.

УДК 681.3.001.63

О.Б. Лебедев

ПЛАНИРОВАНИЕ СБИС НА ОСНОВЕ МЕТОДА МУРАВЬИНОЙ

КОЛОНИИ*

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

Планирование СБИС; муравьиная колония; оптимизация.

O.B. Lebedev

PLANNING VLSI ON THE BASIS OF THE ANT COLONY METHOD

New technologies, principles and mechanisms of the planning VLSI decision using mathematical methods in which principles of natural mechanisms of decision-making are put in pawn are offered. For compact representation of the slicing floorplan a modification Polish expression

*

Работа выполнена при поддержке: РФФИ (грант № 09-01-00509) г/б № 2.1.2.1652.

is used. It has allowed to create the space of decisions in which frameworks the search process which is based on modeling of adaptive behaviour of ant colony is organized. In comparison with existing algorithms improvement of results is reached.

Planning VLSI; ant colony; optimization.

Введение. Планирование СБИС заключается в размещении на поле кристалла блоков, имеющих форму прямоугольников. В результате планирования строится план кристалла, представляющий собой охватывающий прямоугольник, разделенный горизонтальными и вертикальными сегментами на непересекающиеся прямоугольники, в которые следует поместить соответствующие блоки. Основной целью оптимизации является минимизация общей площади кристалла.

Задача планирования относится к классу NP. В течение последних лет были предложены различные подходы к решению проблемы планирования. Эти подходы могут быть классифицированы следующим образом линейное и квадратичное программирование [1]; имитация отжига; основанные на ограничениях [2]; сила направленная парадигма [3]; основанные на геометрической дуализации списков связей [3]; иерархические методы сверху-вниз и снизу-вверх [4]; метод кластеризации [5]; генетические алгоритмы (ГА); на основе поисковой адаптации [6,7] и др. Анализ существующих подходов к решению поставленной задачи показал, что удачными являются подходы, основанные на методах эволюционного моделирования [8,9]. Тем не менее, в последнее время для решения различных «сложных» задач, к которым относятся и задачи планирования всё чаще используются способы, основанные на применении методов искусственного интеллекта [10].

В последние годы интенсивно разрабатывается научное направление, объединяющее математические методы, в которых заложены принципы природных механизмов принятия решений [11-13]. Наблюдение живых организмов подтверждает, что адаптация, выступает движущей силой эволюционного развития. Механизмы генетического поиска, реализующие случайные изменения, часто не находят ту их цепочку, которая приводит к оптимальному решению. Для этого нужны “осмысленные” изменения, направленные в сторону глобального оптимума. Такие свойства как раз присущи адаптивным поисковым процедурам на основе самообучения и самоорганизации. Адаптация на основе самообучения и самоорганизации доминирует в процессе существования и развития живых организмов. Идея муравьиного алгоритма [14] - моделирование поведения муравьёв, связанного с их способностью быстро находить кратчайший путь от муравейника к источнику пищи. Основу поведения муравьиной колонии составляет самоорганизация, обеспечивающая достижения общих целей колонии на основе низкоуровневого взаимодействия благодаря которому, в целом, колония представляет собой разумную многоагентную систему [14]. Особенностями являются наличие непрямого обмена, который и используется в муравьиных алгоритмах. Непрямой обмен представляет собой разнесённое во времени взаимодействие, при котором одна особь изменяет некоторую область окружающей среды, а другие используют эту информацию позже, когда в неё попадают. В работе используется представление задачи планирования в виде адаптивной муравьиной системы, на основе сочетания принципов самообучения, самоорганизации.

Основные положения. Проблема планирования формулируется следующим образом [1]. Имеется множество модулей M = {m\ i=1,2,... ,n}. Каждый модуль характеризуется тройкой < S, l, t,>, где St - площадь модуля, а параметры lt и tt задают нижнюю и верхнюю границу значения hi / wi, т. е.

li <hi / w, < ti (1)

где /, - высота модуля, wi - ширина модуля. В качестве плана кристалла будем использовать план, полученный путем рекурсивного использования “гильотинного разреза”, т.е. последовательного разрезания прямоугольников на две части. На рис. 1,а представлен план, а на рис.1,б - соответствующее ему дерево 0={^ | у = 1,2,... ,2п-1} “гильотинного разреза”, листьями которого являются вершины, соответствующие блокам, а внутренние вершины соответствуют разрезам: V- вертикальный, Н - горизонтальный.

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

й < х, ■ у,, /, < у,, w1 < х, . (2)

Цель оптимизации - минимизация общей площади плана К, при соблюдении ограничений (1), (2).

Формирование плана методом свертки. Задать план это: задать структуру дерева разрезов, т.е. последовательность бинарных разрезов; для внутренних вершин дерева, соответствующих разрезам, указать тип разреза Н или V; пометить листья дерева номерами модулей; для модулей с фиксированными размерами указать их ориентацию.

На основе этой информации построение плана осуществляется путем последовательной бинарной свертки областей по дереву разрезов, начиная от листьев дерева. Каждой внутренней вершине дерева разрезов будет соответствовать область, полученная в результате бинарной свертки поддерева, имеющего корнем эту внутреннюю вершину. Будем считать, что разрез с номером ,, разрезает вершину ^ (область и,). Вначале свертки каждой вершине являющейся листом дерева разрезов, ставится в соответствие область и, с размерами х, = /,, у, = wi, равными размерам модуля т. Пусть вершины di и ^ являются дочерними вершинами вершины ^ и пусть для областей и, и иу, соответствующих di и ^, определены нижние границы их размеров (х„ у) (ху, у).

Процесс бинарной свертки представляет собой слияние областей и, и иу, формирование области ик, определение размеров для ик и новых размеров для и, и иу. Обозначим через тах(х1,х2) максимальное значение из х1 и х2. При слиянии по горизонтали ук = тах(у,уу); хк = х, + ху; у, и уу будут иметь размер, равный тах(у,,уу). При слиянии по вертикали ук = у, + уу; хк = тах(х,,ху); х, и ху будут иметь размер, равный тах(х,,ху). Пусть для примера (рис. 1) при фиксированных размерах модулей (т1 - т9) после метризации план с размещенными в областях модулями имеет вид, представленный на рис. 1,в. Будем различать размеры (/г^,) модуля т, от размеров (х,,у,) области и,, в которую помещен модуль (блок) т,.

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

Общая структура представления решений. Введём алфавит А = {М,К}. Структуру дерева разрезов можно задать используя на базе алфавита А польское выражение для бинарного дерева, где множество М ={т1 | ,=1,2,..., пх } соответствует листьям дерева разрезов (областям), а множество К ={И,У} - соответствует

разрезам. Польское выражение для дерева, представленного на рис. 1,б имеет вид: D=mI m2 Vm3 m4 VН m5 m6Н m7 m8 m9 Н VН V.

Процесс восстановления дерева по польскому выражению достаточно прост. Последовательно слева направо просматривается польское выражение, и отыскиваются буквы Н или V, соответствующие разрезам. Каждый такой разрез объединяет два ближайших образованных на предыдущих шагах подграфа, расположенных в польской записи слева от буквы Н или V. Проиллюстрируем процесс свертки с помощью скобок: D= ((т1 m2 V) (т3 т4 V) Н) (т5 т6 Н) (т7 (т8 т9 Н) V) Н) V.

К

4____I

ГП} т2 т5

т6

т3 т4 т7 т8

т9

ті т2 т3 т4 т5 т6 т7

т8 т9

б

Рис. 1. а — план гильотинного разреза; б — дерево гильотинного разреза; в — план с размещенными модулями

а

в

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

1. Для каждого модуля т1 возможны два способа (две ориентации) размещения в области и. Пусть первой ориентации модуля т^ соответствует обозначение -т\, а при второй ориентации т2

2. В состав выражения входят по одному разу все элементы множества М ={тi | 1=1,2,..., пм} с одной из меток - т1 i либо т2.

3. Для дерева разрезов всегда выполняется равенство пм = пя + 1.

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

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

Назовем польское выражение D, построенное на базе алфавита А = {М,К} легитимным, если оно удовлетворяет вышеперечисленным условиям. Таким образом, легитимное выражение D является символьным представлением решения задачи планирования. Различные решения получаются путём комбинирования взаимным расположением элементов алфавита А = {М,К}, удовлетворяющими условиям (1-5). В работе пространство решений представляется множеством легитимных выражений D. Поиск решения сводится к поиску такого легитимного выражения D, которое оптимизирует показатель качества (критерий).

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

графе поиска решений О=(Х,П), где Х= Х1 иХ2 иХ3 и Х4. Вершины множества Х1 ={хи I i=1,2,..., пм} соответствуют модулям т1, размещаемым в первой ориентации. Вершины множества Х2 ={х2{ | i=1,2,..., пм} соответствуют модулям т2, размещаемым во второй ориентации. Вершины множества Х3 ={х3^ | i=1,2,..., пк} соответствуют горизонтальным разрезам Н. Вершины множества Х4 ={х411 i=1,2,..., пя } соответствуют вертикальным разрезам V.

В общем случае поиск решения задачи планирования осуществляется коллективом муравьев 2={ 2к \к=1,2,...,1}. На каждой итерации муравьиного алгоритма каждый муравей 2к строит свое конкретное решение задачи планирования. Решением является маршрут в графе 0=(Х, V), включающий пм вершин, принадлежащих множествам Х1 или Х2, пК вершин, принадлежащих множествам Х3 или Х4, построенный в соответствии с условиями 1-5. В этом случае построенный маршрут представляется в виде легитимного выражения D.

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

Моделирование поведения муравьёв в задаче планирования связано с распределением феромона на ребрах графа О. На начальном этапе на всех ребрах графа О откладывается одинаковое (небольшое) количество феромона Q/v, где у=|и|. Параметр Q задается априори. Процесс поиска решений итерационный. Каждая итерация I включает три этапа. На первом этапе муравей находит решение, на втором этапе откладывает феромон, на третьем этапе осуществляется испарения феромона. В работе используется циклический (ап1-сус1е) метод муравьиных систем. В этом случае ферромон откладывается агентом на ребрах после полного формирования решения. На первом этапе каждой итерации каждый к-й муравей формирует свой собственный маршрут Dk. Процесс построения маршрута Dk пошаговый. На каждом шаге t агент применяет вероятностное правило выбора следующей вершины для включения ее формируемый маршрут Dk(t). Для этого формируется множество вершин Х()еХ, таких, что каждая из вершин xieXk(t) может быть добавлена в формируемый маршрут Dk(t) с соблюдением условий 1-5. Пусть е() -последняя вершина маршрута Dk(t). Агент просматривает все вершины xie Х^.) Для каждой вершины хе Х() рассчитывается параметра/& - суммарный уровень

феромона на ребре графа О, связывающего Х1 с вершиной е().

Вероятность Р^ включения вершины х^ е Х^) в формируемый маршрут Dk(t) определяется следующим соотношением

Рц^/о/X/Л . (3)

г

Агент с вероятностью Рл выбирает одну из вершин, которая включается маршрут Dk(t).

На втором этапе итерации, каждый муравей откладывает феромон на рёбрах построенного маршрута.

Количество феромона Ат](1), откладываемое муравьем 2/^ на каждом ребре построенного маршрута Dk, определяется следующим образом:

Ат](!)= Q / Г(), (4)

где I - номер итерации, Qi - общее количество феромона, откладываемое муравьем на ребрах маршрута Dk, Г](1) - целевая функция для решения, полученного муравьем 2на !-ой итерации. Чем меньше Г](1), тем больше феромона откладывается

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

После того, как каждый агент сформировал решение и отложил феромон, на третьем этапе происходит общее испарение феромона на ребрах полного графа G в соответствии с формулой (S).

fik = fik(1- p), (S)

где p - коэффициент обновления.

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

Временная сложность этого алгоритма зависит от времени жизни колонии l (число итераций), количества вершин графа n и числа муравьев m, и определяется как O(l*n2*m).

Алгоритм покрытия на основе метода муравьиной колонии формулируется следующим образом.

1. В соответствии с исходными данными формируется граф поиска решений G.

2. Определяются число агентов и вершины, в которые они помещаются.

3. Задается значение параметра Qi и число итераций - Nl.

4. На всех ребрах графа G откладывается начальное количество феромона.

5. На первом этапе каждой итерации на ГПР G каждым агентом zk строится легитимный маршрут Dk.

6. Для каждого решения Dk, с помощью алгоритма свертки находится значение целевой функции Fk(l).

7. На ребрах каждого найденного маршрута в графе G откладывается феромон. Количество феромона, откладываемого каждым агентом, пропорционально Fk(l).

S. Испарение феромона на ребрах (или вершинах) графов.

9. Выбор лучшего решения, полученного на протяжении всех выполненных итераций.

10. Если все итерации выполнены, то конец работы алгоритма, в противном случае переход к пункту S для выполнения очередной итерации.

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

Экспериментальные исследования проводились на IBM PC. Сравнение с известными алгоритмами показало, что при меньшем времени работы у полученных с помощью муравьиного алгоритма решений значения целевой функции лучше (меньше) в среднем на б %. В среднем запуск программы обеспечивает нахождения решения, отличающегося от оптимального менее чем на l %.

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

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

1. KahngA.B. “Classical Floorplanning Harmful”, ISPD 2000. — Р. 20l-2l3.

2. J. Cong en all. “Microarhitecture Evolution With Physical Planning”, DAC, 200s. — Р. 32-3S.

3. .N. Adya et all. “Unification of Partioning, Plasement and Floorplanning”. DAC, 2004.

- Р. 550-55l.

4. Liu H. Chen T. Chou A. Aziz D.F. Wong. “Integrated Power Supply Planning and Floorplanning”, IEEE Tranc.on CAD, 2004.

5. Cheng L., D.F. Wong. “Floorplan Design For Multi-million Gate FPGAs”, DAC, 2004.

- Р. 292-3l3.

6. Лебедев В. Б. Планирование СБИС методом адаптивного поиска // Известия ТРТУ.

- 2000. - № 2 (16). - С. 168-177.

7. Курейчик В.М., Лебедев Б.К., Лебедев О.Б. Поисковая адаптация: теория и практика.

- М.: Физматлит, 2006.

8. Лебедев Б.К. Методы поисковой адаптации в задачах автоматизированного проектирования СБИС: Монография. - Таганрог: Изд-во ТРТУ, 2000.

9. Курейчик В.М. Модифицированные генетические операторы // Известия ЮФУ. Технические науки. - 2009. - № 12 (101). - С. 7-15.

10. МакКоннелл Дж. Основы современных алгоритмов. - М.: Техносфера, 2004.

11. Di Caro G., Ducatelle F., Gambardella L.M. AntHocNet: An adaptive nature inspired algorithm for routing in mobile ad hoc networks // European Transactions on Telecommunications.

- 2005. - № 16(5). - Р. 443-455.

12. Engelbrecht P. Fundamentals of Computational Swarm Intelligence. John Wiley & Sons, Chichester, UK, 2005.

13. Курейчик В.В., Полупанова Е.Е. Эволюционная оптимизация на основе алгоритма колонии пчел // Известия ЮФУ. Технические науки. - 2009. - № 12. - С. 41-46.

14. DorigoM. andStutzle T. Ant Colony Optimization. MIT Press, Cambridge, MA, 2004.

Лебедев Олег Борисович

Технологический институт федерального государственного автономного образовательного учреждения высшего профессионального образования “Южный федеральный университет” в г. Таганроге.

E-mail: lbk@tsure.ru.

347928, г. Таганрог, пер. Некрасовский, 44.

Тел.: 88634371743.

Lebedev Oleg Borisovich

Taganrog Institute of Technology - Federal State-Owned Educational Establishment of Higher Vocational Education “Southern Federal University”.

E-mail: lbk@tsure.ru.

44, Nekrasovsky, Taganrog, 347928, Russia.

Phone: +8634371743.

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