Скачиваний:
29
Добавлен:
02.05.2014
Размер:
227.33 Кб
Скачать

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

Во многих прикладных задачах изучаются системы связей между различными объектами. Объекты называются вершина­ми и отмечаются точками, а связи между вершинами называются дугами и отмечаются стрелками между соответствующими точками (рисунок 1.1).

Рисунок 1.1

Такие системы и образуют графы. Граф может изображать сеть улиц в городе: вершины гра­фа – перекрестки, а дуги – ули­цы с разрешенным направлени­ем движения (улицы могут быть с односторонним и двусторонним движением). В виде графов можно представить блок – схемы про­грамм (вершины – блоки, а дуги – разрешенные переходы от одного блока к другому), электри­ческие цепи, географические карты и молекулы химических со­единений, связи между людьми и группами людей. Перейдем к точным определениям.

Графом называется алгебраическая система G= (М,R), гдеR– двухместный предикатный символ. Элементы носителя М называются вершинами графаG, а элементы бинарного отноше­нияRМ2– дугами. Таким образом, дугами являются пары вершин (a,b)R. При этом дуга (a,b) называется исходящей из вершины а и заходящей в вершинуb.

Изображение графа G= (М,R) получается путем расположения различных точек на плоскости для каждой вершиныaМ, причем если (а, b)  R, то проводится стрелка (дуга) из вершины а к вершинеb.

Пример: Изображение графа Gс множеством вершин М

{1,2,3,4} и множеством дуг R= {(1,1), (1,2), (2,3),(3, 4), (4,3), (4,1)} представлено на рисунке 1.1.

При задании графа для нас не имеет значе­ния природа связи между вершинами а и b, важ­но только то, что связь существует и информация о связях содержится во множестве дугR. Однако часто возникают ситуации, при которых такой информации оказывается недостаточно, например, в случаях, когда имеется несколько дуг, исходящих из вершины а и заходящих в вершинуb, такие дуги называются кратными (рисунок 1.2). Тогда используется понятие мультиграфа.

Рисунок 1.2.

Мулътиграфом Gназывается тройка (М,U,P), в которой М – множество вершин,U– множество дуг, а РМUМ – трехместный предикат, называемый инцидентором и представляемый следующим образом: (a,u,b)Pтогда и только тогда, когда дуга и исходит из вершины а и заходит в вершинуb. Отметим, что любой граф можно представить в виде мультиграфа.

Граф G= (M,R) называется ориентированным (орграфом), если найдется дуга (а,b)Rтакая, что (b, а)R. Если же отношениеRсимметрично, т. е. из (а,b)Rследует (b, а)R, то графGназывается неориентированным (неорграфом). Если одновременно пары (а,b) и (b, а) принадлежатR(рисунок 1.3, а), то информацию об этих дугах можно представить множеством [а,b] = {(а,b), (b, а)}, называемым ребром, которое соединяет вершины а иb. При этом вершины а иbназываются концами ребра [а,b]. Ребра изображаются линиями (без стрелок), соединяющими вершины (рисунок 1.3, б).

Рисунок 1.3.

Если в мультиграфе вместо дуг рассматриваются ребра, то мультиграф также называется неориентированным. Отметим, что если в орграфе G = (М,R) к каждой дуге (а,b)Rдобавить пару (b, а), то в результате образуется неорграф, который будем называть соответствующим данному орграфуGи обозначать черезF(G).

Пример: Орграфу G, изображенному на рисунке 1.1, соответствует неорграфF(G), изображенный на рисунке 1.4.

Рисунок. 1.4.

Информация о структуре графа может быть задана матрицей бинарного отношения. Пусть G= (М,R) – граф, в котором множество вершин имеетnэлементов: М = {a1,a1, …,an}. Матрицей смежности АG = (Aij) графаGназывается матрица порядкаn, определенная следующим образом:

Если Аij= 1, то вершина аjназывается последователем вершины аi, а аi– предшественником аj. Вершины аiи аjназываются смежными, еслиAij= 1 илиAji= 1.

