Научная статья на тему 'ПРИБЛИЖЕННЫЕ МЕТОДЫ ОПТИМАЛЬНОГО РАЗМЕЩЕНИЯ ЭЛЕМЕНТОВ ЭЛЕКТРИЧЕСКИХ И ЭЛЕКТРОННЫХ ЦЕПЕЙ'

ПРИБЛИЖЕННЫЕ МЕТОДЫ ОПТИМАЛЬНОГО РАЗМЕЩЕНИЯ ЭЛЕМЕНТОВ ЭЛЕКТРИЧЕСКИХ И ЭЛЕКТРОННЫХ ЦЕПЕЙ Текст научной статьи по специальности «Математика»

CC BY
95
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЭЛЕКТРИЧЕСКАЯ СХЕМА / ОГРАНИЧЕНИЯ РАЗМЕЩЕНИЯ / ТОПОЛОГИЧЕСКИЕ ПАРАМЕТРЫ / МЕТРИЧЕСКИЕ ПАРАМЕТРЫ / КОММУТАЦИОННОЕ ПОЛЕ / КРИТЕРИИ И МЕТОДЫ ОПТИМИЗАЦИИ

Аннотация научной статьи по математике, автор научной работы — Абас Висам Махди Абас

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

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

Похожие темы научных работ по математике , автор научной работы — Абас Висам Махди Абас

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

APPROXIMATE METHODS OF OPTIMAL PLACEMENT OF ELEMENTS OF ELECTRICAL AND ELECTRONIC CIRCUITS

The problem of optimal placement of elements of electrical and electronic circuits is considered. The minimum weighted length of the connections is selected as the criterion. The scheme is defined by a matrix of connections. We consider a fixed set of element positions and a distance matrix based on an orthogonal metric. This problem is a variant of the general mathematical model, called the quadratic assignment problem. The geometric limitation of the problem is that no more than one element is placed in one cell. Combinatorial analogs of the Gauss-Seidel method, the genetic algorithm, and the corresponding hybrid methods for solving the quadratic assignment problem with optimal placement of electronic equipment elements are developed and implemented on a computer. A series of computational experiments was conducted, which showed satisfactory computational qualities of the proposed methods. The proposed computational method, which is a combinatorial analog of the method of coordinate descent and one of the variants of the general approach based on paired permutations, is characterized by the best computational qualities among the methods studied in the article. According to well-known studies, the genetic algorithm is obviously no worse than the Monte Carlo method. The research conducted in the article shows that the method of penalty functions in the problem of placement and for the case of a genetic algorithm is ineffective. Therefore, it is of interest to consider permutations without repetitions as individuals of the population. This circumstance is taken into account at the stages of selection and mutation: at these stages, the standard calculations according to the genetic algorithm are supplemented by the procedure of paired rearrangements of genes in the chromosome. The article provides a detailed description of the program for the implementation of the genetic method on a computer.

Текст научной работы на тему «ПРИБЛИЖЕННЫЕ МЕТОДЫ ОПТИМАЛЬНОГО РАЗМЕЩЕНИЯ ЭЛЕМЕНТОВ ЭЛЕКТРИЧЕСКИХ И ЭЛЕКТРОННЫХ ЦЕПЕЙ»

УДК 517:621.316 DOI: 10.17213/1560-3644-2021-2-18-26

ПРИБЛИЖЕННЫЕ МЕТОДЫ ОПТИМАЛЬНОГО РАЗМЕЩЕНИЯ ЭЛЕМЕНТОВ ЭЛЕКТРИЧЕСКИХ И ЭЛЕКТРОННЫХ ЦЕПЕЙ

© 2021 г. Абас Висам Махди Абас

Южно-Российский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия

APPROXIMATE METHODS OF OPTIMAL PLACEMENT OF ELEMENTS OF ELECTRICAL AND ELECTRONIC CIRCUITS

Abas Wisam Mahdi Abas

Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia

