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

nbbzibd0Bw

.pdf
Скачиваний:
3
Добавлен:
15.04.2023
Размер:
958.19 Кб
Скачать

Следствие 3. В любом планарном графе F = (V, E) найдется вершина, степень которой не больше 5.

Предположим, что таких вершин нет, т.е. степень каждой вершины не менее 6. По лемме о рукопожатиях имеем:

2m = våVρ (v) ³ 6n, т.е. m ³ 3n, что противоречит соотношению (16.4).

Критерий Понтрягина Куратовского

Графы K5 и K3,3 играют особую роль в теории планарных графов, т.к. именно они задействованы в критерии, характеризующем планарные графы. Этот критерий был предложен в 30-х гг. прошлого столетия русским математиком Понтрягиным и польским математиком Куратовским.

Операция стягивания ребра e = (u, w) в точку состоит в удалении ребра е из множества Е и в объединении (склеивании) инцидентных ребру е вершин в одну вершину.

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

Пример. Доказать, что графы F и F*, изображённые на рисунках 16.4, а и 16.4, б, гомеоморфные.

Рисунок 16.4. – Гомеоморфные графы.

Доказательство. Рассуждаем следующим образом:

1.в графе F проходную вершину 1 удаляем, а рёбра (1, 2) и (1, 4) заменяем ребром (2, 4); получаем граф F1;

2.в графе F1 проходную вершину 4 удаляем, рёбра (4, 2) и (4, 3) тоже удаляем, т.к. ребро (2, 3) уже существует; получаем граф F2;

3.в графе F2 проходную вершину 6 удаляем, а рёбра (6, 5) и (6, 7) заменяем ребром (5, 7); получаем граф F3;

91

4.в графе F3 проходную вершину 10 удаляем, а рёбра (10, 5) и (10, 9) заменяем ребром (5, 9); получаем граф F4;

5.в графе F4 проходную вершину 11 удаляем, а рёбра (11, 3) и (11, 9) заменяем ребром (3, 9); получаем граф F5;

6.в графе F5 проходную вершину 12 удаляем, а рёбра (12, 2) и (12, 5) заменяем ребром (2, 5); получаем граф F6 (рисунок 16.4, в).

Очевидно, что граф F6 изоморфен графу F*, следовательно, графы F

иF* гомеоморфные.

Доказано, что если два графа гомеоморфные и один из них планарный, то и второй планарный. Аналогично, если два графа гомеоморфные и один из них не является планарным, то и второй не является планарным.

Теорема Понтрягина – Куратовского. Граф F = (V, E) является планарным тогда и только тогда, когда он не содержит подграфов, гомеоморф-

ных графам K5 и K3,3.

Доказательство этой теоремы здесь не приводится ввиду его сложно-

сти.

Пример. Доказать, что граф Петерсона (рисунок 16.5) не является планарным.

Рисунок 16.5. Граф Петерсона.

Доказательство. Стягивая рёбра (1, 6), (2, 7), (3, 8), (4, 9), (5, 10), получаем граф K5. Остаётся применить критерий Понтрягина-Куратовского.

Задания для самостоятельной работы

1. Уложив графы на плоскость,

92

а) доказать, что они планарные, б) проверить для них формулу Эйлера.

а

б

2.Существует ли граф с 4 вершинами, не являющийся планарным?

3.Неориентированный граф задан матрицей смежности. Является ли он планарным?

 

а

 

 

 

 

 

 

 

 

 

б

 

 

 

 

 

 

 

 

0

1

0

0

1

1

0

0

0

0

0

1

0

0

1

1

0

0

0

0

1

0

1

0

0

0

1

0

0

0

1

0

1

0

0

0

1

0

0

0

0

1

0

1

0

0

0

1

0

0

0

1

0

1

0

0

0

1

0

0

0

0

1

0

1

0

0

0

1

0

0

0

1

0

1

0

0

0

1

0

1

0

0

1

0

0

0

0

0

1

1

0

0

1

0

0

0

0

0

1

1

0

0

0

0

0

0

1

1

0

1

0

0

0

0

0

1

0

0

1

0

1

0

0

0

0

0

1

0

1

0

1

0

0

0

1

0

0