Если G– мультиграф, то в матрице смежностиAGэлемент Аijпо определению равен числу дуг, исходящих из вершины аiи заходящих в вершину аj(i,j{1, ...,n}).

Рисунок 1.5.

Граф G, изображенный на рисунке 1.1.5, имеет матрицу смежности

Отметим, что если G– неорграф, то матрица смежностиAGсимметрична, т. е. не меняется при транспонировании:.

Петлей в графе Gназывается дуга, соединяющая вершину саму с собой. ЕслиG– граф без петель, то в матрице смежностиAGпо главной диагонали стоят нулевые элементы:

Теорема 1. Графы изоморфны тогда и только тогда, когда их матрицы смежности получаются друг из друга одно­временными перестановками строк и столбцов (т.е. одновременно с перестановкой i- й иj- й строк переставляютсяi- й иj- е столбцы).

Согласно этой теореме по матрице смежности граф восста­навливается однозначно с точностью до изоморфизма.

В графе G= (М,U, Р) дугаuUназывается инци­дентной вершине аМ, если (а,u,b)Р или (b,u, а)Р для некоторогоbМ. Если М = {a1, ...,am},U= {u1, ...,un}, то матрицей инцидентностиBG= (Вij) мультиграфаGна­зывается матрица размераm*n, определяемая по следующему правилу:

Рисунок. 1.6.

Пример: Мультиграф G, изображенный на рисунке 1.6, имеет матрицу инцидентности

Мультиграфы G= (M,U,P) иG' = (M',U',P') называ­ются изоморфными, если существуют биекции: ММ' и:UU' такие, что (a,u,b)Р тогда и только тогда, когда ((a),(u),(b))P’.

Аналогично теореме 1 справедлива

Теорема 2. Мультиграфы GиG' изоморфны тогда и только тогда, когда их матрицы инцидентности получаются друг из друга некоторыми перестановками строк и столбцов.

Пути и маршруты

Путем (или ориентированным маршрутом) ориентированного графа называется последовательность дуг, в которой конечная вершина всякой дуги, отличной от последней, является началь­ной вершиной следующей.

Так, на рис. 1.6 последовательности дуг

а6 а5 а9 a8 а4 (1.1)

а1 а6 а5 а9 (1.2)

а1 а6 а5 а9 а10 а6 а4 (1 3)

являются путями.

Рисунок 1.6

Дуги а = (хi , xj), xi ≠ xj , имеющие общие концевые вершины, называются смежными. Две вершины xi и xj называются смежными, если какая-нибудь из двух дуг (xi, xj) и (хj), xi) или обе одно­временно присутствуют в графе. Так, например, на рис. 1.6 дуги а1, а10, а3 и а6, как и вершины х5 и х3, являются смежными, в то время как дуги а1 и а5 или вершины х5 и x3 не являются смежными.

Ориентированной цепью (или, короче, орцепъю) называется такой путь, в котором каждая дуга используется не больше одного раза. Так, например, приведенные выше пути (1.1) и (1.2) являют­ся орцепями, а путь (1.3) не является таким, поскольку дуга ав в нем используется дважды.

Простой орцепъю называется такой путь, в котором каждая вершина используется не более одного раза. Например, путь (1.2) является простой орцепью, а пути (1.1) и (1.3) — нет. Очевидно, что простая орцепь является также орцепью, но обратное утвер­ждение неверно. Например, путь (1.1) является орцепью, но не простой орцепью, путь (1.2) является орцепью и простой орцепью, а путь (1.3) не является ни орцепью, ни простой орцепью. Маршрут есть неориентированный «двойник» пути, и это понятие рассматривается в тех случаях, когда можно пренебречь направ- ленностью дуг в графе. Таким образом, маршрут есть последова­тельность ребер а1, а2,...,aq , в которой каждое ребро ai, за исключением, возможно, первого и последнего ребер, связано с ребрами аi-1 и ai+1 своими двумя концевыми вершинами. После­довательности дуг

