Основы теории графов.

Возврат на основную страницу...

Теория графов важный раздел дискретной математики, практическая роль которой возросла за счёт развития различных АСУ и вычислительной техники дискретного действия, в теоретическом плане помимо связей с комбинаторикой и геометрией наметились сдвиги на стыке теории графов с алгеброй, математической логикой.

Что же такое граф? Начнём с поясняющего примера:

Вспомогательный Рисунок №1 чтобы посмотреть рисунок, щёлкните по гиперссылке и смотрите рис 0.1. На рис. изображён граф, вершинами которого служат пронумерованные вершины, а рёбрами - линии (со стрелками или без), соединяющие некоторые из этих кружков. Ребро а ориентированное (направленное): оно соединяет вершину 1 с вершиной 2, но не соединяет 2 с 1; к такому тину рёбер, называемых дугами, относятся так же e, f, g. Ребро h не ориентированное: оно одновременно соединяет вершину 1 с 4, так и 4 с 1; к таким рёбрам, называемым ещё звеньями, относятся также i, j. Наконец, каждое из рёбер b, c, d, k является петлёй - соединяет некоторую вершину с ней же.

О рёбрах a, b, e, f, g, h говорят, что они инцидентны вершине 1, а о вершине 1 - что она инцидентна каждому из этих рёбер; в отношении дуг можно уточнить: дуги а, e и f исходят из 1, а другая g заходит в неё. Вершины 3 и 5 изолированные: ни одно ребро не соединяет такую вершину с другой или другую с ней; вершину 3 иногда называют голой, желая иногда подчеркнуть, что при ней нет даже петель.

Рассмотренный граф является конечным: множество {1, 2, 3, 4, 5} его вершин и множество {a, b, c, d, e, g, h, i, j, k} его рёбер конечны.

Из выше сказанного можно сделать заключение и подвести итог. Рассмотрим конечное множество точек {V} - назовём его вершинами, а конечный набор линий {X}, соединяющих некоторые пары вершин - назовём рёбрами. Где V не равно пустому множеству, а X некоторый набор элементов вида (v, w). В общем случае в наборе X могут встречаться пары одинаковые, а также (v, v) петли. Одинаковые пары назовём кратными. Кол-во кратных рёбер называется кратностью. Про V и X будем говорить, что они определяют граф с кратными рёбрами и петлями. Или же будем этот граф называть псевдографом и дадим обозначение G=(V, X). Псевдограф без петель называется мультиграфом, если в наборе X ни одна пара не встречается более одного раза, то мльтиграф называется графом, если пары в наборе X являются упорядоченными, то граф называется ориентированным - орграф. Рёбра орграфа называются дугами. Ориентированный граф будем обозначать D, а не орграф G.

Далее будем ставить в соответствие некоторому графу геометрическую конфигурацию.

Вспомогательный Рисунок №1 на рис 0.2 гиперссылки показаны основные атрибуты графа.

Смежность, инцидентность, степень.

Если x={v, w} - ребро графа, то v и w называются концами ребра x, в этом случае так же будем говорить, что x соединяет v и w, и если v начало, а w конец, то будем говорить, что x выходит из v и заходит в w. Если x выходит из v или заходит в w, если v является концом(началом) ребра(дуги) x, то говорят, что v и x инцидентны. Вершины v и w графа G называются смежными, если рёбра их соединяющие принадлежат X. Два ребра называются смежными если они имеют общую вершину. Степенью вершины v графа G называется число d (v). Это число рёбер графа G инцидентных вершине v. Вершина графа со степенью 0 - изолированная, а со степенью 1 висячей. Полустепенью исхода, захода вершины v орграфа D называется число дуг орграфа, исходящих из v (заходящих в v).

Вспомогательный Рисунок №1 на рис 0.2 в вершину v2 входит дуга x1, а выходит x2, поэтому можно записать d +(v2)=1 полу степень исхода, d -(v2)=1 полу степень захода.



Изоморфизм, гомеоморфизм. Графы G1(V1,X1) и G2(V2,X2) называются изоморфными, если существует биективное отображение φ:V1→ V2, сохраняющая смежность, т.е.

{v, w}О X1Ы {φ(v),φ(w)}О X2.