Абас Висам Махди Абас - аспирант, кафедра «Прикладная математика», Южно-Российский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия. E-mail: abas.wisam.82@mail.ru

Abas Wisam Mahdi Abas - Graduate Student, Department «Applied mathematics», Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia. E-mail: abas.wisam.82@mail.ru

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

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

Дано подробное описание программы для реализации на ПЭВМ генетического метода.

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

The problem of optimal placement of elements of electrical and electronic circuits is considered. The minimum weighted length of the connections is selected as the criterion. The scheme is defined by a matrix of connections. We consider a fixed set of element positions and a distance matrix based on an orthogonal metric. This problem is a variant of the general mathematical model, called the quadratic assignment problem. The geometric limitation of the problem is that no more than one element is placed in one cell. Combinatorial analogs of the Gauss-Seidel method, the genetic algorithm, and the corresponding hybrid methods for solving the quadratic assignment problem with optimal placement of electronic equipment elements are developed and implemented on a computer. A series of computational experiments was conducted, which showed satisfactory computational qualities of the proposed methods.

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2021. No 2

The proposed computational method, which is a combinatorial analog of the method of coordinate descent and one of the variants of the general approach based on paired permutations, is characterized by the best computational qualities among the methods studied in the article. According to well-known studies, the genetic algorithm is obviously no worse than the Monte Carlo method. The research conducted in the article shows that the method of penalty functions in the problem of placement and for the case of a genetic algorithm is ineffective. Therefore, it is of interest to consider permutations without repetitions as individuals of the population. This circumstance is taken into account at the stages of selection and mutation: at these stages, the standard calculations according to the genetic algorithm are supplemented by the procedure ofpaired rearrangements of genes in the chromosome.

The article provides a detailed description of the program for the implementation of the genetic method on a computer.

Keywords: electrical circuit; placement constraints; topological parameters; metric parameters; switching field; optimization criteria and methods.

Введение. Постановка задачи

Задача оптимального размещения элементов электрических и электронных цепей и трассировки их соединений является одной из актуальных при проектировании радиотехнической аппаратуры [1 - 13]. При решении этой задачи применяются различные критерии и ограничения [1]. В результате расчета находятся координаты расположения отдельных элементов цепи на коммутационном поле (КП) и топологические характеристики соединений их клемм. При конструктивно однотипных элементах позиции для их установки на КП фиксированы, расположены в узлах прямоугольной решётки и могут быть описаны следующей системой параметров: пх, Пу, hx, hy, где Пх - число позиций в горизонтальном ряду; Пу - число позиций в вертикальном ряду; hx - горизонтальный шаг между позициями; hy - вертикальный шаг между позициями. Критерием в большинстве случаев является критерий минимума взвешенной длины (МСВД) соединений.

Даны элементы е\, ..., еп, для каждой их пары заданы веса г.у(г,у = 1, ..., п), определяющие степень связи этих элементов и образующие матрицу соединений Я = \г. } . Имеется

V г]'г,] =1,...,п

набор позиций для размещения элементов Р1, ...,рт(т > п). Без ограничения общности будем полагать, что т = п. Определим расстояния Фу(г,у = 1,., п) между парами позиций, определяющие симметричную матрицу О = {с1у} с нулевой главной диагональю

= 0(г = 1,., п). Для вычисления элементов матрицы О используется ортогональная метрика.

Произвольное размещение элементов в позициях представляет собой некоторую перестановку р = (р\, ...,рп), где ру задает номер позиции, присвоенной у-му элементу. Таким

образом, имеется всего п! различных вариантов размещения элементов. Попытки найти оптимальный вариант полным перебором безуспешны даже при малых значениях п: 9! = 362880, 16! = 20922789888000 = 101332, 25! = 15511210043330985984000000 = Ю2519.

Пример КП дан на рис. 1 и 2. Длина соединений между элементами ег и еу оценивается

величиной Ц = ггуёр{г)р(у)^у п).

