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

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

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

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

Секция интеллектуальных систем

УДК 681.3.001.63

Б.К. Лебедев, В.Б. Лебедев ПЛАНИРОВАНИЕ СБИС НА ОСНОВЕ ЭВОЛЮЦИОННОЙ АДАПТАЦИИ*

Задача планирования СБИС заключается в размещении на поле кристалла блоков, полученных на этапе разбиения, имеющих заданную площадь и не имеющих фиксированных размеров. При планировании решаются сразу две задачи: определяется взаимное расположение блоков друг относительно друга, т.е. их разме-, . строится план кристалла, представляющий собой охватывающий прямоугольник, разделенный горизонтальными и вертикальными сегментами на не налагающиеся прямоугольники, в которых следует поместить соответствующие блоки [1].

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

, -

.

В настоящее время сложились два основных подхода к построению плана - на основе “гильотинного разреза” и “не гильотинного разреза”.

Рассмотрим принципы кодирования хромосом при планировании на основе “гильотинного разреза”. В работе используется два типа разрезов - бинарный и п.

Решение кодируется набором Я из четырех хромосом: Я = {Н1,Н2,Н3,Н4}. Хромосома Н1 несёт информацию о разметке м ножества вершин дерева разрезов. Хромосома Н2 содержит информацию о структуре дерева. Хромосома Н3 содер-

. Н4 -

НИЯХ ОТНОШеНИЯ ВЫСОТЫ К Ширине - 21.

Рассмотрим структуру хромосомы Н2. Структуру бинарного дерева разрезов можно задать, используя на базе алфавита А = {О, •} постфиксную запись, где знак операнда О соответствует листьям дерева разрезов (областям), а знак операции • -соответствует внутренним вершинам дерева (р^резам). Запись для деревьев имеет следующий вид: О О • О О • О • • . Для восстановления дерева запись последовательно просматривается слева направо, и отыскиваются буквы типа •, соответствующие разрезам. Каждый такой разрез объединяет два ближайших подграфа, расположенных в записи слева от знака • и образованных на предыдущих шагах.

Пусть пх - число элементов записи типа О, а п. - число элементов типа •. Для дерева разрезов пх = п. + 1. В постфиксной записи слева от знака • число знаков О

* Работа выполнена при частичной финансовой поддержке программы развития научного потенциала высшей школы 2006-2008 годы (проекты РНП.2.1.2.2238, РНП 2.1.2.3193).

всегда больше числа знаков •. Пронумеруем позиции между знаками О: ОО 1 О 2

О 3 О 4 ... пх-2 О п*-!. Максимальное число знаков • в позиции равно номеру .

Для представления постфиксной записи разработана структура хромосомы, имеющая вид Н2 = < g1, g2,.., gn >. Число генов в хромосоме равно п. , т.е. числу знаков ‘.’. Значение гена gi колеблется в пределах от г до п., т.е. г < 2( gi) < п.. Значение гена указывает номер позиции в записи, в которую необходимо поместить знак .. Например: пусть для п. = 4 имеется хромосома Н2 = < 4,2,2,4 >. Запись, соответствующая хромосоме, имеет вид О О О . . О О . ..

Рассмотрим теперь структуру и принципы формирования линейной записи п- .