1

0

0

0

1

0

0

1

1

0

0

0

0

0

1

0

0

0

0

0

1

1

0

0

0

1

0

1

0

0

0

1

0

0

0

1

0

0

1

1

0

0

0

0

0

0

1

0

1

0

1

0

0

0

0

0

1

1

0

1

0

0

4.Проверить формулу Эйлера для графа, образованного 8×8 квадратными полями шахматной доски. Обобщить результат на случай доски l×l.

5.Привести пример такого графа F с 8 вершинами, что графы F и F одновременно планарные.

6.Доказать, что в графе F с не менее чем 11 вершинами F и F не могут быть планарные одновременно.

7.Доказать, что в графе F с не менее чем 9 вершинами F и F не могут быть планарные одновременно.

Контрольные вопросы

1.Какой граф называется планарным?

2.Что представляет собой плоский граф?

93

3.Сформулируйте теорему Эйлера.

4.Запишите формулу, которая, в соответствии с теоремой Эйлера, связывает количество вершин n, рёбер m и граней r плоского графа.

5.Являются ли планарными графы K5 и K3,3?

6.Какие графы называются гомеоморфными?

7.Сформулируйте критерий Понтрягина-Кратовского.

8.Является ли планарным граф Петерсона?

§ 17. Раскраска графов

Задача. Имеется географическая карта, на которой каждая страна состоит из одной связной области. Смежными называются страны, которые имеют общую границу в виде линии (а не просто одной общей точки). Требуется раскрасить карту, используя наименьшее количество красок, так, чтобы никакие две смежные страны не были одного и того же цвета.

Каждая карта порождает граф, в котором странам ставятся в соответствие вершины, причем две вершины соединяются ребром, если соответствующие им страны смежные. Ясно, что такой граф будет плоским. Таким образом, в терминах теории графов, нужно раскрасить вершины графа так, чтобы никакие две смежные вершины не были окрашены в одинаковый цвет.

Пример. На рисунке 17.1, а условно изображён участок географической карты, содержащий пять различных стран. На рисунке 17.1, б представлен соответствующий этой карте граф.

Рисунок 17.1.

Раскраской графа называется такое приписывание цветов его вершинам, что никакие две смежные вершины не получают одинакового цвета. В k-раскраске графа используется k цветов.

94

Хроматическое число χ(F) графа F определяется как наименьшее k, для которого граф имеет k-раскраску.

Очевидно, что χ(F) = 1, если все вершины графа F изолированные. Примеры. Определить хроматическое число

а) графа F, представленного на рисунке 17.1, б; б) полного графа на n вершинах Kn, n > 1;

в) полного двудольного графа Kn1, n2.

Решение.

a) Для раскраски графа F достаточно трёх красок: например, для вершин 1 и 4 можно использовать краску № 1, для вершин 2 и 3 – краску № 2, для вершины 5 – краску № 3, т.е.

χ(F) = 3.

б) Каждую из вершин полного графа необходимо покрасить в отдельный цвет, т.е.

χ(Kn) = n.

в) Для раскраски любого двудольного графа, в том числе и Kn1, n2, достаточно двух красок, а именно: краску № 1 надо использовать для вер-

шин, принадлежащих множеству V1, а краску № 2 для вершин, принадлежащих множеству V2, т.е.

χ(Kn1, n2) = 2.

Теорема (о пяти красках). Всякий планарный граф F = (V, E) можно раскрасить в пять цветов.

Пусть граф F имеет n вершин и m рёбер. Доказывать теорему будем методом математической индукции по количеству вершин.

При n ≤ 5, очевидно, что теорема верна.

Предположим, что теорема верна при n = p > 5.

Докажем, что она верна и при n = p + 1.

По третьему следствию из теоремы Эйлера в графе F найдется вершина v, степень которой не больше 5. Рассмотрим граф F*, который получается из графа F удалением этой вершины (и всех инцидентных ей рёбер). По предположению, граф F* можно раскрасить пятью красками. Осталось правильно раскрасить вершину v.

Если некоторый цвет с не используется в раскраске вершин, смежных с вершиной v, то, приписав цвет с вершине v, получим 5-раскраску графа F.