Рис. 1. Представление коммутационного поля / Fig. 1. Representation of the switching field

О О о о

1 2 3 4

о О о О

5 6 7 8

О О О о

9 10 11 12

Рис. 2. Фиксированный набор из 12 позиций / Fig. 2. A fixed set of 12 positions

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

МО

= Е risdp(i)s (i = !'...'

seEs

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.

TECHNICAL SCIENCE. 2021. No 2

где dp(i)s - расстояние между элементом ег-, находящимся в позициир^ и элементом ех.

С учетом симметричности матриц R и D запишем выражение для суммарной взвешенной длины соединений при произвольном размещении:

1 п п п

Пр) = 2 ЕЕ гЛ(ОРО) +Е я<р(0.

2 i=l}=1 i=l

Для ортогональной метрики задача размещения по критерию МСВД соединений состоит в минимизации функционала:

1 п п (\ II 1\

F (р) = 2 ЕЕгч (| х - х\+1 Уi - уз |) +

4=1 j=1

+

n ,

ЕЕ ru(

i=1 seE

X - Х„

y,- ys

на множестве перестановок Р соединений.

Данная задача является вариантом общей математической модели, получившей название задачи квадратичного назначения [1, 6 - 8].

Геометрическое ограничение - в одной ячейке размещается не более одного элемента, т.е.

\x,- j \y,- y\ ,л

min maxJ-LJ-L>> 1,

i, j=1,...n

min max

i=1,...n

Xi Xs

y, - y0

> 1,

X = !ihx, У1 = Jhy, i = 1,...,n; I, e{l,...,n}, J, e{l,...,n}

Комбинаторные аналоги метода Гаусса-Зейделя в задаче размещения

Классический вариант

Будем решать задачу целочисленной оптимизации с целевой функцией F(x), где x - вектор оптимизируемых параметров размещения, а именно перестановка без повторений номеров позиций n элементов. Координаты ячеек для размещения элементов можно вычислить через номер позиции. Подобный подход является экономичным по той причине, что автоматически учитываются геометрические ограничения. Опыт показывает, что если решать задачу обычным образом для целевой функции с учетом геометрических ограничений методом штрафных функций, то трудоемкость весьма значительно возрастает. Происходит «забуривание» на одном месте в штрафной области, которая имеет сложную форму. Выход из штрафной области сильно затруднен, вследствие чего все рассмотренные

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

Рис. 3. Классический метод покоординатного спуска для двух независимых переменных / Fig. 3. The classical method of coordinate descent for two independent variables

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

о

х

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.

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

Как правило, данный метод позволяет найти локальный минимум. Для нахождения глобального оптимума применяют метод так называемого мультистарта. Новая стартовая точка выбирается наиболее просто методом Монте-Карло равновероятно во всей допустимой области. Возможно блуждание аналогично методу отжига исходя из некоторой вероятности перехода [10, 11]. Выбор старта может осуществляться в ближайшей окрестности достигнутого локального минимума. Целесообразно применение эффективных для конкретной задачи критериев выбора стартовых точек.

Рандомизированный комбинаторный аналог метода «быстрой переменной»

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

TECHNICAL SCIENCE. 2021. No 2

каждом этапе вычисляется N функций цели, равное размерности роя. Улучшение процедуры метода Гаусса-Зейделя достигается в его варианте, называемом методом быстрой переменной, которая выбирается из условия максимума модуля производных по координатам от функции цели. Однако это требует также n оценок производных. Благоприятным обстоятельством является то, что в задаче о квадратическом назначении быструю переменную можно найти по значениям матрицы связей. Таковые переменные соответствуют элементам, имеющим наибольшее количество связей. То есть оценочный критерий быстрой переменной есть величина, равная матричной норме для матрицы связей R, а именно

n

max ^ rtj . Однако данный критерий является, iinj=1

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

n

именно ^ rij, i = 1,...,n, равной числу связей эле-

1=1

мента с остальными элементами цепи.

Примеры вычислений

Аналог классического метода Гаусса-Зейделя. Матрица соединений задана аналитически в виде

rj =i+j (i * jX rii = ОД j=n).

Шаг ячейки, количество шагов по координатам и общее число ячеек и элементов: h = 1; no = 6; n = 36. Вначале осуществлялся поиск начального приближения методом Монте-Карло (10 ООО итераций), после чего начинались вычисления локального оптимума комбинаторным вариантом методом покоординатного спуска (задавалось ограничение в 100 итераций). Начальное значение шага по координате равно n, далее на каждой итерации оно уменьшалось на 1 до минимально возможного значения, равного 1. Начальное приближение оказалось равным xo = (36,12,6,1,35, 19, 5, 32, 31,26,29,34,8,16,28, 33, 13, 24,10, 2, 18, 4, 27,21, 22,15,7, 25,11, 3,17,9,23,14,20,30), соответствующее значение целевой функции i/mm_0=177648. После вычислений комбинаторным методом покоординатного спуска решение имеет вид: Х1= (36,1,6,31,35,2,12,32,5,7,25,4,30,33,34,13,19, 24,3,18,26,29,8,28,11,27,9,10,23,20,17,14,16,21,15,22),

локальный оптимум Ушт=171168 (найдено после первой итерации, после 2 - 3 итераций наименьшее значение из найденных при большом количестве итераций 171120).

Пример вычислений без нахождения уточненного начального приближения. После первой итерации методом Монте-Карло: fшn_o = 185400; Х0=(6,30,19,3,12,33,2,10,9,20,18,25,7,26,13,4,24,27, 16,23,17,8,28,21,5,34,29,11,22,36,15,1,35,31,32,14). Решение, найденное далее модифицированным методом покоординатного спуска, значительно лучше: ^=171192; х(1)=(6,1,36,31,35,12,5,25,30,2, 32,33,7,3,34,18,24,4,19,29,13,8,11,9,26,28,10,20,14, 17,27,23,16,15,21,22).

Метод быстрой переменной. Стартовая точка {36,12,6,1,35,19,5,32,31,26,29,34,8,16,28,33,13, 24,10,2,18,4,27,21,22,15,7,25,11,3,17,9,23,14,20,30). После k = 46 итераций fшn= 171120.

При классическом варианте после первой итерации £шп= 171168, через две итерации £пп= 171120 (далее не улучшается при большом количестве итераций), но соотношение вычислительных затрат на шаге в данном варианте 1 к 36 по сравнению с методом быстрой переменной.

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

Метод решения задачи размещения на основе генетического алгоритма и парных перестановок

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Генетический алгоритм оптимизации является примером применения бионического подхода [9, 13]. Он заключается в следующем.

1. На первом шаге осуществляется задание начальной популяции с определенной численностью.

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

3. Осуществляется статистическая генерация заданного числа пар для размножения. Вероятность особи попасть в пару определяется коэффициентом выживаемости (значением функции ценности).

4. Производится скрещивание отобранных пар. Векторы независимых переменных делятся

на две части, которыми члены пары обмениваются. В результате потомки со смешанными векторами образуют новую популяцию.

5. Если характеристики потомства плохие, то рационально применение мутации, основанной на рандомизации.

6. Селекция потомства позволяет отобрать особи с наилучшими свойствами выживаемости.

7. Если требуется улучшить найденное решение, то осуществляется переход к п.2.

Согласно исследованиям генетический алгоритм сходится заведомо не хуже метода Монте-Карло. Известны и другие алгоритмы стохастической оптимизации [10, 11].

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

Описание программы для реализации на ПЭВМ данного метода приведено ниже.

Вначале осуществляется задание размерностей задачи и матрицы связей элементов г[г',/].

Далее при помощи заданного количества итераций методом Монте-Карло находится т различных перестановок без повторений из чисел 1, ..., п - начальное приближение к решению задачи, или первое поколение из т особей.

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

1. Вычисляются коэффициенты выживаемости для каждой особи и соответствующие вероятности участия в скрещивании.

2. Разыгрывание методом Монте-Карло номеров т пар особей для скрещивания. Вероятности участия в скрещивании пропорциональны коэффициенту выживаемости особи.

3. В результате процедуры скрещивания находятся 2т особей - детей. Скрещивание осуществляется согласно следующему правилу. Первый потомок состоит из головной части хромосомы второго родителя длиной в k элементов. Остальные п^ генов образуют хвост хромосомы

первого потомка и берутся от первого родителя. Второй потомок получается аналогичным образом, но с зеркальной симметрией: он состоит из головной части хромосомы первого родителя длиной в k генов. Остальные n-k генов образуют хвост хромосомы второго потомка и берутся от второго родителя.

4. Полученные в п. 3 обычной процедурой скрещивания хромосомы 2m потомков модифицируются в соответствии с правилами метода парных перестановок, чтобы вернуть соответствующие целочисленные наборы чисел в допустимое множество перестановок без повторений из первых n натуральных чисел. При этом рассматриваются поочередно k первых генов потомка, для каждого отыскивается совпадающий с ним ген его хромосомы. Для исключения дублирования генов вместо найденной копии гена головной части подставляется соответствующий ген из головной части хромосомы его родителя. Данная модификация хромосом является по сути своеобразной мутацией потомков, полученных в п.3.

В системе программирования PascalABC пп. 3 и 4 выполняются в следующем программном блоке:

for i := 1 to m do begin i1:=num[i,1]; i2:=num[i,2]; for j:=1 to n do gen1[i,j]:=gen0[i1,j];

for j:=1 to k do begin g:=gen1[i,j]; gen1[i,j]:=gen0[i2,j]; j0[j] :=e_num_(ij,gen1 [ij],gen1,res[j]); if res[j] then gen1[ij0[j]]:=g; end; for j:=1 to n do gen2[i,j]:=gen0[i2,j];

for j:=1 to k do begin g:=gen2[i,j]; gen2[ij]:=gen0[i1,j];

j0[j]:=e_num_(ij,gen2[ij],gen2,res[j]);

if res[j] then gen2[ij0[j]]:=g; end; end.

Здесь i1, i2 - номера особей, участвующих в скрещивании (номера разыгрываются случайно согласно п. 2); gen0[i,j] - матрица родительской популяции, строки которой соответствуют особям (хромосомам); gen1[i,j], gen2[i,j] - матрицы хромосом потомков.

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

for i := 1 to m do for j := 1 to n do

begin gen3 [ij]: =gen0[ij]; gen3[i+m,j]:=gen1[ij]; gen3[i+2*m,j]:=gen2[ij]; end;

ord_( 3*m,gen3 ,i0);

for i := 1 to m do for j := 1 to n do gen0[ij]:=gen3[i0[i]j].

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

for i1 := 1 to m do for i2 := i1+1 to m do begin b:=true; for j := 1 to n do if gen0[i1,j]<>gen0[i2,j] then b:=false; if b then begin p3(x); for j := 1 to n do gen0[i2,j]:=x[j]; end; end.

7. Осуществляется мутация - самая плохая особь (всегда имеющая номер m через заданное количество итераций (поколений) заменяется на случайную особь из допустимого множества методом Монте-Карло:

if iter mod 2 = 0 then begin p3(x); for j := 1 to n do

gen0[mj]:=x[j]; end.

Критерием останова служит предельное число итераций (поколений). Вычисление целевой функции:

function f(x : Vector) : integer; var s,ij : integer; xx,yy : Vector0; begin

for i := 1 to n do begin xx[i]:=h*(trunc((x[i]-1)/n0) +1); yy[i]:=h*(x[i] -n0 *trunc((x[i] -1 )/n0)); end; s:=0; for i := 1 to n do for j := 1 to n do if i<>j then s:=s+r[ij]*d(i,j,xx,yy); f := s; end;{f}.

Вычисление вектора выживаемости особей одного поколения и вероятностей участия в скрещивании:

procedure p1(gen : Matrix; var v,z : Vector1; m : integer);

var s : real; ij : integer; x : Vector; p : Vector1;

begin

for i := 1 to m do begin for j := 1 to n do x[j]:=gen[i,j]; v[i]:=abs(f(x)); end;

s:=0; for i := 1 to m do s:=s+1/v[i]; for i := 1 to m do p[i]:=1/v[i]/s; z[0]:=0;

for i := 1 to m do z[i]:=z[i-1]+p[i]; end;{p1}.

Вычисление случайного номера особи для участия в скрещивании:

function num_(m : integer; z : Vector1) : integer; var v : real; j : integer; begin v:=random; for j := 1 to m do if (z[j-1]<=v) and (v<z[j]) then num_:=j; end;{num_}.

Упорядочивание особей двух поколений в соответствии с функцией их ценности:

procedure ord_(m : integer; gen : Matrix1; var i0: Vector2); var v,vmin : real; i,j,k : integer; b : boolean; begin for i:=1 to m do begin vmin:=MaxInt; for j := 1 to m do begin b:=true; for k:=1 to i-1 do if j=i0[k] then b:=false; if b then begin {1}

v:=w3(j,m,gen); if v < vmin then begin {2} vmin:=v; i0[i]:=j; end; {2} end; {1} end; {j} end; {i} end;{ord_}.

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.

TECHNICAL SCIENCE. 2021. No 2

Вычисление номера элемента в заданной позиции:

function e_num(p : 1..n; x : Vector) : 1..n; var i : integer; begin for i:=1 to n do if p=x[i] then e_num :=i; end; {e_num - номер элемента в позиции p}

function e_num_(ij,p : 1..n; gen : Matrix; var res : boolean) : 1..n; var k : integer; begin res:=false; for k:=1 to n do if k<>j then if p=gen[i,k] then begin e_num_ := k; res := true; end; end; {e_num_ - номер элемента в позиции p для строки в матрице gen}.

Вычисление случайной хромосомы: procedure p3(var x : Vector); label 1; var ij : integer; b : boolean; begin for i:=1 to n do begin 1: x[i]:=random(n)+1; b := false; for j:=1 to i-1 do if x[i]=x[j] then begin b:=true; break; end; if b then goto 1; end; end;{P2 случайная перестановка без повторений}.

Пример вычислений

Генетический алгоритм Матрица соединений разреженная и задана в виде r1} = 1,1 /—7" 1=1; r1} = 0,1/-/1*1; /,/"=1,..., n. Шаг ячейки, количество шагов по координатам, общее число ячеек и элементов, число особей в одной популяции: h = 1; no = 6; n = 36; m = 5. Каждые два этапа вычислений осуществлялась мутация, наихудший член популяции заменялся на случайный. Начальное размещение показано на рис. 4 (х/=/, /=1,...,п). Соответствующее значение целевой функции fmin= 120, при точном fnf = 70. V 6 5 4 3 2 1

0 1 2 3 4 5 6 .г Рис. 4. Метод генетического алгоритма.

Начальное размещение / Fig. 4. The method of the genetic algorithm. Initial placement Наилучшее приближенное решение после 28790 итераций fmm = 76 (не было улучшено и после 100 000 итераций) (рис. 5). v 6 5

4 3 2

1

0 1 2 3 4 5 6 .г Рис. 5. Метод генетического алгоритма. Локально оптимальное размещение после 28790 итераций / Fig. 5. The method of the genetic algorithm. Locally optimal placement after 28,790 iterations

Гибридный метод «генетический алгоритм+комбинаторный аналог метода Гаусса-Зейделя» Начальное условие то же, что и в предыдущем пункте (см. рис. 4). Глобальный оптимум

достигнут после 59 итерации (рис. 6, табл. 1).

у

6

5 4

3 I 2 1

ф (7?> Ч7з) (£> i(ii)

11111

О <3 С*> @ Gi> 11111

© <3 Cf Qf G?>

cd cd ci (ä <ä

11111

CD <Ю 0z> Qf Qf CO (4-наЬ

0 1 2 3 4 5 6

Рис. 6. Гибридный метод. Глобальный оптимум / Fig. 6. Hybrid method. Global optimum

Таблица 1 / Table 1 Результаты вычислений / Calculation results

Номер итерации Ценности особей популяции

1 120 270 304 284 306

3 112 214 260 136 242

5 104 192 132 250 208

9 96 102 112 112 208

10 88 96 224 100 98

11 84 88 224 96 214

21 78 222 84 224 242

28 74 78 240 78 80

59 74 78 74 222 256

591 70 74 74 74 78

592 70 74 74 286 78

593 70 74 74 214 78

'После скрещивания и отбора среди поколений. 2После мутации.

3После улучшения методом Гаусса-Зейделя

Цепи с многократными связями между элементами

Начальное размещение 36 элементов цепи показано на рис. 7. Число связей элементов распределено равномерно случайно от 1 до 5. Соответствующее начальное значение целевой функции ^Шт= 324, при точном ^ = 208. V 6

5 4 3 2 1

0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1

2

3

4

5

6

Рис. 7. Гибридный метод. Начальное размещение / Fig. 7. Hybrid method. Initial placement

X

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2021. No 2

Глобальный оптимум достигнут на 353-й итерации и показан на рис. S.

у

6 5 4 3 2 1

<Ж>

ob ob ob ob

Qí) 3 C.2)

Off» 0э> Os)

оЬ ob ob о?) о?» ob ob o°> o?>

0Б> j ifs)

0J>

ob

3

op ob

CD-

CD

ob

I

ob ob

H¿)

