АА, находящийся в состоянии c21, переходит в c11. Таким образом, в начале каждого шага адаптивной системы все АА находятся в группе C1.
Формирование значений uу осуществляется в два этапа.
На первом этапе вырабатываются значения и\у, уменьшающие ру в соответствии с матрицей S. Если sy = 0, то и1 у = 0. Если sy = 1, то и1 у = -1, т.е. значение ру должно быть уменьшено на единицу.
Если отдельные элементы Ру в /'-ой строке матрицы Pt-1 под действием и1 у уменьшат свои значения, то для выполнения ограничений (2) необходимо в этой же строке увеличить значения некоторых элементов ру на величину и2у. На втором этапе осуществляется выработка и2у и результирующего иу=и1 у+и2у. после выра-
т
ботки всех и/у должны выполняться выражения: ^ и, = 0,1,2,...,n.
у =1
Алгоритм покрытия был реализован на языке C++ в среде Windows. Экспериментальные исследования проводились на ЭВМ типа IBM PC/AT Pent/ит 4. При совместной работе алгоритмов вероятность получения глобального оптимума составила 0.9. В среднем трех запусков программы со случайными начальными популяциями было достаточно для нахождения решения со средним отклонением от глобального оптимума в 1%. Сравнение с алгоритмами [1-3] показало, что у полученных с помощью адаптивного поискового алгоритма решений значения целевой функции лучше (меньше) в среднем на 6-9%.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Андерсон Д. Дискретная математика и комбинаторика. - М.: Вильямс, 2003.
2. Cordone R., Ferrandi F., Scmto D., Calvo R.W. An Efficient Heuristic Approach to Solve the Unate Covering Problem. IEEE Transactions on compMer-aided design of integrated circmts and systems, vol.120, No.12, December 2001 , pp.1377-1387.
3. Covert O., “On solving covering problems”, in proceedings of 30th ACM/IEEE Design a^o-mation conference, 1996, pp. 197-202.
4. Fisher M.L. and Kedia P., “Optimal solution of the covering/partitioning problem using dual heuristics”, Manage. Sci., vol. 36, No.6, pp.674-688, 1990.
5. Лебедев Б.К. Адаптация в САПР. - Таганрог: Изд-во ТРТУ, 1999.
Л.В. Балюк, В.В. Курейчик, П.В. Сороколетов
ПЕРСПЕКТИВНАЯ ТЕХНОЛОГИЯ ИНТЕГРИРОВАННОГО ПОИСКА
В САПР*
В настоящее время перепрограммируемые вентильные матрицы (Field Programmable Gate Arrays - FPGA) - стали эффективным решением проблем, связанных с освоением рынка новых электронных технологий. Технология создания FPGA обеспечила возможность «реадьного» производства гибких схем (прототи-) . -схема, логическая структура которой может быть скорректирована (задана и изменена) конечным пользователем без использования интегрированной схемы (статичной), собранной выпускающей компанией [1]. Важнейшим этапом в цикле проектирования FPGA, является этап автоматизированного конструкторского про, ( ), -
*
Работа выполнена при поддержке РФФИ, гранты № 05-08-18115, № 07-01-00511 и программ развития научного потенциала высшей школы 2006-2008 гг. (РНП.2.1.2.3193, РНП 2.1.2.2238).
ния, размещения, трассировки (р^водки), упаковки, верификации [2]. Поскольку FPGA - , -
но спроектировать топологию всей схемы целиком в связи с ограниченными возможностями вычислительных средств, поэтому схема разбивается группированием
( ).
множество блоков и множество соединений между блоками (р^мещаемых в линейки, решетки) [2,3]. В очень больших схемах используется иерархическая структура разбиения и размещения.
В работе прелагается технология интегрированного поиска в САПР конструктор, ( -, ).
При решении задач автоматизированного конструкторского проектирования, эффективно используют стратегии, концепции, методы, механизмы эволюционного моделирования и интегрированного на основе бионического поиска. Бионический поиск (БП) - это последовательное преобразование одного конечного нечеткого множества альтернативных решений в другое. Само преобразование называется алгоритмом поиска (ГА) [4].
В задачах размещения любое альтернативное решение представляется набором параметров представляющих один элемент некоторого множества альтернативных решений P. В предложенном в работе интегрированном алгоритме, основанном на принципах бионического поиска, множество P называется популяцией. Каждому элементу из этого множества соответствует кодовая запись, называе-( ). -мент поиска интегрированный алгоритм оперирует некоторым подмножеством P’ (P’œP) альтернативных решений мощности N’.
Каждое альтернативное решение рассматривается как особь, развивающаяся в популяции - сообществе себе подобных [5]. Для каждой хромосомы в популяции определяется значение целевой функции в соответствии с выбранным или построенным критерием оптимизации.
Основной трудностью решения задач размещения с большим числом локальных оптимумов является предварительная сходимость алгоритмов. Другими словами, попадание решения в один, далеко не самый лучший, локальный оптимум.
Различные методы селекции и их модификации позволяют отчасти решать проблему предварительной сходимости алгоритмов, но полностью ее не снимают. Последние исследования ГА показывают, что при решении комбинаторнологических задач САПР следует применять интегрированные методы селекции с использованием предварительных знаний о решаемых задачах и предварительных результатах [4,5].
Поиск решений в случайно выбранном направлении часто не приводит к ква-зи-оптимальному реальному решению. В этой связи в работе предлагается модифицированная технология интегрированного поиска, приведенная на рис.1.
Изначально на основе конструкторско-технологических ограничений сокращаем область поиска допустимых решений. Далее, анализируя эту область, случайным или направленным образом генерируем начальную популяцию или стартовое множество альтернативных решений, которое в дальнейшем развивается на основе выбранной эволюционной теории [5].
Определим значение ЦФ исходя из постановки задачи и выбранной стратегии .
решений и селекцию (отбор) хромосом для дальнейшего поиска оптимальных решений задачи размещения.
Конструкторско-технологические
ограничения
Площадь коммутационной схемы, посадочные места (с указанием координат), длина связей (на основе выбранного критерия)
Анализ области поиска допустимых решений
Выделение критических связей в графовой мо дели КС на основе модифицированного алгоритма Ant Colony. Определение ЦФ
Начальная популяция (стартовое множество) альтернативных решений
Кодирование входных данных, связей между элементами
Интегрированная стратегия размещения «эволюция - поиск»
Параллельный поиск с возвратом эффективного размещения на основе выбранных критериев минимальных длин соединений и критических связей в размещаемой графовой модели КС
Представление полученного эффективного размещения на К С
.1.
В рассматриваемой схеме интегрированного поиска (см. рис.1) в зависимости от экспертной системы (критерия оптимальности размещения) выбираем генетический, модифицированный алгоритм Ant Colony или эволюционный алгоритм, или их комбинацию. В работе в генетическом алгоритме популяция альтернативных решений формируется путем реализации различных генетических операторов [5].
В эволюционном алгоритме (ЭА) - путем реализации модификаций одного оператора мутации. После выполнения операторов миграции и репродукции размер популяции остается постоянным. Для этого производится его уменьшение до прежних размеров с помощью принципа «выживания сильнейших». Далее всю процедуру повторяем на следующем шаге эволюции.
На рис.2 приведена упрощенная схема интегрированного алгоритма (ИА) решения задачи размещения.
Рис. 2. Архитектура интегрированного поиска Здесь MAAC - модифицированный алгоритм Ant Colony, БА, ГА и ЭА - соот-, , - ,
, - , . представляет собой кортеж:
ИА = <MAAC, ГА, ЭА, ОР, ЭС, критерии останова>, (1)
где ЭА = (P, N, МК, С, ЦФ, ОГР, ГУ, ОМ, OP, N_gen, p„ L), (2)
ГА = (P, N, МК, С, ЦФ, ОГР, ГУ, ГО, OP, N_gen, pb L). (3)
Здесь МК - метод кодирования хромосомы (шьтернативного решения), С -, - , -на задачу размещения, ГО - генетические операторы, N_gen - число поколений или генераций алгоритма, pt е P - хромосома, a L - длина хромосомы.
Рассмотрим архитектуру интегрированного поиска, приведенную на рисунке (см. рис.2), подробнее:
Блок MAAC основывается на моделировании модифицированного вероятно-
Ant Colony, -
шение задачи коммивояжера [6,7].
Также как и эволюционные вычисления, вероятностные генетические алгоритмы стараются максимально сымитировать поведение совокупности отдельных особей в окружающем нас мире.
Одна из проблем, изученных группой специалистов М. Дориго, В. Маниезо,
А. Колорни [6], заключалась в понимании: как почти слепым животным, подобным ,
. , , -
мацию среди индивидуумов и использовать накопленные знания для решения о , . -ет некоторые метки (в переменных количествах) на почве, таким образом, помеча-.
Изолированный муравей перемещается произвольно. Муравей, сталкивающийся с прежде проложенным следом, может обнаружить это и решить с высокой вероятностью следовать за первым муравьем, таким образом, усиливая след своим .
Коллективное поведение, которое возникает при этом - форма автокаталити-, -, .
, ,
, , ,
, . -вий муравьиной колонии показан на рис.3,4.
А А А
а б в
Рис. 3. Пример моделирования поведения реальных муравьев
Есть некоторый путь, вдоль которого муравьи проходят (например, от источника питания А в муравейник Е, и наоборот (см. рис.3,а)).
Если на уже проложенном пути появляется препятствие и исходный путь больше не доступен, то в позиции В муравьи, проходящие из А в Е (или в позиции Б муравьи, идущие в противоположном направлении), должны решить повернуть направо или налево (см. рис.3,6). Выбор обуславливается влиянием интенсивности , .
Более высокий уровень меток на пути дает право муравью выбрать правильное направление. Первый муравей, достигающий точки В (или Б), может с одинаковой вероятностью повернуть налево или направо (так как еще пока нет никаких
).
АДА
а б в
Рис. 4. Пример поведения реальных муравьев
Поскольку путь BCD короче чем BHD, то первый муравей, следующий этим маршрутом, достигнет D раньше первого муравья, выбравшего путь BHD (см. рис.3,в).
Результатом всех итераций является то, что муравей, возвращающийся из E в D, найдет большее число меток на пути DCB, проложенный половиной всех муравьев, потому что эта половина всех муравьев выбрала направление DCBA. Од, , -
.
Как следствие всего выше сказанного: число муравьев, следующих путем BCD , ,
BHD. Это приводит к резкому увеличению количества меток на коротком пути, и, , , -, .
быстром выборе всеми муравьями путей ABCDE и EDCBA соответственно.
Такая система получила название Ant Colony, а основанные на Ant Colony алгоритмы - «муравьиные алгоритмы».
Один из используемых в работе методов эволюционного моделирования является производной моделью от рассматриваемого выше алгоритма функционирования муравьиной колонии, предложенного М. Дориго и А. Колорни [6,7].
В ходе разработки и исследований результатов применения ИА не моделировалась жизнь колонии муравьев, однозначно копирующая существующую природ, , при котором система несколько отличается от естественной:
♦ искусственные муравьи (агенты) имеют некоторую память,
♦ они не пол ностью слепы,
♦ они находятся в пространстве, где время дискретно.
В тоже время предполагалось, что колония муравьев будет наиболее полно отражать идею, заложенную в алгоритме Ant Colony [6-8].
Рассмотрим графы, приведенные на рисунках (см. рис.4,а и рис.4,в).
, D H, B H ,
также расстояния между D и C, D и B являются одинаковыми, где DH=BH=1 и DC=DB=0,5 (см. рис.4,а). В каждый из моментов дискретизации t=0, 1, 2,... 30 агентов начнут движение из пунктов Е и А на встречу друг другу. В некоторый момент времени они окажутся в пунктах Б и D соответственно, пройдя некоторый
путь и оставив за собой метку интенсивностью 1, который (дая облегчения иллюстрации возможностей алгоритма) будет немедленно удаляться на временном интервале (t+1, t+2).
В момент времени t=0 еще нет следов, при этом агенты сконцентрированы в точках В и D (см. рис.4,6). Выбор последующего направления пути является совершенно произвольный: 15 агентов в из каждой группы пойдут по направлению к , H.
В момент времени t=1 (см. рис.4,в) 30 новых агентов подойдут к пунктам D и
B, 15 H -
30 C.
, 20
, 10 - H. ,
выберут наиболее короткий путь.
Идея описанного алгоритма заключается в том, что все последующие агенты на каждом шаге будут выбирать то направление, которое было предпочтено на . , , вероятностью, является высокая интенсивность меток на данном направлении.
Приведенный в работе МААС используется для сужения области поиска за счет реализации критерия длин критических связей (гамильтоновых цепей) в рассматриваемой графовой модели коммутационной схемы. В основе МААС лежат :
♦
БИС;
♦
агентов в вершинах;
♦ на основании ЦФ и варьируемых вероятностных коэффициентов осуществляется переход между вершинами графовой модели КС по всей облас-
;
♦ запоминается и анализируется каждое полученное решение (путь по всем вершинам в графе без возвращения в стартовую и с однократным посещением каждой из вершин на всем протяжении текущего маршрута) на основании заданной ЦФ.
В заключении отметим, что данный подход сочетает в себе достоинства ЭА и ГА: оперирует множеством выходных параметров (по^ляцией начальных значений - пути, пройденные агентами); является гибким - позволяет перенастраивать вероятностные коэффициенты выбора направления пути; позволяет избежать попадания в состояние стагнации за счет использования вероятностного характера ЦФ.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Stephen D. Brown. Field-Programmable Gate Arrays. Kluwer Academic Publishers, 1992, -210 p.
2. . . -
актирования с применением САПР. Москва, Радио и связь, 1990. - 352 с.
3. Касьянов В.Н., Евстигнеев В А. Графы в программировании: обработка, визуализация и применение. - СПб.: БХВ-Петербург, 2003.
4. . ., . ., . . -
лирования. - М.: Физматлит, 2003.
5. . ., . ., . . :
/ Под ред. В.М. Курейчика. - М.: Физматлит, 2006
6. Colorni A., Dorigo M., Maniezzo V., "Distributed Optimization by Ant Colonies," Proceedings of the First European Conference on Artificial Life, Paris, France, F. Varela and P.Bourgine (Eds.), Elsevier Publishing, 134-142, 1991.
7. Colorni A., Dorigo M., Maniezzo V., “The Ant System: Optimization by a colony of cooperating agents,” Tech.Rep.IRIDIA/94-28, Université Libre de Bruxelles, Belgium, 1996.
8. Баяюк Л.В. Возможности комбинированных стратегий решения задачи размещения раз-
// - -ренций «Интеллектуальные системы» (AIS’06) и «Интеллектуальные САПР» (CAD-2006). Научное издание в 3-х томах. - М.: Изд-во «Физико-математической литературы», 2006, Т.1. - С. 552-557.
Б.К. Лебедев, С.А. Степаненко МЕХАНИЗМЫ ГЕНЕТИЧЕСКОГО ПОИСКА ПРИ РАЗМЕЩЕНИИ*
.
процессе проектирования СБИС, поскольку качество полученного решения в значительной степени влияет на выполнение последующей трассировки соединений, которые, в свою очередь, сильно влияют на производительность схемы [1-2]. Задача размещения относится к классу NP-полных, поэтому не существует алгоритма, позволяющего получать ее решение за полиномиальное время. Проведенные исследования имеющихся подходов к ее решению показывают, что существующие алгоритмы выдают решения, которые далеки от оптимальных
[1,3,4]. , - .
рассматривается структура хромосом, принципы кодирования и декодирования, а также модифицированные операторы, применяемые в генетическом алгоритме решения задачи размещения.
. . Имеется множество элементов M = {mi | i = 1,...N} с фиксированными размерами и
множество цепей C = {ci | i = 1,2,...,K}, связывающих элементы множества M. Необходимо произвести размещение элементов на плоскости таким образом, чтобы отсутствовали перекрытия элементов, и при этом минимизировалась целевая функция F(x) ^ min. В качестве критериев оптимизации используются: общая площадь схемы, суммарная длина проводников, временные задержки.
Для представления относительного расположения элементов на плоскости будем использовать метод пары последовательностей (Sequence-Pair), который впервые был предложен Murata и др. в 1996 году [5]. Представление плана топологии с помощью пары последовательностей состоит из двух перестановок целых чисел < 1,2,...,N >,< 1,2,...,N > . Каждый элемент последовательности соответствует номеру прямоугольного элемента, расположенного на плоскости без перекры-
, N.
Эта пара последовательностей определяет относительное расположение элементов в пространстве, но для упаковки элементов необходимо также знать их про.
вектором O = {oi | i = 1,2,...,N}, ot е {1,2,3,4} , 1 - i - N . Таким образом, для каждого элемента существует четыре возможных ориентации (North = 1, East = 2, South = 3, West = 4).
* Работа выполнена при поддержке РФФИ (фант № 06-01-81018, № 05-08-18115) и программ развития научного потенциала высшей школы 2006-2008 гг. (РНП.2.1.2.3193, РНП 2.1.2.2238).