
- •Тема 6. Алгоритмы размещения элементов
- •6.1 Общая характеристика алгоритмов
- •6.2 Математические модели задачи размещения
- •6.2.1 Модель квадратичного назначения
- •6.3 Конструктивные алгоритмы начального размещения
- •6.3.1 Метод обратного размещения
- •6.3.2 Алгоритмы последовательного размещения по связности
- •6.4 Итерационные алгоритмы улучшения начального размещения
- •6.4.1 Итерационный алгоритм парных перестановок
6.3 Конструктивные алгоритмы начального размещения
6.3.1 Метод обратного размещения
В методе осуществляется предварительная оценка каждого из размещаемых элементов х1, х2,…, хn и свободной позиции l1, l2,…, ln. После все элементы размещаются одновременно.
Дана матрица соединений R=||rij||nxn и матрица расстояний D=||dij||nxn.
Для xi по матрице R найдем суммарное число соединений этого элемента с остальными:
n
ri= ∑ rij, i= 1, 2,…, n
j=1
Для li по матрице D найдем
n
di= ∑ dij , i= 1, 2,…, n
j=1
di - определяет суммарное расстояние этой позиции до других позиций.
Позиции в центре коммутационного поля имеют меньшее значение di, чем крайние. Т.е. в центре коммутационного поля размещены элементы с большим значением ri (сильно связанные элементы).
Алгоритм размещения по шагам:
1) Упорядочить элементы по возрастанию характаристики ri : i1, i2,…, in (ri1 ri2 …rin).
2) Упорядочить позиции по убыванию характаристики dj : j1, j2,…, jn (dj1 dj2 … djn).
3) Определим размещение p(ik) = jk, k = 1, 2, …, n.
Пример. Расположение позиций:
l1 l2 l3 l4 l5 l6
1ед. дл.
-
x1 x2 x3 x4 x5 x6
d1 d2 d3 d4 d5 d6
x1
0 2 2 3 9 4
∑= r1 d1
0 1 2 3 4 5
x2
2 0 1 10 5 6
∑= r2 d2
1 0 1 2 3 4
R = x3
2 1 0 3 4 7
∑= r3 D = d3
2 1 0 1 2 3
x4
3 10 3 0 7 8
∑= r4 d4
3 2 1 0 1 2
x5
9 5 4 7 0 11
∑= r5 d5
4 3 2 1 0 1
x6
4 6 7 8 11 0
∑= r6 d6
5 4 3 2 1 0
1)Считаем суммарную связь первого элемента с остальными (вектор r1)
r1=2+2+3+9+4=20, затем r2 и т. д. Располагаем характеристики по возрастанию:
r3 |
r1 |
r2 |
r4 |
r5 |
r6 |
17 |
20 |
24 |
31 |
36 |
36 |
Получаем последовательность элементов: 3,1, 2, 4, 5, 6.
2)Считаем суммарную длину между первой позицией и остальными позициями (вектор d1)
d1=1+2+3+4+5=15, затем d2 и т. д. Располагаем характеристики по убыванию:
d1 |
d6 |
d2 |
d5 |
d3 |
d4 |
15 |
15 |
11 |
11 |
9 |
9 |
Получаем последовательность позиций:1,6, 2, 5, 3, 4.
3) Результат размещения:
l1 l2 l3 l4 l5 l6
x5
x3
x2
x6
x4
x1
Для полученного размещения суммарная длина соединений, равная скалярному произведению векторов ri dj,составляет 179. Есть лучший вариант размещения:
l1 l2 l3 l4 l5 l6
x5
x1
x4
x6
x2
x3
Суммарная длина соединений составляет 170.
Метод прост, но не всегда дает наилучший вариант размещения (используется, как начальный вариант размещения).