Рис. 8. Гибридный метод. Глобальный оптимум / Fig. 8. Hybrid method. Global optimum

Не во всех случаях вычислительный процесс быстро сходится к точному решению. Локальный оптимум, показанный на рис. 9 (/mm = 244, при точном ff=226), достигнут после 25 000 итераций. На каждом шаге выполнялась одна мутация. Остальные условия те же, что и в предыдущих пунктах. V 6

5

4

3

2

1

G

1

2

3

4

5

6

Рис. 9. Гибридный метод. Локально оптимальное размещение / Fig. 9. Hybrid method. Locally optimal placement

Вывод

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

References

Литература

1. Алгоритмы размещения элементов [Электронный ресурс]. https://helpiks.org/8-12562.html (дата обращения 03.04.2021).

2. Николов Н.П. Размещение элементов электронных узлов методом многоуровневой декомпозиции и макромоделирования и реализация на его основе ППП для САПР РЭА: дис. ... канд. техн. наук 05.13.12. Львов. 1985.

3. Горбачев А.А. Методы и алгоритмы пространственной трассировки печатных плат: дис. ... канд. техн. наук 05.13.12. Калининград. 1999.

4. Селютин В.А. Автоматизированное проектирование топологии БИС. M.: Радио и связь, 1983. 112 с.

