Решение задач проектированияна основе гибридных генетических алгоритмов

ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ

УДК 519.712.2

Л. А. Гладков

РЕШЕНИЕ ЗАДАЧ ПРОЕКТИРОВАНИЯ НА ОСНОВЕ ГИБРИДНЫХ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ

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

The hybrid algorithm of the decision of problems of a design of elements of digital techniques is presented. Statement of a considered optimizing problem is formulated. The description developed heuristics, operators and search strategy is resulted. The generalized schemes of search of optimum decisions are given. The basic results of computing experiments are resulted

Ключевые слова: автоматизированное проектирование, искусственный интеллект, задача размещения элементов СБИС, гибридный генетический алгоритм, вещественное кодирование решений, нечеткий логический контроллер.

Key words: computer-aided design, artificial intellect, problem of placing of VLSI elements, hybrid genetic algorithm, real coding of decisions, fuzzy logic controller.

Современные технологии позволяют разместить 10 — 15 миллионов транзисторов на схеме размером 25 мм. Сегодня размеры цифровой электронно-вычислительной аппаратуры (ЭВА) находятся в наномет-ровом диапазоне, а в ближайшие пять лет ожидается уменьшение размеров до размеров одного слоя атомов. Поэтому актуальна задача совершенствования и интеллектуализации методов проектирования.

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

Одним из направлений повышения эффективности решения задач автоматизированного проектирования сложных технических систем, в том числе СБИС, являются методы вычислительного интеллекта, эволюционные и генетические алгоритмы (ГА) [2], успешно применяемые для решения задач структурной и параметрической оптимизации, возникающих в ходе проектирования сложных технических систем.

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

Вестник Балтийского федерального университета им. И. Канта. 2012. Вып. 10. С. 86 -93.

— нечеткие ГА, в которых методы нечеткой математики применяются для настройки и динамического изменения параметров ГА. Также используют нечеткие операторы и правила для создания генетических операторов с различными свойствами; системы нечеткого логического контроля параметров ГА в соответствии принятыми критериями; нечеткие критерии остановки процесса генетического поиска.

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

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

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

Любая оптимизационная задача может быть описана кортежем длины следующего вида: <X, D, Q>. При совместном решении задач размещения и трассировки данный кортеж можно интерпретировать следующим образом.

Х — множество всех хромосом из всех популяций. Пусть Р1 — некоторая популяция на шаге t, Pt = {h1, h2 ..., hs}, где hs — хромосома из этой популяции; t = [1, N]; s = [1, М] (N — число популяций, М — число хромосом в популяции). Тогда множество всех решений задается выражением

X = {Pt; t = 1, 2, ..., NumIt} = {hst; t = 1, 2, ..., N; s = 1, 2, ..., M}.

Целевая функция (ЦФ) Q в задаче представляет собой нормированный аддитивный критерий, который включает оценку количества не-протрассированных соединений и суммарную длину цепей:

Q = k1Q1 + k1Q2

где ky k2 — весовые коэффициенты локальных критериев, с помощью которых учитывается их важность при оценке качества решения; Q1 — критерий оценки количества непротрассированных соединений; Q2 — критерий оценки суммарной длины цепей.

Оптимизация задачи сводится к минимизации значения критерия Q, то есть Q(X) ^ min Q(honT) = min Q(hj), где hif с S.

87

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

1. Ввод исходных данных (число элементов каждого типа, число цепей, число контактов и др.).

2. Построение исходного размещения элементов.

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

4. Использование ГА для улучшения размещения.

5. Расчет значения ЦФ.

6. Проверка соблюдения критерия остановки.

7. Изменение значений управляющих параметров ГА за счет использования нечеткого логического контроллера.

8. Возврат к шагу 4 для улучшения качества текущего размещения либо завершение работы алгоритма.

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

Разработанный ГА использует вещественное кодирование решений. Хромосома представляет собой вектор вещественных чисел, соответствующих координатам (по осям x и у) посадочных позиций рабочего поля, в которых размещаются элементы схемы [4], например:

x|0,63222|0,16464|0,9325...

у|0,13334|0,46561|0,7568...

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

Основным механизмом получения новых решений является оператор кроссинговера. Алгоритм использует модифицированный оператор кроссинговера hill-climbing («восхождения на холм»), а также арифметический кроссинговер и линейный кроссинговер.

После вычисления значения ЦФ и проверки числа пройденных итераций принимается решение о завершении либо продолжении работы алгоритма. Структура модифицированного ГА представлена на рисунке 1.

С целью повышения эффективности поиска предложены две модели формирования и эволюции популяции решений.

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

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

89

Рис. 1. Схема работы модифицированного ГА

