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

27

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

0

0

0

0

0

0

2

1

0

0

1

0

0

0

0

0

0

3

0

0

0

1

1

0

0

0

0

0

4

0

1

1

0

0

1

0

0

0

0

5

0

0

1

0

0

1

0

0

0

0

6

0

0

0

1

1

0

1

0

0

0

7

0

0

0

0

0

1

0

1

1

0

8

0

0

0

0

0

0

1

0

1

0

9

0

0

0

0

0

0

1

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

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