Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Элементы теория графов и комбинаторики. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Непосредственное использование алгоритма раскраски графа (предлагаем осуществить самостоятельно) приводит к выводу о том, что достаточно четырех цветов, то есть χ(G) = 4.
8.5. Раскраска планарных графов
Одна из самых известных проблем теории графов – задача о четырех красках: достаточно ли четырех красок для такой рас­краски произвольной географической карты, при которой любые две соседние страны окрашены в различные цвета?
Осуществим формализацию задачи в терминах теории графов.
Определение 8.7. Связный плоский мультиграф без мостов
называется
картой.
Поскольку карта представляет собой плоский граф, к нему легко применить понятие грани графа, которое в случае задачи о раскраске становится главным. То есть, в отличие от предыдущих параграфов, где «раскрашивались» вершины, в данной задаче будут «раскрашиваться» грани плоского графа.
Определение 8.8. Смежными называются грани карты, име-
ющие общее ребро.
Определение 8.9. Произвольная функция ƒ вида
f : Г →{1, 2, ..., k}, ставящая в соответствие каждой грани Г карты натуральное число (от 1 до k), называется
k-раскраской, если цвета смежных граней
различны.
Определение 8.10. Карта называется k-раскрашиваемой, если
для нее существует k-раскраска.
В 1879 г. была опубликована статья, посвященная проблеме раскраски карт, в которой А. Кэли сформулировал гипотезу четы­рех красок.
Гипотеза четырех красок:
всякая карта 4-раскрашиваема.
Можно сформулировать гипотезу следующим образом: всякий планарный граф 4-раскрашиваемый.
Продемонстрируем, как связаны между собой раскраска карты и вершинная раскраска графа. Для этого ввести понятие геометри­чески двойственного графа.
Определение 8.11. Двойственным графом G* к планарному
графу G назовем граф, в котором вершины G* соответствуют гра-
71
ням графа G; эти вершины соединены ребром, только если соответ­ствующие им грани графа имеют общее ребро.
Термин двойственный используется потому, что это свойство
*
симметрично – если G
двойственен G, то G двойственен G*, если
G – связный граф.
Двойственный граф может быть и мультиграфом, то есть
иметь и петли, и кратные ребра.
На рис. 8.8 приведена схема построения двойственного графа.
а) б) в)
Рис. 8.8
Для этого внутри каждой грани графа G выбирается по одной
точке – это вершины будущего графа G*. Каждому ребру е
∈ EG
ставится в соответствие жорданова кривая е*, которая пересекает лишь одно ребро е графа G и соединяет вершины, лежащие в гра­нях, границы которых содержат ребро е. Очевидно, таких граней может быть две или одна. Кривые е* – ребра графа G*. Ребра графа G* можно провести так, чтобы они не пересекались. На рисунке сплошной линией изображен граф G (рис. 8.8, а), а пунктирной – граф G* (рис. 8.8, в).
Отметим, что петлю в G* порождает всякий мост в G, а крат­ные ребра появляются в G* тогда и только тогда, когда две грани графа G имеют более одного общего ребра.
Ввиду двойственности, для любого результата, использующе­го число граней и вершин, можно обменять эти величины.
Следующая теорема устанавливает взаимосвязь между вер­шинной раскраской и раскраской карты через геометрически двой­ственные графы.
72
Теорема 8.4. Карта G является k-раскрашиваемой тогда
и только тогда, когда геометрически двойственный граф G* вер­шинно k-раскрашиваем.
Пример 8.8. Найти вершинную раскраску графа (см. рис. 8.8, а)
и раскраску карты (см. рис. 8.8, в). Показать, что величина k одина­кова для обоих раскрасок.
Решение. Для вершинной раскраски достаточно трех цветов.
То же самое можно сказать и о раскраске карты, k = 3.
73
Глава 9. ОБХОДЫ
9.1. Эйлеровы графы
В этом параграфе мы вернемся к задаче Эйлера о кенигсбер­ских мостах, с которой начиналась теория графов, и, наряду с обыкновенными графами, будем рассматривать мультиграфы.
Итак, карту города Кенигсберга (рис. 9.1) изобразим вначале в упрощенном виде, а затем, полагая мосты ребрами графа, а участ­ки суши – вершинами его, в виде мультиграфа.
Рис. 9.1
Вопрос, поставленный Эйлером, в терминах теории графов звучит так – существует ли в мультиграфе G цикл, содержащий все ребра этого мультиграфа?
Эйлером была доказана неразрешимость задачи о кенигсберг­ских мостах. В общей постановке ученый задался вопросом – при каких условиях связный граф содержит цикл, проходящий через каждое его ребро.
Определение 9.1. Цикл в графе называется эйлеровым, если
он содержит все ребра графа.
Определение 9.2. Связный граф, в котором есть эйлеров
цикл, называется
эйлеровым графом.
В эйлеровом графе может быть не один эйлеров цикл. Ясно, что любые два таких цикла отличаются друг от друга только поряд­ком обхода ребер.
Теорема 9.1. Связный граф является эйлеровым тогда и толь-
ко тогда, когда степени всех его вершин четны.
74
Эту теорему доказал в 1736 году Леонард Эйлер, обосновав тем самым неразрешимость задачи о кенигсбергских мостах. Дей­ствительно, все четыре вершины графа имеют нечетную степень (степенная последовательность – 3, 3, 3, 3).
Естественно возникает вопрос – как найти хотя бы один эйле- ров цикл в эйлеровом графе G. Сформулируем его иначе – как за­нумеровать ребра графа числами 1, 2, ..., m так, чтобы номер ребра показывал, каким по счету это ребро проходится в эйлеровом цик­ле? На этот вопрос дает ответ
алгоритм Флери, содержащий
два шага:
1. Начинаем с произвольной вершины и, присваиваем произ- вольному ребру uv номер 1. Затем вычеркиваем ребро иv и перехо­дим в вершину v.
2. Пусть w – вершина, в которую мы пришли в результате вы­полнения предыдущего шага, и j – номер, присвоенный некоторому ребру на этом шаге. Выбираем любое ребро, инцидентное вершине w, причем мост выбираем только в том случае, когда нет других возможностей; присваиваем выбранному ребру номер (j +1) и вы­черкиваем его.
Этот процесс заканчивается, когда все ребра графа вычеркну-
ты, то есть занумерованы.
К сожалению, с эйлеровыми графами дела обстоят так же «немногочисленно», как с планарными (см. утверждение 6.2). В 1962 году была доказана теорема.
Теорема 9.2. Почти нет эйлеровых графов.
Большой интерес представляют собой родственные задачи, связанные с наличием эйлерова цикла в неориентированном графе. Примером тому может служить задача китайского почтальона.
9.2. Гамильтоновы графы
Классической задачей для данного раздела будет задача ком­мивояжера, или задача о нахождении гамильтонова цикла в графе. Если в случае эйлеровых графов нас интересовали ребра, то теперь вопрос стоит в вершинах графа.
Определение 9.3. Простой цикл в графе называется гамиль­тоновым
, если он содержит все вершины графа.
Определение 9.4. Связный граф, в котором есть гамильтонов
цикл, называется
гамильтоновым графом.
75
Название графа связано с именем математика У. Гамильтона, который в 1859 году предложил игру «Кругосветное путешествие» со следующими условиями. Есть додекаэдр (рис. 9.2).
Каждой их двадцати вершин многогранника приписано название одного из крупных городов мира. Требуется, переходя от одного го­рода к другому по ребрам додека­эдра, посетить каждый город ровно один раз и вернуться в исходный
.
Рис. 9.2
пункт отправления. Очевидно, это задача об отыскании простого цик­ла, проходящего через каждую вершину графа.
Чтобы сделать задачу более интересной, порядок прохожде-
ния городов устанавливался заранее.
Гамильтону пришлось самому переходить к планарному графу – в первоначальной версии игры в каждую «пройденную» вершину додекаэдра вбивался гвоздь. Проделанный путешественником путь отмечался веревкой, которая обматывалась вокруг гвоздя. Но такая конструкция оказалась слишком громоздкой, и Гамильтон предло­жил новый вариант игры, заменив додекаэдр изоморфным плоским графом.
Поскольку додекаэдр – один из пяти правильных многоранни­ков (или платоновых тел) и может быть «уложен на сфере», ему со­ответствует планарный граф (рис. 9.3).
На рисунке представлено ре­шение задачи в виде выделенного гамильтонова цикла.
Если задаваться вопросом о том, каков должен быть граф, чтобы «быть гамильтоновым», можно предположить, что чем больше граф содержит ребер, и они распределены «достаточно равно­мерно», тем «больше у него шансов быть гамильтоновым». Следующие
Рис. 9.3
теоремы являются своего рода под­тверждением такого предположения.
76
Теорема 9.3. Граф со степенной последовательностью
≤ d2 ≤ …≤ d
d
1
n
является гамилътоновым, если для всякого k, удовлетворяющего неравенствам
1 ≤ k < п / 2,
истинна импликация
≤ k => d
d
k
≤ n – k .
n – k
Теорема 9.4. Если для любой пары и и v несмежных вершин
графа G порядка п ≥ 3 выполняется неравенство
deg и + deg v ≥ n,
то G – гамильтонов граф.
Теорема 9.5.
Если n > 3 и для любой вершины v графа G вы-
полняется неравенство
deg v > n / 2,
то G – гамильтонов граф.
В качестве примера читателям предлагается рассмотреть граф, представленный на рис. 9.4, и проверить, является ли он гамильто­новым, используя утверждения теорем 9.3–9.5.
Рис. 9.4
Задача коммивояжера, так же, как и задача китайского почта­льона, формулируется для класса взвешенных графов. Она состоит в следующем: коммивояжер должен посетить каждый из заданных п городов по одному разу, выехав из некоторого из этих городов и вернувшись в него же. Требуется найти кратчайший маршрут, зная расстояния между всеми городами.
77
Математическая постановка задачи коммивояжера – в полном взвешенном графе найти гамильтонов цикл минимального веса, где под весом цикла понимается сумма весов составляющих его ребер.
В завершение приведем одну, придающую оптимизм (по сравнению с планарными и эйлеровыми графами, которых «почти нет»), теорему.
Теорема 9.6. Почти все графы гамильтоновы.
78
Задания для самостоятельной работы
1.1. Дано множество S и подмножества S
. Найти матрицу ин-
j
цидентности, если
S = { f, g, 2, 5, 9, d, 3},
= {g, 2, d, 3},
S
1
= {5, 2, 3},
S
2
= {g, f, d}.
S
3
1.2. Дано множество S:
S = {6, – 3, – 2, 0, 4, 1, 5}.
Найти матрицу попарных сравнений.
Нарисовать (n, m) граф, где n = 9, m = 20:
2.1.
а) односвязный; б) двусвязный.
Для односвязного графа из пункта 2.1 найти:
2.2.
а) цикл длины 4; б) простую цепь длины 5; в) маршрут, не являющийся цепью.
Дана пара (V, E):
2.3.
V = {1, 2, 3, 4, 5, 6},
Е ={{1, 2}, {1, 3}, {1, 4}, {3, 6},{3, 5}, {2, 6}, {5, 4}}. Построить граф G = (V, E).
Нарисовать односвязный (n, m) граф, содержащий K
2.4.
при n = 7, m = 15. Построить колоду графа.
2.5. Найти степенную последовательность графа из 2.4.
2.6. Задана степенная последовательность. По степенной по-
следовательности нарисовать граф:
а) 1, 1, 2, 2, 3, 3, 4; б) 0, 1, 3, 2, 5, 3, 3, 2, 0, 1.
3,3
,
79
2.7. В компании из q человек каждый знаком с двумя и только
с двумя другими. Нарисуйте соответствующие графы знакомств. Обязательно ли этот граф связен? Сколько решений имеет задача?
Нарисовать (n, m) граф, где n = 5, m = 7.
3.1.
Построить матрицы: смежности, инцидентности, Кирхгофа.
3.2. Нарисовать произвольный (4, 4) граф. Вычислить ранг
матрицы, построить характеристический полином. Найти спектр графа.
3.3. Задана матрица
1010
 
A
 
 
0101
.
0010
 
0001
Необходимо:
а) нарисовать граф с заданной матрицей смежности;
2
б) вычислить степени А
, А3, А4 матрицы смежности А;
в) найти степени вершин графа по каждой из матриц: по мат-
2
рице А и по матрице А
г) определить по матрице А
;
3
число треугольников с вершиной
в каждой из вершин графа.
4.1. Построить односвязный (8, 22) граф, содержащий K
. Вы-
4
числить радиус, диаметр, определить центральные вершины.
Построить односвязный (n, m) граф, где n = 10, m = 22.
5.1.
Найти цикломатическое число графа.
5.2. Построить остовный подграф для графа из задания 5.1.
Нарисовать односвязный планарный (n, m) граф для n = 7,
6.1.
выбирая m произвольно. Найти количество граней. Проверить вы­полнение формула Эйлера для графа.
80
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]