Рассмотрим случай, когда ρ (v) = 5 и все пять красок использованы для вершин, смежных с v (схематически эта ситуация представлена на рисунке 17.2).

95

Обозначим F13 - правильный подграф графа F*, порожденный всеми вершинами, покрашенными в цвета 1 или 3 в 5-раскрас- ке графа F*.

Если вершины v1 и v3 принадлежат разным компонентам связности графа F13, то в той компоненте, в которой находится v1, произведем перекраску 1 3. Цвет вер-

Рисунок 17.2. шины v1 освободится для v.

Если же вершины v1 и v3 принадлежат одной компоненте связности графа F13, то существует простая цепь, соединяющая v1 и v3 и состоящая из вершин, покрашенных в цвета 1 и 3. В этом случае v2 и v4 принадлежат разным компонентам связности подграфа F24 (так как F − планарный). Перекрасим вершины 2 4 в той компоненте связности графа F24, которой принадлежит вершина v2, в результате чего получим 5-раскраску графа F*, в которой цвет вершины v2 освободился для покраски вершины v.

Гипотеза четырёх красок: всякий планарный граф можно раскрасить в четыре цвета.

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

Задания для самостоятельной работы

1.Определить хроматические числа графов

а) K5 (см. рисунок 16.3, а); б) K3,3 (см. рисунок 16.3, б);

в) графа Петерсона (см. рисунок 16.5).

2.Определить хроматическое число связного однородного графа степени 2 с n вершинами.

3.Определить хроматическое число графа, полученного из полного n-вер- шинного графа удалением:

а) одного ребра; б) двух рёбер;

в) трёх рёбер, составляющих треугольник.

4.Доказать, что хроматическое число любого n-вершинного дерева (n ³ 2) равно 2.

5.Доказать, что граф 2-хроматический тогда и только тогда, когда каждый его цикл имеет чётную длину.

96

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

7. Доказать, что хроматическое число χ(F) графа F не превышает 1 + (F), где (F) − максимальная из степеней вершин.

Контрольные вопросы

1.Что понимается под правильной раскраской вершин графа?

2.Что такое хроматическое число графа?

3.Чему равно хроматическое число полного графа на n вершинах?

4.Чему равно хроматическое число двудольного графа?

5.Сформулируйте теорему о пяти красках.

6.В чём заключается гипотеза четырёх красок?

§ 18. Нахождение кратчайших путей

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

п. 18.1. Постановка задачи

Пусть F = (V, E) − нагруженный ориентированный граф с множе-

ством вершин V = {1, 2,..., n}, каждой дуге (i, j) E которого приписан неотрицательный вес cij ≥ 0 (как правило, в единицах времени, денег или расстояния). Величину cii считают равной нулю: cii = 0 при i = 1, 2,..., n.

Если пара (i, j) E, т.е. в графе F нет дуги (i, j) (при i j), то вес отсутствующей дуги полагают равным бесконечности: cij = ∞.

Требуется определить кратчайший путь между двумя заданными вершинами (l, k) (l k), если под длиной пути понимается сумма весов входящих в него рёбер.

В общем случае, если существует путь из вершины l в вершину k , то он не обязательно единственный.

Под расстоянием dlk от вершины l до вершины k будем понимать длину кратчайшего пути из l в k.

Пример. В графе, изображённом на рисунке 18.1, существует три различных пути, соединяющих вершину 1 с вершиной 4:

путь P1: (1, 2), (2, 4), длина которого равна 10 + 80 = 90;

путь P2: (1, 2), (2, 3), (3, 4), длина которого равна 10 + 30 + 45 = 85;

путь P3: (1, 2), (2, 3), (3, 5), (5, 4), длина которого равна

97

10 + 30 + 20 + 15 = 75.

Следовательно, кратчайшим является путь P3, а расстояние между вершинами 1 и 4 составляет: d14 = 75.

Рисунок 18.1.

В данном простом примере мы определили кратчайший путь методом полного перебора; на практике, для графов с сотнями вершин и тысячами рёбер, такой метод, разумеется, не приемлем.

