-
Задачи теории графов
Геометрический граф в пространстве n (Эвклидово пространство) – это множество V={vi} точек пространства n и множество Е={ek} простых кривых удовлетворяющих следующим условиям.
1)Каждая замкнутая прямая из множества Е содержит только одну точку v множества V;
2)Каждая незамкнутая прямая из множества Е содержит только 2 точки v из множества V, которые являются ее границами.
3)Кривые Е не имеют общих точек за исключением точек из множества V
Граф – это совокупность не пустого множества V, изолированного от него множества Е и отображения : ЕVV.
Если граф не имеет ребер, он называется вырожденным. Если множества Е и V конечные, то граф называется конечным.
-
Формализованное задание графа
Граф задается на множестве вершин V и множестве ребер Е. Наиболее простое описание графа – составление таблицы соответствия ребер и вершин.
Для удобства описания графа часто используют матрицы инциденций, смежности, циклов, разрезов и путей.
1.1.1 Описание графа с помощью таблицы
-
E
e1
e2
e3
e4
e5
e6
e7
e8
e9
V
v1, v2
v1, v3
v2, v3
v2, v4
v2, v5
v3, v5
v4, v5
v4, v6
v5, v6
1.1.2 Описание графа с помощью фактор – множества
1.1.3 Описание графа с помощью матрицы инциденций
Для графа G, имеющего n вершин и m ребер матрица инциденций имеет размерность n x m. Строки этой матрицы соответствуют вершинам, а столбцы – ребрам графа. Элемент аij=1, если j-ое ребро инцидентно i-ой вершине и аij=0 в противном случае.
Для графа на рис.1.1 матрица инциденций имеет вид:
1.1.4 Описание графа с помощью матрицы смежности вершин
Для графа G, имеющего n вершин матрица смежности вершин имеет размерность n x n. Элемент vij этой матрицы равен числу ребер, инцидентных одновременно i-ой и j-ой вершинам графа.
Для графа на рис.1.1 матрица смежности вершин имеет вид:
1.1.5 Описание графа с помощью матрицы циклов
Для графа G, имеющего n вершин и m ребер, матрица циклов имеет размерность к x m, где к – число циклов в графе. Элемент этой матрицы сij=1, если j-ое ребро входит в i-ый цикл и сij=0 в противном случае.
Рис.
1.2 – Изображение возможных циклов графа
G
Для графа на рис.1.2 матрица циклов имеет вид:
1.1.6 Описание графа с помощью матрицы разрезов
Если задан связный граф G=(V, E) и множество его вершин разбито на два непустых подмножества W и W/, то множество ребер, соединяющих W с W/ называют разрезом. Простым называют разрез, разбивающий связный граф только на две компоненты связности. С использованием простых разрезов можно построить матрицу разрезов графа. Для графа G, имеющего n вершин и m ребер, матрица разрезов имеет размерность l x m, где l – число разрезов на графе. Элемент этой матрицы кij=1, если j-ое ребро входит в i-ый разрез и кij=0 в противном случае.
Для графа на рис.1.3 матрица разрезов имеет вид:
1.1.7 Описание графа с помощью матрицы путей
Выбрав в связном графе начальную (v1) и конечную (v2) вершину, для него можно составить матрицу путей (матрицу цепей). Строки этой матрицы соответствуют цепям между вершинами v1 и v2, а столбцы соответствуют ребрам графа. Элемент матрицы рij=1, если j-ое ребро принадлежит i-ой цепи и рij=0 в противном случае.
Для графа на рис.1.1 матрица путей имеет вид:
1.1 Числовые характеристики графа
1.2.1 Степени всех вершин графа
Число ребер неориентированного графа инцидентных вершине v, называется степенью вершины v и обозначается (v).
Степени всех вершин графа на рис.1.1:
(v1)=2
(v2)=4
(v3)=3
(v4)=3
(v5)=4
(v6)=2
1.2.2 Вершинная и реберная связность графа
Минимальное число вершин (ребер), удаление которых делает граф несвязным, называется вершинной (G) (реберной (G)) связностью графа G.
Вершинная и реберная связность графа на рис.1.1:
(G)=2
(G)=2
1.2.3 Цикломатическое число графа
Пусть G=(V, E) – неориентированный граф, имеющий n вершин, m ребер и r компонент связности. Цикломатическим числом графа G называют число (G)=m – n + r. Цикломатическое число равно наибольшему числу независимых циклов в графе.
Цикломатическое число графа на рис.1.1:
(G)=9 – 6 + 1 = 4
1.2.4 Вершинное и реберное числа независимости
Множество SV графа G = (V, Г) называют внутренне устойчивым, если никакие две вершины из S не смежны, т.е. для любого хS имеет место ГхS.
Множество внутренней устойчивости, содержащее наибольшее число элементов, называют наибольшим внутренне устойчивым множеством, а число элементов этого множества – числом внутренней устойчивости 0(G) графа G (это число называют также вершинным числом независимости графа).
Два ребра графа называют смежными, если они инцидентны одной и той же вершине. Максимальное число попарно несмежных ребер графа называется его реберным числом независимости 1(G).
Вершинное и реберное числа независимости графа на рис.1.1:
0(G)=2
1(G)=3
1.2.5 Числа вершинного и реберного покрытий графа
Если ребро графа инцидентно его вершине, то говорят, что они покрывают друг друга. Множество вершин, покрывающих все ребра графа, называют вершинным покрытием графа G, а минимальную мощность этого множества - числом вершинного покрытия графа 0(G). Аналогично, множество ребер, покрывающих все вершины графа, называют реберным покрытием графа G, а минимальную мощность этого множества – числом реберного покрытия графа 1(G).
Числа вершинного и реберного покрытий графа на рис.1.1:
0(G)=4
1(G)=3
1.2.6 Вершинное и реберное число внешней устойчивости графа
Множество ТV графа G=(V, Г) называют внешне устойчивым, если любая вершина, не принадлежащая Т, соединена ребрами с вершинами из Т, т.е. для любого хТ имеет место ГхТ.
Множество внешней устойчивости, содержащее наименьшее число элементов, называется наименьшим внешне устойчивым множеством, а число элементов этого множества – вершинным числом внешней устойчивости 0(G) графа G.
Минимальная мощность множества ребер, покрывающих все ребра графа, называется реберным числом внешней устойчивости 1(G) графа G.
Вершинное и реберное числа внешней устойчивости графа на рис.1.1:
0(G)=2
1(G)=2
1.2.7 Радиус и диаметр графа
Для фиксированной вершины v целое число R(v)=max d(v, w), wV соответствует расстоянию от v до наиболее удаленной вершины.
Радиус R0= min R(v)= R(v0), vV, вершину v0 считают центром графа.
Диаметром связного графа называется максимальное расстояние между парами вершин.
Найдем радиус для графа на рис.1.4, считая v2 – центром графа:
R0=6
Найдем диаметр графа на рис.1.4:
(между парами вершин v1 и v6)
T=15
1.3 Задача коммивояжера
Постановка задачи: коммивояжер должен посетить по одному разу каж дый из n городов (каждая пара городов связана с дорогой) и вернуться в исходный город. При этом он должен выбрать кратчайший маршрут.
Решение:
Вершина V1 обладает минимальной степенью = 2, следовательно, числовозможных подграфов (Gi) для нахождения гамильтоновых циклов С22=1. Он имеет вид такой же, как и заданный граф.
Рассмотрим подграф G1. Жирные ребра соответствуют ребрам искомого гамильтонова цикла. В скобках у вершины отмечаем число ребер оставшихся для исследования.
Длина цикла С6=4+5+6+3+3+8=29
Рассмотрим альтернативу:
Вершина V2 повторяется, значит, эта цепь не является частью гамильтонова цикла и отбрасывается. Дальнейшие построения не эффективны.
То есть кратчайшим гамильтоновым циклом графа G является цикл длинной 29.