упаковке фрагментов. Модернизированная процедура декодирования будет последовательно размещать фрагменты, ’’прижимая ” их на допустимую величину к ранее размещенным. В качестве базиса выбирается верхний ряд выводов. Результатом работы будут физические координаты размещенных фрагментов.
Литература.
1. De JongJK.. ’’Genetic algorithms: A 10 year perspektive”,in Proc.lst Intl.Conf. on Gas pp.169-177,1985
2. Jones,D.R.,cmd Beltramo.n.a.,’’Solving partitioning problems with genetic algorithms”
3. Taniguch,N..,Liu,X., SakamotoA- &■ Shimamoto,T.,”An anproach to channel routing using genetic algorithms” Bulletin of Faculty of Engineering, Tokushima Univesity, no.38, pp.99-112,1993
4. Jones,N.R.cmd Beltramo, n.a.’’Solving partitioning problems with genetic algorithms”, in Proc. 4th Intl.Conf. on Gas,pp.442-449,1991
5. Лебедев Б.К. Канальная трассировка на основе динамических принципов и методов минимизации комбинаторной размерности // Интеллектуальные САПР. Вып. 5. Таганрог,1995. С.11-21
УДК 658.512
В.В. Курейчик Генетический алгоритм определения изоморфизма однородных графов
Заключительным этапом конструкторского синтеза СБИС является • верификация. Одной из важнейших задач верификации является установление взаимно однозначного соответствия между структурой и электрической схемой СБИС и ее топологической реализации [1]. Данные задачи решаются путем установления изоморфизма между графовой моделью ее тополгии [2]. Данная проблема, как и все остальные рассмотренные выше проблемы конструкторского синтеза, является № полной. Поэтому разрабатываются различные эвристики для получения приемлемых практических результатов. В [2] описаны эффективные методы решения задачи установления изоморфизма однородных графов, имеющих автоморфные подграфы. Для решения таких задач используются методы разбиения исследуемых графов на различные уровни. При этом ВСА алгоритма снижается с О (п!) до О (к!),где п- число элементов в графе ,а к- число элементов в наибольшем автоморфном подграфе. Основная идея таких алгоритмов заключается в следующем [2].В обоих графах выбираются две предполагаемо изоморфные вершины. Относительно них производится разбиение всех оставшихся вершин на два класса В первый класс включаются вершины, смежные предполагаемым изоморфоэным , а во второй нет Например , на рис. 1 показаны два графа О и 0’.0=(Х,и),С’=(Х’,и’Х 1Х1=1Х’1=6, Ш1=Ш’1=9, локальные степени всеТ вершин
графа равным трем. Необходимо установить изоморфизм графов О иС Другими
словами, необходимо определить, существует ли отношение эквивалентности Х°Х ТаК<*',ЧТ°> еСЛИ ребр° (Х‘ • * > ° РебРУ <*.’> УД тогда х, о х’, х, о
^ , Х1 , Х] € X, X,’, X/ еХ ;
Выберем одну вершину в графе О и одну в графе О’ И относительно них выполним указанное выше разбиение {1} {2,4,6,} {3,5}(О)
{1} {4’,5’,6’} {2’,Э’}Г- (О’)
известия 1Г1 У
1ематическии выпуск
В данном разбиении вершины х2, х4, х« смежны вершине х„ а вершины Хэ, Хз не смежны вершине Х| графа в Аналогичное разбиение выполнено для графа С Здесь считается, что вершины Х| и Х’| предполагаемо изоморфны (Пизоморфозны). Далее выбираются подмножества меньшей мощности и внутри них проверяется смежность вершин. В нашем примере вершины Хз, Хз, и Х’2, Х’3 не смежны. Поэтому процесс разбиения продолжается.
{1} {3},. {{2,4,б}3+}|+ {{5},.},.
{1} {2}„ {{4\5\6’}г+},ч{{3’Ыг.
Рис. I Пример графов G и G’
Продолжая процесс аналогично получим , что граф G изоморфен графу G’ Подстановка вершин запишется
_|1 2 4 6 3 51 / = {а Ь 5' 6' 2' 3'}’
В рассматриваемом примере подмножество вершин {Х2,Х4>Х«} и {Х’4,Х’,,Х’<} являются автоморфными , т.е. каждая вершина в одном подграфе может быть изоморфна любой вершине второго подграфа .В примере ВСА 0(61) была сведена к ВСА 0(3!). В алгоритмах такого типа необходим перебор между элементами автоморфных подграфов Причем , как следует из рассмотрения примера, такой перебор здесь выполняется последовательно для всех вершин кроме последней в подграфе. В этой связи применение генетического поиска позволяет превысить скорость установления изоморфизма или неизоморфизма графов.
Предполагается, после получения подмножеств разбиения, в подмножествах наибольшей мощности выполнять генетические операторы мутации и инверсии Это позволяет параллельно анализировать все подмножество автоморфных вершин и повышает время нахождения резуьтата.
Рассмотрим кратко основные операторы мутации (ОМ). Функция мутации играет важную роль в натуральной и искусственной генетике. Как известно [3,4], мутация и ОМ необходимы потому , что предотвращают потерю важного генетического материала. Обычно ОМ является одноточечным оператором, который случайно выбирает позицию в хромосоме и случайным образом обменивает ее на рядом расположенный ген. Вероятность ОМ обычно составляет
0.05 и ниже процентов. Например:
Р : 0 1 1 0 11 до ОМ,
Р : 0 1 0 : 111 после ОМ.
Прогресс В мире ЖИВОЙ И неживой природы происходит толчками. При ЭТОМ важную роль играют толчковые мутации. Они не изменяют размера и строения хромосом, а изменяют взаимное расположение генов в хромосоме.
В задачах САПР с нашей точки зрения интерес может представлять использование ОМ, основанных на знаниях о решаемой задаче. Такие ОМ называются «аргументированные знаниями» (АЗОМ). В АЗОМ могут переставляться местами любые выбранные гены в хромосоме. Как правило, в АЗОМ точка или точки мутации определяются не случайно, а направленно.
В позиционном операторе мутации (ПОМ) [4] точки мутации выбираются случайно, а затем ген, соответствующий второй точке мутации, размещается в позицию перед геном, соответствующим первой точке мутации. Например,
Р : А | В С D | Е F Р: А | ЕВ С | DF
Отметим, что в исскуственных системах роль мутации пока невелика. Исследования показали, что ОМ полезен для решения задач конструкторского проектирования СБИС. Важным понятием в ОМ является шкала мутации Rn,, которая определяется как процент общего числа генов в популяции, которые мутируют в каждой генерации. Кроме мутации, популярным и испольуемым в живых системах является оператор инверсии (ОИ). В ОИ случайным образом определяется одна или несколько точек инверсии, внутри которых элементы инвертируются. Например:
Р,: ABC | DEF | GH Pi*: ABC | FED | GH.
P2: A | BCDEFGH Pj’: A | HGFEDCB.
Кроме простого ОИ, в [4] описан специальный ОИ (СОИ) В СОИ точки инверсии определяются с заданной вероятностью для каждой новой создаваемой индивидуальности в популяции. ОИ до последнего времени не получил широкого использования в технических задачах.
Рассмотрим теперь понятие рекомбинации. Функция рекомбинации определяет, как новая генерация последовательностей будет построена из родителей и потомков (offspring). Существует много путей выполнения рекомбинации. Один из них состоит из перемещения родителей посредством потомков после каждого ОК Другой путь заключается в перемещении некоторого процента популяции используя потомки в течение каждой генерации. Обычно задается параметр G (Р) который управляет этим процессом. Так, N(1- G (Р.) ) индивидуальностей в популяции Р, выбранных случайно, выживут в следующей генерации Здесь N-размер популяции. Величина G(P.) = 1 означает, что предыдущая популяция перемещается в каждой генерации. Третий путь, который в основном используется в этой работе, когда лучшие индивидуальности родителей и потомков будут селектироваться для формирования новой генерации.
Приведем пример одной из базисных структур простого ГА
1. Создание начальной популяции.
2. Моделирование популяции (определение МФ).
3. Пока заданной критерий (критерии) не достигнут:
1) селектирование индивидуальностей для репродукции-
2) применение ОК для создания потомков;
3) применение ОМ;
4) применение ОИ;
, .... 4 Р»0-6""»™» рад™»» и ПОТОМКОВ д,, Н010й
4.Создание новой генерации.
Например, на рис.2 показан нетривиальный (трудный ) граф дл установления изоморфизма. Необходимо установить, существует ли соответстви между подмножествами автоморфных вершин
2 3 4 5
Ь с (1 е
В описанном выше алгоритме необходимо выполнить перебор 4 I Применяя, например, оператор мутации, получим
2 3 4 5
Ь с ё е
Графы й иС (рис 2) изоморфны , а подстановка изоморфизма запишете)
[1 2 3 4 5 6 71
[а Ь с! с е / gy
Следует отметить, что в графах большой размерности с нетривиальным
автоморфизмами (К>100) процесс установления изоморфизма резко усложняется но параллельное выполнение генетических операторов на порядок снижает ВСА.
ЛИТЕРАТУРА
1. Норенков И.П., Маничев В.Б. Основы теории и проектирования САП] Высшая школа, 1990. 272 с.
2. Курейчик В.М. Математическое обеспечение КТП с применением САП] М.: Радио и связь, 1990. 352 с.
3. Holland Y., Adaption in Natural and Artificial Systems. University of Michiga Press, Aann Arbor, 1975.211 p.
4. Goldberg D.E. Genetic Algoritms in Search, Optimization and Machine Leanin Adisonwesley Publishing Company, Inc., 1989.412 p.