- •Часть 1
- •Часть 1
- •Введение
- •1. Основные понятия теории графов
- •Задачи теории графов
- •1.2. Основные определения
- •1.3. Степени вершин графа
- •1.4. Изоморфизм графов
- •2. Представление графов в эвм и операции над ними
- •2.1. Матричные способы задания графов
- •2.2. Список ребер (луг) и структура смежности графа
- •2.3. Части графов
- •2.4. Основные операции над графами
- •3. Маршруты в графах
- •3.1. Понятие маршрута
- •Маршруты в неориентированных графах
- •Маршруты в ориентированных графах
- •3.2. Связность в графах.
- •В примере 3 граф имеет две сильно связных компоненты.
- •3.3. Связность и матрица смежности графа
- •3.4. Матрица взаимодостижимости
- •4. Деревья
- •4.1. Свободные деревья
- •4.2. Ориентированные, упорядоченные и бинарные деревья
- •Эквивалентное определение ориентированного дерева
- •5. Эйлеровы и гамильтоновы графы.
- •5.1. Эйлеровы графы.
- •5. 2. Алгоритм построения эйлерова цикла в эйлеровом графе
- •5.3. Гамильтоновы графы
- •5.4. Оценки числа эйлеровых и гамильтоновых графов
- •6. Фундаментальные циклы и разрезы
- •6.1. Фундаментальные циклы
- •6.2. Разрезы
- •7. Связь теории графов с бинарными отношениями и векторными пространствами
- •7.1. Отношения на множествах и графы
- •7.2. Векторные пространства, связанные с графами
- •8. Планарность и раскраска графов
- •8.1. Планарные графы
- •8.2. Раскраска графов
- •8.3. Алгоритм последовательной раскраски
- •9. Покрытия и независимость
- •9.1. Покрывающие множества вершин и ребер
- •9.2. Независимые множества вершин и ребер
- •9.3. Доминирующие множества
- •10. Кратчайшие маршруты в графах
- •10.1. Расстояния в графах
- •10.2. Алгоритм Форда-Беллмана
- •11. Задача коммивояжера
- •11.1. Постановка задачи
- •11.2. Обходы вершин графа по глубине и ширине
- •11.3. Решение задачи коммивояжера
- •12. Потоки в сетях
- •12.1. Основные определения
- •12.2. Теорема Форда и Фалкерсона
- •12.3. Алгоритм построения максимального потока
- •13. Сетевое планирование и управление
- •13.1. Элементы сетевого графика
- •13.2. Временные параметры сетевого графика
- •13.3. Распределение ограниченных ресурсов
- •14. Анализ технических систем (на примере электрической цепи)
- •14.1 Закон Кирхгофа
- •14.2. Основные уравнения
- •15. Сигнальные графы
- •15.1. Общие представления о сигнальных графах
- •15.2. Преобразования сигнальных графов
- •15.3. Формула Мэзона
- •16. Переключательные сети (схемы)
- •17. Математические машины и цепи маркова
- •Библиографический список
- •Оглавление
- •Часть 1
- •394026 Воронеж, Московский просп., 14
3.4. Матрица взаимодостижимости
Образуем из матрицы E+ A+A2+…+ An=(bi, j) матрицу С порядка n по правилу:
сi, j= .
Полученная матрица С называется матрицей связности, если G – неорграф и матрицей достижимости, если G – орграф.
Элемент этой матрицы сi, j =1 тогда и только тогда, когда в графе есть (vi, vj) – маршрут (i≠j).
Матрицей контрдостижимости называется матрица Q=(qi, j), элементы которой:
qi, j =
Отметим, что Q=CT. Матрицы достижимости и контрдостижимости используются для нахождения сильных компонент графа. Для этого используется матрица взаимодостижимости (сильных компонент) , где символ означает поэлементное произведение матриц С и Q, т.е. sij=cij∙qij.
Элемент sij=1 тогда и только тогда, когда вершины vi и vj взаимодостижимы. Это означает, что они находятся в одной сильной компоненте. Следовательно, сильная компонента, содержащая вершину vi, состоит из тех элементов vij, для которых sij=1.
Пример. Для графа, изображённого ниже, определим матрицы достижимости, контрдостижимости и взаимодостижимости
Р ис. 13
Матрица достижимости C= .
Матрица контрдостижимости Q=CT= .
S= =
По второй строке матрицы S находим, что сильная компонента, содержащая вершину 2, состоит из вершин {1, 2, 3}.
4. Деревья
4.1. Свободные деревья
Деревом называется связный граф без циклов (контуров).
Несвязный граф без циклов (контуров) называется лесом. Компоненты связности леса являются деревьями.
Подграф G1=(V1, E1) графа G=(V, E) называется остовным деревом в графе G=(V, E), если G1=(V1, E1) – дерево и V1=V.
Дерево – это минимальный связный граф, т.к. при удалении хотя бы одного ребра (дуги) он теряет связность. Неориентированное дерево называется свободным.
Н апример: 1) Диаграммы всех различных свободных деревьев с 5-ю вершинами:
Рис. 13
2) Диаграммы всех различных свободных деревьев с 6-ю вершинами:
Р ис.14
Лемма 1. Если граф G=(V, E) связный и ребро (u, v) содержится в некотором цикле графа G, то при удалении этого ребра получиться новый связный граф.
Доказательство: При удалении ребра (u, v), вершины i и v останутся в одной и той же связной компоненте, т.к. они остаются связными за счет оставшейся части цикла.
Теорема 1. Любой связный граф содержит хотя бы одно остовное дерево.
Доказательство: Если в графе G нет циклов, то G является искомым остовным деревом, если в G есть цикл, то удалим из G какое-нибудь ребро, входящее в цикл. В результате этого получается некоторый подграф G1. По лемме 1 G1 – связный граф. Если в графе G1 нет циклов, то G1 есть искомое остовное дерево. В противном случае процесс продолжается. Этот процесс должен завершиться, т.к. Е – конечное множество.
Лемма 2. Если к связному графу добавить новое ребро на тех же вершинах, то в нём появиться цикл.
Доказательство: Пусть G=(V, E) – связный граф. Пусть uV, vV, (u, v)E. Т.к. G – связный граф, то в нем есть цепь от v к u. Тогда в нем есть простая цепь от v к u. Поэтому во вновь полученном графе с добавленным ребром (u, v) имеется цикл C(u, v).
Лемма 3. Пусть в графе G=(V, E) имеется n вершин и m ребер. Тогда в G не менее n-m связных компонент. Если при этом в графе G нет циклов, то он состоит ровно из n-m связных компонент.
Доказательство: Пусть к некоторому графу H, содержащему вершины u и v добавляется ребро (u, v). Тогда, если u и v лежат в разных связных компонентах графа H, то число связных компонент уменьшается на единицу. Если u и v лежат в одной связной компоненте графа H, то число связных компонент не уменьшиться. Таким образом, число связных компонент при добавлении ребра уменьшается не более чем на единицу. Значит, при добавлении m ребер, число связных компонент уменьшается не более чем на m. Т.к. граф G, можно получить из графа G1=(V,Ø), добавлением m ребер, то в графе G не менее n-m связных компонент. Пусть далее в графе G нет циклов, и пусть в процессе получения G из G1 добавляется ребро (u, v). Если бы u и v лежали в одной связной компоненте, то в G, согласно лемме 2, возникал бы цикл. Следовательно, u и v лежат в разных связных компонентах и при добавлении ребра (u, v) число связных компонент уменьшается ровно на 1. Следовательно, G состоит ровно из n-m компонент.
Теорема 2. О различных определениях свободного дерева. (Свойства свободных деревьев).
Следующие пять определений эквивалентны:
G – свободное дерево
G – без циклов и m=n-1
G – связный граф и m=n-1
G –связный граф, но при удалении любого ребра становиться несвязным
G – без циклов, но при добавлении любого ребра на тех же вершинах появляется цикл
Доказательство: Если доказать, что 1)2)3)4)5)1), то из любого условия вытекает любое другое.
1)2) Т.к. G – связный граф и G не содержит циклов, то n-m=1 по лемме 3. Отсюда m=n-1.
2)3) По лемме 3 число связных компонент равно n-m=1, т.е. граф G – связный граф.
3)4) При удалении одного ребра n-m=2. Тогда по лемме 3 число связных компонент не менее, чем n-m=2 т.е. граф несвязный.
4)5) Если G имеет цикл, то согласно лемме 1 можно удалить одно ребро так, что граф останется связным. Согласно лемме 2, если добавить любое новое ребро к связному графу на тех же вершинах, то появиться цикл.
5)1) Доказательство ведётся от противного. Предположим, что если G несвязный граф и вершины u и v лежат в разных компонентах графа G, но добавление к G ребра (u, v) очевидно, не порождает циклов, что противоречит 5). Отсюда следует, что G связный граф. Теорема доказана.
Вершина в графе называется концевой (висячей), если её степень равна 1. Ребро инцидентное концевой вершине называется концевым. Конечное дерево, состоящее более чем из одной вершины, имеет хотя бы две концевые вершины и одно концевое ребро.