Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
RGR_Issledovanie_grafov.doc
Скачиваний:
4
Добавлен:
21.11.2018
Размер:
1.26 Mб
Скачать

3. Пример выполнения работы

3.1. Исходный ориентированный граф G приведен на рис.3.1.

Рис. 3.1

3.2. Нижний граф (приложение 1) приведен на рис. 3.2.

Рис. 3.2

3.3.1. Матрица инцидентности

Запишем множества всех вершин и всех ребер, соединяющих вершины графа.

Множество вершин:

V ={1,2,3,4,5,6,7,8,9,10}

Множество ребер:

Е={{1,5},{5,6},{6,7},{7,4},{4,10},{10,9},{9,8},{8,1},{1,2},{2,3},{3,4},{2,6},

{6,3},{2,9},{3,9},{3,10},{2,8}}.

Построим матрицу инцидентности А, считая, что в строках находятся номера вершин, а в столбцах – ребра графа /1/. Будем ставить’1’, если вершина vi инцидентна ребру е, ставить ’0’, если вершина vi не инцидентна ребру еj (табл. 3.1).

Таблица 3.1

a

b

c

d

e

f

g

h

i

j

k

l

m

n

o

p

q

1

1

0

0

0

0

0

0

1

1

0

0

0

0

0

0

0

0

2

0

0

0

0

0

0

0

0

1

1

0

1

0

1

1

0

0

3

0

0

0

0

0

0

0

0

0

1

1

0

1

0

0

1

1

4

0

0

0

1

1

0

0

0

0

0

1

0

0

0

0

0

0

5

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

6

0

1

1

0

0

0

0

0

0

0

0

1

1

0

0

0

0

7

0

0

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

8

0

0

0

0

0

0

1

1

0

0

0

0

0

1

0

0

0

9

0

0

0

0

0

1

1

0

0

0

0

0

0

0

1

1

0

10

0

0

0

0

1

1

0

0

0

0

0

0

0

0

0

0

1

3.3.2. Матрица смежности

Построение матрицы смежности S проведем для не взвешенного графа G таким образом: если две вершины vi и vj соединены между собой, тогда элементу матрицы смежности sij присвоим ’1’, иначе элементу матрицы смежности sij присвоим ’0’ (табл.3.2).

Таблица 3.2

1

2

3

4

5

6

7

8

9

10

1

0

1

0

0

1

0

0

1

0

0

2

1

0

1

0

0

1

0

1

1

0

3

0

1

0

1

0

1

0

0

1

1

4

0

0

1

0

0

0

1

0

0

1

5

1

0

0

0

0

1

0

0

0

0

6

0

1

1

0

1

0

1

0

0

0

7

0

0

0

1

0

1

0

0

0

0

8

1

1

0

0

0

0

0

0

1

0

9

0

1

1

0

0

0

0

1

0

1

10

0

0

1

1

0

0

0

0

1

0

3.3.3. Цикломатическое число

Цикломатическое число ν (G) равно числу хорд любого остова в графе G, если связный граф имеет n вершин и m ребер /1/:

n (G) = m-n+1

Если граф G содержит k компонент связности, то его цикломатическое число

ν (G) = m-n+k

Наш граф содержит одну компоненту связности, поэтому будем искать цикломатическое число по формуле ν(G) = m-n+1.

n=10 (количество вершин)

m=17 (количество ребер)

ν(G) = m - n +1=17-10 +1=8

т.е. в графе содержится 8 базисных циклов.

3.3.4. Базисная цикломатическая матрица

В предыдущем пункте мы выяснили, что число базисных циклов равно цикломатическому числу и равно 8.

Для построения базисной цикломатической матрицы БЦМ нам необходимо выделить остов D графа G (рис. 3.3).

Остов D

Рис. 3.3

Теперь можно составить БЦМ (табл. 3.3). В качестве хорды будут выступать те ребра графа G, которые мы удалили для получения остова D. Все остальные ребра будут составлять остов.

Таблица 3.3

Хорды

Остов D

l

m

d

e

q

p

o

n

a

b

c

i

j

k

h

g

f

R1

1

0

0

0

0

0

0

0

1

1

0

1

0

0

0

0

0

R2

0

1

0

0

0

0

0

0

1

1

0

1

1

0

0

0

0

R3

0

0

1

0

0

0

0

0

1

1

1

1

1

1

0

0

