7. Koza J.R. Genetic Programming. Cambridge/MA:MIT Press, 1998.
8. Осыка AM. Экспериментальное исследование зависимости скорости сходимости генетического алгоритма от его параметров// Известия АН. Теория и системы управления. 1997. №5. С.100-111.
9. Скурихин AM. Генетические алгоритмы// Новости искусственного интеллекта, М., 1995. №4. С.6-46.
10. . . . .: , 1979.
11. Oliver I., Smith D., and Holland J.R.. A study of permutation crossover operators on the traveling salesman problem. Proc. of the Second International Conf. on Genetic Algorithms, pp. 224-230.
12. Kureichik V.M., Miagkikh V. Some New Features in Genetic Solution of the TSP. Proceedings of the second International conference, Plymouth UK, 1996. pp.294-296.
УДК 681.3:536.2.072
О. Б. Лебедев
ОПТИМИЗАЦИЯ МЕТОДОМ ГЕНЕТИЧЕСКОГО ПОИСКА ТЕПЛОВЫХ ХАРАКТЕРИСТИК ПРИ РАЗМЕЩЕНИИ ЭЛЕМЕНТОВ СБИС*
Постоянный рост функциональной сложности СБИС и сопутствующее увеличение плотности топологии всех уровней иерархии СБИС приводит к выдвижению проблемы обеспечения нормального теплового режима в разряд основных проблем комплексной задачи сквозного синтеза СБИС. В работах [1,2] рассмотрены вопросы решения задачи размещения электронных элементов (дискретных источников тепла) с оптимизацией монтажно-коммутационных и тепловых характе-, -мальных по тепловому критерию решений графовыми и гиперграфовыми моделями. Одной из основных задач при построении такой модели является задача получения начального размещения дискретных источников, которое оптимально с точки зрения теплового режима.
Рассмотрим метод проектирования СБИС на основе стандартных ячеек. Предварительно формируются библиотечный набор ячеек. Каждая ячейка реализует заданный набор функций и для нее разработан топологический чертеж (как , ). -вается ячейками библиотечного набора.
Предлагается способ получения оптимального размещения дискретных источников тепловой энергии с использованием метода генетического поиска. Под оптимальным размещением дискретных источников понимается такое размещение, при котором снижение надежности, вызванное перегревом, минимально.
СБИС с точки зрения теплофизики, представляет систему тел с источниками энергии. Известно [3], что перегрев некоторой /'-ой части системы относительно условной окружающей среды может быть представлен в виде выражения
m
*
Работа выполнена при поддержке Мин. образования, грант № TG2-G2.3-491
1G2
где ру - мощность, рассеиваемая у'-ой областью системы; ¥ц - тепловой коэффициент влияния у'-ой области на /'-ю; т - число характерных областей, из которых состоит система.
Примем в качестве характерных областей системы фиксированные посадочные позиции. Тогда величины, входящие в (1), приобретут следующий смысл:
V - перегрев /'-ой позиции (поверхности платы под электронным элементом); ¥ц -тепловой коэффициент влияния у'-ой посадочной позиции на /'-ю посадочную позицию; Ру - мощность рассеивания дискретного источника (электронного элемента),
установленного в у'-ю посадочную позиции. Пусть А = {а/ | 1=1,2,.,.,т} - множество электронных элементов и £ = I 1=1,2,.,.,п} - множество фиксированных позиций.
а/ А р/ -
жества мощностей рассеивания электронных элементов Р = {р/ | /=1,2,...,т}. Рассмотрим случай, когда т=п, т.к. при этом упрощается анализ без потери общности получаемых результатов. Если т<п, то добавляется п-т элементов с нулевой .
Интенсивность отказов электронных элементов является в общем случае нелинейной функцией температуры. Согласно [4] в диапазоне рабочих температур электронного аппарата зависимость интенсивности отказов электронных элементов может быть аппроксимирована линейной функцией вида
Ц*)=ко+к/г-г,), (2)
где Х/г) - интенсивность отказов /'-го электронного элемента при его рабочей температуре )ч0 - интенсивность отказов /-го электронного элемента при темпе-
ратуре начала диапазона г0; к -коэффициент линеаризации.
Приняв в качестве г0 температуру электронного элемента, запишем (2) в виде
Н*) = Ха+к/у-лгъ, (3)
где - перегрев относительно электронного элемента корпуса посадочной позиции под /'-м электронным элементом; - перепад температуры на тепловом
контактном сопротивлении между /'-м электронным элементом и платой (кристал).
,
модуля (отсутствие резервирования), то интенсивность отказов последнего опре:
т т
4= X Х/(Г)=Т Ао+к/УгШ (4)
/=1 /=1
Подставив в (4) значение у; из (1), получим
т т т т
4'= X лго+Ъ к/ X РрРу+Т к^г, . (5)
/=1 /=1 3=1 /=1
Задача оптимального размещения дискретных источников тепла (электронных элементов) заключается в минимизации Л±- , т.е.
т т т т
Рч= X Ъо+^ X круРу+^ к/Дг}^ т/п (6)
/=1 /=1 у=1 /=1
Так как величина не зависит от того, в какой позиции установлен /' -й элек-
( , ),
(6)
т т
Е Е крр ->■ тіп.
,=1 }=1
(7)
Введем булеву переменную
1,если а установлен В ПОЗИЦИЮ 5 ■;
‘ 1
■> г\
I 0, в противном случае.
Тогда задача оптимального размещения дискретных источников будет формулироваться следующим образом.
Необходимо найти матрицу Х=\\ху\ \тхт такую, что
В выражении (8) рк и к представляют соответственно мощность, рассеиваемую к-ш электронным элементом, и коэффициент линеаризации /-го электронного .
Задача (8) с ограничениями (9) представляет собой комбинаторную труднорешаемую задачу, относящуюся к классу №-полных задач. Докажем это. Доказательство проведем методом сужения задачи.
Обозначим
Частным случаем (10) является задача квадратичного назначения, когда 1ф у. Так как задача квадратичного назначения относится к классу №-полных задач, то и задача (8), (9) является №-полной, что и требовалось доказать.
Решение поставленной задачи осуществляется на основе методов эволюцион-
.
(решетки). Каждая позиция имеет координаты (Х{,Уу ). Единицей измерения служит величина расстояния между соседними узлами решетки. Первая позиция имеет координаты (1,1). Установим взаимно однозначное соответствие между множеством порядковых номеров позиций и множеством их координат. С этой целью упорядочим и пронумеруем позиции по возрастанию параметра Wi = Х{ + У у . Так как позиции, расположенные на одной диагонали в решетке, имеют одно и тоже значение Wi , то в пределах диагонали они упорядочиваются и нумеруются по убыванию значения параметра Qi = Х{ - У у .
В соответствии с этим правилом позиции нумеруются в соответствии со значениями пары параметров Wi и Qi .
тттт
Е Е Е Е РіХкржкі ->■ тіп
(8)
і=1 і=і к=1 1=1
и выполняются ограничения:
т
Е Ху=1 V ] Є {1,2,...,т};
І=1
(9)
т
Е хр1 V і Є {1,2,.,т}.
1=1
тт
^ї(і),кф Е Е хк]ркх1ік1'
к=1 1=1
Тогда (8) запишется в виде
тт
Е Е РіА(і)М) тіп .
1=1 1=1
(10)
Пусть имеется множество размещенных в позициях элементов А, число которых равно числу позиций. Построим упорядоченный список А* по правилам, изложенным выше, т.е. по значениям параметров и Q i . Очевидно, что порядковый номер элемента в списке А* будет соответствовать номеру позиции, в которой он размещен. Воспользуемся этими знаниями для кодировки и декодирования хромо, .
В работе каждое решение ^ представляется в виде двух гомологичных (морфологически и генетически сходных) хромосом Иц и И2. Порядковый номер гена в хромосоме соответствует порядковому номеру элемента. Число генов в хромосоме равно п. Если фактическое число размещаемых элементов меньше числа позиций, то общее число элементов равно числу позиций. В каждом гене gу хранятся два параметра ау и Ьу, на основе которых определяются позиция и координаты элемента, соответствующего гену gу .
Отметим, что параметры ау, Ьу в составе гена gу не являются действительными координатами позиции, в которой размещен соответствующий элемент. Однако, между параметрами ау, Ьу и координатами позиции существует корреляционная .
Декодирование информации хромосом осуществляется в следующем порядке. Для каждой пары гомологичных генов g’у и g’’у рассчитываются параметры:
WiJ
’iJ + a’’iJ + b’iJ + b’’у ,
Qj (a tJ + a iJ) Ф iJ + b iJ).
Затем размещаемые элементы упорядочиваются по значениям соответствующих им параметров Щ и Qу (по возрастанию Щ и убыванию Qу в предел ах каждого Щ) и строит ся вектор А*, который и определяет размещение элементов.
А* = < ак / к = 1, 2, ..., п >, где ак - номер элемента, размещаемого в к-ой позиции, при этом (Ук) [ (м)к <^к+1} V{(Мк = ^к+1) & ^к >Qk+l)}].
Пусть в популяции решений П есть два решения Я1 и Я2 , каждое из которых включает гомологичную пару хромосом (рис.1).
Рис.1
, , -, R1 R2.
Для этого сначала суммируем попарно значения гомологичных генов в пределах каждого решения и формируем две новых объединенных хромосомы:
Hi = Ни + Н12 и Ha = Н21 + И22 (рис.2).
a
НІ Н2
2 4 7 7 9 9 12 8 6
5 8 5 3 6 7 6 2 8
3 6 9 7 6 2 6 11
3 3 6 4 4 4 5 8 4
Рис.2
Рассчитаем для каждого гена в хромосомах Нг и Н2 значения параметров Wij и О,, (рис.З).
123456789 123456789
7 12 12 10 15 16 18 10 14
-3 А 2 4 3 2 6 6 -2
6 9 12 13 11 10 7 14 15
0 3 0 5 3 2 -3 -2 7
Рис.3
Упорядочим размещаемые элементы по значениям соответствующих им параметров И], и 0„ и получим два вектораЛ;* иЛ2* (рис.4).
А* А*
1 23456789 ^ 123456789
^ |1|8|4|3|2|9|5|6|7| Ч* | 11 7| 2| 6| 5| 3| 4| 8| 9|
Рис.4
Порядковый номер элемента в векторе будет соответствовать номеру позиции, в которой он размещен. Размещения элементов, соответствующих решениям Я, и Я2, в соответствии с векторами . I ,* и. Ь* показано на рис.5.
Х1 О Х4 О б3 Х1 О б б
о о О о о О
Х8 Х2 Х6 Х7 Х5 Х6
О О о О О о
хз Х5 Х7 Х6 Х4 Х9
ш Я2
Рис.5
, -
ний и функция их оценки. Это никак не влияет на структуру кодирования и декодирования хромосом и на генетические операторы поиска оптимальных решений.
Объем ОЗУ, необходимый для хранения хромосомы, пропорционален п -числу позиций. Для популяции оценка пространственной сложности О(пМ), где М - .
Трудоемкость формирования хромосомы связана с сортировкой генов. Трудоемкость сортировки равна O(n■logn). Однако, в нашем случае процесс сортиров. , , хромосомы уже отсортированы на предыдущей генерации. После применения генетических операторов к хромосоме изменяются отдельные гены, и именно для них нужно найти место в векторе А . Число генов, изменивших значение, меньше (при мутации значительно) числа генов, оставшихся неизменными. Для файлов,
близких к отсортированному виду, весьма эффективным является применение метода сортировки вставками с использованием бинарного поиска. В такой ситуации сортировка всей хромосомы имеет порядок, близкий к О(п).
В соответствии с этими рассуждениями временная сложность ВС процедуры декодирования всей популяции имеет оценку О(пМ) <ВС << (n■logn■M).
Основными генетическими операторами, используемыми в генетическом алгоритме размещения, являются: кроссинговер и мутация. Рассмотрим способ формирования новых решений путем рекомбинации целыми хромосомами (наборами ). . -ских диплоидных клеток (имеющих двойной набор хромосом) в результате мейоза распадается на две гаплоидные клетки, несущие по одному набору хромосом. Между двумя гаплоидами первого родителя и двумя гаплоидами второго родителя возможны четыре комбинации образования новой диплоидной клетки. Для получения новых решений, кроме рекомбинации, используются операторы кроссинго-вера и мутации.
Механизм кроссинговера заключается в последовательном просмотре локу-сов хромосом родительской пары и обмена генами с вероятностью Рк.
Механизм мутации заключается в последовательном просмотре генов хромосом и присвоении им новых значений.
Алгоритм реализован на языке С++ в среде Windows. Экспериментальные ис,
результаты получаются при Р„=0,1, Рк=0,4, объеме популяции равной 50 и число генераций равном 250.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Лебедев Б.К., Меркухин ЕМ. Метод размещения с совместной оптимизацией теплового режима и монтажно коммутационных характеристик // Автоматизация проектирования электронной аппаратуры: Междуведомственный тематический научный сборник. Таганрог: Изд-во ТРТИ. 1985. № 4. С.110-115.
2. . ., . .
элементов. // Вопросы радиоэлектроники. Серия: “Электронная вычислительная техника (ЭВТ). 1988. № 11. С.186-194.
3. Дульнев ГМ., Тарновский НМ. Тепловые режимы электронной аппаратуры. Л.: Энергия, 1971. 248с.
4. . ., . .
// . . . 1970. 1.
.69-82.
5. . . . // . -
. : - . 1996. 3. .35-41.