Главная страница

Судопланов. Судоплатов С.В., Овчинникова Е.В. Дискретная математика 2016. Редакционная коллегия серии учебники нгту


Скачать 2.01 Mb.
НазваниеРедакционная коллегия серии учебники нгту
АнкорСудопланов
Дата05.06.2022
Размер2.01 Mb.
Формат файлаpdf
Имя файлаСудоплатов С.В., Овчинникова Е.В. Дискретная математика 2016.pdf
ТипУчебники
#571403
страница20 из 36
1   ...   16   17   18   19   20   21   22   23   ...   36
c(G)
связных компонент графа G определяется однозначно.
Следующая теорема позволяет по матрице смежности A
G
исследовать маршруты данного графа G.
Теорема 4.3.2. Если A
G
— матрица смежности графа G, то (i, j)
элемент матрицы A
k
G
= A
G
· . . . · A
G
|
{z
}
k раз
есть число (a
i
, a
j
)-маршрутов дли-
ны k. ¤
Следствие 4.3.3. 1. В графе G мощности n тогда и только тогда
существует (a
i
, a
j
)-маршрут (a
i
6= a
j
), когда (i, j)-й элемент матрицы
A
G
+ A
2
G
+ . . . + A
n−1
G
не равен нулю.
2. В графе G мощности n тогда и только тогда существует цикл, со-
держащий вершину a
i
, когда (i, i)-й элемент матрицы A
G
+ A
2
G
+ . . . + A
n
G
не равен нулю.
Пример 4.3.4. Определим с помощью матрицы смежности существова- ние (1, 3)-маршрута в графе G, изображенном на рис. 4.22. В матрице
A
G
=



0 0 0 1 1 0 1 1 0 1 0 0 1 1 0 0




132
Глава 4. ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ
(1, 3)-элемент равен 0, т. е. (1, 3)-маршрутов длины 1 нет. В матрице
A
2
G
=



0 0 0 1 1 0 1 1 0 1 0 0 1 1 0 0






0 0 0 1 1 0 1 1 0 1 0 0 1 1 0 0


 =



1 1 0 0 1 2 0 1 1 0 1 1 1 0 1 2



(1, 3)-элемент также равен 0. В матрице
A
3
G
= A
2
G
· A
G
=



1 1 0 0 1 2 0 1 1 0 1 1 1 0 1 2






0 0 0 1 1 0 1 1 0 1 0 0 1 1 0 0


 =



1 0 1 2 3 1 2 3 1 2 0 1 2 3 0 1



(1, 3)-элемент равен 1, т. е. существует один (1, 3)-маршрут длины 3. Из ри- сунка видно, что этот маршрут определяется набором вершин (1, 4, 2, 3).
Эту последовательность можно найти на основе пере-




S
S