Орграфы D1(V1,X1) и D2(V2,X2) называются изоморфными, если существует биективное отображение φ:V1→ V2, сохраняющая смежность, т.е. {v, w}О X1Ы {φ(v),φ(w)}О X2.

Замечание: из определения видно, что изоморфные графы отличаются только обозначением вершин.

Признаки:

Если графы G1 и G2 изоморфны, то выполняется:

а) " v О V1: d (v)=d (φ(v))

б) m(G1)=m(G2); n(G1)=n(G2).

Если орграфы D1 и D2 изоморфны, то:

а) " v О V1: d +(v)=d +(φ(v))

d -(v)=d -(φ(v))

б) m(D1)=m(D2); n(D1)=n(D2). Где m - количество рёбер, а n - вершин.

Вспомогательный Рисунок №1 на рис 0.3 показаны изоморфные графы.

Операция подразвиения: (измельчения дуги (u, v) в орграфе D) состоит в удалении из набора X дуги (u, v) и добавления к множеству V новой вершины w и добавлении к набору X двух дуг (u, w), (w, v). Орграф D1 называется подразвиением орграфа D2, если D1 можно получить из D2 путём последовательного применения операций подразвиения дуг. Аналогично с графами. Щёлкните на вспомогательный рис №1, чтобы посмотреть пример подразвиения, он показан на рис 0.4.

Гомеоморфными называются графы G1, G2 (D1, D2), если их подразвиение является изоморфным.

Маршруты, пути: последовательность v1, x1, v2, x2,…, xk,vk+1, в которой чередуются вершины и рёбра, называется маршрутом, соединяющим вершины v1, vk+1. Последовательность v1, x1, v2, x2,…, xk,vk+1, в которой чередуются вершины и дуги, называется путём, соединяющим вершины v1- vk+1. При этом v1 начальная вершина vk+1 конечная, а остальные внутренние. Одна и та же вершина может быть начальной, конечной и внутренней. Число рёбер (дуг) в маршруте (пути) называется длиной маршрута (пути). Маршрут (путь) называется замкнутым, если его начальная вершина совпадает с конечной. Не замкнутый маршрут (путь), в котором все рёбра (дуги) попарно различны называется цепью. Цепь, в которой все вершины попарно различны называется простой. Замкнутый маршрут(путь), в котором все рёбра (дуги) попарно различны называется циклом (контуром). Цикл, в котором все вершины попарно различны, называется простым.

 

Матричное задание графов. Матрица смежности и инцидентности.

Пусть D-орграф, где V={v1,v2,…,vn}, X={x1,x2,…,xn}. Матрицей смежности орграфа D называется матрица A(D)=[aij] порядка n, у которой:

1, (vi,vj) О x

0, (vi,vj) П x

Матрицей инцидентности орграфа D называется матрица (n ґ m) B(D)=[bij] , у которой:

1, если вершина vi является концом дуги xj

-1, если vi является началом дуги xj

0, если vi не инцидентна дуге xj

Вспомогательный рисунок №2 на рис 1.2 показан пример матричного задания орграфа.

Пусть G(V, X) граф, где V={v1,v2,…,vn}, X={x1,x2,…,xn}. Матрицей смежности графа G называется матрица A(G)=[aij] порядка n, у которой:

1, (vi,vj) О x

0, (vi,vj) П x

Матрицей инцидентности графа G называется матрица (n ґ m) B(G)=[bij], у которой:

1, если вершина vi инцидентна ребру xj

0, если vi не инцидентна xj

Вспомогательный рисунок №2 на рис 1.1 показан пример матричного задания графа.

Связанность. Компоненты связанности.

Говорят, что вершина w орграфа D ( гр. G ) достижима из вершины v, если либо w = v, либо существует путь из v в w (маршрут из v в w ). Говорят, что граф связан (оргр. сильно связанный ), если для его вершин v, w существует маршрут ( путь ), соединяющий эти вершины. Оргр. называется односторонне цельно связанным, если для его вершин по крайней мере одна достижима из другой.

Матрица связанности: пусть D=(V, X) орграф, где V={v1,…,vn}. Матрицей достижимости называется квадратная матрица T(D)=[tij] порядка n, у которой tij=1, если вершина vj достижима из vi, tij=0 в противном случае.

