Научная статья на тему 'Эволюционное размещение разногабаритных элементов на базе опорного плана'

Эволюционное размещение разногабаритных элементов на базе опорного плана Текст научной статьи по специальности «Математика»

CC BY
238
52
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Эволюционное размещение разногабаритных элементов на базе опорного плана»

В [9] приводится несколько тестовых задач с известным значением глобального максимума, для которых определялись значения гФ0, после чего исследуемые задачи классифицировались на следующие группы:

♦ ле гко ГА-р^решимые (гФ0< -0.15);

♦ трудно ГА-р^решимые (-0.15<гфо< 0.15);

♦ обманчивые (гФО>0.15).

Очевидную слабость подобного рода подхода к оценке ГА-р^решимости (необходимо заранее знать значение глобального оптимума) на практике можно , .

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

БИБЛИОГРДФИЧЕСКИЙ СПИСОК

1. Holland J.H. Adaptation in natural and artificial systems. - USA: Uni of Michigan press, 1975.

2. Goldberg D.E. Genetic algorithms in search, optimization, and machine learning. - USA: Ad-dison-Wesley publishing company, inc., 1989.

3. Macready W.G., Wolpert D.H. On 2-armed Gaussian Bandits and optimization. Technical report SFI-TR-96-03-009 Santa Fe Institute, 1996.

4. Rudolph G. Convergence analysis of canonical genetic algorithms. IEEE trans. on neural networks. 1994, T.1, N5, pp. 96-101.

5. Курейчик B.M., Родзин С.И. Эволюционные вычисления: генетическое и эволюционное программирование // Новости искусственного интеллекта. 2003, №5(59). - С. 13-19.

6. Davidor Y. Epistasis variance: suitability of a representation to genetic algorithms. Complex systems. 1990, N4, pp. 369-383.

7. . . .

Электронный Интернет-журнал «Перспективные информационные технологии и интеллектуальные системы». 2002, №1. - С. 36-41.

8. Manderick B. et al. The genetic algorithm and the structure of the fitness landscape // Proc. 4th int. conf. on genetic algorithms, San Mateo, CA, 1991. - pp. 143-150.

9. Jones T., Forrest S. Fitness distance correlation as a measure of problem difficulty for genetic algorithms // Proc. 6th int. conf. on genetic algorithms, San Francisco, 1995. - pp. 184-192.

В.Б. Лебедев, О.Б. Лебедев

ЭВОЛЮЦИОННОЕ РАЗМЕЩЕНИЕ РАЗНОГАБАРИТНЫХ ЭЛЕМЕНТОВ НА БАЗЕ ОПОРНОГО ПЛАНА*

Возрастание степени интеграции и сложности СБИС из-за непрерывного совершенствования технологий заставляет разрабатывать новые методики и средства

.

Одним из путей достижения этих целей является полная автоматизация процесса проектирования с использованием перспективных информационных технологий и методов искусственного интеллекта (ИИ) [1].

* Работа выполнена при поддержке РФФИ (грант №05-08-18115)

В течение последних лет были предложены различные подходы к решению .

образом [2-5]: линейное и квадратичное программирование; имитация отжига; основанные на ограничениях; парадигмы направленной силы; основанные на геометрической дуализации списков связей; иерархические методы сверху-вниз и снизу; . -ставленной задачи показал, что удачными являются подходы, основанные на методах моделирования отжига и эволюционного моделирования [6].

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

Основные этапы предлагаемого подхода заключаются в следующем:

1 - Для заданной схемы определяется структура опорного плана.

2 -.

3 - Размещаемые модули размещаются в областях опорного плана. Размещение может быть: случайным; по какому-либо критерию (например, оценка длины соединений); определяется в результате декодирования хромосомы при использовании генетических алгоритмов.

4 - В соответствии с деревом свертки для заданного размещения осуществляется свертка областей и построение метризованного плана с новыми размерами

.

5 - , , -

вышающие размеры помещенных в них модулей. Методами поисковой адаптации находится окончательное размещение модулей в областях [7].

Этапы 3,4,5 выполняются на каждой итерации эволюционной поисковой про.

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

а б

Рис.1. а) - опорный план; б) - дерево бинарных разрезов

,

“гильотинного разреза”, т.е. последовательного разрезания прямоугольников на две части [2, 6]. Поставим в соответствие нашему плану дерево разрезов. Дерево разрезов будем рассматривать, как дерево бинарной свертки.

На дереве цифрами помечены вершины, соответствующие разрезам, причем V - вертикальный разрез, а Н - горизонтальный разрез. Вершины, соответствую, .

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