¾
1 2
3 4
Рис. 4.22
множения матрицы смежности: элемент (1, 3) мат- рицы A
3
G
получается при перемножении элемента (1, 2)
матрицы A
2
G
и элемента (2, 3) матрицы A
G
; в свою оче- редь элемент (1, 2) матрицы A
2
G
образуется при пере- множении элемента (1, 4) матрицы A
G
на элемент (4, 2)
матрицы A
G
; следовательно, двигаясь от 1 к 3 за три шага, получаем маршрут (1, 4, 2, 3).
В матрице A
3
G
элемент (4, 2) равен 3, т. е. существует 3 (4, 2)-маршрута длины 3: (4, 1, 4, 2), (4, 2, 4, 2), (4, 2, 3, 2). ¤
Образуем из матрицы (b
ij
) = E + A
G
+ A
2
G
+ . . . + A
n−1
G
матрицу C = (c
ij
)
порядка n по следующему правилу:
c
ij
­
(
1, если b
ij
6= 0,
0, если b
ij
= 0.
Матрица C называется матрицей связности, если G — неорграф, и мат-
рицей достижимости, если G — орграф. В графе G тогда и только тогда существует (a
i
, a
j
)-маршрут (i 6= j), когда c
ij
= 1. Таким образом, в матри- це C содержится информация о существовании связей между различными элементами графа посредством маршрутов. Если G — связный неорграф,
то все элементы матрицы связности C равны единице. В общем случае мат- рица связности неорграфа является матрицей отношения эквивалентности,

4.3. МАРШРУТЫ. ДОСТИЖИМОСТЬ. СВЯЗНОСТЬ
133
соответствующего разбиению множества вершин графа на компоненты связ- ности.
Определим следующим образом
матрицу
контрдостижимости
Q = (q
ij
):
q
ij
­
(
1, если вершина a
i
достижима из вершины a
j
или i = j;
0
в противном случае.
Нетрудно заметить, что если C — матрица достижимости, то Q = C
T
Матрицы достижимости и контрдостижимости C = (c
ij
) и Q = (q
ij
) мож- но использовать для нахождения сильных компонент графа. Рассмотрим матрицу S = C ∗ Q, где операция означает поэлементное произведение матриц C и Q: s
ij
= c
ij
· q
ij
(см. § 1.5). Элемент s
ij
матрицы S равен 1 то- гда и только тогда, когда i = j или вершины a
i
и a
j
взаимно достижимы,
т. е. a
i
достижима из a
j
и a
j
достижима из a
i
. Таким образом, матрица S
является матрицей следующего отношения эквивалентности E:
a
i
E a
j
⇔ a
i
и a
j
находятся в одной сильной компоненте.
Следовательно, сильная компонента, содержащая вершину a
i
, состоит из эле- ментов a
j
, для которых s
ij
= 1.
Пример 4.3.5. Матрицы достижимости C и контрдостижимости Q гра- фа, изображенного на рис. 4.20, имеют вид
C =






1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 1






, Q = C
T
=






1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 1 0 1 1 1 1 1






,
S = C ∗ Q =






1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 1 0 0 0 0 0 1






.
По 2-й строке матрицы S находим, что сильная компонента, содержащая вершину 2, состоит из вершин {1, 2, 3}. ¤

134
Глава 4. ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ
§ 4.4.
Расстояния в графах
Пусть G = hM; Ri — связный неорграф, a, b — две его несовпадаю- щие вершины. Длина кратчайшего (a, b)-маршрута называется расстоянием
между вершинами a и b и обозначается через ρ(a, b). Положим ρ(a, a) ­ 0.
Очевидно, что введенное таким образом расстояние удовлетворяет сле- дующим аксиомам метрики:
• ρ(a, b) > 0;
• ρ(a, b) = 0 ⇔ a = b;
• ρ(b, a) = ρ(a, b) (симметричность);
• ρ(a, b) 6 ρ(a, c) + ρ(c, b) (неравенство треугольника).
Если M = {a
1
, a
2
, . . . , a
n
}, то матрица P = (p
ij
), в которой p
ij
= ρ(a
i
, a
j
),
называется матрицей расстояний. Заметим, что P
T
= P , т. е. матрица P
симметрична.
Для фиксированной вершины a величина
e(a) ­ max(a, b) | b ∈ M}
называется эксцентриситетом вершины a. Таким образом, эксцентриситет вершины равен расстоянию от данной вершины до наиболее удаленной от нее. Если P — матрица расстояний, то эксцентриситет e(a
i
) равен наиболь- шему из чисел, стоящих в i-й строке.
Максимальный среди всех эксцентриситетов вершин называется диамет-
ром графа G и обозначается через d(G):
d(G) ­ max{e(a) | a ∈ M}.
Вершина a называется периферийной, если e(a) = d(G).
Пример 4.4.1. Найдем диаметр графа G, изображенного на рис. 4.23.
Матрица расстояний P имеет вид






0 1 3 1 2 1 0 2 1 1 3 2 0 2 1 1 1 2 0 1 2 1 1 1 0






,
отсюда e(1) = 3, e(2) = 2, e(3) = 3, e(4) = 2, e(5) = 2 и, следовательно,
d(G) = 3. Вершины 1 и 3 являются периферийными. ¤

4.4. РАССТОЯНИЯ В ГРАФАХ
135
Минимальный из эксцентриситетов графа G называется его радиусом
и обозначается через r(G):
r(G) ­ min{e(a) | a ∈ M}.
Вершина a называется центральной, если e(a) = r(G). Множество всех центральных вершин графа называется его центром.
Пример 4.4.2. 1. Радиус графа, показанного на рис. 4.23, равен 2, а его центром является множество {2, 4, 5}.
2. В полном графе K
n
все различные вершины смежны, и поэтому
d(K
n
) = r(K
n
) = 1. ¤
Задача нахождения центральных вершин возника-





¡
¡
¡
¡
¡
¡
@
@
@
1 3
2 4
5
Рис. 4.23
ет в практической деятельности людей. Пусть, например,
граф представляет собой сеть дорог, т. е. вершины соот- ветствуют населенным пунктам, а ребра — дорогам между ними. Требуется оптимально разместить больницы, пунк- ты обслуживания и т. п. В подобных ситуациях оптимиза- ция заключается в минимизации расстояния от места об- служивания до наиболее удаленного населенного пункта.
Следовательно, местами размещения должны быть центральные вершины графа. Реальные задачи отличаются от этой идеальной тем, что приходит- ся учитывать и другие обстоятельства — расстояния между населенными пунктами, стоимость, время проезда и т. д. Для учета этих параметров ис- пользуются взвешенные графы.
Пусть G = hM; Ri — взвешенный граф, в котором вес каждой ду- ги (a, b) есть некоторое вещественное число µ(a, b). Весом маршрута
a
1
, a
2
, . . . , a
n
, a
n+1
называется число µ =
n
P
i=1
µ(a
i
, a
i+1
). Взвешенным рассто-
янием (w-расстоянием) ρ
w
(a, b) между вершинами a и b называется ми- нимальный из весов (a, b)-маршрутов. (a, b)-Маршрут, вес которого равен расстоянию ρ
w
(a, b), называется кратчайшим (a, b)-маршрутом во взвешен- ном графе G. Взвешенным эксцентриситетом e
w
(a) вершины a называется число max
w
(a, b) | b ∈ M}. Взвешенной центральной вершиной графа G
называется вершина a, для которой e
w
(a) = min{e
w
(b) | b ∈ M}. Взвешен- ный эксцентриситет центральной вершины называется взвешенным радиу-
сом графа G и обозначается через r
w
(G).
Пример 4.4.3. Во взвешенном графе G, показанном на рис. 4.8, цен- тральной вершиной является вершина “Новосибирск”, а r
w
(G) = 681. ¤