5. Морозов К.К., Одинокое В.Г., Курейчик В.М. Автоматизированное проектирование конструкций радиоэлектронной аппаратуры. М.: Радио и связь, 1983. 278 с.

6. Мартюшее А.В. Метод плетей и границ в квадратичной задаче о назначениях: дис. ... канд. физ.-мат. наук: 01.01.09. СПб.: 2005. 100 с.

7. Палубецкис Г.С. Генератор тестовых задач квадратичного назначения с известным оптимальным решением // Журн. вычисл. математики и математической физики. 1988. Т. 28, № 11. С. 1740 - 1743.

8. Леушкин А.Д., Неймарк Е.А. Квадратичная задача о назначении. Обзор методов, генерация тестовых задач с априорно известным оптимумом // Труды НГТУ им. Р.Е. Алексеева. 2020. № 4 (131). С. 26 - 35.

9. Старостин Н.В., Быкова Н.В. Многоуровневый алгоритм решения задачи архитектурно-зависимой декомпозиции: учеб.-метод. пособие. Н. Новгород: Нижегородский госуниверситет, 2017. 24 с.

10. Рашковский С.А. Решение задач комбинаторной оптимизации методом Монте-Карло: доклады Академии наук. 2016. Т. 471. № 4. С. 403 - 407.

