Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Солтан, П. С. Экстремальные задачи на графах и алгоритмы их решения

.pdf
Скачиваний:
7
Добавлен:
19.10.2023
Размер:
4.05 Mб
Скачать

[совпадает о множеством решений аналогичной задачи для под­

графа у 0 .

 

 

 

 

 

 

 

 

 

 

Д о к а з а т е л ь с т в

о .

Пусть X

- множество

реше­

ний задачи для

подграфа

у 0 . Согласно теореме

1 2 . I

имеем,

что

^ о ^ У о - Предположим,

 

что

х 0

^ Х Г \ Х 0 .

Отсюда следует,что

F ( X Q ) < F ( X ),

 

 

 

 

 

(2)

Z U c ( x L) d ( x 0 , X i ) > T Z c ( X i ) d ( x , x L).

 

(3 )

X L e i/o

 

 

 

Х і е Уо

 

 

 

 

 

Значение.

F ( X 0 )

 

и

F ( x )

можно,

очевидно,

представить в

виде

 

 

 

 

 

 

 

 

 

 

F ( x 0) = 2 ~

p ( x L) d ( x 0 , x L) + Z Z

Р (х 'і

) с / ( х 0 1

х'ц )+

 

 

 

 

т

 

x ' i f y '

 

*

 

h T Z р ( в ц ) d ( x 0 , x ‘Ct) + t Z

I~ _

P ( * i )

d ( x [ t , x L),

 

X C j ^ j

 

 

t3f/ xi k(3Ct

 

 

 

 

^ ^ ^ h ^ y o\

y

'

 

x<-^+J*Qry'P (xlit ^ a X i t

^ ^xTFy'P^ ^ *

' T

 

 

 

 

 

 

 

 

 

 

* d ( x , x ' L ) + T I T Z

p ( x L) d ( x [ t , x L),

 

 

 

 

t = t x L*Git

 

 

 

 

 

 

 

 

Т . Ѳ і .

 

 

 

 

 

 

 

 

 

 

F ( x 0) ~ T Z c ( x L) d ( x 0 , x ^ + 'L Z T Z р ( Х і ) У ( х ^ , Х і ) ,

 

xLe.y0

L

 

 

i = f хг е 6к

 

 

 

 

 

 

 

 

Г

 

 

 

 

 

F ( x ) = T Z c ( x L) d ( x , x L) + T Z T Z р ( Х 1 ) й ( х ' ц , х с ).

 

Х ^ У о

 

 

 

 

 

 

 

 

 

 

Учитывая неравенство

(3 ),

получим

F ( х 0 ) > F (X.)

, что

противоречит неравенству (2 ) .

Это

завершает

доказательство

тео­

ремы.

 

 

 

 

 

 

 

 

 

 

За м е ч а н и е . Вышеизложенное позволяет решить задачу XXX (случай, когда граф G обладает ребрами оочленения), не имея полной исходной информации о длине ребер графа G . В част­

ности, если решение задачи XXX - суть вершины ребра сочлене­ ния графа G , то полностью отпадает необходимость в исходной информации о длинах ребер графа G.

§13. Задача Штейнера для графов о точками сочленения

В§ II был изложен эффективный метод решения задачи Штей-

60

нѳра для графа

G —( X , U ) y когда

он является

деревом, т . е , для

олучая^когда каждое ребро графа есть ребро сочленения,

 

а

в § 12

был приведен метод овѳдения задачи Штейнера

для

графа G=(X,U)

(при условии,

что множество ребер сочленения не

пусто)

 

к

анало­

гичной задаче

для некоторого

подграфа

G ' - ( X ' , U ')

графа

G,

у которого не имеется ребер сочленения, а веса вершин

 

опреде­

ленным образом изменены, В данном параграфе

покажем,

что

зада­

чу

Штейнера можно свести,

 

вообще говоря,

к аналогичной

 

 

задаче

для

собственного

подграфа

G ,,= (X"f U")

 

графа G , т . е .

для

подграфа

G “~( X" , U" )

,

 

у которого X

^ X ' ,

если

 

только

подграф

G ' - ( X ' , U )

 

обладает

точками сочленения.

 

 

G =

 

Исходя из предыдущего, будем предполагать,

что граф

= ( X, U) обладает

точками

сочленения,

но

не

обладает

ребрами

оо-

членения.

х

 

 

 

 

 

 

 

 

 

G ~ ( X , U ) .

 

 

U(x) будем

 

Пусть

 

-

вершина

графа

 

Через

обозначать множество ребер графа, инцидентных вершине

X .

 

 

 

О п р е д е л е н и е

13 . 1 . Вершина X

связного

 

графа G-

= ( X , U )

называется

точкой

сочленения графа

G ,

если

 

подграф

( X ' { x j ,

U \ U ( x ) - )

 

 

этого

графа

не

связен

[ і ] .

 

 

 

 

 

О п р е д е л е н и е

 

13 . 2 . Максимальный связный

подграф

графа

G,

не имеющий своих точек сочленения,

называется

 

 

[ і 5 ]

блоком графа

G.

Обозначим

ч ер ез/t/ множество блоков

Gi~(Xi,Ui)

графа

G = ( X , U ) .

Легко

заметить,

что блок

обладает

следующими

свойствами:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 °.

Gi

-

связный граф.

 

 

 

 

 

 

 

 

 

 

 

 

 

2 ° .

Gi не

содержит

точек

сочленения.

 

 

 

 

 

 

 

 

3 ° . В М

нет

такого

подграфа

Gi

графа

G, удовлетворяющего

условиям 1° и 2 °,

для которого

Gi

еоть

подграф графа

G[.

 

 

О п р е д е л е н и е

 

 

13 .3 . Множеотво

вершин

X'

 

 

графа

G= ( X, U)

называется

внутреннеустойчивым,

еоли для

любых вер­

шин

X,

и

Хг

из

X'

имеет

меото

U( X, ) П U ( x 2 )= 0 .

 

 

 

 

 

 

Индексом

вершины

X графа

G

назовем

число

\U (x )\

 

и будем

обозначать

его

черев

 

in d G х .

 

Оказывается справедливой

 

 

 

Л е м м а

 

13,1 . Пусть

Gi ~( Xi , Ui )

и

б / = (Xj ,

Uj),

 

 

j

-

 

два произвольных элемента множества М. Тогда име­

 

ют место

соотношения:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ULП Uj = 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Xi n X j =

 

<

либо

0 7

 

 

являющейся

 

 

Иточной сочленения графа

G.

либо

X е Л ,

 

 

 

 

 

 

 

 

 

 

 

 

 

61

 

Д о

к

а з а т е л ь с т в о

,

 

Предположим,

что

U ' -

 

П

П Uj - нецуотое множество. Это

немедленно

приводит

к

противо­

речию

с условием

3 °. Действительно,

 

пусть

и е U ' , тогда,

оче­

видно,

Gij = ( К і

UXj,

UL U Uj)

 

-

 

связный

подграф

графа

G

и

удовлетворяет

условию 2 ° . Но так

 

как

ф

и Gj - подграфы гра­

фа

Ggrто

получаем,

что

Gi

и

 

Gj

не

удовлетворяют

условию

3 °,

Если бы пересечение

Х і

Р Ху

 

 

состояло

 

более

чем

из

одной

вершины,

то

это,

как

и

выше,

противоречило

бы

условию 3 ° . В са­

мом деле,

пусть

X f

и Х2 - два различных

элемента

множества

Хі Л Х у.

 

Тогда

на

основе условия 1° вершины X,

и х г

графа G

могут

быть

соединены

простой цепью

 

С і ( х п

х 2 )

 

элементов

из

ULl

точно

так

же в Gy

вершины

х г

и

х 2

могут

быть

соединены

про­

стой цепью

С / ( х і , х г )

 

элементов

 

из £//.Из

условия

Ui П

Uj=0

имеем,

что

объединение цепей

 

Сі (х , , х2)

 

 

и C j ( x ( 1 x 2)

об­

разует элементарный цикл, который является подграфом графа

G и,

очевидно,

удовлетворяет

условиям

и 2 ° .

Следовательно, G i j -

= ( Xi UXj ,U i

U

Uj )

есть

подграф графа

G

,

 

удовлетворяющий

условиям

и 2 ° . В то

же

 

время

GjC -Gij

,

 

что

противоречит

условиям

3 °.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Х[

 

 

 

Такими же рассуждениями

устанавливается,

что

если

Л Х у^

7* 0 ,

то

это пересечение

есть

 

точка

 

сочленения

графа

G.

Из

лем­

мы

1 3 . I

и

связности

графа

G

 

следует,

 

что

 

множество

вершин

подграфа

G i e

М,

 

являющихся точками сочленения в графе

G1

не

пусто,

Обозначим

это

множество

через

 

 

X ?, і = 1 , 2 , . . t ,

а

X s -

U Xf..

Далее,

если

 

х ы

 

-

некоторый

элемент

из X f

,

то

через

1 К ‘Ш) = (Х-(ы),

 

 

/ =

1,2,

 

 

і Ы )

 

будем

 

обоз-^

начать

те

компоненты

подграфа

 

(X

^ { д у у ,

 

U

^ М / ( х ы ) ) ,

 

для которых

Xi(j)

П Х і

= 0

. Через^Хцл)

 

* JGi(*)

 

обоз­

начим

соответственно

множества

X 4 Х ^ )

 

и

(U j^

 

 

О( U(ccd)\

4

( и(осы) П (

U

jU (x)))), j =

1,2

 

 

 

і ( ы ) ,

 

а

через

G /(cl) =

- ( X i ^ j U i f ^ )

 

 

 

-

подграф графа

G ■

 

 

 

 

 

 

 

 

 

Т е о р е м а

 

13Д .

Пусть

Gi

= ( X i , U i )

 

 

-

блок

гра­

 

фа G. Блок Gі

содержит решения

задачи

Л X X

 

тогда

и толь­

 

ко тогда,

когда

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Z Z Р ( Х ) > Z Z р ( х )

 

 

 

 

 

 

 

 

(I)

 

ідля

 

 

Хе JXi(ä)

 

 

xeX J -(«)-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i(ot)

'и любого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Д о к а з а т е л ь с т в о ,

 

Пусть х

 

некоторая

вер -,

шина подграфа

К{(^)

. Покажем,

что

 

F ( x d )

F ( х ) .

 

 

 

 

62

 

Рассмотрим

кратчайшую цепь

 

С ( х ,

х ы ) ,

 

соединяющую

точки

ОС

и

.Т^, и

пусть

 

X f1 х 2,

 

 

 

 

 

 

точки

на

 

этой

цепи

в

порядно

следования

из

а:

 

в

 

 

Тогда

на

основе соотно­

шения

(I)

получим,

как легко

заметить,

соотношения:

 

 

 

F (

x

F

(

x

K)*k F( x K. , ) * . . . * F f a : f) 4

F( x) .

 

Это

говорит

о

том,

что

в подграфе

 

61(Ы)

имеется

решение

задачи

XXX

для

лю­

бого

 

у

=

 

 

 

 

ІЫ )

 

и

любого

 

Лго(е

Х® .

Отсюда оледу-

ет,

что

в

подграфе

IX? I

і(ы) J

 

 

графа

G

имеется

хотя

бы

од-

f|

П

QJ-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6=0

 

 

 

 

 

 

 

 

 

 

 

 

но решение

задачи XXX.

Но этот

подграф и есть, как легко за­

метить,

блок

 

G [ ~ ( X [ , Ui) .

 

Необходимость

условий

(I)

 

оче­

видна,

Пусть

теперь

Gn = (X* , £ 4 )

-

блок

 

графа

G ,

в

кото­

ром находится некоторое решение задачи Штейнера на графе G.

 

Припишем вершинам подграфа

 

G*

новые

веса

 

 

 

 

 

 

 

 

 

 

Р(Х*)=<

р ( х ) , е с т : г е Х * \ Х £ ,

 

 

 

 

 

 

 

 

 

 

 

 

Р (ос)+р(хл ) ,

 

воли

х = х ^ Х ° .

 

 

 

 

 

 

 

 

 

 

 

 

 

Т е о р е м а

13 .2 .

Если

х 0

-

решение задачи

Штейнера

 

относительно блока G* , то

х 0

есть

и решение

задачи

Штей­

 

нера для

 

графа

G. .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Доказательство теоремы проводится точно так же,как

и

до­

казательство теоремы 12 .2,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обратимся теперь к нахождению блока

G* —( X* , £/* ).

 

Для

этого

построим

некоторый граф

H=( Y,

Ѵ)}

положив

У ~ { у } =

= X ° U M

 

и

 

У = { ѵ } ,

 

где

V

-

пара

(Xj

, G{) = (ffi г х ы ) г

для

которой

 

х ыеХі , х^е-ХІ.

 

 

 

 

 

 

 

 

 

 

Н

 

 

 

Из

условий

1 °,

2 °,

и

леммы следует,

что

граф

-

де­

рево. Граф

H ~ ( Y , И)

 

назовем

бло..-номпозициѳй графа G.

Легко заметить, что для графа И

как множество М , так и мно­

жество Х° - внутреннеустойчивые множества. Определим для

эле­

ментов

дерева

 

Н

величины

І(.Ѵ)

и

р ( у ) следующим образом:

 

І(Ѵ)= 1

,

ѵ е

V

 

 

 

Р ( х л ),

если

 

у

= х А е Х ° ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

р(у)~

 

 

Р(Х)^

Р

( ^

) ,

еслиУН 6

£ *

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

 

 

 

 

 

 

 

 

 

 

Таким

образом

можно

рассматривать

задачу

У У У.

 

 

 

 

 

 

Следует

заметить, что

веса

р ( у )

 

неотрицательны.

Нуле-

63

вые

веса

могут

 

быть только для тех вершин дерева

Н

из

множе­

ства М ,

для

которых

і-ПС/н G[ > 3.

В самом деле,нулевые

ве­

са ,

очевидно,

могут

появиться,

если

только

X f = X *.

Но, по

предположению,

 

граф

G

 

не

имеет ребер сочленения,следователь­

но,

 

 

 

і =

 

 

 

 

.

 

Таким образом,

если

в блок-ком­

позиции

Н

графа

G

 

имеется

некоторая

вершина,

 

у

которой

LndH G ^ 2 ,

 

 

то

исходя

из

построения

дерева

 

Н получим,

очевидно,

что

вес

этой

 

вершины положителен. Из этого и

того,

что

множества

Х°

ъ

М

-

внутреннеустойчивые множества

гра­

фа

Н ,

имеем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С л е д с т в и е

 

. Существуют не более двух вершин дере­

 

ва

Н ,

являющихся

 

решениями задачи Штейнера для графа

Н .

 

Причем, если существуют два решения

у 01

 

и у § , то Ѵ(Уо) Л

 

П Ѵ ( у і ) *

 

ф.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

На основе

 

вышеизложенного

следует,

что

нахождение

решения

задачи Штейнера для блок-композиции Н

графа

G

 

дает

возмож­

ность найти решения задачи Штейнера для

графа

G,

либо

в гра­

фе

G

позволяет

отыскать

тот подграф

Gjt=(X)f. ,1/*)

 

из

множества

М ,

 

который содержит все решения задачи

 

X X X . Пред­

положим,

что

у0

-

единственное решение

задачи

У

Y Y .

Возмож­

ны

два

случая

 

а ) у о = х с і & Х 0

и

б)

 

y 0

=

G ^ ^ M .

 

В первом

случае

Хы -

 

единственное

решение

задачи

 

X X X .

Во

втором

случае

подграф

G*

есть тот

блок

графа G

 

, в котором

находятся

все

решения

задачи X X X .

 

 

 

 

YYY.

 

 

 

Пусть теперь

уі

и

у$ -

два решения задачи

Тогда

на

основе

того,

что

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1)Ѵ ( < / і ) П Ѵ < у І ) * 0 ,

2 ) множество вершин Х ° и М - внутреннеустойчивые мно­

жества,

 

3)

Х ° и д / = у

,

 

 

 

 

получим, что

'

 

 

 

 

 

 

 

У ^ Х Ы0*Х°,

 

y * * G ' * M ,

 

либо

наоборот,

 

 

 

 

 

 

 

 

 

 

 

y ! * e , ‘ M .

 

 

В этом

случае

устанавливаем,

что

Х^°

- есть решение за­

дачи

X X X ,

а 6 #

- такой

блок

графа

G ,

который содержит

все

решения

задачи

X XX.

 

 

 

 

 

64

З а м е ч а н и е

1 3 .I .

Вышеизложенное

позволяет

решить

задачу

XXX

(случай,

когда

граф

G

обладает

точками

сочлене

ния, не

имея полной информации о длине

ребер

 

графа G.

) .В ча­

стности, если

у 0в x d * Х°

-

единственное

решение

задачи

Y Y Y ,

то

полностью отпадает

необходимость

в

исходной

информа­

ции о длине ребер графа G.

 

 

 

 

 

 

З а м е ч а н и е

1 3 ,2 . Для графов, обладающих

ребрами

и точками

сочленения,

задачу

Штейнера

можно поставить

в самом

общем виде

(как

задачу

X MY

) и методами,

изложенными

раньше,

свести

ее

опять

к решению некоторой задачи Штейнера.

 

 

 

 

§ 14. Алгоритм нахождения блоков графа

 

Предлагается алгоритм нахождения

блоков

и точек

сочлене­

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

алгоритма

меньше

трудоемкости

алгоритма

из [ 1 0 ]. Рекомендуется

применить

этот алгоритм для графов, у которых

т = к - п ,

где т -

число

ребер

графа,

п

-

число

вершин,

а

К

-

постоянная.

Для

таких графов количество операций порядка

П

раз

меньше,

чем в

алгоритме

из

[ Ю] .

 

 

 

 

 

 

 

 

 

 

G ~ ( X , U ) .

 

 

Итак,

пусть задан обыкновенный связный граф

 

В графе G

 

строим любое дерево

Н=(Х,Ѵ) .

 

Ребра графа

G,

не

принадлежащие данному

дереву

Н = ( Х , Ѵ )

,

называются

 

хордами

дерева

Н - ( Х , Ѵ)

в графе

G.

Каковы бы ни были дерево Н= (Х,Ѵ)

и его

хорда

и к , в графе

G = ( X 7

U)

существует

[ ю ]

единствен­

ный простой

цикл

Ск , содержащий хорду и к

и не

содержащий дру­

гих

хорд дерева

Н

в

6 .

 

 

 

 

 

 

 

 

 

 

 

 

В дальнейшем будем рассматривать только простые циклы типа

Ск . Простые циклы

С, ,Сг ,... ,СК7...,С^

образуют

[іо] базу

не­

зависимых циклов

рафа

G=(X,U) ,

где

X —m - n + f ,

а

п -

- IX 1

и

т = \U\ .

 

 

G = ( X , U )

 

 

 

 

 

 

 

 

 

Uo отношению к графу

строим

 

вспомогательный

граф

С Л = (ХЛ , и л ),

вершинами которого

служат циклы

СІГС2

-..,

СК,...,С^

 

графа

 

причем и л ~(Ск ,

С

 

тогда

и

только

тогда,

когта

простые

циклы Ск

и Cf

графа

имеют хотя

бы

одно

общее

ребро.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обозначим через

К'], Kg 7

 

 

 

 

 

компоненты

связно-

оти

[ і ] ,

[ ю ]

графа

G*-(XA,UA).

Вершинам компоненты связ­

ности

КІ

графа

£ Л

соответствует

в графе

G ~ ( X , U )

неко­

торое

множество простых циклов

 

Mf, L—

 

ЗЕ . Множество

вершин

графа

 

G —( X, U) ,

 

принадлежащих простым циклам

Л

/ / , обоз­

Зак.665

 

 

 

 

 

 

65

 

 

 

 

 

 

 

 

 

начим через

, l -

1

, 2

, Х л ,

а

подграфа

G —(X , U ) , по­

рожденного множеством X/ > - через

 

Bi

~(X- L , U i ) .

 

 

ІІТ ѳ о р е

м а

1 4 .1 .

Подграф

 

В[

( X i 7 Ui)

является

II блоком графа G = ( X , U ) .

 

 

 

 

 

 

Д о к а з а т е л ь с т в о .

Известно

[ іо ] ,

что

подграфы

двукомпоненты являются

блоками графа

G = (X,U). Поэтому

доста­

точно доказать,

что

подграф

Ві ~ ( Х [ , Ui )

является

двуком­

понентой. Для этого докажем, что подграф

 

В[ - (Х{ , Ui) является

двусвязным

[ ю ]

и максимальным относительно этого

свойства.

 

Пусть

Uif

 

и й£г -

любые два

ребра

подграфа

BL~ (Х[, Ü£ ).

Из способа

построения графа

6 Л- ( Х , U A)

следует,

что

ребра

Llif

и

іііг

сильно циклически связны в подграфе

BL = (X/,

U i ) .

Тогда

на основе

теоремы

из

[ іб ]

имеем, что любая

пара

вер­

шин подграфа

В £ - ( X [ 7 Ui)

принадлежит

некоторому

простому

циклу. Последнее позволяет сделать вывод

 

[ і о ]

, что подграф

В[ -

(Х[, U i )

-

двусвязен. В подграфе

 

- (X / , ܣ )

для

любой

тройки

его

вершин Х , у

и Z

существует

[1 0 ,1 5 ]

простая

цепь

P ( x , y t z )

из

л:

в Z j проходящая через

 

у • Докажем теперь,что

подграф

Ві ~ (XijUi)

является

максимальным относительно

свой­

ства быть двусвязным. Для этого достаточно доказать, что верши­

ны любой простой цепи

P ( z , y z ) , соединяющей

любые вершины

X

и Z подграфа

Ві = (Х{, U i ),

принадлежат

подграфу

 

В[ .

Пред­

положим

обратное, что

существует

простая цепь

Р ( х , у

z ) t

для

которой

 

а У * £ Х [ .

Допустим,

что

у *

принадлежит

подграфу

ß*=(X*, U*), для которого

Х /С Х*

и ULс

.

 

Обозначим через

И[ - (Хі, Ѵі ) частичное дерево

подграфа6 [=

~ ( X i j U i ) . Легко заметить, что

в подграфе

B i ~ ( X i 7

Ui )

 

су­

ществует

цепь

P ( x , z ) , содержащая одну

единственную хорду

и';=-

—(x'fZ'), а все остальные элементы цепи принадлежат дереву HL-

— (Xi,Vt‘). Из

того,

что

существует

простая цепь

P(x7y*z),сле­

дует,

что

существует

и простая

цепь

Р ( х У * ? ' )

.Если

в

этой

цепи

есть

хорда U i ~ ( x * , z *),

то

ее

можно заменить

частью

про­

стого

цик.та,

содержащего

ребра

из

частичного

дерева

HL=(X*IVt- ),

и не принадлежащей частичному дереву

Мі~(Х[ 7

VL ) .

В результате

получим,

что для хорды

Ü £~(X '7 Z ')

 

существуют два

простых цик­

ла,

содержащих хорду

и[~(х'7z'),

а

остальные

элементы

толь­

ко

из

дерева

Р ~ ( Х 7 Ѵ),

 

что

противоречит теореме

из

[ іо ] . Та­

ким образом,

подграф

В[ = (Xf } U i )

является

максимальным

от-

эсительно свойства быть двуовязным, т .е . является блоком.

 

 

 

О п р е д е л е н и е

, Разрезом

графа

G ~ ( X , U )

назы­

вается [ 1 0 J

подмножество

U & £/,

обладающее

тем

свойством,

66

что

суграф,

полученный из графа

G = ( X 1U)

 

удалением

 

U }

не­

связен.

 

 

U '

- простой,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разрез

если

никакое его

правильное

подмно­

жество

( y " ^ U '

не является

разрезом

графа G - ( X , U ) .

Каковы

бы

ни были дерево

Н= ( Х , Ѵ)

 

графа

G=( X, U)

и ребро

V/

этого

дерева, существует единственный простой разрез U j } содер­

жащий ребро

V/е У

 

и не содержащий других ребер дерева

Н -

= (Х ,Ѵ).

Простые разрезы

U f , U 2

, ... ,Uj, ... ,

Un- 1

 

образуют

баэу

независимых разрезов

графа

G =(Xf U).

 

 

 

 

 

 

 

 

 

 

В дальнейшем будем рассматривать только простые разрезы ти­

па

C/J

и под разрезом

будем понимать не само множество Uj

, а

порождаемый им подграф

Gj = ( X j , U f ) .

 

 

 

 

 

 

 

 

 

 

По отношению к графу

G ~( X, U) строим вспомогательный

 

граф

G

= ( X R, U R),

вершинами которого

олужат разрезы Gy - ( X j , U J ) ,

j = f

,

2

п - 1 ,

причем и й~ (G/;Gt ) e

U ,

 

когда

простые

раз­

резы

Gj'

и

G[

графа

G=(X)U)

 

имеют

хотя

бы

одно

общее

ребро. Обозначим через

К?, Хй , .. . , Кх я

 

компоненты

связнооти

графа

 

G R~(XR1

U R).

 

Вершинам компоненты

связности

X й

графа

G R~ ( X e7 U R)

соответствует в графе

G = ( X 7 U )

 

некоторое

множество

простых разрезов

Ny , 7

=

 

X й.

Множество

вершин

графа G - ( X ^ U ) ,

 

принадлежащих простым разрезам

Ny,

обозна­

чим через

 

Ху t 7 =

( , 2 7 . . . , X R. Подграф графа

G = ( X , U ) ,

порож­

денный множеством

Х^,

обозначим

через

By -

(Ху 7

Uy) 7

7-1,2, .. ,,

a ff

ІТ

е о

р е

м а

 

1 4 .2 . Подграф

В у = (Ху

 

 

 

 

является

 

 

 

 

 

 

 

I блоком

графа

G - ( X 7 U).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Д о к а з а т

е

л

ь с т в о

.

Из ортогональности

подпрост­

ранств циклов и разрезов и единственности разложения

графа

на

блоки

следует,

что

подграфы В[

и 8 % изоморфны.По теореме

1 4 .I

подграф

 

 

является

блоком графа

G.

Тогда

и

подграф

Ву -

—(Ху jt/j) является блоком графа

G ~ ( X } U). На основании

этого

моЖііО предложить следующий алгоритм нахождения блоков

 

и

точек

оочленения

графа.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Пусть

Дс ~\\0£/\1пкт

 

-

матрица

инциденций графа

G =

= (X7

U) . В

[ІО]

и

[13] показано, что ранг матрицы RQ

 

над

полем

 

D

{ о , і }

вычетов целых чисел по модулю два равен

п ~ 1 .

Удаляем любую строку матрицы

flß.

В

результате

получим

новую

матрицу й

.‘

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 .

С

матрицей

Я' над

полем

В

будем производить

[ і о ] сл е ­

дующие

операции:

а)

 

перестановка

столбцов;

б)

перестановка'

67

отрок; в) замена строки суммой ее с другой строкой

матрицы.В ре­

зультате получим матрицу А ,

У

которой первые

п~1

столбцов

со­

держат точно по одной единице, причем все они

стоят

в

различ­

ных строках.

 

 

 

 

 

 

 

 

 

f l R строки,

 

 

 

 

 

 

3 . Проверяем,

 

есть

ли

в матрице

содержащие

ров­

но одну единицу. Если есть, то переходим

к пункту

4,

в

против­

ном случае -

к пункту

6.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 . Пусть

Xif

 

 

 

 

 

 

-

строки

матрицы

 

 

содержащие

ровно по одной единице. Тогда

соответствующие

столбцы

Uif)

 

Ui2

,...,Uid

матрицы

R

 

являются

 

[ іо ]

 

ребрами

перешейки.

 

 

5. Для каждого ребра

 

 

по

матрице

Яд

находим инцидент­

ные им вершины, которые обозначим через Xid . Известно

[іо],что

подграф, порожденный множеством X[dfявляется

блоком графа

G-

= (Х,С/). Вершина,

инцидентная

ребру

Иі

 

и

не

являющаяся вися­

чей, является

точкой

сочленения

графа.

 

 

 

 

 

 

 

R

gr

 

6. В булевой алгебре

В

{

0,1 }

умножим матрицу

Я

на Д .

В результате

получим матрицу

омежности

 

R

графа

GR= ( X

, U

).

 

7 . Пусть

£

-

единичная

матрица

порядка

п-І.

Образуем

над булевой алгеброй

В { о , і |

 

матрицу

 

Е+ R

и рассмотрим после­

довательность

степеней

( Е + R ) A.

 

 

 

ß 0 ^= т ( G R)

 

 

 

 

Известно

[ і о ] ,

что для

некоторого

 

будем

иметь (Е + Я)а°=

( E + R )^0+1-

(E+R)^0*^-.. . Каждой системе всех

одинаковых строк (или одинаковых столбцов) матрицы

+ R )Ao

отвечает

компонента

связности

К*

графа

GR —( X Rj U R).

 

 

 

8 . Вершинам компоненты связности К*

графа

G

= (Х , U R)

соответствуют

в і'рафе

G —( X , ( / )

простые разрезы. Зная матри­

цу

(Е + R ) ß°

и матрицу простых разрезов

/7?

можно

 

определить

множество ребер

 

 

графа G=(X1 U),

которые принадлежат

блоку

вп.

9. Зная множество ребер

 

 

и матрицу ияциденций

п

графа

G,

 

 

Я6

можно

определить множество

 

 

его

вершин,

принадлежащих бло­

ку

B/} = ( X 1 ,Uq).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10. Так как два блока графа могут иметь не более одной об­

щей вершины, являющейоя точкой сочленения, то,

зная

матрицу ин-

циденций

Rs

и'блрки

графа

G~( X 7 U) ,

можно

найти

остальные

точки сочленения.*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

З а м е ч а н и е ,

Если

граф

G - ( X } U)

 

несвязный,то

на­

хождение его блоков и точек сочленения сводится к применению вы­ шеизложенного алгоритма для каждой компоненты связности.

68

Г л а в а Ш

ЗАДАЧИ ТИПА ЗАДАЧ ШТЕЙНЕРА

5 этой главе рассматривается несколько экстремальных задач на метрических графах, определенным образом связанных с задачей Штейнера. Например, часть этих задач сводится к некоторой за­ даче Штейнера, другие же могут быть рассмотрены как ее обобще­ ния.

§ 15 . О двух задачах, сводящихся к задаче Штейнера

Пусть

задан метрический граф

G=(X,U)

с метрикой d . Каж­

дому ребру

припишем

"вес" д ( и ) > о .

Вводитоя "расстояние"[1 5 ] от

вершины X

до ребра

u = ( y , z ) e U

• следующим обраэоы:

(

'«**(*'“ ) - f r \ d ( x , y ) + d ( x fz ) ] .

Рассмотрим функционал

t

'

 

 

Ф(хУ П

q ( u ) /и(х,и).

 

( I )

 

 

ueU

'

 

 

 

З а д а

ч а

1 5 .1 . Найти множество вершин графа G,

мини­

мизирующее функционал (1 ) .

 

 

 

 

Справедлива

 

 

 

 

 

Т е о р е м а

1 5 ,1 . Решение

задгчи

1 5 .1.сводится к

реше­

нию задачи Штейнера для графа

G с

весами р ( х ) = ZZ

Ч(и).

Д о к а

з а

т е л ь с

т в о .

Легко

заметить, что

 

ФСх)=ЦI

q(u)/u(x,u) = Z Z

g(u)\-f(d(x,y)i-d(x,z))] =

UeU

UeU

L

J

 

 

f x М

* ( х -0 -

69

Соседние файлы в папке книги из ГПНТБ