Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теория и практика построения и применения сетей и графов. Учебное пособие
.pdf
1.1. Графы как модели
21
объединением его компонентов. Например, несвязный граф объединения
цикла из 4-х вершин (С4) и пути из трёх вершин (Р3) состоит из двух компонент: C4 и P3.
Многие параметры графа можно определить, вычислив их по каждому компоненту, а затем взяв максимум, минимум или сумму. Например,
размер графа – это сумма размеров его компонентов, а максимальная степень графа – это максимальная из максимальных степеней его компонент.
Когда граф связный, мы хотели бы знать, как далеко друг от друга находятся его вершины.
Определение. Расстоянием между вершинами u и v называется величина d(u,v), равная длине кратчайшего (u-v)-пути. Если u и v находятся в
разных компонентах, мы говорим, что d(u,v) = ∞. Диаметр графа
G (diam(G)) – это максимально возможное расстояние между всеми его парами вершин. Эксцентриситет вершины e(u) – это максимальное значение
всех расстояний от вершины u до остальных вершин графа. Радиус графа
G (rad (G)) – это минимальный эксцентриситет его вершин. Центром графа
является подграф, индуцированный вершинами с минимальным эксцентриситетом.
Пример. На рис. 1.16 граф d(u, v) = 1, радиус равен 2, диаметр равен 3,
а центр равен C4, индуцированный u, v, y и x.
Утверждение 1.
Для каждого связного графа rad (G) ≤ diam (G) ≤ 2 rad (G).
Доказательство. Первое неравенство следует из определений. Пусть
u и v – вершины с d(u, v) = diam (G), и пусть w – вершина с e(w) = rad (G).
Согласно неравенству треугольника, диаметр (G) = d (u, v) ≤ d (u, w) +
+ d (w, v) ≤ 2e (v) = 2 rad (G).
Утверждение 2. Если диаметр (G) ≥ 4, то диаметр (G) ≤ 2.
Доказательство. Пусть diam (G) ≥ 4, и пусть x и y – вершины с
d (x, y) = 4. Если u и v не являются смежными в G, то они являются смежными в G. Если u и v являются смежными в G, то x и y не могут одновременно находиться в окрестностях u и v, поскольку это означало бы путь
(x − y) – путь длиной не более 3. Таким образом, u и v оба не являются
смежными ни с x, ни с y. Тогда d(u, v) = 2 в G.
Лемма 1. Каждый (u − v)-маршрут переход содержит (u − v)-путь.

1. Теоретические основы построения графов
22
Доказательство. Предположим, наоборот, что существует (u − v)-марш-
рут, который не содержит (u − v)-пути, и пусть W – такой переход минимальной длины. Тогда W должен повторно проходить через некоторую вершину
w. Удаление всех вершин и рёбер на обходе между вхождениями w приводит
к более короткому проходу от u к v. Тогда это или (u − v)-путь, либо это ещё
меньший путь. В любом случае налицо противоречие.
Обратим внимание, что расстояние удовлетворяет неравенству тре-
угольника d (u, w) ≤ d (u, v) + d (v, w), поскольку объединение путей u − v
и v −w приводит к обходу u − w, который содержит путь u − w. Наряду с
очевидными свойствами d (u, v) ≥ 0 с точным равенством, когда u = v, и
d (u, v) = d (v, u), это показывает, что графы с расстоянием являются метрическим пространством.
Некоторые графы имеют наборы вершин, которые разделены на два
различных типа объектов.
Пример. Университет предлагает четыре курса математики в семестр и имеет четырёх преподавателей математики, каждый из которых может вести одну дисциплину в одном классе. Моделируем эту ситуацию, используя граф с четырьмя вершинами, представляющими дисциплины, и
ещё четырьмя, представляющими преподавателей (рис. 1.17).
Рис. 1.17. Двудольный граф, описывающий распределение
преподавателей по дисциплинам
Четыре преподавателя и дисциплины, которые они имеют право преподавать, также приведены в табл. 1.3. Вопрос заключается в том, возможно ли назначить каждому преподавателю курс, для преподавания которого он имеет соответствующую квалификацию. И это возможно, поскольку только преподаватель, условно обозначенный буквой «А», может