Будем считать, что разрез с номером ,, разрезает вершину di (область и,). Вначале свертки каждой вершине, являющейся листом дерева разрезов, ставится в соответствие область опорного плана - г{ с размерами х( = к, у{ = равным и размерам модуля т,, помещаемого в область г. В процессе свертки начальные размеры каждой области г, могут изменяться в сторону увеличения. Пусть в соответствии с деревом разрезов Б вершины di и dJ являются дочерними вершинами вершины dk и пусть для областей и, и и,, соответствующих di и dj, определены нижние границы их размеров (х,, у), (х,, у).

Процесс бинарной свертки представляет собой слияние областей и{ и и, формирование области ик, определение размеров для ик и новых размеров для ui и и,.

Возможны два случая (анадогичных друг другу) в зависимости от того, каким индексом V или Н помечена вершина dk. Введем два инфиксных оператора V и Н. Запись ик = ui Н и, означает, что области ui и и, сливаются по горизонтали в одну область ик. Если ик = и, V и,, то области ui и и, сливаются по вертикали.

Обозначим через тах(х1,х2) максимальное значение из х1 и х2. При слиянии по горизонтали ук = тах(у,,у’); хк = х, + х, у, и у, будет иметь размер, равный

тах(у,у).

При слиянии по вертикали ук = у, + у,; хк = тах(х,х), х, и х, будет и меть размер, равный тах(х,х)

На основе рассмотренного подхода разработан генетический алгоритм раз.

,

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

Каждая область опорного лана рассматривается как позиция для размещения. Множество позиций представляем в виде регулярной структуры (решетки). Каждая позиция имеет координаты (X, Г,). Единицей измерения служит величина расстояния между соседними узлами решетки. Первая позиция имеет координаты (1,1). -

вых номеров позиций и множеством их координат. С этой целью упорядочим и пронумеруем позиции по возрастанию параметра Wi = X, + У, . Так как позиции, расположенные на одной диагонали в решетке, имеют одно и тоже значение Wi, то в пределах диагонали они упорядочиваются и нумеруются по убыванию значения параметра Qi = - У, .

В соответствии с этим правилом позиции нумеруются в соответствии со значениями пары параметров Wi и Qi .

Пусть имеется множество размещенных в позициях элементов А, число которых равно числу позиций. Построим упорядоченный список А* по правилам, изложенным выше, т.е. по значениям параметров Wi и Q,. Очевидно, что порядковый номер элемента в списке А* будет соответствовать номеру позиции, в которой он размещен. Воспользуемся этими знаниями для кодировки и декодирования хромо, .

В работе каждое решение Я{ представляется в виде двух гомологичных (морфологически и генетически сходных) хромосом Ни и Н2. Порядковый номер гена в хромосоме соответствует порядковому номеру элемента. Число генов в хромосоме равно п. Если фактическое число размещаемых элементов меньше числа позиций, то вводятся «пустые» элементы (не имеющие связи), так, чтобы общее число элементов было равно числу позиций. В каждом гене gij хранятся два параметра а, и Ъ,, на основе которых определяются позиция и координаты элемента, соответствующего гену gij .

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

.

Декодирование информации хромосом осуществляется в следующем порядке. Для каждой пары гомологичных генов g’j и g’’ІJ■ рассчитываются параметры:

Жг] = а’,, + а’’, + Ъ ’,, + Ъ”ц ;

Qij = (а ’, + а” у) - (Ъ’у + Ъ”ц).

Затем размещаемые элементы упорядочиваются по значениям соответствующих им параметров и Qj (по возрастанию и убыванию Qij в предел ах каждого Щ) и строится вектор А*, который и определяет размещение элементов.

А* = < ак / к = 1, 2, ..., п >, где ак - номер элемента, размещаемого в /с-ой позиции, при этом (Ук) [ (м>к <^к+1} V {(^к = мк+1) & ^к >Qk+l)}].

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

Объем ОЗУ, необходимый для хранения хромосомы, пропорционален п -числу позиций. Для популяции оценка пространственной сложности 0(п -И), где М - .

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

А*.

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

тода сортировки вставками с использованием бинарного поиска. В такой ситуации сортировка всей хромосомы имеет порядок, близкий к O(n).

В соответствии с этими рассуждениями, временная сложность ВС процедуры декодирования всей популяции имеет оценку O(n M) <ВС << (n logn M).

Генетический алгоритм размещения был реализован на языке C++ с использованием системы Borland C++ Builder 3.2. Экспериментальные исследования проводились на ЭВМ типа IBM PC/AT Pentium 200.

Для проведения исследований были синтезированы тестовые примеры: Ex.1 на 30 позиций, Ех.2 - 50; Ех.3 - 60; Ех.4 - 90 и Ех.5 - 120.

Результаты исследований генетического алгоритма размещения показывают, что для поиска оптимальных решений, близких к оптимальным, необходимо не более 150 поколений. Для схем из 100 элементов время решения - 160 секунд.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Казеннов ЛЛОсновы проектирования интегральных схем и систем. - М.: Бином. Лаборатория знаний, 2005.

2. Naveed Sherwani. Algorithms for VLSI physical design automation. Kluwer academic publishers. Boston /Dordrecht/ London. 1995.

3. Щемелинин B.M Автоматизация топологического проектирования. - М.: МИЭТ, 2001.

4. Автоматизация проектирования радиоэлектронных средств. Учебное пособие. Под ред. О.В.Ллексеева. - М.: Высшая школа, 2000.

5. Апановт З.В., Марчук АТ. Современные стили проектирования и алгоритмы размещения при проектировании СБИС. // Системная информатика. Проблемы современного программирования. Вып.1. Новосибирск: Наука, Сибирское отделение, 1997. - С. 260-292.

6. Лебедев Б.К., Лебедев ОТ. Методы размещения. - Таганрог: Изд-во ТРТУ, 2006.

7. Лебедев Б.К. Адаптация в САПР. - Таганрог: Изд-во ТРТУ, 1999.

П.Г. Белявский ГЕНЕТИЧЕСКИЙ МЕТОД РЕШЕНИЯ ЗАДАЧИ О НАЗНАЧЕНИЯХ

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

Задачи комбинаторной оптимизации обычно рассматриваются в од-н^^^^^^ртальной постановке. Менее изученными, но важными в приложениях являются такие задачи, в которых множество допустимых решений соответствует ,

одного параметра, или критерия. В этом случае мы имеем дело с NP-полной зада-

i Надоели баннеры? Вы всегда можете отключить рекламу.