0

R4

0

0

0

1

0

0

0

0

0

0

0

1

1

1

1

1

1

R5

0

0

0

0

1

0

0

0

0

0

0

1

1

0

1

1

1

R6

0

0

0

0

0

1

0

0

0

0

0

1

1

0

1

1

0

R7

0

0

0

0

0

0

1

0

0

0

0

1

0

0

1

1

0

R8

0

0

0

0

0

0

0

1

0

0

0

1

0

0

1

0

0

3.3.5. Цикломатическая матрица

Для построения цикломатической матрицы C(G) условимся, что каждому элементу матрицы cij взаимно однозначно сопоставляется вектор-строка:

1, если j-ое ребро входит в i-й цикл

cij =

0, в противном случае

Графу G отвечает 17- компонентный вектор  = (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1).

Всякий вектор может быть представлен линейной комбинацией базисных векторов. Следовательно, вектор  может быть разложен в поле чисел по mod (2) по своим базисным циклам /2/.

Для построения всего множества циклов графа G необходимо будет выполнить (2ν – ν-1) раз операцию сложения по модулю 2 над базисными циклами, где ν – это цикломатическое число графа. Поэтому для нашего графа эту операцию необходимо провести (28-8-1) раз, т.е. 247 раз.

В общем случае не все графы поддаются бинарному разложению, поэтому для разложения графов по их выделенным базисным компонентам можно использовать операции по mod (3), mod (4) или вообще без модуля / 2 /.

В табл. 3.4 приведена часть цикломатической матрицы C(G).

Таблица 3.4

a

b

c

d

e

f

g

h

i

j

k

l

m

n

o

p

q

R1

1

1

0

0

0

0

0

0

1

0

0

1

0

0

0

0

0

R2

1

1

0

0

0

0

0

0

1

1

0

0

1

0

0

0

0

R3

1

1

1

1

0

0

0

0

1

1

1

0

0

0

0

0

0

R4

0

0

0

0

1

1

1

1

1

1

1

0

0

0

0

0

0

R5

0

0

0

0

0

1

1

1

1

1

0

0

0

0

0

0

1

R6

0

0

0

0

0

0

1

1

1

1

0

0

0

0

0

1

0

R7

0

0

0

0

0

0

1

1

1

0

0

0

0

0

1

0

0

R8

0

0

0

0

0

0

0

1

1

0

0

0

0

1

0

0

0

R9

0

0

0

0

0

0

0

0

0

1

0

1

1

0

0

0

0

R10

0

0

0

0

0

0

1

0

0

0

0

0

0

1

1

0

0

R11

0

0

0

0

1

1

0

0

0

0

1

0

0

0

0

1

0

В матрице показаны базисные циклы R1 – R8, которые в совокупности включают в себя все ребра графа G. Циклы R9, R10, R11 получены как линейная комбинация базисных векторов по модулю 2

R9 = R1 R2

R10 = R8 R7

R11 = R4 R6

3.3.6. Толщина графа

Толщиной графа G называется наименьшее число планарных графов, объединение которых дает граф G /1/. Толщина планарного графа равна 1. Оценим нижнюю границу толщины графа:

где Si – степень i-й вершины; n – количество вершин.

Определим степень каждой вершины, т.е. количество ребер, инцидентных данной вершине (табл. 3.5).

Таблица 3.5

Номер

вершины

Степень вершины

1

3

2

5

3

5

4

3

5

2

6

4

7

2

8

3

9

4

10

3

Имеем

  1. - 2

t(G)≥1+ = 1+ 2/3 =1

6*(10 -2 )

Поэтому минимальная толщина графа равна 1.

3.3.7. Выделение планарных подграфов

В нашем графе ни одно ребро не пересекается с другим, кроме как в вершинах

графа (рис 3.4).

Рис. 3.4

Согласно теореме Понтрягина /1/, граф планарен тогда и только тогда, когда он не содержит подграфа, гомеоморфного F5 или K3,3 (приложение 2). Мы видим, что исходный граф не содержит подграфы, гомеоморфные F5 или K3,3, поэтому он планарный.

3.3.8. Плоская укладка выделенных планарных подграфов в узлы прямоугольной решетки

Граф называется планарным, если его можно уложить на плоскости. Плоский граф – это граф, уже уложенный на плоскости /2/.

В пункте 3.3.7 отмечено, что исследуемый граф G является планарным графом.

