Documente Academic
Documente Profesional
Documente Cultură
Optimizari Grafuri
Optimizari Grafuri
B
arb
acioru Iuliana Carmen
CURSUL 4
Cursul 4
Cuprins
1 Elemente de teoria grafurilor
1.1 Obiectul teoriei grafurilor. Notiuni generale . . . . . .
1.2 Concepte neorientate . . . . . . . . . . . . . . . . . . .
1.3 Determinarea drumului de valoare optim
a . . . . . . .
1.4 Retele de transport . . . . . . . . . . . . . . . . . . . .
1.5 Arbori. Algoritmi pentru optimizarea arborilor partiali
1.5.1 Algoritmul lui Kruskal . . . . . . . . . . . . . .
1.5.2 Algoritmul lui Sollin . . . . . . . . . . . . . . .
1.5.3 Algoritmul lui Prim . . . . . . . . . . . . . . .
Index
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
. 5
. 5
. 5
. 5
. 5
. 9
. 10
. 10
11
Cursul 4
Capitolul 1
1.2
Concepte neorientate
1.3
1.4
Re
tele de transport
1.5
Deni
tia 1.5.1 Un graf G (X; U ) este conex daca ntre doua vrfuri distincte,
oricare ar ele, exista un lant.
Deni
tia 1.5.2 Un graf neorientat nit se nume
ste arbore daca:
a) Este conex;
b) Nu are cicluri;
Un arbore are cel putin doua vrfuri terminale numite frunze.
Num
arul muchiilor unui arbore este cu o unitate mai mic dect num
arul
vrfurilor.
Astfel, dac
a X = fx1 ; :::; xm g, num
arul m al muchiilor este: m = n 1.
Dac
a ntr-un arbore se suprim
a o muchie oarecare, graful nceteaz
a s
a mai e
conex.
5
Cursul 4
Exemplul 1.5.3
Figura 5.1
Daca suprimam muchia (x5 ; x4 ) din arborele din gura 5.1. arborele
si pierde
calitatea de a conex.
Deni
tia 1.5.4 Orice vrf ales ca punct de pornire ntr-un arbore se nume
ste
radacina. Daca din ecare vrf al unui arbore pleaca numai doua muchii, arboarele se numer
ste bifurcat.
Exemplul 1.5.5 n gura 5.2 sunt prezentate exemple de arbori, din care se pot
recunoa
ste proprietatile acestui tip de graf particular.
Figura 5.2
Daca doua vrfuri oarecare ale unui arbore se unesc print-o noua muchie se
creeaza un ciclu si numai unul. Daca de exemplu n arborele din gura 5.1 se
6
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
introduce o noua muchie (x4 ; x10 ) trasata punctat pe desen, se formeaza ciclul
(x4 ; x5 ; x6 ; x9 ; x10 ; x4 ).
Orice drum ntr-un graf reprezint
a un arbore. Dou
a vrfuri ale unui arbore
sunt legate numai printr-un singur lant.
Cele spuse mai nainte se pot sintetiza sub forma urm
atoarei propozitii:
Propozi
tia 1.5.6 Un arbore G are urmatoarele proprietati:
i) ntre orice doua vrfuri exista un singur lant;
ii) Graful obtinut din G prin suprimarea oricarei muchii este neconex;
iii) Graful obtinut din G prin adaugarea unei muchii ntre doua vrfuri oarecare
contine cel putin un ciclu;
iv) Un arbore avnd n vrfuri, contine cel putin doua destinatii daca n 2;
v) Un arbore avnd n vrfuri are n 1 muchii.
Demonstra
tie: i) S
a presupunem prin absurd c
a ntre dou
a vrfuri oarecare
xi si xj nu exist
a nici un lant. Atunci graful respectiv nu mai este conex contradictie cu denitia arborelui. deci exist
a cel putin un lant ntre xi si xj .
Vom demonstra n continuare c
a el este unic. S
a presupunem c
a ar exista
dou
a lanturi. Atunci reunind cele dou
a lanturi obtinem un ciclu ceea ce contrazice
denitia arborelui.
ii) S
a presupunem prin absurd c
a suprimnd o muchie [xi ; xj ] graful partial
G1 rezultat din G ar conex. Atunci conform denitiei de graf conex ntre xi si
xj ar exista un lant l n G1 . Dar prin completarea lantului l cu muchia [xi ; xj ]
s-ar obtine un ciclu n graful G - ceea ce contrazice denitia arborelui.
iii) Fie G = (X; M ) un arbore pentru care [xi ; xj ] 2
= M . S
a not
am cu G2
graful obtinut prin p
astrarea lui X si ad
augarea muchiei [xi ; xj ] la multimea M .
Presupunem prin absurd c
a G2 nu contine cicluri. Dar n G exist
a deja un lant
l ntre xi si xj . Reunind lantul l cu muchia [xi ; xj ] se obtine un ciclu n G2 ;
iv) S
a presupunem c
a ar exista un arbore G = (X; M ) cu n vrfuri (n 2)
care ar avea cel mult o destinatie. Fie d = (x1 ; x2 ; :::; xn ) un lant elementar
maxim n G. Atunci num
arul de muchii cu o extremitate n vrful x1 este cel
putin 2, deci este adiacent cu alt vrf din d, cea ce face s
a apar
a n G un ciclu.
v) Demonstr
am prin inductie dup
a n; n 2.
Pentru n = 2 arborele este format dintr-o singur
a muchie care uneste cele
dou
a vrfuri, deci armatia este adev
arat
a. Presupunem c
a orice arbore cu \m"
vrfuri are m 1 muchii. Pentru un arbore G1 cu m + 1 vrfuri, exist
a cel putin
un vrf terminal x0 . Suprimndu-l pe x0 mpreun
a cu muchia incident
a lui se
obtine G1 un graf cu \m" vrfuri care nu contine cicluri.
7
Cursul 4
Vom ar
ata c
a G astfel obtinut este si el conex. Fie pentru aceasta dou
a vrfuri
oarecare din G, diferite de x0 : x1si x2 .
Atunci n G1 exist
a un lant l, cu extremit
atile x1si x2 , lant care nu trece prin
x0 si care este lant si n graful G. Deci G1 este conex, adic
a este arbore.
Deni
tia 1.5.7 Un graf partial G1 al grafului G, cu proprietatea ca G1 este
arbore se nume
ste arbore par
tial al grafului G.
Propozi
tia 1.5.8 Un graf este conex daca si numai daca admite un arbore
partial.
Demonstra
tie: ) rezult
a din denitia (1.5.2)
( Dac
a graful G nu constituie un arbore, atunci exist
a n G cel putin o
muchie [xi ; xj ] pe care dac
a o suprim
am obtinem un graf partial G1 care este
conex. Dac
a G1 devine un arbore atunci demonstratia se termin
a.
Dac
a G1 nu este arbore atunci din el suprim
am o muchie obtinnd un graf
G2 conex, s.a.m.d.
ntr-un graf conex neorientat GN = (X; U ) se pot construi mai multi arbori,
num
arul maxim al acestora ind dat de valoarea oric
arui minor de ordinul 1 al
determinantului = (bij ) denit prin:
8
>
>
< j (xi )j ; i = j
bij =
1; (xi ; xj ) 2 U
>
>
: 0; (x ; x ) 2
=U
i
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
Teorema 1.5.10 Se considera graful redus GT = XT ; UT obtinut prin atroerea
ecarei componente simplu conexe a grafului denit prin muchiile T ce apartin
unui graf partial simplu conex al lui G = X; U . Daca graful GT este un arbore
partial minim atunci muchiile u = UT unite cu cele ale lui T denesc un graf
partial simplu conex care este minim.
Teorema 1.5.11 Fie G1 = X; V un arbore partial extrem al unui graf G =
X; U unde muchiile u au fost dotate cu o ordine completa. Oricare multime
de vrfuri A X astfel nct subgraful GA = A; UA sa e conex formeaza un
arbore partial extrem GA = A; VA care verica relatia:
V \ UA
1.5.1
VA
Cursul 4
vij =
1.5.2
vij
dac
a muchia [xi ; xj ] 2 U
dac
a muchia [xi ; xj ] 2
=U
1.5.3
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
O variant
a a algoritmului Prim este urm
atoarea:
Se alege muchia care leag
a un vrf cu cel mai apropiat vecin. Aceast
a muchie,
mpreun
a cu cele dou
a vrfuri formeaz
a o component
a conex
a a grafului.
Se caut
a apoi cel mai apropiat vecin al vrfurilor componentei g
asite si i se
adaug
a de asemenea muchia care a servit la g
asirea vecinului.
Procednd n acest fel componenta conex
a g
asit
a se extinde progresiv pn
a
cnd se obtine componenta care cuprinde toate vrfurile grafului si care va constitui arborele minim c
autat.
11
Index
Algoritmul
Kruskal, 9
Prim, 10
Sollin, 10
Arbore, 5
bifurcat, 6
partial, 8
partial minim, 8
Departare
de la un punct
la un drum, 10
Frunze, 5
Lungime
generalizata a unei muchii, 8
Radacina, 6
12