а2, a4, a8, a10, (1.4)

a2, a7, а8, а4, а3 (1.5)

a10, a7, а4, а8, а7, а2 (1.6)

в графе, изображенном на рис. 1.2, являются маршрутами; черта над символом дуги означает, что ее ориентацией пренебрегают, т. е. дуга рассматривается как неориентированное ребро.

Точно так же, как мы определили орцепи и простые орцепи, можно определить цепи и простые цепи. Так, например, маршрут (1.4) есть цепь и простая цепь, маршрут (1.5) — цепь, но не простая цепь, а маршрут (1.6) не является ни цепью, ни простой цепью.

Путь или маршрут можно изображать также последователь­ностью вершин, что мы и будем использовать. Путь (1.1) можно представить также последовательностью вершин х2, х5, xk, х3, х5, х6 и такое представление часто оказывается более полезным в тех случаях, когда осуществляется поиск простых орцепей пли простых цепей.

Веса и длина пути

Иногда дугам графа G сопоставляются (приписываются) чис­ла — дуге (xt, xj) ставится в соответствие некоторое число с,;-, называемое весом, или длиной, или стоимостью (ценой) дуги. Тогда граф G называется графом со взвешенными дугами. Иногда веса (числа у,) приписываются вершинам xt графа, и тогда полу­чается граф со взвешенными вершинами. Если в графе веса при­писаны и дугам, и вершинам, то он называется просто взвешен­ным.

При рассмотрении пути μ, представленного последовательно­стью дуг (ах, а2, . . ., aq), за его вес (или длину, или стоимость) принимается число I(μ), равное сумме весов всех дуг, входящих в μ, т. е.

Таким образом, когда слова «длина», «стоимость», «цена» и «вес» применяются к дугам, то они эквивалентны по содержанию, и в каждом конкретном случае выбирается такое слово, которое

Рисунок 1.3

ближе подходит по смыслу и совпадает с принятым в литературе. Длиной (или мощностью) пути и. называется число дуг, входя­щих в него.

Петли, ориентированные циклы и циклы

Петлей называется дуга, начальная и конечная вершины кото­рой совпадают. На рис. 1.7, например, дуги а2и а5являются пет­лями.

Путь а1, а2, ... ,aqназывается замкнутым, если в немначальная вершина дуги а1 совпадает с конечной вершиной дуги аq. Так, например, в графе, приведенном на рис. 1.7, последова­тельности дуг

а3 6, а11, (1.7)

а11 , а3, а4, а7, аi, а12, а9, (1.8)

а3, а4, а7, а10, а9, а11, (1.9)

являются замкнутыми путями.

Пути (1.7) и (1.9) являются замкнутыми простыми орцепями (контурами, или простыми орциклами), поскольку в них одна и та же вершина используется только один раз (за исключением начальной и конечной вершин, которые совпадают), а путь (1.8) не является контуром, так как вершинах1 используется в нем дважды. Контур, проходящий через все вершины графа, имеетособое значение и называется гамилътоновым контуром. Конеч­но, не все графы обладают гамильтоновыми контурами. Так, например, контур (1.9) является гамильтоновым контуром графа, приведенного на рис. 1.7, а граф на рис. 1.6 не имеет гамильтоно-вых контуров, поскольку не существует такой дуги, для которойх1 была бы конечной вершиной.

Замкнутый маршрут является неориентированным двойником замкнутого пути. Таким образом, замкнутый маршрут является маршрутом х1, х2, ... ,xq, в котором совпадают начальная и конечная вершины, т. е. в которомхх =xq.

На рис. 1.7 маршруты

a1, а12, а10, (1.10)

а10, а1, а3, а4, а7, а1, а12 (1.11)

являются замкнутыми маршрутами.

Соседние файлы в папке Курсовая работа - Поиск критического пути в ориентированном ациклическом графе