В графе G заданы только элементные вершины.

Рассчитаем число горизонтальных (m) и вертикальных (n) линий в прямоугольной решетке (приложение 3); m и n определяются как минимальные величины, удовлетворяющие следующим условиям /3/:

m* n ≥ |V| -площадь решетки;

2 * ( m+n )- 4 ≥ 0 - число внешних контактных площадок;

mnm+1 – квадратичность решетки.

m*n ≥ 10 m*n ≥ 10 m*n ≥ 10

2*(m+n)-4 ≥ 0 m+n ≥ 2 m ≥ 1

m n m+1 m n m n

n m+1 n m+1

Возможные значения m, n, m*n приведены в табл.3.6.

Таблица 3.6

m

1

1

2

2

3

3

n

1

2

2

3

3

4

m*n

1

2

4

6

9

12

Произведение m на n больше 10 при m = 3 и n = 4. Следовательно, решетка будет содержать 3 горизонтальных линии и 4 – вертикальных.

Один из вариантов плоской укладки планарного графа в узлы прямоугольной решетки показан на рис. 3.5.

Рис 3.5

3.3.9. Раскраска вершин и ребер графа

Осуществим раскраску вершин так, чтобы инцидентные вершины были разных цветов, но при этом количество цветов должно быть минимальным /2,4,5/. Аналогично раскрашиваем и ребра графа G (рис. 3.6).

Рис 3.6

3.4. Определение диаметра ориентированного графа. Нахождение количества компонент сильной связности

Исходный ориентированный граф изображен на рис. 3.7.

Рис. 3.7

Составим матрицу смежности S (G) (табл. 3.7). Для этого в строках и столбцах отметим все вершины графа G. Построение матрицы смежности S проведем теперь для ориентированного графа G таким образом: если две вершины vi и vj соединены между собой, тогда элементу матрицы смежности sij присвоить ту дугу, для которой вершина vi является началом, а вершина vj концом.

Таблица 3.7

Матрица смежности S (G)

1

2

3

4

5

6

7

8

9

10

1

0

i

0

0

a

0

0

h

0

0

2

0

0

j

0

0

l

0

n

o

0

3

0

0

0

k

0

0

0

0

0

0

4

0

0

0

0

0

0

0

0

0

e

5

0

0

0

0

0

b

0

0

0

0

6

0

0

m

0

0

0

c

0

0

0

7

0

0

0

d

0

0

0

0

0

0

8

0

0

0

0

0

0

0

0

g

0

9

0

0

p

0

0

0

0

0

0

f

10

0

0

q

0

0

0

0

0

0

0

Граф называется сильно связным, если любая пара вершин соединена путем /1/.

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

Теперь мы можем воспользоваться теоремой, которая говорит, что граф состоит из k компонент связности тогда и только тогда, когда его матрица достижимости является k-клеточной.

Матрица А называется k- клеточной, если в результате перестановки строк и столбцов она приводится к виду, показанному в табл. 3.8, где подматрица А, i = 1, …. k, не содержит ни одного нулевого элемента (кроме, быть может, диагональных).

Таблица 3.8

А

0

0

0

0

А

0

0

0

0

А

0

0

0

0

А

Максимальная степень, в которую необходимо возвести матрицу смежности, равна диаметру графа. Его можно определить так:

d(G)=max min l (vi ,vj), где l-длина дуги от vi до vj вершины.

j i

Диаметр нашего графа оказался равен 4. Найдем матрицу достижимости по формуле:

D(G)=

где S(G)-матрица смежности;

i=1…d(G);

d(G)-диаметр графа;

Для нашего графа S2 (G)+ S3 (G)+ S4 (G)

Составим матрицы S2 (G) (табл. 3.9), S3 (G) (табл. 3.10), S4 (G) (табл. 3.11).

При возведении в n-ю степень матрицы смежности S= умножение рассматриваем как конкатенацию – приписывание справа к идентификатору, соответствующему i-ой строке, идентификатора, соответствующего j – му столбцу, суммирование – как объединение полученных в результате умножения слов.

Таблица3.9

Матрица S2 (G)

1

2

3

4

5

6

7

8

9

10

1

0

0

ij

0

0

il,ab

0

in

io,hg

0

2

0

0

lm,op

jk

0

0

lc

0

ng

of

3

0

0

0

0

0

0

0

0