Рассмотрение задачи нахождения кратчайших путей начнём с решения вспомогательной задачи – задачи нахождения расстояний от верши- ны-источника до остальных вершин. Для определённости будем полагать, что вершина-источник имеет номер 1. Тогда искомое расстояние d1j до вершины j (j = 2, 3, ..., n) будем обозначать dj, опуская первый индекс «1». Расстояние от вершины-источника до неё самой равно нулю: d1 = 0.

п. 18.2. Метод Дейкстры

Решать задачу нахождения расстояний от вершины-источника до остальных вершин будем методом, который предложил нидерландский учёный Э́дсгер Ви́бе Де́йкстра (Edsger Wybe Dijkstra).

Пусть ориентированный граф F = (V, E) задан списками достижимости (см. § 6). Обозначим M – множество тех вершин, расстояния до которых уже известны.

Первоначально в M содержится только вершина-источник: M = {1}, которая на данный момент является базовой. Всем вершинам j, содержащимся в списке достижимости L1 вершины 1, приписывается начальная оценка kj, равная весу дуги (1, j), т.е.

kj = c1j для всех вершин j L1. Остальные вершины получают оценку ∞.

На каждом шаге из множества V\M выбирают вершину i, имеющую минимальную оценку ki. Эту вершину

переносят во множество M,

исключают из дальнейшего рассмотрения,

98

делают базовой, т.е. теперь из неё, удаляясь на одно ребро, пытаются добраться до остальных вершин, пересчитывая их оценки по формуле:

kj = min {kj, ki + cij}, j Li.

(18.1)

Другими словами, пересчёт оценок производится для всех тех вершин j, которые содержатся в списке достижимости Li вершины i.

Оценка ki базовой вершины i больше не меняется, т.к. представляет собой искомое расстояние до этой вершины: di = ki.

Процесс завершается, когда все вершины графа окажутся во множестве M.

Пример. Методом Дейкстры найти расстояния от вершины-источни- ка «1» до остальных вершин в графе, представленном на рисунке 18.2.

Рисунок 18.2.

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

Но сначала выпишем списки достижимости (см. § 6) данного ориентированного графа:

L1: 3, 6;

L2: 3;

L3: 4,

5,

7;

L4: 5;

L5: 6;

L6: 7;

L7: 1,

4,

5, 6.

 

Шаг 1. Вершину-источник «1» помещаем во множество M = {1} и делаем её базовой, т.е., удаляясь от неё на одно ребро, пытаемся добраться до остальных вершин. Список достижимости L1 базовой вершины 1 содержит вершины 3 и 6, соответственно, вершина 3 получает оценку

k3 = c13 = 20,

а вершина 6 получает оценку

k6 = c16 = 115.

99

Оценки остальных вершин пока равны бесконечности. Все оценки помещаем в таблицу:

 

Оценки расстояний до вершин

 

Расстояния

2

3

4

5

6

7

 

20

115

 

Вершину 3 с минимальной оценкой 20

переносим во множество M = {1, 3},

исключаем из дальнейшего рассмотрения,

делаем базовой, т.е. теперь из неё, удаляясь на одно ребро, пы-

таемся добраться до остальных вершин.

Оценку вершины 3 переносим в последний столбец: d3 = k3 = 20.

 

Оценки расстояний до вершин

 

Расстояния

2

3

4

5

6

7

d3 = 20

20

115

Шаг 2. Список достижимости L3 базовой вершины 3 содержит вершины 4, 5 и 7. Пытаемся улучшить оценки этих вершин по формуле:

kj = min {kj, d3 + c3j}, j = 4, 5, 7.

Имеем

k4 = min {k4, d3 + c34} = min {∞, 20 + 60} = 80; k5 = min { k5, d3 + c35} = min {∞, 20 + 80} = 100; k7 = min {k7, d3 + c37} = min {∞, 20 + 10} = 30.

Оценки вершин 2 и 6 не меняются.

 

Оценки расстояний до вершин

 

Расстояния

2

3

4

5

6

7

d3 = 20

20

115

80

100

115

30

 

 

 

 

 

 

 

Вершину 7 с минимальной оценкой 30

переносим во множество M = {1, 3, 7},

исключаем из дальнейшего рассмотрения,

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

Оценку вершины 7 переносим в последний столбец: d7 = k7 = 30.

100

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]