1.1. Графы как модели
23
проводить занятия по дисциплинам Дифференциальные уравнения и биоматематика, а преподаватели, обозначенные как «В» и «D» специализируется на дисциплинах Алгебра и математический анализ, преподаватель «С»
может проводить занятия по биоматематике, а также обучать математическому анализу.
Таблица 1.3
Таблица распределения дисциплин между преподавателями
Преподаватели
Дисциплины
А
Биоматетика и дифференциальные уравнения
В
Алгебра и математический анализ
С
Биоматетика и математический анализ
D
Алгебра и математический анализ
Определение. Граф является двудольным, если множество вершин
может быть разбито на два независимых множества (называемых частичными множествами). Совпадение – это набор рёбер, ни одно из которых не
является смежным.
Двудольные графы также называются 2-раскрашиваемыми, по-
скольку два множества частей могут быть раскрашены так, чтобы ни одна
соседняя вершина не имела одинакового цвета. Полный двудольный граф
имеет все возможные ребра между множествами частей. Пути, чётные
циклы, сетки и гиперкубы – это разные классы двудольных графов.
Понятие расстояния имеет важное значение для характеристики дву-
дольных графов.
Теорема 2. Граф является двудольным тогда и только тогда, когда
он не содержит нечётных циклов.
Доказательство. Докажем, что двудольный граф не содержит нечёт-
ных циклов. Пусть G – двудольный граф. Каждый проход чередуется
между двумя частичными проходами, поэтому он может вернуться к первому проходу только после чётного количества шагов. Таким образом, любой цикл имеет чётную длину.
Докажем теперь, что если граф G не имеет нечётных циклов, то он
является двудольным. Пусть G – граф без нечётных циклов. Мы предполагаем, что G связный, так как этот допущение выполняется для любой вершины. Пусть u – вершина, пусть U – множество всех вершин с чётным расстоянием от u, и пусть W – множество всех вершин с нечётным расстоянием

1. Теоретические основы построения графов
24
от u. Это разбиение множества вершин. Предположим, что существует
ребро между вершинами x и y в одном и том же наборе разделов. Тогда
(u − x)-путь и (u − y)-путь имеют одинаковую чётность. Эти пути могут
иметь общие вершины, но должна быть последняя общая вершина, например v, которую они имеют. Тогда (v − x)-путь и (v − y)-путь и ребро xy
можно объединить, чтобы сформировать нечётный цикл. Но тогда возникает противоречие, поэтому U и W являются независимыми множествами. Доказано.
Вспомним определение графа.
Определение. Граф G – это математический объект, состоящий из
конечного непустого множества объектов, называемых вершинами V (G)
(множество вершин), и множества рёбер E (G) (множество рёбер). Ребро –
это двухэлементное подмножество множества вершин.
Рассмотрим, как изменение нескольких слов в определении графика
приводит к различным моделям. Что если мы уберём слово «конечный»
или «непустой»?
Определение. Нулевой граф имеет набор пустых вершин и рёбер.
Определение. Бесконечный граф имеет бесконечное множество вершин. Конечный граф не бесконечен. Есть много интересных результатов
по использованию бесконечных графов. Некоторые закономерности, полученные на конечных графах, естественным образом распространяются и на
бесконечные графы.
Теперь рассмотрим ситуацию, когда ребра не являются подмножествами из 2-х элементов?
Определение. Гиперграф – это математический объект, состоящий из
множества вершин и множества рёбер. Ребро – это непустое подмножество
множества вершин. Таким образом, ребро может иметь любую мощность.
Если мы допускаем наличие нескольких рёбер между вершинами, то
ребра должны находиться в мультимножестве, что допускает наличие нескольких копий одного и того же объекта.
Определение. Мультиграф G – это математический объект, состоящий из конечного непустого множества объектов, называемых вершинами
V (G), и мультимножества E (G) пар вершин. Петля – это ребро, оба конца
которого имеют одну и ту же вершину. Множественные ребра – это ребра,
имеющие одинаковые концы (рис. 1.18).

