Есть случаи, когда узлы содержат группы сильно связанных элементов и для улучшения компоновки необходимо осуществить групповые перемещения элементов.
Дано два узла T1 и T2 (рис.4.2.1). Рассмотрим один из способов групповых перестановок.
Рис.5.4.2.1 Рис.5.4.2.2
Формируем перестановочную матрицу W для узлов T1 и T2. Выбираем пару элементов xiÎT1, xjÎT2, для которых wij имеет максимальное значение. Осуществляем перестановку элементов и временно фиксируем элементы на новых местах. Вновь формируем перестановочную матрицу и выбираем следующую пару элементов, для которых wij имеет максимальное значение, осуществляем перестановку элементов.
Процесс парных обменов продолжается до тех пор, пока все элементы из узла T1 не переместятся в узел T2 и наоборот. Если k – число элементов в каждом узле, то будет k обменов и k максимальных значений wij, которые образуют последовательность w1, w2,…, ws,…, wk (s=1,2,…,k). wij могут быть положительными, отрицательными и равными нулю.
|
|
Вычислим накопленное приращение функции (g) после обмена пары (xi, xj):
i
gi = ∑ ws, i =1, 2,…, k (5.4.1.5)
S=1
| ||||||||||||
| ||||||||||||
|
Рис.5.4.2.3. Приращения
gi =0, когда обмен полный, т.е. (i=k). После k обменов получаем узлы T1 (k) = T2 и T2 (k) = T1.
Если gmax> 0, то произведем действительную перестановку группы элементов, участвовавших в первоначальной перестановке до i–го шага
Подсчитаем характеристические числа (αi) элементов для нашего примера:
α1 = 0-6 = -6, α5 = 0-6 = -6
α2 = 3-7 = -4, α6 =3-7 = -4
α3 = 3-7 = -4, α7 =3-7 = -4
α4 = 0-6 = -6, α8 = 0-6 = -6
Подсчитаем wi для всех возможных парных обменов и составим таблицу.
Таблица 5.4.2.1
обмен | w1 (1-ый шаг) | w2 (2-ый шаг) | w3 (3-ый шаг) | w4 (4-ый шаг) |
x1 и x5 | -12 | 12* | ||
x1 и x6 | -10 | |||
x1 и x7 | -10 | -2 | ||
x1 и x8 | -12 | |||
x2 и x5 | -10 | |||
x2 и x6 | -8* | |||
x2 и x7 | -14 | |||
x2 и x8 | -10 | |||
x3 и x5 | -10 | -2 | ||
x3 и x6 | -14 | |||
x3 и x7 | -8 | -16 | -16 | |
x3 и x8 | -10 | -14 | -14 | |
x4 и x5 | -12 | |||
x4 и x6 | -10 | |||
x4 и x7 | -10 | -14 | -14 | |
x4 и x8 | -12 | -12 | -12* |
На первом шаге ни один парный обмен не приводит к уменьшению числа межузловых соединений. Допускаем временное возрастание числа соединений и переставляем x2 и x6 элементы с максимальным значением wi. g1 = w1. =-8
На втором шаге максимальное значение wi имеет пара элементов x1 и x5
Накопленное приращение g2 = w1 + w2 =-8+12=4.
Третий шаг – обмен x4 и x8. g3 = g2 + w3 =4+(-12)=-8.
|
|
На четвертом шаге обменивается оставшаяся пара элементов x3 и x7. g4 = g3 + w4 =-8+8=0.
Имеем последовательность значений gi: -8, +4, -8, 0. Максимальное значение соответствует обмену первых двух пар элементов x2 и x6, x1 и x5. Это оптимальное разбиение (рис.5.4.2.2).
ТЕМА 6. Алгоритмы размещения элементов