Алгоритм адаптации проектной операции определения клик графа

личных постановках, оставляя отдельные виды хромосом неизменными в процессе генетического поиска.

Например, при фиксированных H1, H2 искать оптимальное решение только лишь за счет изменения h3, т.е. типов разрезов (Н или V).

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

- . -

дующим образом. Сначала на выбранной родительской паре R1 и R2 реализуется

кроссинговер К1, т.е. осуществляется обмен генами. Образуется дочерняя пара R1’ и R2 ’. Далее эта пара рассматривается как родительская и к ней применяется крос-

2, . . . -

R1 R2 1 2 -

ется дочерняя пара R1” и R2 ”.

, -

, -

нальна O(N), где N - число блоков.

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

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

2. K. Bazargan, S. Kim, and M. Sarrrafzadeh, Nostradamus: a Floorplanner of Uncertain Designs.// IEEE Transaction on Computer Aided Design of Integrated Circuits and Systems, vol. 18, no.4, April 1999.

3. . . . // .

Тематический выпуск “Интеллектуальные САПР”. Таганрог: Изд-во ТРТУ. 1999. №3. С. 119-126.

УДК 621.3.06

В.А. Литвиненко, В.А. Калашников

АЛГОРИТМ АДАПТАЦИИ ПРОЕКТНОЙ ОПЕРАЦИИ ОПРЕДЕЛЕНИЯ

КЛИК ГРАФА

Введение. Адаптация в технических системах - это способность системы изменять свое состояние и поведение (параметры, структуру, алгоритм, функционирование) в зависимости от условий внешней среды путем накопления и использования информации о ней [1]. Классификация методов адаптации рассмотрена в [1,2]. Одним из методов адаптации является априорная параметрическая адапта-,

помощью параметров адаптации, которые выбираются на основе заранее получен, [1,2].

В работе [8,10] рассмотрен состав адаптивного программного модуля проектной операции определения клик графа [3,4], построенного на основе библиотеки

( ),

основе параметрической адаптации. Структурная схема программного модуля показана на рис.1.

Входные

параметры

Елок

адаптации

База.

данных

Библиотека

ПМ1

программных

модулей

ПМ2

ПМ 3

_]

.l

Входными параметрами являются: d - требуемая точность решения, t - ресурс времени, отведенный для выполнения проектной операции, n - число вершин графа, m - число ребер графа (р^мерность задачи).

Под точностью решения задачи определения клик графа понимается количество выделенных клик. Точное решение соответствует выделению всех клик графа [6-9].

ПМ1 и ПМ2 реализуют алгоритмы определения семейств клик графа, покрывающих соответственно все вершины и ребра графа [5], и предназначены для получения приближенных решений. ПМ3 реализует адаптивный алгоритм [7]. Адаптация алгоритма производится заданием целочисленного значения управляющему , . этом точность решения лежит в пределах от выделения всех клик графа - точного , , .

Блок адаптации выполняет следующие функции:

- производит анализ входных данных;

- выбирает необходимые данные из базы данных;

- -;

- -

;

- -

;

- распознает графы, критические для задачи определения клик графа - графы Муна-Мозера [4].

Анализ входных данных. Осуществляется с целью выбора ПМ, позволяющего получить наиболее точный результат при заданном ресурсе времени. В связи с этим установлен следующий приоритет выбора ПМ. Вначале анализируется воз-

3, ,

- 2, - 1, , , , наименее точного. Выбор ПМ1 и задание значения параметру адаптации h выполняется на основе анализа таблицы Tab, хранящейся в базе данных (см. рис.1).

База данных. Таблица Tab представляет собой табличное задание семейства функций зависимости времени и точности решения от размерности графа (числа ) h: T(n,m), D(n,m) при h=const.

n m. n

изменялось от 20 до 1000 с шагом 10, a m - от n/100 до n(n-1)/2 c шагом 20.

На уровне структуры данных таблица задается трехмерным динамическим массивом структур с различной размерностью строк, что позволяет вносить изменения в базу данных, при необходимости проведения дополнительных исследований. Каждый элемент массива представляет собой структуру с двумя полями: первое поле соответствует времени решения, а второе - точности, т.е. каждый элемент таблицы Tab(i,j,k) имеет поля Tab(i,j,k).T и Tab(i,j,k).D. Количество двумерных

h.

[8,11] показали, что диапазон значений параметра h от 1 до 9 для графов до 1000 .

Алгоритм адаптации.

:

n1, m1 - , -

дования которых составлен массив Tab; d - требуемая точность решения (%); t - , ;

tr - ресурс времени, достаточный для получения точного решения при n=1, m=m1;

tm - ресурс времени при отсутствие ограничения на время решения задачи; t1 - время выполнения модуля ПМ1; t2 - 2; t3- время выполне ния модуля ПМ3;

ts - суммарное время выполнения нескольких итераций модулей;

l - счетчик количества итераций при выполнении модулей ПМ1 и ПМ2;

g - номер выполняемого модуля, g={1,2,3};

q(i) - локальная степень вершины с номером i;

h1 - Tab;

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

Сформулируем алгоритм адаптации.

1. Ввод данных: t, d - параметров, соответствующих условиям работы проектной операции, и n, m, Inf - размерность и структура графа. Переход к п.2.

2. Если d=0, то переход к п.13, иначе, если t=tr и d=100, то h =1 и переход к п.7, иначе переход к п.3.

3. Если 100 > d >30, то переход к п.4, иначе переход к п.12.

4. Определить локальную степень q(i) каждой i-ой вершины графа. Если для каждой i-ой вершины q(i)=n-3 и n>100, то переход к п.7, иначе переход к п.5.

5. n>n1 m>m1, -