1.1. Графы как модели
25
Рис. 1.18. Пример мультиграфа с множественными рёбрами и петлёй
Определение. Ориентированный граф (орграф) D – это математиче-
ский объект, состоящий из конечного непустого множества объектов, называемых вершинами V(D), и множества E(D) упорядоченных пар различных
вершин, называемых направленными рёбрами. Направленный мультиграф
заменяет множество E(D) на мультимножество.
Если e = uv – направленное ребро орграфа, то мы записываем u → v и
говорим, что вершины u и v являются соседями, e соединяет u и v, вершина
u и ребро e являются инцидентными, так как ребро e выходит из вершины u.
Когда орграф имеет ребра в обоих направлениях между двумя вершинами, можно нарисовать либо две стрелки, либо одну двунаправленную
стрелку между ними. Существует естественная взаимосвязь между графами и орграфами.
Определение. Базовый граф орграфа D получается путём обработки каждого ребра D как неупорядоченной пары. Ориентация графа –
это орграф, сформированный путём замены каждого ребра направленным
ребром, т.е. дугой. Такой орграф является асимметричным. Орграф D
симметричен, если всякий раз, когда uv является ребром D, то же самое
происходит и с vu.
Каждый орграф имеет уникальный базовый граф, но большинство
графов имеют множество ориентаций. Граф соответствует симметричным
орграфам без петель, поскольку любая пара симметричных рёбер может
быть заменена неориентированным ребром. Орграф и лежащий в его основе базовый граф проиллюстрированы ниже (рис. 1.19).
Рис. 1.19. Слева – орграф, справа – его базовый граф

1. Теоретические основы построения графов
26
Существует также естественное соответствие между орграфами и
двудольными графами.
Определение. Разбиение орграфа D − это двудольный граф G с мно-
жествами частей V- и V+, копирующими V(D). Каждая вершина v ∈ V(D)
дублируется на v− ∈ V− и v+ ∈ V+. Каждое ребро uv ∈ E(D) соответствует
u+v− ∈ E(G) (рис. 1.20).
Рис. 1.20. Слева – орграф, справа – соответствующий ему двудольный граф
Многие определения терминов для орграфов такие же, как и для гра-
фов, или получаются естественным образом, когда заменяют ребра направленными рёбрами.
Определение. Пусть v – вершина орграфа. Выходная степень d+(v) –
это количество рёбер из v. Степень d−(v) – это количество рёбер в v.
Пример. На веб-графе страницы, на которые чаще всего ссылаются,
как правило, являются лучшими источниками информации. Поскольку вебграф является орграфом, это страницы с высокой степенью независимости.
Это наблюдение является основной идеей ранжирования страниц и важным
алгоритмом, используемым Google для предоставления качественных результатов поиска. Этим процессом могут манипулировать сайты, которые
предоставляют ссылки исключительно для того, чтобы повлиять на поисковые системы, поэтому система PageRank по-разному оценивает ссылки в
зависимости от качества сайта.
Утверждение 3. В орграфе D, ∑d+(v) = ∑d−(v) = m(D), где m(D) – коли-
чество вершин орграфа D, ∑d+(v) и ∑d−(v) – суммы по всем вершинам графа.
Этот результат аналогичен первой теореме теории графов. Это сле-
дует из того, что у каждой дуги есть начало и конец.