136
Глава 4. ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ
§ 4.5.
Нахождение кратчайших маршрутов
Пусть G = hM; Ri — взвешенный граф, имеющий n вершин и матрицу весов W = (w
ij
), w
ij
R ∪ {∞}. Опишем некоторые методы нахождения взвешенного расстояния от фиксированной вершины a
i
∈ M (называемой
источником) до всех вершин графа G.
Мы будем предполагать, что в G отсутствуют контуры с отрицательным весом, поскольку, двигаясь по такому контуру достаточное количество раз,
можно получить маршрут, имеющий вес, меньший любого заведомо взятого числа, и тем самым задача нахождения расстояния становится бес- смысленной.
Определим алгоритм Форда—Беллмана. Зададим строку D
(1)
=
= (d
(1)
1
, d
(1)
2
, . . . , d
(1)
n
), полагая d
(1)
i
= 0, d
(1)
j
= w
ij
, i 6= j. В этой строке d
(1)
j
(j 6= i) есть вес w
ij
дуги (a
i
, a
j
), если дуга (a
i
, a
j
) су-



HH
HH
HH
j
©©
©©
©©
*
6
a
i
a
k
a
j
w
kj
d
(1)
k
d
(1)
j
Рис. 4.24
ществует, и d
(1)
j
­ , если (a
i
, a
j
) /
∈ R. Теперь опреде- лим строку D
(2)
= (d
(2)
1
, d
(2)
2
, . . . , d
(2)
n
), полагая d
(2)
j
­
­ min{d
(1)
j
, d
(1)
k
+ w
kj
}
k=1,...,n
. Нетрудно заметить, что
d
(2)
j
— минимальный из весов (a
i
, a
j
)-маршрутов, со- стоящих не более чем из двух дуг (рис. 4.24).
Продолжая процесс, на шаге s определим строку
D
(s)
= (d
(s)
1
, d
(s)
2
, . . . , d
(s)
n
),
полагая
d
(s)
j
­ min{d
(s−1)
j
, d
(s−1)
k
+ w
kj
}
k=1,...,n
Искомая строка w-расстояний получается при s = n−1: d
(n−1)
j
= ρ
w
(a
i
, a
j
).
Действительно, на этом шаге из весов всех (a
i
, a
j
)-маршрутов, содержащих не более n − 1 дуг, выбирается наименьший, а каждый маршрут более чем с n− 1 дугами содержит контур, добавление которого к маршруту не умень- шает w-расстояния, так как мы предположили отсутствие контуров отрица- тельного веса. Работу алгоритма можно завершить на шаге k, если
D
(k)
= D
(k+1)
Пример 4.5.1. Продемонстрируем работу алгоритма Форда—Беллмана на примере взвешенного графа с матрицей весов
W =