нительного исследования графа и, если t=tm , то k =h1 и переход к п.6., иначе, если t< tr, то переход к п.7. Если n<n1 или m<m1, то переход к п.9.

6. Выполнение ПМ3. Затем k=1 и выполнение ПМ3 до истечения ресурса времени, при этом переход к п.18.

7. Выполнение ПМ1. Если t1<t, то выполнение ПМ2 до истечения ресурса времени, при этом переход к п.18. Задать ts=t1+t2. Если ts< t, то k= h1 и переход к

.8.

8. Выполнение ПМ3 до истечения ресурса времени, при этом переход к п.18. При выполнении ПМ3 до конца задать ts=ts+t3, и, если ts<t, то k= k-1 и, если k=0, то переход к п.18, иначе повторить п.8.

9. i j Tab, n m,

задать k =1 и переход к п.10.

10. Если элемент таблицы Tab(i,j,k) такой, что Tab(i,j,k).T > t, то, если d > Tab(i,j,k).D, задать h = k, g=3 и переход к п.12, иначе переход к п.11.

11. Задать k = k+1. Если k > h1, то переход к п.13, иначе переход к п.10.

12. Выполнение ПМ3. Если t>t3, то задать ts=t3, g=2, l=0 и переход к п.14,

.18.

13. ts=0; l=0. Если 30 > d >15, то g=2 и переход к п.14, иначе g=1 и пере-.15.

14. Выполнение ПМ2. ts=ts+t2 и переход к п.16.

15. Выполнение ПМ1. ts=ts+t1 и переход к п.16.

16. l=l+1. Если t>ts+ts/l), то переход к п.17, иначе переход к п.18.

17. . g=2, -

ход к п.9, иначе, если g=1, то переход к п.10.

18. .

Рассмотрим работу алгоритма адаптации.

.2 1, -шей точностью, а, если ресурс времени достаточно большой и необходимо определить все клики графа, то выбирает ПМ3, задав для него значение параметра, рав-

1, .

.3 : , -

шения более 30%, то выбирается для выполнения ПМ3. Но вначале проверяется -не является ли граф графом Муна-Мозера (п.4), т.к. известно, что эти графы содержат экспоненциальное число клик, и, следовательно, являются наиболее критичными для задачи выделения клик графа. Для этого определяются локальные , n-3 ,

, - . , позволяет выявить критичные графы. В этом случае процесс поиска клик направляется на получение вначале решения наименее точного, но и наименее трудоемкого, т.е. выбирается для выполнения ПМ1 (п.7). Затем, если ресурс времени не , 2, , будет исчерпан ресурс времени. Если модуль ПМ2 все же будет выполнен, то выбирается модуль ПМ3 (п.6), при этом параметр адаптации выбирается так, чтобы обеспечить наименее трудоемкий процесс определения клик (п.7). Такая стратегия , .

.5 -

, . , -

ния не проводились и в базе данных отсутствует необходимая информация, то, если ресурс времени не ограничен, то вначале выбирается модуль ПМ3 и параметр адаптации задается таким, чтобы получить наименее трудоемкое решение. Затем устанавливается параметр адаптации так, чтобы получить точное решение, и процесс выполняется до истечения ресурса времени (п.6).

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

Муна-Мозера (п.п.7,8), с тем отличием, что модуль ПМ3 может выполняться не-

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

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

П.п.13-17 предназначены для организации итерационного процесса опреде-

1 2, -ся к различным подстановкам исходного графа. Количество итераций ограничено ресурсом времени. Выбор для выполнения или модуля ПМ1, или ПМ2 зависит от требуемой точности. Исследования [8] показали, что ПМ2 целесообразно использовать для получения решений с точностью от 15 до 30%, а ПМ1 - для получения точности менее 15%. Переход к очередной итерации производится на основе прогноза времени выполнения следующей итерации.

Подстановки графа могут быть получены различными способами: случайной перестановкой вершин графа; перестановкой через одну, две или группами из нескольких вершин; упорядочения вершин графа по возрастанию или убыванию локальных степеней вершин; комбинацией этих способов. Для хранения клик графа и исключения повторности выделения одних и тех же клик используется двоичное дерево [8].

. -

ные методы выбора ПМ, а сама библиотека ПМ может быть расширена за счет включения в нее других ПМ, например ПМ, реализующий алгоритм Брона-Кербоша (адгоритм №457) [4], для которого в [9] предложена модификация, переводящая его в класс адаптивных алгоритмов. Для получения приближенных реше-, 1 2, генетические алгоритмы определения клик графа.

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

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

1. Растригин Л.А. Адаптация сложных систем. Рига: Зинатне,1981. 315с.

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

3. Кристофидес Н. Теория графов. Алгоритмический подход./ Пер. с англ. Под редакцией Г.Г. Гаврилова. М.: Мир, 1978. 432с.

4. Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика./ Пер. с англ. Под ред. В.Б.Алексеева, М.:Мир, 1980. 476с.

5. . ., . ., . .

дискретных устройств. М.: Сов.радио, 1975. 224с.

6. . . / -

. 2. , . -

. 1982. .90-92.

7. . ., . . . 30.

Intern. Wiss. Koll. TH llmenau Vortragsreihe. 1985. C.41-44.

8. . .

/ Известия ТРТУ. Тематический выпуск «Интеллектуальные САПР». Таганрог: Изд-во ТРТУ, 2000, №2(16). С.186-189.

9. . ., . ., . . -

дифицированного алгоритма определения клик графа / Известия ТРТУ. Тематический выпуск «Интеллектуальные САПР». Материалы международной научно-технической конференции «ИСАПР». Таганрог: Изд-во ТРТУ, 2002, №3(26). С.204-205.