1.2. Деревья и графы
27
Направленные обходы, траектории и циклы аналогичны их ненаправленным версиям, за исключением того, что дуги должны иметь согласованное направление.
Определение. Орграф является связным (или слабосвязанным), если
его лежащий в основе граф связан. Орграф является сильным (или сильно
связным), если существуют пути (u − v)-путь или (v − u)-путь для всех пар
вершин u и v. Сильным компонентом орграфа является максимальный
сильный подграф.
1.2. Деревья и графы
Деревья – это минимально связные графы. Подобные графы имеют
множество теоретических и практических применений, например нахождение расстояния между двумя вершинами. Для того чтобы связный граф
стал деревом, требуется удалить по крайней мере одну вершину или ребро.
Связность измеряет, сколько вершин или дуг должно быть удалено из графика, чтобы граф перестал быть связным. Это имеет естественную зависимость с числом непересекающихся путей между вершинами.
Определение. Граф является лесом, если он не содержит цикла. Дерево – это связный лес. Таким образом, лес – это граф, компонентами которого являются деревья. Таким образом, граф является лесом тогда и
только тогда, когда каждый компонент является деревом.
Деревья можно рассматривать как класс экстремальных графов. Это
как минимально связные графы, так и максимально ациклические графы.
«Лист» – это вершина со степенью 1.
Утверждение 4. Каждое нетривиальное дерево содержит по крайней
мере два листа.
Доказательство. Пусть T – нетривиальное дерево. Пусть P – максимальный путь между вершинами u и v в T. Тогда v не может быть смежным
более чем с одной вершиной на пути, так как это создало бы цикл. Она не
может быть смежной с другой вершиной, не находящейся на P, так как тогда она могла бы быть расширена до более длинного пути. То же самое
справедливо и для u, поэтому u и v имеют степень 1.
Это приводит к естественному способу построения любого дерева.

1. Теоретические основы построения графов
28
Теорема 3. Граф является деревом тогда и только тогда, когда он мо-
жет быть построен из вершины K1 путём многократного применения операции добавления новой вершины, смежной с одной существующей вершиной.
Доказательство. Пусть K1 – это дерево, и операция добавления новой
вершины, смежной с одной существующей вершиной, сохраняет граф связным и ациклическим. Таким образом, любой граф, созданный таким образом, должен быть деревом.
Мы используем метод индукции по n. Результат очевиден, когда
n = 1. Предположим, что любое дерево порядка n − 1 может быть построено
из вершины K1 с помощью операции добавления вершины, смежной с одной существующей вершиной. И пусть T имеет порядок n > 1. Тогда у
T есть лист v, поэтому (T − v) − дерево порядка n – 1. Таким образом, T − v
может быть сконструирован с использованием вышеуказанной операции,
так что T также может быть деревом.
Определение. Операционная характеристика класса графов описывает их рекурсивно, используя один или несколько начальных графов, а
также одну или несколько операций, которые могут быть применены к любому графу в классе для получения другого графа в классе. Все операции
создания графов в классе создают графы только этого класса.
Характеристики операций полезны для доказательств по индукции,
поскольку если свойство справедливо для всех исходных графов и сохраняется операцией (операциями), то оно справедливо для всех графов в классе.
Следствие теоремы 3. Дерево порядка n имеет размер n − 1. Лес с
k компонентами имеет размер n − k.
Доказательство. m(K1) = 0. Пусть F – лес с компонентами Fi с порядками ni и размерами mi. Тогда Σ mi = Σ (ni – 1) = n – k, где i=1, 2, …, k.
Утверждение 5. Граф T является деревом тогда и только тогда, когда
для любых двух вершин u и v графа T существует уникальный (u − v)- путь.
Доказательство. Докажем, что если граф Т – дерево, то любые его две вершины можно связать уникальным путём. Предположим, что для некоторых
u и v в T не существует уникального u – v-пути. Либо нет u – v-пути и
T – несвязный граф, либо есть два u – v-пути, и некоторые из их рёбер образуют цикл. В любом случае, T – это не дерево.
Докажем, что если любые две вершины графа связаны уникальным
путём, то граф Т является деревом. Если T не является деревом, то тогда