Важную роль в выполнении нечеткого ГА играют модифицированные генетические операторы [5]. Алгоритм использует модифицированный оператор «hill-climbing» («восхождения на холм») на основе методов градиентных локального поиска [4]. Пусть X = (x1r ..., xn) и Y = (y1,..., yn) — хромосомы, выбранные стратегии для выполнения оператора кроссинговера. В результате получаем потомков

Zi = (z1, ., гП) или Z2 = Z, ., гП),

90

где z] — произвольным образом выбранное число на интервале [і], м1], причем l1 = шах(й;, x; - I*a) и м1 = шіп(Ь;, x; + I* а), а z2 выбирается на интервале [l2, м2], l2 = шах(йі, yІ - I*a) и м2 = min(bi, yi +1* a }, где I = [x; - y].

Основными преимуществами оператора являются учет разнообразия популяции решений и степени «близости» вновь полученных решений к родительским. Также в процессе выполнения алгоритма могут использоваться еще два модифицированных оператора кроссинговера: арифметический и линейный [7].

Пусть Ci = (c], c] ..., сП) и C2 = (с?, c2, ..., сП) — две хромосомні, выбранные для выполнения генетического оператора. При этом предположим, что выполняются условия 4 $ сі и/(Сі) ї; /(С2). В результате применения арифметического оператора кроссинговер создаются три потомка:

Hi = (hi, ., hi), И? = (hi, ., h2), H3 = (hi, ., h3),

где h] = wc] + (i - w)c], h? = wc? + (i - w)^, h3 = wck + (i - w)c3, k = i, ., n, w — константа, заданная на интервале [0, i].

И после выполнения линейного кроссинговера создаются три потомка

Hq = (hi, ..., hl ..., hn), q = i, 2, 3,

где h\ = 0,5c] + 0,5c2, h? = 1,5c1 - 0,5c2, h* = -0,5c] + i,5c2.

Предложен модифицированный оператор неоднородной мутации. Механизм выполнения данного оператора можно представить следующим образом. При изменении значения гена yi новое значение у\ случайным образом генерируется на отрезке [min, max],

y; =і

yt + (тщ - yt )(1- r(l- T)b), если q = 0, b

y;- (y;- m;n;)(1 - r(1 - t )b ^если n=1,

где q случайным образом принимает значения 0 или 1; r — случайное число в диапазоне [0, i]; t — номер поколения; T — максимальное число поколений; b — параметр, обусловленный условиями задачи; min; и maxi — верхняя и нижняя границы для величины y.

После применения генетических операторов рассчитывается значение ЦФ. Модификация размещения элементов происходит до тех пор, пока не будут выполнены заданные критерии останова.

Для управления работой ГА применяется нечеткий логический контроллер (НЛК). Используя лингвистические переменные, задаем изменение управляющих параметров алгоритма (рис. 2).

На основе предложенных алгоритмов, методов и процедур разработан программно-алгоритмический комплекс. Окно настройки параметров НЛК показано на рисунке 3.

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

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

91

Рис. 2. Обобщенная схема алгоритма работы нечеткого контроллера

Рис. 3. Окно настройки параметров НЛК

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

Время,

92

Рис. 4. Эффективность работы ММП и ОП

Рис. 5. Эффективность модифицированных операторов

Рис. 6. Зависимость эффективности операторов от времени работы

100 150 200 250 300 350

Число итераций

Рис. 7. Эффективность оператора «hill-climbing»

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

Работа выполнена при финансовой поддержке РФФИ по проекту 11-01-00122.

Список литературы

1. Норенков И. П. Основы автоматизированного проектирования. М., 2006.

2. Гладков Л. А., Гладкова Н. В. Новые подходы к построению систем анализа и извлечения знаний на основе гибридных методов / / Известия ЮФу. Технические науки. № 7 (108) : Тематический выпуск «Интеллектуальные САПР». Таганрог, 2010. С. 146 — 154.

3. Казеннов Г. Г. Основы проектирования интегральных схем и систем. М., 2005.

4. Гладков Л. А. Гибридный генетический алгоритм решения задачи размещения элементов СБИС с учетом трассируемости соединений // Вестник Ростовского государственного университета путей сообщения. № 3 (43). Ростов н/Д., 2011. С. 58 — 66.

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

Об авторе

Леонид Анатольевич Гладков — канд. техн. наук, доц., Технологический институт Южного федерального университета, Таганрог.

E-mail: leo_gladkov@mail.ru.

Author

Leonid Gladkov — assistant professor, Technological Institute of Southern Federal University, Taganrog.

E-mail: leo_gladkov@mail.ru.