11. Rashkovskiy S.A. Monte-Carlo solution of combinatorial optimization problems // Doklady Mathematics. 2016. Vol. 94. No. 3. Pp. 720 - 724.

12. Дарховский Б.С., Попков А.Ю., Попков Ю.С. Метод пакетных итераций Монте-Карло для решения задач глобальной оптимизации // ИТиВС. 2014. Вып. 3. С. 39 - 52.

13. Кулаков А.А. Разработка и исследование алгоритмов оптимального размещения компонентов СБИС трёхмерной интеграции: дис. ... канд. техн. наук 05.13.12. Таганрог, 2016. 164 с.

G

1

2

3

4

5

6

x

X

1. Algorithms for placing elements [Electronic resource]. Avialable at: https://helpiks.org/8-12562.html (accessed: 03.04.2021).

2. Nikolov N.P. Placement of elements of electronic nodes by the method of multilevel decomposition and macromodeling and implementation on its basis of PPP for CAD REA. Diss. cand. of techn. sci. specialty 05.13.12. Lviv. 1985.

3. Gorbachev A. A. Methods and algorithms of spatial tracing of printed circuit boards. Diss. cand. of techn. sci. specialty 05.13.12. Kaliningrad. 1999.

4. Selyutin V.A. Computer-aided design topology BIS. M.: Radio and communication. 1983. 112 p.