0

ke

4

0

0

eq

0

0

0

0

0

0

0

5

0

0

bm

0

0

0

bc

0

0

0

6

0

0

0

mk,cd

0

0

0

0

0

0

7

0

0

0

0

0

0

0

0

0

de

8

0

0

gp

0

0

0

0

0

0

gf

9

0

0

fq

pk

0

0

0

0

0

0

10

0

0

0

qk

0

0

0

0

0

0

Таблица 3.10

Матрица S3 (G)

1

2

3

4

5

6

7

8

9

10

1

0

0

ilm,

iop,

abm,

hgp

ijk

0

0

ilc,

abc

0

ing

iof,

hgf

2

0

0

ngp,

ofq

lmk,

lcd,

opk

0

0

0

0

0

jke,

ngf

3

0

0

keq

0

0

0

0

0

0

0

4

0

0

0

eqk

0

0

0

0

0

0

5

0

0

0

bmk,

bcd

0

0

0

0

0

0

6

0

0

0

0

0

0

0

0

0

mke,

cde

7

0

0

deq

0

0

0

0

0

0

0

8

0

0

gfq

gpk

0

0

0

0

0

0

9

0

0

o

fqk

0

0

0

0

0

pke

10

0

0

0

0

0

0

0

0

0

qke

Таблица 3.11

Матрица S4 (G)

1

2

3

4

5

6

7

8

9

10

1

0

0

ingp,

iofq,

hgfq

ilmk,

ilcd,

iopk,

abmk,

abcd,

hgpk

0

0

0

0

0

ijke,

ingf

2

0

0

jkeq,

ngfq

ngpk,

ofqk

0

0

0

0

0

lmke,

lcde,

opke

3

0

0

0

keqk

0

0

0

0

0

0

4

0

0

0

0

0

0

0

0

0

eqke

5

0

0

0

0

0

0

0

0

0

bmke,

bcde

6

0

0

mkeq,

cdeq

0

0

0

0

0

0

0

7

0

0

0

deqk

0

0

0

0

0

0

8

0

0

0

gfqk

0

0

0

0

0

gpke

9

0

0

pkeq

0

0

0

0

0

0

fqke

10

0

0

qkeq

0

0

0

0

0

0

0

Составим матрицу достижимости D(G) (табл.3.12).

Таблица 3.12

Матрица достижимости D(G)

1

2

3

4

5

6

7

8

9

10

1

0

i

ij,

ilm,

iop,

abm,

hgp

ingp,

iofq,

hgfq

ijk,

ilmk,

ilcd,

iopk,

abmk,

abcd,

hgpk

a

il,

ab

ilc,

abc

h,

in

io,

hg,

ing

iof,

hgf,

ijke,

ingf

2

0

0

j,

lm,

op, ngp,

ofq

jkeq,

ngfq

jk, lmk,

lcd,

opk ngpk,

ofqk

0

l

lc

n

o,

ng

of,

jke,

ngf,

lmke,

lcde,

opke

3

0

0

keq

k,

keqk

0

0

0

0

0

ke

4

0

0

eq

eqk

0

0

0

0

0

e,

eqke

5

0

0

bm

bmk,

bcd

0

b

bc

0

0

bmke,

bcde

6

0

0

m,

mkeq,

cdeq

mk,

cd

0

0

c

0

0

mke,

cde

7

0

0

deq

d,

deqk

0

0

0

0

0

de

8

0

0

gp,

gfq

gpk,

gfqk

0

0

0

0

g

gf,

gpke

9

0

0

p,

fq,

pkeq

pk,

fqk

0

0

0

0

0

f,

pke,

fqke

10

0

0

q,

qkeq

qk

0

0

0

0

0

qke

Суммируя S, S2, S3, S4 получаем, что в результирующей матрице достижимости D(G) присутствуют нулевые элементы. Это означает, что не для всех вершин нашего графа существуют цепи длиной 1, 2, 3, 4. Наш ориентированный граф не является сильно связным, так как граф называется сильно связным, если любая пара его вершин соединена путем. Мы видим, что, например, вершина 7 не соединена путем с вершиной 9.

Найдем количество компонент сильной связности. Компоненте сильной связности в матрице достижимости соответствует подматрица максимального размера, каждый элемент которой не равен нулю. В данной матрице имеем 1 компоненту сильной связности с носителем {3, 4, 10}.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]