1.2. Деревья и графы
29
либо T – несвязный граф, и для некоторых u и v в T нет u – v-пути, либо T
содержит цикл (и в нем есть два u – v-пути для u и v).
Если граф с достаточно большой минимальной степенью, то воз-
можно он содержит в себе любое дерево заданного размера.
Теорема 4. Если δ (G) ≥ k, то G содержит все деревья размера k.
Доказательство. Мы используем индукцию по k. Когда k = 0, каждый
граф содержит вершину K1, единственное дерево с размером 0.
Предположим, что результат справедлив для всех деревьев с k − 1 рёб-
рами, k ≥ 1. Пусть T – дерево размером k, содержащее лист v с соседней вершиной u. По предположению, G содержит T − v, который имеет размер k − 1.
Теперь dG(u) ≥ k, поэтому u является смежным, по крайней мере, с одной вершиной в G, которая не находится в T − v. Таким образом, G также содержит T.
Мы можем охарактеризовать последовательности степеней деревьев.
Утверждение 6. Список из n > 1 натуральных чисел является после-
довательностью степеней некоторого дерева T тогда и только тогда, когда
их сумма равна (2n – 2).
Доказательство. Пусть у нас есть дерево Т размером (n – 1). Тогда
сумма его степеней равна 2 (n − 1) = 2n − 2.
Для доказательства достаточности используем индукцию по n. Если
n = 2, сумма равна двум и T = K2. Предположим, что результат справедлив
для деревьев порядка n − 1. Предположим, у нас есть список из n > 2 натуральных чисел, сумма которых равна 2n − 2. Тогда наименьшее целое число
равно 1, а наибольшее – d > 1.
Если удалить одну вершину, то d уменьшится на 1. Тогда у нас есть
список из n−1 натуральных чисел с суммой 2(n − 1) − 2, так что существует
некоторое дерево T’ с этими степенями. И мы всегда можем достроить до
графа Т, добавив одну вершину, смежную с вершиной степени (d – 1), которая будет листом.
Деревья так же важны, как подграфы связных графов.
Определение. Остовное дерево связного графа G – это дерево, которое является подграфом G с тем же порядком.
Одноциклический граф – это связный граф ровно с одним циклом.
Каждый связный граф содержит связующее дерево. Это можно увидеть, удаляя ребра в циклах до тех пор, пока их больше не останется, в результате чего образуется дерево. Любой одноциклический граф может

1. Теоретические основы построения графов
30
быть сформирован путём добавления ребра к некоторому дереву. Связный
граф, который не является деревом, имеет несколько остовных деревьев,
которые могут быть получены друг из друга путём замены рёбер.
Теорема 5. Если T и T' являются остовными деревьями связного
графа G, а e − ребро в T, а не в T’, то существует ребро e’ в T’, а не в T,
такое, что T − e + e’ и T’ + e – e’ являются остовными деревьями графа G.
Определение. Взвешенный граф – это граф, для которого каждое
ребро e имеет неотрицательное число w(e), называемое связанным с ним
весом. (Если ребро не существует, то его вес равен ∞.)
Минимальное остовное дерево – это остовное дерево графа с мини-
мальным общим весом рёбер. Существует простой алгоритм поиска минимального остовного дерева.
Предположим, что есть несколько изолированных деревень, которые мы хотим соединить электрическими линиями. Затраты на соединение
различных пар деревень варьируются в зависимости от расстояния, рельефа местности и стоимости земли между деревнями. Мы хотим найти минимальные затраты на подключение деревень к электрическим линиям. Мы
можем смоделировать эту ситуацию с помощью взвешенного графа. Решить такую задачу может помочь алгоритм Краскала поиска минимального
остовного дерева или минимального покрывающего дерева2.
1.2.1. Алгоритм Краскала
Пусть у нас есть граф G. Пусть остовный лес F графа G – это лес,
состоящий из всех вершин графа, и на первом шаге он не имеет ни одного
ребра. Затем на очередном шаге необходимо последовательно добавлять
рёбра с минимальным весом, при этом граф F должен оставаться лесом. Это
возможно, если новое ребро соединит вершины из разных частей леса.
Именно такие ребра мы будем называть подходящими.
Пример. Рассмотрим взвешенный график на рис. 1.20 (слева). Упорядочим рёбра по их весу. Начнём с добавления ребра с весом 1. Можно
добавить оба ребра с весом 2 (в любом порядке). Могут быть добавлены
2
Алгоритм Краскала / Режим доступа: https://www.sites.google.com/a/labore.ru/
teoria-grafov/novosti-obrazovania/algoritm-kraskala, (дата обращения 21.07.2023).
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
