Теория графов
Курсовая работа, 19 Марта 2013, автор: пользователь скрыл имя
Краткое описание
Благодаря своей простой формулировке и раздражающей неуловимости она до сих пор остается мощным стимулом исследований различных свойств графов. Настоящее столетие было свидетелем неуклонного развития теории графов, которая за последние десять – двадцать лет вступила в новый период интенсивных разработок. В этом процессе явно заметно влияние запросов новых областей: тео-рии игр и программирования, теории передачи сообщений, электрических сетей и контактных цепей, а также проблем психологии и биологии.
Содержание
ВВЕДЕНИЕ 3
1. ТЕОРИЯ ГРАФОВ. 4
1.1. Историческая справка. 4
1.2. Основные термины и теоремы теории графов. 9
2. ЗАДАЧИ НА ГРАФАХ. 15
2.1. Описание различных задач на графах. 15
2.2. Нахождение кратчайших путей в графе 16
3. ПРОГРАММА ОПРЕДЕЛЕНИЯ КРАТЧАЙШЕГО ПУТИ В ГРАФЕ 19
3.1. Язык программирования Delphi. 19
3.2. Программа «Определение кратчайшего пути в графе» 20
ЗАКЛЮЧЕНИЕ 25
СПИСОК ЛИТЕРАТУРЫ 27
ПРИЛОЖЕНИЕ 28
Текст программы определения кратчайшего пути в графе 28
Вложенные файлы: 1 файл
Теория Графов.doc
— 1.16 Мб (Скачать файл)Результаты и методы теории графов применяются при решении транспортных задач о перевозках, для нахождения оптимальных решений задачи о назначениях, для выделения «узких мест» при планировании и управлении разработок проектов, при составлении оптимальных маршрутов доставки грузов, а также при моделировании сложных технология, процессов, в построении различных дискретных устройств, в программировании и т. д.
1.2. Основные термины и теоремы теории графов.
- Граф - Пара объектов G = ( X , Г ) ,где Х - конечное множество ,а Г –конечное подмножество прямого произведения Х*Х . При этом Х называется множеством вершин , а Г - множеством дуг графа G .
- Любое конечное множество точек (вершин), некоторые из которых попарно соединены стрелками , (в теории графов эти стрелки называются дугами), можно рассматривать как граф.
- Если в множестве Г все пары упорядочены, то такой граф называют ориентированным .
- Дуга- ребро ориентированного графа.
- Граф называется вырожденным, если у него нет рёбер.
- Вершина Х называется инцидентной ребру G , если ребро соединяет эту вершину с какой-либо другой вершиной.
- Подграфом G(V1, E1) графа G(V, E) называется граф с множеством вершин V1 ÍV и множеством ребер (дуг) E1Í E, - такими, что каждое ребро (дуга) из E1 инцидентно (инцидентна) только вершинам из V1 . Иначе говоря, подграф содержит некоторые вершины исходного графа и некоторые рёбра (только те, оба конца которых входят в подграф).
- Подграфом, порождённым множеством вершин U называется подграф, множество вершин которого – U, содержащий те и только те рёбра, оба конца которых входят в U.
- Подграф называется остовным подграфом, если множество его вершин совпадает с множеством вершин самого графа.
- Вершины называются смежными , если существует ребро , их соединяющее.
- Два ребра G1 и G2 называются смежными, если существует вершина, инцидентная одновременно G1 и G2.
- Каждый граф можно представить в пространстве множеством точек, соответствующих вершинам, которые соединены линиями, соответствующими ребрам (или дугам - в последнем случае направление обычно указывается стрелочками). - такое представление называется укладкой графа.
- Доказано, что в 3-мерном пространстве любой граф можно представить в виде укладки таким образом, что линии, соответствующие ребрам (дугам) не будут пересекаться во внутренних точках. Для 2-мерного пространства это, вообще говоря, неверно. Допускающие представление в виде укладки в 2-мерном пространстве графы называют плоскими (планарным).
Другими словами, планарным называется граф, который может быть изображен на плоскости так, что его рёбра не будут пересекаться. - Гранью графа, изображенного на некоторой поверхности, называется часть поверхности, ограниченная рёбрами графа.
Данное понятие грани, по - существу, совпадает с понятием грани многогранника. В качестве поверхности в этом случае выступает поверхность многогранника. Если многогранник выпуклый, его можно изобразить на плоскости, сохранив все грани. Это можно наглядно представить следующим образом: одну из граней многогранника растягиваем, а сам многогранник «расплющиваем» так, чтобы он весь поместился внутри этой грани. В результате получим плоский граф. Грань, которую мы растягивали «исчезнет», но ей будет соответствовать грань, состоящая из части плоскости, ограничивающей граф.
Таким образом, можно говорить о вершинах, рёбрах и гранях многогранника, а оперировать соответствующими понятиями для плоского графа.
- Пустым называется граф без рёбер. Полным называется граф, в котором каждые две вершины смежные.
- Конечная последовательность необязательно различных рёбер E1,E2,...En называется маршрутом длины n, если существует последовательность V1, V2, ... Vn необязательно различных вершин, таких, что Ei = (Vi-1,Vi ).
- Если совпадают, то маршрут замкнутый.
- Маршрут, в котором все рёбра попарно различны, называется цепью.
- Замкнутый маршрут, все рёбра которого различны, называется циклом. Если все вершины цепи или цикла различны, то такая цепь или цикл называются простыми.
- Маршрут, в котором все вершины попарно различны, называется простой цепью.
- Цикл, в котором все вершины, кроме первой и последней, попарно различны, называется простым циклом.
- Граф называется связным, если для любых двух вершин существует путь, соединяющий эти вершины.
- Любой максимальный связный подграф (то есть, не содержащийся в других связных подграфах) графа G называется компонентой связности. Несвязный граф имеет, по крайней мере, две компоненты связности.
- Граф называется k - связным (k - реберно - связным), если удаление не менее k вершин (ребер) приводит к потере свойства связности.
- Маршрут, содержащий все вершины или ребра графа и обладающий определенными свойствами, называется обходом графа.
- Длина маршрута (цепи, простой цепи) равна количеству ребер а порядке их прохождения. Длина кратчайшей простой цепи, соединяющей вершины vi и vj в графе G, называется расстоянием d (vi, vj) между vi и vj.
- Степень вершины - число ребер, которым инцидентна вершина V, обозначается D(V).
С помощью различных операций можно строить графы из более простых, переходить от графа к более простому, разбивать графы на более простые и т.д.
Среди одноместных операций наиболее употребительны: удаление и добавление ребра или вершины, стягивание ребра (отождествление пары смежных вершин), подразбиение ребра (т.е. замена ребра (u, v) на пару (u, w), (w, v), где w - новая вершина) и др.
Известны двуместные операции: соединение, сложение, различные виды умножений графов и др. Такие операции используются для анализа и синтеза графов с заданными свойствами.
- Два графа G1=(V1;E1), G2=(V2;E2),называются изоморфными, если существует взаимнооднозначное соответствие между множествами вершин V1 и V2 и между множествами рёбер Е1 и Е2, такое, чтобы сохранялось отношение инцидентности.
Понятие изоморфизма для графов имеет наглядное толкование. Представим рёбра графов эластичными нитями, связывающими узлы – вершины. Тогда, изоморфизм можно представить как перемещение узлов и растяжение нитей.
Теорема 1.
Пусть задан граф G=(V;E),где V - множество вершин, E - множество рёбер, тогда 2[E]=Σ(V), т.е. удвоенное количество рёбер равно сумме степеней вершин.
Теорема 2. (Лемма о рукопожатиях)
В конечном графе число вершин нечетной степени чётно.
Теорема 3.
Граф связен тогда и только тогда, когда множество его вершин нельзя разбить на два непустых подмножества так, чтобы обе граничные точки каждого ребра находились в одном и том же множестве.
Расстоянием между двумя вершинами связного графа называется длина кратчайшей цепи, связывающей эти вершины (в количестве рёбер).
Свойства связных графов.
- Связный граф остается связным после удаления ребра тогда и только тогда, когда это ребро содержится в цикле.
- Связный граф , имеющий К вершин , содержит по крайней мере К-1 ребро.
- В связном графе любые две простые цепи максимальной длины имеет по крайней мере одну общую вершину.
- В графе с N вершинами и К компонентами связности число рёбер не превышает 1/2(N-K)(N-K+1).
- Пусть у графа G есть N вершин . Пусть D(G)- минимальная из степеней вершин этого графа . Тогда D(G) > 1/2 (N-1).
- Связный граф без циклов называется деревом.
Деревья особенно часто возникают на практике при изображении различных иерархий. Например, популярные генеалогические деревья.
Пример(генеалогическое дерево): На рисунке показано библейское генеалогическое дерево.
Эквивалентные определения дерева.
- Связный граф называется деревом, если он не имеет циклов.
- Содержит N-1 ребро и не имеет циклов.
- Связный и содержит N-1 ребро.
- Связный и удаление одного любого ребра делает его несвязным.
- Любая пара вершин соединяется единственной цепью.
- Не имеет циклов и добавление одного ребра между любыми двумя вершинами приводит к появлению одного и только одного цикла.
Раскраска графов
Раскраской графа G = (V,E) называется отображение D: V® N . Раскраска называется правильной, если образы любых двух смежных вершин различны: D (U) ≠ D (V), если (U,V) Î I. Хроматическим числом графа называется минимальное количество красок, необходимое для правильной раскраски графа.
Теорема 5.
Граф является планарным тогда и только тогда, когда он не содержит подграфа, изоморфного одному из следующих (графы Понтрягина - Куратовского).
Граф К33
Свойство: В любом планарном графе существует вершина, степень которой<=5.
Способы задания графов:
1. Геометрический:
2. Матрица смежности:
a |
В |
c |
d | |
A |
0 |
1 |
1 |
0 |
B |
1 |
0 |
1 |
0 |
C |
1 |
1 |
0 |
1 |
D |
0 |
0 |
1 |
0 |
Матрица смежности - квадратная матрица, размерности, равной количеству вершин. При этом а[ i, j ]-целое число, равное количеству рёбер, связывающих
i-ю, j-ю вершину. Если в графе нет петель, то диагональные элементы равны 0 .
Если рёбра не повторяются, то все элементы 0 или 1. Если граф неориентированный, то матрица симметрична.
3. Матрица инцидентности:
a |
В |
с |
d | |
A |
1 |
1 |
0 |
0 |
B |
0 |
1 |
1 |
0 |
C |
1 |
0 |
1 |
0 |
D |
0 |
0 |
1 |
1 |
4. Явное задание графа как алгебраической системы:
<{a,b,c,d},{u,v,w,x}; {(u,a),(u,b),(v,b),(v,c),(w,c)
Так как мы рассматриваем
только простые графы, граф нам проще
определять как модель, носителем которой
является множество вершин, а отношение
– бинарное отношение смежности вершин.
Тогда данный граф запишется как <{a,b,c,d}; {(a,b), (b,a),(b,c),(c,b),(a,c),(c,a),
5. Наконец, граф можно задать посредством списков.
Например:
вариант 1: списком пар вершин, соединенных ребрами (или дугами);
вариант 2: списком списков для каждой вершины множества смежных с ней вершин.
2. Задачи на графах.
2.1. Описание различных задач на графах.
Развитие теории графов в основном
обязано большому числу всевозможных
приложений. По-видимому, из всех математических
объектов графы занимают одно из первых
мест в качестве формальных моделей реальных
систем.