Алгоритмы последовательного размещения по связности

ПустьХ={х1, х2,…, хn} – множество элементов, необходимое разместить во множество позиций L={l1, l2,…, ln}. Дана матрица соединений R=||rij||nxn и матрица расстоянийD=||dij||nxn. На каждом шаге процесса один из не размещенных элементов помещается в одну незанятую позицию. В зависимости от правил выбора элемента и позиции на каждом шаге, существуют различные разновидности алгоритмов.

ПустьХk – элементы, размещенные до k-го шага, а Lk – позиции, занятые этими элементами; Хk иLk – соответственно неразмещенные элементы и незанятые позиции.

Выбор элемента. Любое правило выбора элемента для размещения основано на вычислении «меры связности» еще не размещенных элементов с уже размещенными. Естественной мерой связности двух элементов хi и хj является количество соединений между ними, заданное в матрице соединений R=||rij||nxn.

Наиболее простой вариант выбора элемента. Для каждого неразмещенного элементахiÎХk подсчитывается характеристика суммарной связности с уже размещенными элементами:

ci = ∑rij,

хjÎХk

Выбор в данном случае осуществляется на основании максимального значения характеристикиci. Т.е. выбирается элемент с максимальным количеством связей.

На каждом последующем шаге может использоваться другое правило выбора. Выбирается элементхiÎХk, у которого максимальное число связей с размещенными элементами и минимальное число связей со свободными (ci =max)

ci = ∑rij - ∑rij.

хjÎХk хjÎХk

Данный выбор аналогичен принципу максимальной конъюнкции – минимальной дизъюнкции.

Выбор позиции. Выбранный для размещения элементхi должен быть установлен в одну из свободных позиций (Lk). Эта позиция выбирается с учетом минимизации критерия размещения (например, критерий минимума суммарной длины соединений данного элементахi с уже размещенными элементами Хk). Рассматривается не все множество позицийLk, а лишь те, которые находятся на периферии множества занятых позицийLk (минимальное суммарное расстояние до занятых позиций определяется по матрицеD). На рисунке они отмечены знаком «+», занятые позиции – знаком «х».

    + +    
  + r r +  
  + r +    
    +      

 

Рис.6.3.1 Позиции для назначения

Перед началом размещения могут быть две ситуации:

· нет размещенных ранее элементов внешние выводы узла (контакты, разъемы и т.п.) не закреплены (в этом случае в алгоритме должен быть особо определен способ установки первого элемента);

· имеется группа заранее размещенных элементов или закрепленных выводов, тогда роль первого элемента выполняют закрепленные.

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

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