0 1
∞ ∞
3

0 3
3 8
∞ ∞
0 1
5
∞ ∞
2 0

∞ ∞ ∞
4 0






,

4.5. НАХОЖДЕНИЕ КРАТЧАЙШИХ МАРШРУТОВ
137
показанного на рис. 4.25. В качестве источника выберем верши- ну 1. Тогда D
(1)
= (0, 1, ∞, ∞, 3), D
(2)
= (0, 1, 4, 4, 3), D
(3)
= (0, 1, 4, 4, −1),
D
(4)
= (0, 1, 4, 3, −1). Таким образом, ρ
w
(1, 1) = 0, ρ
w
(1, 2) = 1, ρ
w
(1, 3) = 4,
ρ
w
(1, 4) = 3, ρ
w
(1, 5) = 1. ¤
Отметим, что, зная расстояние от источника a
i





¡
¡
¡
µ
@
@
@
R
-
-
@
@
@
@
@
@
R
¡
¡
¡
¡
¡
¡
ª
?
6
®
1 2
3 5
4
(1)
(2)
(8)
(4)
(3)
(1)
(3)
(3)
(-5)
Рис. 4.25
до всех остальных вершин графа, можно найти и са- ми кратчайшие (a
i
, a
j
)-маршруты. Действительно,
пусть a
i
, b
1
, b
2
, . . ., b
r
, a
j
— кратчайший (a
i
, a
j
)-марш- рут. Тогда по строке D
(n−1)
вершина b
r
= a
k
1
нахо- дится из соотношения ρ
w
(a
i
, a
j
) = ρ
w
(a
i
, a
k
1
) + w
k
1
j
,
вершина b
r−1
= a
k
2
— из соотношения ρ
w
(a
i
, a
k
1
) =
= ρ
w
(a
i
, a
k
2
) + w
k
2
k
1
и т. д.
Пример 4.5.2. В примере 4.5.1 кратчайший (1, 4)-маршрут определяется следующим образом: ρ
w
(1, 4) = 3 = 1 + 4 = ρ
w
(1, 5) + w
54
, тогда b
r
= 5;
ρ
w
(1, 5) = 1 = 4 5 = ρ
w
(1, 3) + w
35
, откуда b
r−1
= 3; ρ
w
(1, 3) = 4 =
= 1 + 3 = w
12
+ w
23
, следовательно, b
1   ...   16   17   18   19   20   21   22   23   ...   36


написать администратору сайта