1 / 38

Глава III. ТЕОРИЯ ГРАФОВ

Глава III. ТЕОРИЯ ГРАФОВ. 1. Основные понятия теории графов. Граф – диаграмма связей между объектами . Объекты представляются как вершины , или узлы графа, а связи — как дуги , или рёбра .

candid
Download Presentation

Глава III. ТЕОРИЯ ГРАФОВ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Глава III. ТЕОРИЯ ГРАФОВ 1. Основные понятия теории графов Граф – диаграмма связей между объектами. Объекты представляются как вершины, или узлы графа, а связи — как дуги, или рёбра. Многие структуры, представляющие практический интерес в математике и информатике, могут быть представлены графами. Для разных областей применения виды графов могут различаться направленностью, ограничениями на количество связей и дополнительными данными о вершинах или рёбрах.

  2. Применение теории графов: • В химии (для описания структур, путей сложных реакций) • В информатике и программировании • В коммуникационных и транспортных системах. В частности, для маршрутизации данных в Интернете. • В экономике • В логистике Пример.Существующие или вновь проектируемые сооружения рассматриваются как вершины, а соединяющие их дороги — как рёбра. Применение различных вычислений, на таком графе, позволяет, например, найти кратчайший объездной путь или спланировать оптимальный маршрут.

  3. Граф — это совокупность непустого множества вершин и множества ребер, содиняющих пары этих вершин. • Обозначим: • Множество вершин: V={ v1 , v2 , …, vn } • Множество ребер (дуг):E={ e1 , e2 , ….., em} • Граф - это упорядоченная параG = G(V, E), где • V  - непустое множество вершин, • элементы множестваE – пары вершин: ek = (vs , vt) , где s, t { 1, …, n } k { 1, …, т}

  4. Графы неориентированные ориентированные a a b e b e c c d d G2 - неориентированный граф G1- ориентированный граф Ориентированный граф– все ребра (vs , vt)являются упорядоченными парами вершин, т.е. для каждого ребра (vs , vt) определенонаправление из вершины vs в вершину vt. Неориентированный граф–все ребра (vs , vt)являются неупорядоченными парами вершин, т.е. (vs , vt )= (vt , vs) и возможно прохождение из вершины в вершину в обоих направлениях.

  5. Направленный граф является одной из форм представления отношений и рассмотрен в теории множеств. кратные ребра кратные ребра a a e b b e c c d d петля петля G3- ориентированный псевдограф G4 - неориентированный псевдограф Мультиграф — граф, в котором существует пара вершин, которая соединена более чем одним ребром (ненаправленным), либо более чем двумя дугами противоположных направлений. Псевдограф —мультиграф, допускающий наличие петель.

  6. a e b c d G5 – пустой граф – не содержит ни одного ребра, Е = . a G6= K5полный граф на 5-ти вершинах = каждые две различные вершины графа соединены одним и только одним ребром e b c d Полным ориентированным графом называется граф, каждая пара вершин которого соединена в точности одним ориентированным ребром.

  7. a a e b e b f c d c d G7 – циклC5 G8 – “колесо” W5 a a f c e b f e b c d d Деревья

  8. Степени вершин Обозначим: G(vi) ={ vk | ( vi , vk)  E} - множество ребер которые “выходят” извершины vi. G-1(vi)={ vk | ( vk , vi )  E} - множество ребер которые “входят” в вершину vi. Для ориентированного графа: Входящая степень вершины vi = количество ребер которые “входят” в вершину vi dt(vi) = |G-1(vi)| Исходящая степень вершины vi = количество ребер которые “выходят” извершины vi do(vi) = |G(vi)|

  9. Для неориентированного графа: G(vi)=G -1(vi) . Степенью вершины viнеориентированного графа называют количество рёбер, которым принадлежит эта вершина d(vi)= do(vi) = dt(vi). При вычислении степени вершины петлюучитывают 2 раза. Свойство 1. В ориентированном графе: do (vi ) =  dt (vi ) = m, где т = |Е| = числу ребер. Свойство 2. В неориентированном графе: d(vi ) = 2m, где т = |Е| = числу ребер.

  10. Ребра1и 2смежные, если они имеют общую вершину: 1 a 2 Вершинуaиребро1назыываютинцидентными, есливершинаaпринадлежит ребру1: 1 a Вершины графа a и bназывают смежными, если существует соединяющее их ребро: b a

  11. Вершина называется изолированной, если она не является концом ни для одного ребра: a e b изолированная вершина c d dеg(d)= 0 Вершина называется висячей, если она является концом ровно одного ребра: a e b c висячая вершина d dеg(d)= 1

  12. Матричное представление графов Матрица смежности K – квадратная матрица порядка n, строки и столбцы которой соответствуют вершинам графа, а элементы определяют число выходящих ребер. 1, если существует ребро из вершины iв вершину j, 0, иначе. Kij= 1 5 2 3 4 Данный способ подходит для ориентированных и неориентированных графов. Для неориентированных графов матрица A является симметричной.Для мультиграфа Kij  1.

  13. МатрицаинцидентностиI - строки которой соответствуют вершинам графа, столбцы– ребрамграфа,а элементы определяют выходит ребро из вершиныили входит в нее. 1, ребровыходит из вершины, -1, ребровходит в вершину, 0,ребро отсутствует или является петлёй. Iij= 1 e a 2 5 b c 4 d 3

  14. Изоморфизм графов Два графа G1 и G2 называются изоморфными, если они имеют равное число вершин и равное число ребер, и существует взаимно однозначное соответствие между множествами их вершин, и множествами их ребер такое, что в графах соответствующие ребра соединяют соответствующие вершины. a a e b d c b c d e

  15. Маршрут. Связность графов Маршрутом,проходящим вершины vi , i = 1, ..., k, называется последовательность ребер(vi,vi+1), i = 1, ..., k-1такая, что два соседних ребра имеют общуювершину. В случае ориентированного графа - ориентированныймаршрут. Маршрут называется замкнутым, если егопервая и последняя вершины совпадают. Длиной маршрута называют число составляющих его рёбер.

  16. Маршрут называется цепью, если все егорёбра различны. Маршрут называется простой цепью, если все егорёбра и все вершиныразличны (кроме, может быть, начальной и конечнойвершин). Замкнутая простая цепь называется циклом. • Всякий маршрут, соединяющий две вершины, содержит простую цепь, соединяющую те же две вершины. • Всякаянепростаяцепь содержит цикл. • Петля - цикл.

  17. Граф называется связным, если для любых его двухвершинvи wсуществует простая цепь из vвw. Бинарное отношение на множестве вершин графа, заданное как «существует путь из v в w », является отношением эквивалентности, и, следовательно, разбивает это множество на классы эквивалентности, называемые компонентами связности графа. Несвязный граф состоит из нескольких связных компонент. Если у графа ровно одна компонента связности, то граф связный.

  18. Гамильтоновы графы Гамильтонов граф- граф, в котором есть гамильтонов цикл. Гамильтонов цикл- цикл в графе, содержащий все вершины графа ровно по одному разу. a b d c гамильтонов граф

  19. Критерий же существования гамильтонова цикла в произвольном графе еще не найден. Решение этой проблемы имеет практическую ценность, так как к ней близка известная задача о коммивояжере, который должен объехать несколько пунктов и вернуться обратно. Он обязан побывать в каждом пункте в точности по одному разу и заинтересован в том, чтобы затратить на поездку как можно меньше времени. А для этого требуется определить все варианты посещения городов и подсчитать в каждом случае затрату времени. Большинство известных теорем имеет вид "если граф имеет достаточное число ребер, то граф является гамильтоновым графом". Вероятно, самой знаменитой из этих теорем является теорема Дирака. Teoрема 1.Если в связном графе число вершин n ≥ 4 и стерень каждой вершиныd(xi) ≥ n/2, то граф является гамильтоновым.

  20. Эйлеровы графы Граф называется эйлеровым, если существуетзамкнутая цепь содержащий по одному разу каждоеребро заданного графа (эйлеров цикл). Теорема 2.Связный граф обладает эйлеровым циклом, только когдастепени всех его вершины - четные. Доказательство:Эйлеров цикл содержит каждое ребро и притом только один раз, поэтому, сколько раз эйлеров путь придет в вершину, столько и выйдет, причем уже по другому ребру. Следовательно, степень каждой вершины графа должна состоять из двух одинаковых слагаемых: одно результат подсчета входов в вершину, другое — выходов.

  21. a e b c d f эйлеров граф a d c b e не эйлеров граф

  22. Признак эйлерова графа для ориентированного графа: Теорема 3.Связный ориентированный граф обладает эйлеровым циклом, только когдау каждой вершины входящая и исходящая степени равны. a b c d e f эйлеров граф

  23. Задача о мостах Кёнигсберга: Город Кёнигсберг (ныне Калининград) состоял из независимых городских поселений, расположенных на двух островах и берегах реки Прегель. Издавна среди жителей Кёнигсберга была распространена такая загадка: как пройти по всем мостам, не проходя ни по одному из них дважды, и вернуться в исходную точку? I

  24. В 1736 году задача о семи мостах заинтересовала выдающегося математика, члена Петербургской академии наук Леонарда Эйлера, о чём он написал в письме итальянскому математику и инженеру Мариони от 13 марта 1736 года. В этом письме Эйлер пишет о том, что он смог найти правило, пользуясь которым легко определить, можно ли пройти по всем мостам, не проходя дважды ни по одному из них (в случае семи мостов Кёнигсберга это невозможно). • Эйлер пришёл к следующим выводам: • Число нечётных вершин графа должно быть чётно. Не может существовать граф, который имел бы нечётное число нечётных вершин. • Если все вершины графа чётные, то можно, не отрывая карандаша от бумаги, начертить граф, при этом можно начинать с любой вершины графа и завершить его в той же вершине. • Граф с более чем двумя нечётными вершинами невозможно начертить одним росчерком. Леонард Эйлер ( 1707 - 1783)

  25. мультиграф кёнигсбергских мостов соответствующий граф

  26. Дополнительные характеристики графов Граф называется: • деревом, если он связный и не содержит циклов. a a f c e b f e b c d d деревья

  27. Граф называется: • двудольным, если его вершины можно разбить на два непересекающихся подмножества V1 и V2 так, что всякое ребро соединяет вершину из V1 с вершиной из V2; • полным двудольнымKm,n, если каждая вершина одного подмножества соединена ребром с каждой вершиной другого подмножества. a a b c d e b f c d g e f K4,3 K1,5 Заметим, что граф Km,n имеет ровно m+n вершин и mn ребер.

  28. планарным, если граф можно изобразить диаграммой на плоскости без пересечений рёбер. a a e b e b c c d d изоморфный ему граф без пересечений рёбер = плоский граф планарный граф

  29. Подграф Подграфом графа G называется граф, все вершины которого принадлежат V(G), а все рёбра принадлежат E(G). a a e b e c c d d K5 - полный граф на 5-ти вершинах подграф графа K5

  30. Дополнение графа- граф над тем же множеством вершин, что и исходный, но вершины соединены ребром тогда и только тогда, когда в исходном графе ребра нет. a a e b e b c c d d дополнение исходный граф

  31. Базис графа B: минимальное множество вершин, из которых каждая вершина графа досягаема. a e b c d базис В = {e, b}

  32. Поиск минимальных разбиений Часто решение логических задач связывается с поискомнекоторой совокупности подмножеств заданногомножества, удовлетворяющей определённымтребованиям, и оптимальной в том или ином смысле, например минимальной по числу выбранныхподмножеств. Пример. Задано некоторое множество V . На множестве Vопределеноотношение несовместимости. Требуетсянайти такое разбиение множества V на минимальноечисло подмножеств (блоков) так, чтобы любые дваэлемента принадлежащие одному блоку ненаходились бы в отношении несовместимости. Поиск разбиения сводится к раскраске графаописывающего отношение несовместимости.

  33. Пример. Задача размещения отдыхающих. Задано отношение несовместимости намножестве V = {v1, v2, v3, v4, v5} v2 v1 v4 v3 v5 Получаем разбиение: V = { { v1, v2, v3 }, { v4, v5 } }

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

  35. Теорема.Для оптимальной раскраски планарных графов достаточно четырёх цветов. (1977, K. Appel, W. Haken, J. Koch) Решение путем сведения к задаче о кратчайшемпокрытии. Данная задача сводится к поиску минимального числа максимальных пустых подграфов, которые в своей совокупности содержат все вершины заданного графа. Утверждение.Вершины, которые не принадлежатпустому подграфу, должны покрывать все ребразаданного графа (действительно, иначе обе вершинынепокрытого ребра должны принадлежать этомуподграфу, что невозможно). На основании приведенного утверждениия построениепустого подграфа можно свести к поиску подмножествавершин покрывающего все ребра заданного графа.

  36. Алгоритм 1. Найти все максимальные пустые подграфыграфа G . 2. Построить матрицу бинарного отношенияпринадлежности вершин графа найденнымподграфам. 3. Найти кратчайшее покрытие этой булевойматрицы. 4. Перейти к разбиению множества вершин(т.е. устранить возможные пересечения междумножествами вершин выбранных максимальныхпустых подграфов).

  37. Дан граф: Пример. 1 5 3 2 4 1.Построение максимальных пустых подграфов. fe (1, 2, 3, 4, 5) = (1 ∨ 5) & (2 ∨ 4) & (1∨ 4) & (3 ∨ 5) = = (1&2&3) ∨ (1&3&4) ∨ (1&2&5) ∨ (4&5) Минимальные подмножества вершин покрывающие все ребра будут: {1, 2, 3}, {1, 3, 4}, {1, 2, 5}, {4, 5} Взяв дополнения найденных подмножеств, получим все максимальные пустые подграфы: G1 = {4, 5}, G2 = {2, 5}, G3 = {3, 4}, G4 = {1, 2, 3}

  38. 2. Построение матрицы бинарного отношения принадлежности вершин графа найденным подграфам. 1 2 3 4 5 G1 0 0 0 1 1 G2 01 0 0 1 G30 0 1 1 0 G4 1 1 1 0 0 3. Решение задачи покрытия. Минимальное покрытие будет: {G1, G4} Таким образом имеем решение: {{4, 5}, {1, 2, 3}}

More Related