Sunteți pe pagina 1din 5

Universitatea de Stat din Moldova

Facultatea de Fizică și Inginerie


Specialitatea Tehnologii Informaționale

Lucrare de laborator Nr.3


DETERMINAREA ARBORELUI PARŢIAL DE LUNGIME MINIMĂ

A efectuat: Loghinova Veronica


A verificat: Novac Ludmila

Chişinău 2018
Scurt Teoretic
TEMA: DETERMINAREA ARBORELUI PARŢIAL DE LUNGIME MINIMĂ
1. Arbori. Arbori parţiali.
Arborele ocupă un loc important în teoria grafurilor. Pe de o parte arborii reprezintă nişte construcţii
simple şi multe probleme destul de complicate, în caz general, se rezolvă uşor cu ajutorul arborilor. Pe de
altă parte, arborii pot fi întâlniţi deseori în domeniile care, la prima vedere, nu au nici o legătură cu teoria
grafurilor.
Vom considera un graf neorientat G=(X,U) cu n vârfuri. Este uşor de arătat că următoarele definiţii
ale arborelui sunt echivalente:
i. graf conex fără cicluri elementare;
ii. graf conex cu n vârfuri şi n-1 muchii;
iii. graf în care orice pereche de vârfuri este legată printr-un lanţ elementar unic.
Graful G1=(X1,U1) se numeşte subgraf al grafului G=(X,U), dacă X 1  X , U 1  U . Subgraful G1
se numeşte graf parţial, dacă X 1  X .
Se numeşte arbore parţial al grafului G orice graf parţial care este arbore. De exemplu, dacă G –
graful reprezentat în fig.1.а, atunci grafurile din fig. 1.b şi 1.c sunt grafuri parţiale ale lui G.
x2 x2
x3 x3

x4 x4
x1 x1

x5 x5
x6 x6

x7 x7

x2
x3

x4
x1

x5
x6

x7

Fig. 1.a Fig. 1.b Fig. 1.c


Este evident, că pentru fiecare graf există cel puţin un arbore parţial: dacă în fiecare componentă
de conexitate vom distruge ciclurile (eliminând muchiile) putem obţine un arbore parţial. În caz general
arborele parţial nu este definit univoc. În mod natural apare întrebarea: câţi arbori parţiali există într-un
graf?
Теоrema 1. Fie G – graful cu n vârfuri fără bucle, iar B 0 – matricea de incidenţă a lui din care este
eliminată o linie (adică are n-1 linii independente). Dacă B0t – matricea transpusă a matricei B 0 , atunci
determinantul | B0  B0t | este egal cu numărul de arbori parţiali diferiţi ai grafului G.

Теоrema 2. Pentru n>1 numărul de arbori parţiali ai grafului complet K n este egal cu n n2 .
Cu ajutorul teoremei 1 este uşor de verificat că numărul de arbori parţiali ai grafului reprezentat în
fig.2 este egal cu 21.
x1
u1 u2
x2 u3 x3
u5 u4 u6
x4 u7 x5

Fig. 2

1 2 3 4 5 6 7

8 9 10 11 12 13 14

15 16 17 18 19 20 21

Matricea de incidenţă a acestui graf este:


u1 u 2 u3 u 4 u5 u6 u7
x1 1 1 0 0 0 0 0 
 
x2 1 0 1 1 1 0 0 
B 0 1 0 
x3 1 0 0 1
.
 
x4 0 0 0 1 0 1 1 
 
x5 0 0 0 0 1 0 1 

Eliminând linia a doua x2, se obţine matricea B 0 . Matricea B0  B0t are următoarea formă:

2 1 0 0
 
1 3 1 0
B0  B0  
t
.
0 1 3 1
 
0 2 
 0 1

2. Arborele parţial de lungime minimă


Vom considera un graf ponderat conex şi neorientat G=(X,U). Ponderea muchiei (xi, xj) o vom nota
prin cij. Dintr-un număr mare de arbori parţiali trebuie de determinat unul, în care suma ponderilor muchiilor
este minimă. Cu o astfel de problemă ne confruntăm deseori în practică.
De exemplu, n localităţi trebuie unite într-o reţea informaţională astfel încât informaţia transmisă
dintr-o localitate să poată fi recepţionată în oricare alta printr-un canal direct de legătură sau prin
intermediul altor centre (localităţi), cu condiţia că lungimea totală a acestei reţele să fie minimă. Se ştie că
între oricare două localităţi. din punct de vedere fizic, e posibilă trasarea unui canal de legătură
informaţională. În această situaţie, localităţile pot fi considerate drept vârfuri ale unui graf complet K n , în
care fiecare muchie are o pondere egală cu lungimea canalului de legătură directă dintre centrele respective.
Atunci reţeaua informaţională căutată va fi un arbore parţial al grafului K n de lungime minimă.
Deoarece graful complet K n conţine n n2 arbori parţiali diferiţi, soluţionarea acestei probleme prin
cercetarea tuturor variantelor posibile ar necesita multe calcule, chiar dacă n nu este prea mare. În prezent
se cunosc doi algoritmi efectivi de construire a arborilor parţiali de lungime minimă al unui graf – algoritmul
lui Kruskal, apărut în anul 1956 şi algoritmul lui Prim, apărut în anul 1957.
Algoritmul lui Kruskal
Pasul 1. Construim graful T1  On  u1 , adăugând la graful vid, construit pe mulţimea de vârfuri X,
muchia u1 U cu pondere minimă.
Pasul 2. Pentru graful construit Ti , cu i  n  1 , construim graful Ti 1  Ti  u i 1 , unde u i 1 este
muchia grafului G=(X,U) care are ponderea minimă dintre toate muchiile, care nu aparţin încă lui Ti şi nu
formează cicluri cu muchiile din Ti .
Ilustrativ vom prezenta graful-exemplu din fig. 3.

3
1 5 1 5

2
1 4
4

4 5
2 3
3 4 2 3

fig. 3
Algoritmul lui Prim
se deosebeşte de algoritmul lui Kruskal numai prin faptul că la fiecare etapă se construieşte nu doar un graf
aciclic, ci şi un arbore, adică:
Pasul 1. Se alege muchia u1  ab cu pondere minimă şi se construieşte arborele T1  ({a, b}, u1 ) .
Pasul 2. Dacă arborele Ti de ordinul i  1 este deja construit şi i  n  1 , atunci din muchiile care
leagă vârfurile acestui graf cu vârfurile grafului G=(X,U) ce nu se conţin în Ti alegem muchia u i 1 cu
ponderea minimă. Construim arborele Ti 1 , adăugând la Ti muchia u i 1 , împreună cu extremitatea ei finală,
care nu aparţine lui Ti .
În unele cazuri trebuie de construit un arbore parţial de lungime maximă. Atunci în mod similar pot
fi aplicaţi agoritmii Kruskal şi Prim, cu condiţia că toate ponderile minime vor fi înlocuite cu ponderile
maxime.
Probleme
I. Să se determine toţi arborii parţiali în grafurile:

3)

12)
II. Fie date grafurile G şi H şi funcţia bijectivă  : VG  VH . Dacă pentru oricare două vârfuri u şi v ale
grafului G, imaginile lor  (u ) şi  (v) sunt adiacente în H atunci şi numai atunci când u şi v sunt
adiacente în G, atunci această bijecţie se numeşte izomorfism al grafului G în graful H. Dacă acest
izomorfism există, atunci se spune că grafurile G şi H sunt izomorfe şi se notează G  H (atunci şi
H  G ).
Să se deseneze toţi arborii doi câte doi neizomorfi de ordinul i, 3  i  15.

S-ar putea să vă placă și