виде хромосом). Декодирование, т.е. получение решения, осуществляется с помощью вышеописанной адаптивной процедуры.
Временная сложность адаптивной процедуры на одном шаге - O(n). Сравнение с известными алгоритмами показало, что при меньшем времени работы новый алгоритм дает более качественные решения.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
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. L. Hagen and A. B. Kahng, "Fast Spectral Methods for Ratio Cut Partitioning and Clustering," Proc. IEEE Intl. Conf. on Computer-Aided Design, 2001, pp. 10-13.
6. Jan-Yang Chang, Yu-Chen Liu, and Ting-Chi Wang “Faster and Better Spectral Algorithms for Multi-Way Partitioning”, ASPDAC 1999.
7. 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.
8. Yongseok Cheon, Seokjin Lee, Martin D. F. Wong, “Stable Multiway Circuit Partitioning for ECO”, 2003
9. Navaratnasothie Selvakkumaran and George Karypis, “Multi-Objective Hypergraph Partitioning Algorithms for Cut and Maximum Subdomain Degree Minimization”, ICCAD 2003.
10. Cristinel Ababei, Navaratnasothie Selvakkumaran, Kia Bazargan, George Karypis, “Multiobjective Circuit Partitioning for Cutsize and Path-Based Delay Minimization”, ICCAD 2002.
11. . ., . . . -
. , 4, 1999.
12. 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.
13. . ., . ., . . : . -
.: , 2006.
14. Mazumder P., Rudnick E. Genetic Algorithm For VLSI Design, Layout & Test Automation. India, Pearson Education, 2003
15. . . : . - : - , 1999.
16. . . -
: . - : - , 2000.
УДК 681.3.001.63+007.52:611.81
АЛ. Дуккардт, Б.К. Лебедев КОМПЛЕКСНЫЙ ГИБРИДНЫЙ ГЕНЕТИЧЕСКИЙ АЛГОРИТМ РАЗБИЕНИЯ СХЕМ*
Задача разбиения. Неуклонное повышение степени интеграции СБИС привело к тому, что в них более 60% общей временной задержки сигнала приходится на задержки в межсоединениях. Рост размера области, отводимой для межсоеди-
* Работа выполнена при поддержке: РФФИ (гранты № 06-01-00272, № 08-01-00473), РНП 2.1.2.3193, РНП 2.1.2.2238.
, , . Уменьшение общей временной задержки в схеме приводит к увеличению быстро, -, -.
Основными недостатками существующих методов разбиения с учетом временных задержек [6-9] являются:
♦ использование моделей задержек, неадекватных реальным физическим процессам, протекающим в кристалле [6-8];
♦ применение упрощений, которые приводят к увеличению погрешности в решении (например, схемы преобразовываются в вентили с двумя входами [9]).
В данной работе разработан алгоритм разбиения схем, который минимизирует число разрезов цепи С и величину оценки суммарной временной задержки Б.
В работе применяется обобщенная функция оценки, отвечающая требованиям
:
С о
Р = Рх С + р2 О ,где р2 £[0,1] Р + Р2 = ^ (1)
С0 О0
где р1 и р2 компоненты вектора предпочтения.
,
.
Задача разбиения схемы состоит в отыскании такого разбиения к из множества возможных разбиений К некоторого гиперграфа Н, представляющего модель схемы, при котором минимизируется некоторая величина Б, являющаяся весовой , . Одним из параметров целевой функции Б является количество рёбер, пересекающих разрез:
С = {е,.|(Уу)[е1 пХу *е1]}. (2)
Величина оценки задержки Б в выражении (1) выражается комбинацией двух факторов, которые напрямую влияют на задержку схемы: задержка цепей, количество разрезов каждой цепи.
Е к
О + X , (3)
* ]
где ^ - вес ребра; е1 коэффициент, принимающий значение 1 или 0, в зависимости от того разрезается ребро или нет; |ЕК| - количество ребер в гиперграфе Н; Б; - текущая задержка >ой цепи(ребра); к - число разрезов цепи ].
Предлагаемая оценка задержки цепи Б содержит два компонента. Первый -это задержка вентилей. Задержка вентилей считается постоянной и в дальнейшем . - , -ется, используя модель задержки Эльмора для ребра е (ребро соответствует про) :
С
О(е) = Яе (у + С*), (4)
где Ие - общее сопротивление проводника е; Се - общая емкость проводника е; 1 - .
Для вычисления Яе и Се нам необходимо длина каждого ребра. Оценка длины цепи [10], соединяющая т элементов определяется по формуле:
а * Ь
Ье = X(а* т? -в)+ (а, + Ь,^ (5)
* ' а, + Ь
где а1 и Ь1 - геометрические размеры узлов между которыми распределены элементы цепи; а, в, у - настроечные параметры, вычисленные как а = 1.1, в = 2.0, у = 0.5. Удельное сопротивление на единицу длины проводника считаем г = 0.115,
= 0.00015.
Стратегия поиска. В реальных условиях вместимость узлов (блоков) разбиения намного превосходит число элементов соединяемых одной цепью. Поэтому, если ребро назначается в узел целиком, то оно не попадает в разрез, что соответственно приводит к уменьшению числа внешних связей. Данный подход к решению поставленной задачи наиболее точно отражает ее специфику и учитывает критерий числа межмодульных связей. Однако при данном подходе не все ребра могут быть назначены целиком. Ребра, назначаемые последними, могут быть помещены в различные узлы. При этом существует вероятность того, что можно улучшить полученное решение путем незначительных изменений составов узлов. Такое изменение можно сделать путем перестановок вершин между узлами.
На основе приведенных рассуждений, в работе была выбрана стратегия поиска «Эволюция-Эволюция», обобщенная схема которой приведена на рис. 1.
Рис. 1. Обобщенная схема стратегии поиска «Эволюция-Эволюция»
- -( ).
-
и передача их в качестве параметров на следующий шаг поиска - , полученных решений на предыдущем шаге путем случайных перестановок вершин . -чения скорости поиска, поэтому он и называется гибридным [2].
.
требует разработки новых методов представления альтернативных решений, обеспечивающие гомологичность закодированных решений, что позволяет использовать модификации генетических операторов, близких к естесственным.
Для первого генетического алгоритма предложен метод кодирования, задающий размещение гиперребер по узлам с помощью двух векторов Р1 и Р2:
♦ Р1 - последовательность назначения ребер в узлы;
♦ Р2 - .
Эта методика кодирования учитывает специфику поставленной в работе задачи и подразумевает получение качественных (с точки зрения оценки) решений еще на стадии кодирования решения. Указанный факт объясняется большой вероятностью назначения всех вершин, инцидентных ребру, в один узел, что приводит к существенному уменьшению числа внешних связей.
Решение задачи представляется набором последовательностей, то есть явля-. -тельностей рассмотрен в [4] и позволяет уменьшить поисковое пространство.
ГГА производит улучшение решений путем случайнонаправленных перестановок элементов (вершин) между узлами, что определяет необходимость знать
точный состав узлов. Это достигается путем кодирования решения в виде дихотомического дерева в [4].
Используемые в работе способы представления альтернативных решений требуют разработки новых генетических операторов. В модифицированном операторе кроссинговера заложен принцип многодетной семьи. Для этого введен динамический параметр п, регулирующий число потомков [1].
Структурная схема комплексного гибридного генетического алгоритма. Обобщенная структура комплексного гибридного генетического алгоритма ( ) . 2. ,
.
Блок генерации начальной популяции - предназначен для создания начального ( ) . -рования решений нескольких опорных векторов вместо одного, позволяет реализовать в алгоритме набор виртуальных популяций, что, в свою очередь, позволяет распараллелить процесс генетического поиска.
Блок ГО - набор процедур, реализующих различные генетические операторы, использующие динамические параметры и предназначенные для формирования -, сравнению с родительскими особями.
Генерация популяции
Блок генетических операторов
Блок альтернативного развития
Блок анализа преждевременной сходимости
ГГА
Блок генетических операторов
Блок локального улучшения решений
Блок анализа преждевременной сходимости
ГА
Блок адаптации
Рис. 2. Структурная схема комплексного гибридного генетического алгоритма
Блок локального улучшения решений - процедура, основанная на эвристике локальной оптимизации и методе моделирования отжига, которая предназначена для формирования нового решения, путем анализа текущей популяции, подпопу-ляции либо отдельных хромосом.
Процедуру локального улучшения можно разделить на 2 этапа:
1. « » - ( )
одной вершине пропорционально величине равной отношению числа внешних связей к числу внутренних. При выборе вершины она помещается в «буфер» и удаляется из узла [3].
2. « » -
предыдущем этапе вершин в узлы пропорционально числу связей вершин с узлом [3].
Блок альтернативного развития особей - блок декодирования, полученных с помощью модифицированных генетических операторов, потомков альтернатив. ( ), которые закодированы одним и тем же генетическим кодом. Следует отметить, что процесс декодирования разбит на два этапа: «предварительное» и «основное» де-
кодирование. Механизм виртуальных популяции действует на этапе «предварительного» декодирования, который заключается в преобразовании хромосом в со.
условиях в алгоритм было введено несколько операторов декодирования генетиче-. -ла введена случайная величина n выбираемая из множества {1,2, ...,z}, где z - максимальное число применяемых операторов декодирования, которая определяет количество используемых операторов декодирования.
Алгоритм работы блока реализующего предложенный механизм:
1. , , , полученная после кроссинговера или мутации.
2. n.
3. Копирование входящей особи n раз.
4. Для каждой копии особи вызывается свой ранее определенный оператор
.
5. После декодирования производится оценка полученных решений.
6. Выбор одного лучшего решения.
В разработанном алгоритме используется два оператора декодирования:
♦ последовательного назн ачения гиперребер в узлы;
♦ оператор назначен ия гиперребер в узлы, основанный на реберной связно-
.
Блок Миграции - после завершения работы первого ГА производит выборку наиболее перспективных решений, из которых формирует исходную популяцию для ГГА путем их перекодирования.
Блок Адаптации - введен для увеличения скорости генетического поиска. На каждой итерации осуществляется анализ набора популяций, по результатам которого принимается решение о смене опорного вектора Б;, если в течение некоторого числа генераций в виртуальной популяции П; не появляются индивидуальности с лучшим значением целевой функции.
Экспериментальные исследования. Произведено сравнение разработанного алгоритма с существующими аналогами решения задач разбиения схем.
На рис. 3, 4 приведены зависимости времени поиска и качества решения от количества вершин для различных стратегий поиска. Проанализировав графики можно сделать выводы, что при использовании стратегии «Эволюция-Эволюция» требуется в среднем на 50% больше процессорного времени, но в то же время, при этом алгоритм находит в среднем на 15,5% лучшее решение, чем при использова-
« ». -таты доказывают эффективность примененной стратегии поиска и выбор представления решения задачи разбиения.
В табл. 1, 2 приведены результаты сравнения разработанного алгоритма с аналогами - PurehMetis [6], Net&PathBased [10], PPFF [9], VPR [9]. Алгоритмы сравнивались по качеству получаемого решения (D - величина оценки временной задержки, Cut - количество ребер в разрезе) и по времени работы алгоритма. В табл. 2 приведены усредненные данные, так как на каждом тесте было проведено по 33 запуска. На рис. 5-7 приведены результаты сравнений из табл. 2.
Из приведенных данных можно сделать вывод, что разработанный алгоритм позволяет находить решения, не уступающие по качеству, а иногда и превосходя, . -, , 15%.
ВСА для стратегии поиска от числа вершин
число вершин N
Рис. 3. Зависимость среднего времени поиска для стратегии поиска
Рис. 4. Зависимость среднего значения ЦФ для стратегии поиска
Таблица 1
Описание тестовых схем
Circuit cordic misex3 ХЗ c6288 s 15 8 5 0 frisc elliptic
PI/PO 2З/2 14/14 1З 5/99 З2/З2 З 9/75 19/16 1З0/112
No. of gates 881 1З49 1Зб9 24З5 4З21 4400 4711
Таблица 2
Cordic misex3 X3 c6288 s15850 Frisc Elliptic
Pure hMetis D. 21,9 67,6 18,78 59,21 81,14 1б9,ЗЗ 271,02
Cut З27 54З 211 182 617 8З8 508
CPU(s) 2 5 4 З1 28 З4 16
Net& Path Based D. 16,41 61,16 16,65 56,26 78,9З 150,2 205,25
Cut 278 614 261 216 671 869 619
CPU(s) 5 1З б 80 З7 61 22
PPFF D. 20,6 64,З 16,04 59,19 82,1 165,17 2З1,ЗЗ
Cut З1З 540 228 201 615 851 510
CPU(s) б 14 8 79 4З бб 25
VPR D. 21,5 64,З 17,04 60,01 80,7З 167,2 2ЗЗ,02
Cut З19 54З 216 204 б22 84З 51З
CPU(s) 10 18 1З 85 47 71 27
ГЛЭЛР D. 15,9З 60,7 17,05 56,26 77,01 15З,З 204,97
Cut 280 610 25З 209 651 842 567
CPU(s) 4 14 б 7З З1 49 17
Задержка сигнала
□ Pure hMetis Net&Path Based
□ PPFF
□ VPR
ГАЭАР
Cordic misex3 X3 c6288 s15850 Frisc Elliptic
Ребер в разрезе
1000 -900 -800 -
400
300
200
100
і
«ЯР
Cordic misex3 X3
s15850 Frisc Elliptic
700
600
500
Рис. 5. Результаты сравнений по Рис. 6. Результаты сравнений по
критерию «временная задержка» критерию «число межмодульных
соединений»
Время работы
■ п
1 ,
^ ггїіі н-rfh 1
Рис. 7. Результаты сравнений по времени выполнения
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Дуккардт AM. Методы Генетического поиска для мультихромосомных представлений // VII Всеросийская научная конференция студентов и аспирантов «Техническая кибернетика, радиоэлектроника, и системы управления». - Таганрог, 2004. - С. 108.
2. Дуккардт AM., Лебедев Б.К. Разбиение на основе комбинированных генетических процедур // Известия ТРТУ. Тематический выпуск "Интеллектуальные САПР". - Таганрог: Изд-во ТРТУ, № 8, 2006. - С. 46-51.
3. Дуккардт AM. Решение задачи разбиения на основе процедуры «Выбивания» // Извес-
. " ". - : - , № 6, 2006. - С. 63-66.
4. . . -
вания СБИС: Монография. - Таганрог: Изд-во ТРТУ, 2000. - 192 с.
5. Alpert C.J. et all. Hypergraph Partitioning with Fixed Vertices // V.19, №2, February 2002, pp. 267 - 271.
6. Navaratnasothie, Selvakkumaran, Kia Bazargan, George Karypis. Multi-objective Circuit Partitioning for Cutsize and Path-Based Delay Minimization. ICCAD 2002
7. J. Cong, C. Wu, ‘Global Clustering-Based Performance-Driven Circuit Partitioning’, Proc. ISPD, 2002.
8. J. Minami, T. Koide, S. Wakabayashi, ‘An Iterative Improvement Circuit Partitioning Algorithm under Path Delay Constraints’, IEICE Trans. Fundamentals, Dec. 2000.
9. S.-L Ou, M. Pedram, ‘Timing-driven Partitioning Using Iterative Quadratic Programming’, at http://atrak.usc.edu/~massoud/, see “Coming Attractions!”, 2001.
10. P. Zarkesh-Ha, J.A. Davis, J.D. Meindl, ‘Prediction of Net-Length Distribution for Global Interconnects in a Heterogeneous System-on-a-Chip’, IEEE Trans. VLSI Systems, Dec. 2000
УДК 681.3.001.63 О.А. Мелихова, ЗА. Мелихова
ИСПОЛЬЗОВАНИЕ ЭВОЛЮЦИОННЫХ ВЫЧИСЛЕНИЙ В СИСТЕМАХ
ПРИНЯТИЯ РЕШЕНИЙ
Трудности, возникающие при управлении сложными техническими процессами, в частности, прогнозирование текущего состояния и оптимизации управле-,
стыке дисциплин: теории вероятности и математической статистики, теории эволюции и генетики, комбинаторики и нелинейной динамики. Число параметров некоторых объектов управления достигает порядка 103, 104, что влияет на размерность решаемой задачи и вызывает существенные ограничения на пути применения строго математических методов экстраполяции.