элементов А={аг | г=1,2,...,1}, где I- число вершин дерева. п элементов а{ е А0 соответствуют листьям дерева, а т элементов аг е Ау соответствуют внутренним вершинам п-арного дерева разрезов п+т=1, А=АуиАу.

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

Значением элемента аг е Ау соответствующего внутренней вершине хг является число поддеревьев, корни которых являются дочерними вершинами вершины х. Описания поддеревьев расположены в линейной записи непосредственно слева от а. Если аг е А0, то аг = 0, т.е. хг является листом дерева.

Рассмотрим запись 0,0,0,3,0,0,2,0,0,2,0,0,0,2,3,3. Выделим с помощью скобок иерархически вложенные друг в друга поддеревья, образованные при просмотре записи слева направо: ((0,0,0,3),(0,0,2),((0,0,2),0,(0,0,2),3),3).

п- :

к к

2 аг< к; 2 а= 1-1,

г=1 г=1

где к - номер позиции ; если а{ е А„ , то аг>2.

Используем множество элементов аг с нулевым значением в качестве опорного множества для построения древовидной записи при декодировании хромосомы. Расположим между этими элементами множество позиций: 0 0 1 0 2 0 3 ... п-2

0 п-1.

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

Разработанная хромосома имеет вид Н=^{ | г=1,2,..., п-1}, где п - число листьев дерева. Ген gi может принимать значение в интервале от г до п-1, кроме того, ген либо помечен либо нет. Значение гена указывает номер позиции. Если ген не помечен, то в позицию, соответствующую значению гена, к ненулевым элементам последним справа записывается элемент со значением, равным двум. Если же ген ,

элемента увеличивается на единицу, а при отсутствии в позиции ненулевых элементов в нее записывается элемент со значением, равным двум. Метки хромосом задаются вектором M={mi | г=1,2,..., п-1}. Таким образом, древовидная запись кодируется парой хромосом. Пример: пусть задана пара хромосом Н =

{2,2,4,6,9,9,9,9,9}; М = {0,1,0,0,0,0,1,0,1}. После декодирования пары хромосом Н

и М полученная древовидная запись имеет вид

((0,0,0,3),(0,0,2),((0,0,2),0,(0,0,2),3),3).

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

Рассмотрены три варианта задания значений размеров модулей - фиксиро-, ( ) , применения разработанных алгоритмов.

Для задания гибких размеров модулей используется хромосома Н4= g42,

Я4з, я!4}, где п - число модулей. Значение гена g4i определяет значение соотношения высоты к ширине модуля.

Данные с нечеткостью состоят из списков распределения ширины Wi (1 < i < п) и списков распределения высоты Hi (1 < i < п), где п - число модулей. Необходимо построить план, причем такой, чтобы математическое ожидание площади описывающего прямоугольника (площади плана) было минимальным. Каждый список распределений содержит пары чисел: ширина (или высота) модуля и её вероятность [4].

тъ>-

Wi = Ь»! Р&П И (2, Р(2 и-- , Р^т„. № , '£р(,] ) = 1 .

i i 3=1

т,

Нг ={( Р(,1 Л (2, Р(2 Л.- (,т, , Р (,т, ))} . ^Р^у ) = 1 •

i i 3=1

1, -лениями W1 и Н1, с модулем 2, определяемым распределениям W2 и Н2, даёт следующее распределение ширины и высоты для модуля:

Wlл = w © W2; н 1,2 = н 1 ® н2.

Операции © и ®, называемые соответственно сложение распределений и максимум распределений, определяются следующим образом:

А © £2 = ( (2( ,Р(а\г )*Р(23 ))|(<^1/,p(d1i ))е £1 и (2( ,Р(2] ))е £2 }

А

и

<4> Р(<4 )* Е Р( 2 і ) ( ’ Р(Л1і ))Є А « (2(, Р( 2 і ))Є А [и

і МЛ

2

\

Л 2 і, Р( 2 і )* Е Р(Л1і ) ( ’ Р(Л1і ))Є А« (Р (2 і ))є А

іМЛі

)

Результаты исследований показали, что “не гильотинный” план значительно сложнее “гильотинного”. Идет интенсивный поиск сравнимого или даже лучшего представления “не гильотинного” плана.

Приемлемое размещение можно изображать с помощью упорядоченного дерева (УД). УД для заданного размещения является граф 0=(В,Е), где вершины В -элементы размещения плюс четыре дополнительных ограничивающих вершины и

2

Е - ребра. Ребра ориентированы. Существует два типа ребер: в направлении слева направо (между вершинами) и снизу вверх. Вес ребра - расстояние между вершинами. В работе Guo [2] описана процедура получения размещения по УД.

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

,

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

Запись представляет собой набор элементов A={ai | i=1,2,...,n}, где n - число вершин дерева. Каждому элементу at древовидной записи соответствует вершина х{. Древовидная запись организована так, что каждая вершина xi с одной стороны является корнем некоторого поддерева для вершин, расположенных слева от х, а с другой стороны может быть дочерней вершиной для некоторой вершины, расположенной в соответствии с записью справа от х. Значением at является число поддеревьев, корни которых являются дочерними вершинами вершины х. Если at = 0, то xi является листом дерева, т.е. концевой вершиной. Описания поддеревьев рас-

ai.

Рассмотрим запись 0,0,2,0,1,0,2,0,0,3,0,3. Древовидная запись обладает сле-:

k

2ai < k, где k = 1,2,...,n.

i=1

Простейший способ получения древовидной записи заключается в последовательном наращивании значений элементов a. В начале все ai имеют нулевое значение. Число шагов равно n-1, где n - число вершин дерева. На i-м шаге увеличивается на единицу один из элементов ai+1, ai+2,..., an.

Хромосома для хранения информации о древовидной записи имеет вид H={gi li=1,2,..., n-1}. Значение гена - номер элемента ai, который надо увеличить на единицу. В исходном состоянии все ai равны нулю. Ген g,- может принять любое значение в интервале от i+1 до n. Хромосоме H={3,3,5,7,7,10,10,10,12,12,12} соответствует запись 0,0,2,0,1,0,2,0,0,3,0,3.

Предложенные структуры хромосом имеют линейную пространственную сложность. Трудоемкость td декодирования хромосом имеет вид - O(n).

Обозначим как Ri={ Hj \j=1,2,...,n} набор хромосом, задающих решение. В

1 2.

1

хромосом родительской пары. Просматриваются последовательно хромосомы от H1 до Н4 и с вероятностью Pk1 осуществляется обмен гомологичными хромосомами родительской пары. С помощью кроссинговера К2 новые решения образуются путём обмена генами между гомологичными хромосомами родительской пары. Просматриваем последовательно, начиная с первого, локусы хромосом. С вероят-Pk2 .

3

R1 R2 2 1. 3 , -

2 Pk2 .

Оператор мутации выполняется следующим образом. Задаётся вероятность мутации - Рм. Просматриваются последовательно локусы хромосом решения. С P . -

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

В основу селекции как для выбора пары хромосом при кроссинговере, так и при отборе популяции положен “принцип рулетки”.

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

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

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

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

2. Guo P.N., Cheng C.K.. and Yoshimura T. "An O-tree reprfseniation of nonslicing floorplans and its applications." in Proc. Design Automation Conf., June 1999. pp. 268-273.

3. Murata H. and Kuh E.S. "Sequence-pair based placement method for hard/soft/pre-placed modules," in Pmc. Int. Smp. Phvsical Design, Apr. 1998, pp. 167-172.

4. Bazargan K., Kim S., and Sarrafzadeh M., “Nostradamus: A.Floorplanner of Uncertain Designs,” IEEE Trans. Computer - Aided Design, vol.18, No 4, 1999, p.p. 389-397.

5. . .

//Международная научно-техническая конференция “IEEE AIS’02, CAD - 2002”. - Москва, Физматлит, 2002. С. 398-404.

УДК 321.3

В.В. Курейчик, П.В. Сороколетов

О ПОСТРОЕНИИ ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ*

В основе интеллектуальных систем поддержки принятия решений (ИСППР)

( ).

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

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

( , ). Под ИСППР понимают организационно-техническую систему, состоящую из интеллектуального комплекса средств поддержки принятия решений взаимосвязанного и взаимодействующего с пользователями и сетями ЭВМ, и выполняющую решения заданных задач [1-3].

Укрупненная структура ИСППР по аналогии с другими интеллектуальными системами будет состоять из четырех подсистем: адаптивной подсистемы; интерактивной подсистемы; обрабатывающей подсистемы; подсистемы управления.

: -, - . На каждом из этих уровней происходит моделирование эволюций и адаптация ал-

* Работа выполнена за счет финансирования РНП.2.1.2.3193

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