5. Morozov K.K. Odinokov V., Kureychik V.M. Automated design of electronic equipment. M.: Radio and communication. 1983. 278 p.

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE 2021. No 2

6. Martyushev V.A. Method of whips and bounds /n quadratic task of appointments. Diss.... cand. fiz.-mat. sci. 01.01.09. Saint-Petersburg. 2005. 100 p.

7. Kolubetskis G.S. Generator of test problems of quadratic asstgnment wtih a known optimal solution // J. Vychislitel'noi Ma-tematiki i Matematicheskoi Fiziki. 1988. Vol. 28, no. 11. Pp. 1740 - 1743.

8. Leushkin A.D., Neymark E.A. Quadratic problem on the ass/gnment. Rev/ew of methods, generation of test problems wtth a priori known opt/mum // Trudy NSTU named after R. E. Alekseev. 2020. No. 4 (131). Pp. 26 - 35.

9. Starostin N.V., Bykova N.V. Multilevel algorithm for solv/ng the problem of archtiecture-dependent decomposO/on. Educational and method/cal manual. Nizhny Novgorod: Nizhny Novgorod State University. 2017. 24 p.

10. Rashkovsky S.A. Solv/ng problems of combmatorial optim/zation by the Monte-Carlo method. 2016. Vol. 471, no. 4. Pp. 403 - 407.

11. Rashkovskiy S.A. Monte-Carlo solution of combinatorial optimization problems: doklady mathematics. 2016. Vol. 94, no. 3. Pp. 720 - 724.

12. Darkhovsky B.S., Popkov A., Popkov Yu. Batch /terat/ons of Monte Carlo for solv/ng problems of global opt/m/zat/on // Itis, 2014. Vol. 3. Pp. 39 - 52.

13. Kulakov A.A. Development and research of algorithms for optimal placement of components VLSI three-dimensional integration. Dis. ... cand. of techn. sci. 05.13.12. 2016, Taganrog. 164 p.

Поступила в редакцию /Received 01 марта 2021 г. /March 01, 2021

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