Grafuri neorientate - Algoritmul Malgrange

Previzualizare laborator:

Extras din laborator:

Fie M o matrice binara, finita, de dimensiune m- n, cu multimea de linii L={l1,l2, ,lm} si multimea de coloane C={c1,c2, ,cm}. Vom nota - =(A,B) matricea formata din elementele de la intersectia liniilor A- I si a coloanelor B- J.

Fie acum - 1 si - 2 doua submatrice ale matricei M, determinate de perechile de multimi de linii si coloane (Ai,Bi) i=1,2 (- 1=(A1,B1) si - 2=(A2,B2)).

Daca A1a2 , B1- B2 (- 1- - 2), matricea - 1 se numeste submatrice a matricei - 2

Daca toate elementele din - sunt egale cu 1, submatricea - a matricei M se numeste completa.

Daca submatricea - este completa si in M nu exista o alta submatrice completa - - - ' astfel incit - - - ', se numeste principala.

Daca orice element egal cu 1 din M apartine cel putin unei submatrici din familia C={- 1,- 2, ,- p}, aceasta familie C se numeste acoperire a matricei C.

Cardinalul multimii stabile interior maxime a grafului G se noteaza prin - 0(G) si se numeste numar de stabilitate interna.

II. Descrierea algoritmului

Fie A matricea de adiacenta a unui graf neorientat G=(X;U):

a b c d e f

a

b

c

d

e

f

iar A este matricea complementara a acesteia (elementele aij ale matricei A se calculeaza in baza elementelor aij ale matricei A dupa formula aij=1- aij):

a b c d e f

a

b

c

d

e

f

1

Scopul lucrarii: De a construi toate submatricile principale patratice ale lui A, in baza carora se pot determina toate multimile maximale stabile interior ale ale grafului G, prin utilizarea algoritmului Malgrange.

Pasul 1. Construim o acoperire arbitrara C0 a matricei A. In calitate de acoperirea C0 se ia familia tuturor submatricelor complete din A de forma - i=(Ai,Bi), unde a- =1, iar Bi este formata din coloanele matricei A, ce contin unitatea in linia Ai.

Acoperirea initiala C0 a matricei A este:

C0 = { (a,ac), (b,b), (c,acef), (d,d), (e,ce), (f,cf) }.

Pasul 2. Pentru p=0, construim familia Xp={- i- Cp, - j- - i astfel, incit - j- - - i } - familia tuturor submatricelor complete din Cp, care care se contin in alte submatrice ale lui Cp.

In acest caz X0= - -

Pasul 3. Construim familia de submatrice - (Cp- Xp), care se obtine prin aplicarea operatiilor

- si - asupra tuturor perechilor posibile de matrice - i, - j din Cp- Xp, cu conditia ca aceste elemente noi sa nu le contina pe submatricele din Cp- Xp.

C0- X0= C0- - - - (C0- X0) = - (C0):

(a, ac) - (c,acef) = (a - c, ac - acef) = (ac,ac)

(a, ac) - (e,ce) = (a - e, ac - ce) = (ae,c)

(a, ac) - (f,cf) = (a - f, ac - cf) = (af,c)

(c, acef) - (e,ce) = (c - e, acef - ce) = (ce,ce)

(c, acef) - (f,cf) = (c - f, acef - cf) = (cf,cf)

(e,ce) - (f,cf) = (e - f, ce - cf) = (ef,c)

- (C0- X0) ={ (ac,ac), (ae,c), (af,c), (ce,ce), (cf,cf), (ef,c) }.

Pasul 4. Formam acoperirea de matrice: Cp+1- - Cp- Xp) - (- (Cp- Xp))

C1- - C0- X0) - (- (C0- X0)) = { (a,ac), (b,b), (c,acef), (d,d), (e,ce), (f,cf), (ac,ac), (ae,c), (af,c), (ce,ce), (cf,cf), (ef,c) }.

Pasul 5. Daca Cp+1 - Cp, atunci consideram p=p+1 si ne reintoarcem la Pasul 2.

C1 - - - 0 - -

Pasul 2. Construim familia Xp+1=X1:

2

(a,ac)- - (ac,ac)

(e,ce)- - (ce,ce)

(f,cf)- - (cf,cf)

X1 ={ (a,ac), (e,ce), (f,cf) }.

Pasul 3. Construim familia - (Cp+1- Xp+1) = - (C1- X1):

C1- X1= { (b,b), (c,acef), (d,d), (f,cf), (ac,ac), (ae,c), (af,c), (ce,ce), (ef,c) }.

(c,acef) - (f,cf) = (c - f, acef - cf) = (cf,cf)

(c,acef) - (ac,ac) = (c - ac, acef - ac) = (ac,ac)

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Grafuri neorientate - Algoritmul Malgrange.doc
Alte informații:
Tipuri fișiere:
doc
Diacritice:
Nu
Nota:
9/10 (1 voturi)
Nr fișiere:
1 fisier
Pagini (total):
6 pagini
Imagini extrase:
6 imagini
Nr cuvinte:
1 288 cuvinte
Nr caractere:
5 709 caractere
Marime:
27.35KB (arhivat)
Publicat de:
Anonymous A.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Calculatoare
Tag-uri:
grafuri, algoritmi
Predat:
la facultate
Materie:
Calculatoare
Sus!