Секция интеллектуальных систем автоматизированного проектирования
УДК 658.512
Б. К. Лебедев
МЕТОДЫ ОПТИМИЗАЦИИ ПРИ РЕШЕНИИ ЗАДАЧ ПРОЕКТИРОВАНИЯ
СБИС
Особенностью проектирования СБИС является очень большая область поиска решений. По этой причине существует проблема, связанная с огромным числом возможных проектных решений, которые необходимо исследовать, чтобы выбрать
,
оптимальному с точки зрения поставленных целей. Целью проектирования может
, ,
стоимости. Ограничениями являются временные задержки, площадь кристалла или предельные размеры корпуса и максимальное число выводов. Многие подзадачи синтеза и формирования топологии являются КР-полными, т.е. число шагов в процессе поиска решения этих подзадач растет по экспоненте.
Обзор и анализ существующих подходов выявил следующее: многими авторами предприняты попытки сведения указанных выше задач к задачам целочисленного программирования. Были получены математические модели задач, к которым применялись стандартные методы оптимизации, такие как методы линейного , . теоретически возможно получение глобального результата. Однако, поскольку ни один из стандартных методов не исключает возможности полного перебора, данные методы оказываются неприемлемыми для решения задач реальной размерности. В связи с этим разработчики алгоритмов вынуждены были разрабатывать ал, .
Одним из мощных методов целочисленного программирования является метод ветвей и границ. В поисковых алгоритмах, построенных по схеме метода ветвей и границ, основными научными задачами являются методы подсчета нижней оценки и методы ветвления, которые и определяют эффективность метода в целом. Разработка этих методов проводится с учетом специфики задачи. Это делает поиск .
являются: возможность получения строгого локального оптимума; наличие информации о том, является ли полученное решение глобальным оптимумом; наличие информации о максимально возможном отклонении полученного решения от .
Это позволяет сделать более эффективной методику отсечки в процессе по. -емкостью и не гарантируют получения оптимального результата за полиномиаль-
---------------------------------------------------------------------роиания
. , -
ют трудности при учете всего комплекса специфических особенностей проблемы. Поэтому очень большой класс алгоритмов основан на различного рода эвристиках, обеспечивающих получение приемлемого результата за полиномиальное время. Обычно такие алгоритмы разделяют на последовательные и итерационные. В основе работы этих алгоритмов лежит поиск в пространстве состояний (решений).
Суть последовательных алгоритмов состоит в последовательном сужении исходного пространства решений, пока в нем не останется одно решение. На каждом шаге выбранное на предыдущем шаге подпространство разбивается частичными решениями на подпространства. Например, при размещении элементов подпространство разбивается на подпространства в соответствии с выбором элемента, размещаемого в рассматриваемой на данном шаге позиции. Затем в соответствии с эвристикой осуществляется выбор подпространства для разбиения на следующем шаге. Последовательные алгоритмы отличаются наименьшей трудоемкостью, но, с , . -следовательных алгоритмов - это выбор альтернативы на каждом шаге, и вторая проблема - очередность решения однотипных задач. Так, для задачи трассировки -это проблема очередности трассируемых соединений. Для задачи размещения -это проблема очередности рассмотрения позиций или проблема очередности рас.
Для последовательных алгоритмов полное решение задачи получается после выполнения последнего шага.
Напротив, итерационные алгоритмы предусматривают наличие какого-то на. -ном улучшении решения на каждой итерации.
Поиск в пространстве состояний удобно представить в виде ориентированного графа в=(Х,У), где Х={х1(1=1,2, ..., к)} - множество вершин, каждая из которых отождествляется с одним из состояний. Наличие ребра ик = (хъх^ свидетельствует о существовании некоторого оператора Б, преобразующего состояние, соответ-
ствующее вершине х1, в состояние, соответствующее вершине хг
Стандартные итерационные алгоритмы не гарантируют получения глобально. -, .
В последнее время дальнейшим совершенствованием итерационных алгоритмов была разработка поисковых методов, основанных на моделировании естественных процессов. К таким методам относится метод моделирования отжига, ме-
( ), адаптации. Являясь по своей сути итерационными, алгоритмы на основе моделирования отличаются от обычных итерационных процедур «слепого поиска».
Все три метода относятся к методам случайного направленного поиска, но имеют существенные отличия между собой. При моделировании отжига и альтернативной адаптации оперирование производится над одним решением, а при генетическом поиске алгоритмы оперируют с множеством (популяцией) решений.
Не вдаваясь в предысторию и теоретические выкладки метода, суть моделирования отжига можно описать следующим образом. Задаются параметры, названия которых отражают историю возникновения метода. Это ТН,ТК - начальная и конечная температуры, At - интервал изменения температуры. Температура Т
меняется от Тн до Тк с интервалом At. Начальное значение Тн - высокое, конечное значение, Тк - низкое, обычно Тк=0. При каждом значении Т выполняется заданное .
На каждой итерации выполняются следующие действия. С помощью некото-
( ).
пробное изменение привело к улучшению экстремизируемого показателя Б, то это изменение фиксируется. Если пробное изменение привело к ухудшению Б на величину А^ , то изменение сохраняется с вероятностью
р=ехр(-§-),
где к - константа.
Недостатком метода моделирования отжига является то, что в процессе работы не хранится информация о разных действиях, выполненных на предыдущих итерациях. Особенностью метода является то, что качество получаемого решения во многом зависит от начального решения: чем лучше начальное, тем выше шанс .
Г енетические алгоритмы оперируют с популяцией решений. С одной стороны, это позволяет быстрее находить улучшенное решение, но, с другой стороны, требуется большая память для хранения информации о популяции решений. Тем не менее последние исследования, связанные с использованием генетических методов оптимизации в различных областях, показали их высокую эффективность.
Гибкость структуры генетических алгоритмов, возможность ее настройки и перенастройки дают возможность получения такой структуры, которая обеспечивает получение более высокого результата по сравнению с другими методами.
Идеи использования методов естественной генетики появились в результате . -тод, который основан на селекции лучших индивидуальностей в популяции, подобно эволюционной теории Дарвина. Отличительной особенностью генетических алгоритмов является следующее:
♦ оперирование произ водится не с решениями, а с их кодами. Каждому решению соответствует одна или несколько хромосом, которые представляют собой закодированный генетический материал. Хромосомы состоят из генов. Каждый ген имеет свой локус, или позицию в хромосоме. Гены могут иметь различные значения: число, строка, сектор, массив и т.д. Работа генетических алгоритмов осуществляется на основе популяции, т.е. на основе множества индивидуальностей. Решение получается на основе декодирования хромосом. Особенности строения хромосом и генов, а также их значения образуют генотип индивидуальности. Построенный на основе декодирования хромосом (индивидуаль-) .
Процесс поиска носит случайный характер. Получение новых решений осуществляется на основе комбинирования (смешивания) генетического материала, содержащегося в хромосомах популяции. Хромосомы (индивидуальности) для комбинирования выбираются на основе селекции. Для комбинирования генетического материала используются генетические операторы. Наиболее известные из - . -ния генетических операторов появляются новые индивидуальности в популяции.
----------------------------------------------------------------------роиания
Каждой индивидуальности соответствует фитнесс, т.е. оценка качества. После репродукции новых членов популяции на основе селекции осуществляется усечение ( ) . -тоду естественного отбора или методу выживания сильнейшего, основанному на эволюционной теории Дарвина.
К недостаткам методов генетического поиска следует отнести большой объем вычислений на каждой итерации.
Особый интерес представляет поисковая адаптация, основанная на использо-
( ), -рования в среде. МЛ. Цетлин поместил ОА в среду, характеризующуюся вероят-,
позиции теории игр адаптацию ОА в такой среде.
В качестве модели ОА использовался автомат адаптации (АА), представляющий собой обучающуюся систему. В процессе адаптации в случайной среде в ответ на состояние АА в среде с вероятностью выдается сигнал “поощрение”, а с вероятностью q, = 1 - р, выдается сигнал “нак^ание”. Под действием этих сигналов АА в результате обучения переходит в состояние, соответствующее лучшей альтерна-
( ).
Автомат с линейной тактикой, граф которого показан на рисунке, имеет две цепочки состояний. В состояниях Бп-Б1т выбирается первая альтернатива (А^, в состоянии Б21-Б2т - вторая (А2).
Параметр т характеризует глубину памяти АА, его способность к инерции сохранения альтернативы (действия) при удачах.
(+) (+) (-) (+) (+)
Вначале случайным образом или по результатам работы какого-либо алгоритма реализуется начальная альтернатива.
В дальнейшем на каждом шаге (итерации) работа адаптивного алгоритма выполняется за четыре такта.
На первом такте осуществляется расчет параметров Р среды и объекта адап-( ) .
На втором такте по параметрам Р оценивается состояние объекта адаптации в среде и на основании этого вырабатывается управляющий сигнал поощрения или .
На третьем такте под действием управляющего сигнала автомат адаптации переходит в новое состояние.
На четвертом такте реализуется альтернатива, соответствующая состоянию .
Идея коллективной адаптации позволяет свести эволюционную адаптацию к .
Объект можно разбить на подобъекты , которые могут существовать в аль. -ся комбинацией состояний подобъектов.
Оценка состояния подобъекта зависит как от собственного состояния, так и от состояния всех связанных с ним подобъектов, а также от структуры и свойств .
Альтернативная коллективная адаптация подобъектов приводит к эволюционной адаптации всего объекта в целом.
Этот подход можно расширить, т.е. использовать многоуровневую иерархическую структуру объекта.
Важной проблемой является выбор и сочетание локальных целей подобъектов и глобальной цели коллектива подобъектов, т.е. объекта в целом.
Будем в дальнейшем объект в целом называть коллективом, а подобъекты -.
Представление исходной формулировки задачи в виде адаптивной системы, основанной на идеях коллективного поведения, предполагает решение следующих
:
а) формирование моделей среды и объектов адаптации;
)
;
в) разработка альтернативных состояний объекта адаптации, структуры обучающегося автомата адаптации и механизмов переходов АА;
)
наказания в процессе работы адаптивного алгоритма;
) .
В качестве объекта адаптации может выступать сам автомат адаптации, т.е. его структура и механизмы переходов.
Прежде всего возможно использование метаавтомата адаптации (МАА), который меняет локальные цели подобъектов в процессе эволюционной адаптации всего объекта в целом. Можно также осуществлять частичную замену подобъектов и изменять структуру и свойства связей между объектами.
Возможно применение в процессе адаптации различных структурных элементов. В результате адаптации их структуры и механизмов переходов в АА выбираются те элементы, которые дают наилучшие результаты. Наделенный такими свойствами АА называется развивающимся АА. Методы его развития составляют теорию развивающихся автоматов.