Матрицей сильной связанности орграфа D называется квадратная матрица S(D)=[sij] порядка n, у которой sij=1, если вершина vi достижима из vj и одновременно vj достижима из vi, sij=0 в противном случае. Пусть G=(V, X) граф. Матрицей связанности графа G называется квадратная матрица S(G)=[sij] порядка n, у которой sij=1, если j = i или существует маршрут соединяющий vi и vj, sij=0 в противном случае.

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

Алгоритм Терри: (алгоритм поиска маршрута в связанном графе G, соединяющего заданные вершины v и w О V, где v ≠ w.)

Шаг1: идя по произвольному ребру, всякий раз отмечать направление, которое оно прошло.

Шаг2: исходя из некоторой v' , всегда следовать только по тому ребру, которое не было пройдено или было пройдено в противоположном направлении.

Шаг3: для всякой вершины v', отличной от v отмечать первое заходящее в v' ребро, если v' встречается первый раз.

Шаг4: исходя из некоторой вершины v', отличной от v по первому заходящему ребру идти лишь тогда, когда нет других возможностей.

Так же существуют задачи на нахождение маршрута.

 

Деревья и циклы

Граф G называется деревом, если он является связанным и не имеет циклов. Граф G, все компоненты связности которого являются деревьями, называется лесом.

Свойства деревьев.

Следующие утверждения эквивалентны:

    1. граф G есть дерево;
    2. граф G является связным и не имеет простых циклов;
    3. граф G является связным и число его ребер равно на единицу меньше числа вершин;
    4. Любые две различные вершины графа G можно соединить единственной (и при этом простой) цепью;
    5. Граф G не содержит циклов, но, добавляя к нему любое новое ребро, получаем ровно один (с точностью до направления обхода и начальной вершины обхода) и при том простой цикл (проходящий через добавляемое ребро).

Утверждение. Если у дерева G есть по крайней мере, одно ребро, то у него обязательно найдется висячая вершина.

Утверждение. Пусть G-связный граф, v – висячая вершина в G, G' – граф полученный из G в результате удаления вершины v и инцидентного ей ребра. Тогда G' - связный граф.

Утверждение. Пусть G – дерево с n вершинами и m ребрами. Тогда m= n – 1.

Утверждение. Пусть G' -- граф являющийся деревом, G- граф полученный в результате добавления к G' новой вершины v и ребра {v, W} где W -- некоторая вершина графа G'. Тогда G - дерево.

Утверждение. Пусть G = (v, X) – связный граф с n ребрами и m вершинами и пусть так же выполняется равенство m = n –1. Тогда G – дерево.

Утверждение. Пусть G – дерево. Тогда любая цель в G будет простой.

ОСТОВНОЕ ДЕРЕВО СВЯЗНОГО ГРАФА.

Остовным деревом связного графа G называется любой его подграф, содержащий все вершины графа G и являющийся деревом. Любое остовное дерево графа G есть результат удаления из G ровно m (G) – (n (G) –1) = m (G) – n (G) + 1 рёбер.

Число m (G) – n (G) + 1 называется цикломатическим числом связного графа G и обозначается через v (G).

Алгоритм выделения остовного дерева. Для произвольного связного графа G = (v, X).

Шаг 1. Выбираем в G произвольную вершину v1, которая образует подграф G1 графа G, являющийся деревом. Полагаем i = 1.

Шаг 2. Если i =n, где n = n (G), то задача решена, и Gi – искомое остовное дерево псевдографа G. B противном случае переходим к шагу 3.

Шаг 3.Пусть уже построено дерево Gi являющееся подграфом графа G и содержащее некоторые вершины v1,…,vi , где 1 Ј i Ј n-1. Строим граф Gi+1, добавляя к графу Gi новую вершину vi+1 О v, смежную в G с некоторой вершиной vj графа Gi, и новое ребро {vi+1, vj} (в силу связности G и того обстоятельства, что i<n, указанная вершина vi+1 обязательно найдется). Граф Gi+1 так же является деревом. Присваиваем i: = i +1 и переходим к шагу 2.

кликни по микрофону, чтоб перейти на основную страницу...

Используются технологии uCoz