книги из ГПНТБ / Солтан, П. С. Экстремальные задачи на графах и алгоритмы их решения
.pdf[совпадает о множеством решений аналогичной задачи для под
графа у 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 и, |
|||||||||||||||||||||||||||
очевидно, |
удовлетворяет |
условиям |
1° |
и 2 ° . |
Следовательно, G i j - |
|||||||||||||||||||||||
= ( Xi UXj ,U i |
U |
Uj ) |
есть |
подграф графа |
G |
, |
|
удовлетворяющий |
||||||||||||||||||||
условиям |
1° |
и 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 °, |
3° |
и |
леммы следует, |
что |
граф |
- |
де |
||||||||||||||
рево. Граф |
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