Упорядочение вершин и дуг орграфов

Перейдём к упорядочению вершин и дуг орграфа.

Будем говорить, что вершина хi предшествует вершине хj, если существует путь из хi в хj.

В этом случае вершину хi называют предшествующей вершине хj, а хj – последующей за хi.

Рассмотрим связный граф без контуров.

Под упорядочением вершин графа будем понимать такое разбиение его вершин, на группы (ранги, слои), при котором:

1) вершины первой группы не имеют предшествующих, а вершины последней – последующих; вершины любой другой группы не имеют предшествующих в следующей группе;

2) вершины одной и той же группы не соединяются дугами.

Для графов без контуров описанное разбиение всегда возможно.

Рассмотрим матричный способ упорядочения вершин на примере графа, изображённого на рис. 7 (матрица смежности его вершин помещена в табл. 1).

Обозначим через vx1; …; vx6 векторы, являющиеся строками матрицы смежности (табл. 3).

Таблица 3

  x1 x2 x3 x4 x5 x6 vxi Группа
x1 x2 x3 x4 x5 x6 vx1 vx2 vx3 vx4 vx5 vx6 I II III II IV V
v1
v2 -
v3 - - -
v4 - - - -
v5 - - - - -

Вычислим компоненты вектора v1 = vx1 +…+ vx6 и припишем их снизу к матрице смежности.

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

В частности, полустепень захода вершины х1 оказалась равной нулю, т.е. в вершину х1 не заходит ни одна дуга.

Значит, вершина х1 не имеет предшествующих: она образует I группу.

Исключим из дальнейшего рассмотрения вершину х1 и дуги (х1; х2) и (х1; х4), исходящие из неё.

После этого вычислим компоненты вектора v2 = v1 - vx1 и запишем их во второй дополнительной строке табл.3.

Здесь появилось ещё два нуля, соответствующие вершинам х2 и х4.

Эти нули свидетельствуют о том, что в вершины х2 и х4 не заходит ни одна дуга, т.е. вершины х2 и х4 не имеют предшествующих в графе без вершины х1 и дуг (х1; х2) и (х1; х4).

Следовательно, вершины х2 и х4 образуют следующую, II, группу.

Затем находим вектор v3 = v2 – (vx2 + vx4) с одной нулевой компонентой, соответствующей вершине х3, образующей III группу.

И, наконец, определяем вектор v5 = v4 - vx5 с единственной компонентой, которая равна нулю и отвечает вершине х6, составляющей V группу.

Т. о. описанный процесс заканчивается, когда получают вектор с компонентами, равными нулю или вычеркнутыми.

В результате упорядочения вершин получаем граф (рис. 8), изоморфный данному.

Упорядочение вершин и дуг орграфов - student2.ru

Рисунок 8

При необходимости надо перенумеровать вершины, начав с вершин I группы.

Внутри группы вершины нумеруются в произвольном порядке.

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

На рис. 8 вершинам изоморфного графа даны новые обозначения: а1; …; а6.

Матричный способ упорядочения дуг графа опирается на понятие предшествования дуг и производится аналогично упорядочению вершин.

Вначале составляется матрица смежности дуг (табл. 2 и рис. 7).

После этого находится вектор

Упорядочение вершин и дуг орграфов - student2.ru

(табл. 4) и определяются дуги (в нашем случае u1 и u5), соответствующие нулевым компонентам этого вектора.

Таблица 4

ul u1 u2 u3 u4 u5 u6 u7 u8 vui Группа
u1 u2 u3 u4 u5 u6 u7 u8 vu1 vu2 vu3 vu4 vu5 vu6 vu7 vu8 I II IV II I III II II
v1
v2 - -
v3 - - - - - -
v4 - - - - - - -

Они образуют I группу.

Затем рассматривается граф без дуг I группы и находится вектор v2 как разность вектора v1 и суммы векторов vui, соответствующих дугам I группы.

Дуги, соответствующие нулевым компонентам вектора v2, образуют II группу (в нашем примере это дуги u2, u4, u7 и u8) и т. д.

Так продолжают до тех пор, пока не приходят к вектору vk, у которого часть нулевых компонент, а остальные вычеркнуты.

В результате получают орграф с упорядоченными дугами, изоморфный данному.

При необходимости дуги изоморфного орграфа надо перенумеровать в натуральном порядке.

В рассматриваемом примере дугам изоморфного орграфа (рис. 9) даны новые обозначения t1; …; t8.

Упорядочение вершин и дуг орграфов - student2.ru

Рисунок 9

Рассмотренные вопросы находят применение в сетевом планировании и управлении большими комплексами взаимосвязанных работ.

Наши рекомендации