CUPRINS
Introducere ......................................................................................................... 3 Capitolul I. Grafuri definite prin multiseturi. Multisetul gradelor unui graf ......................................................... 4
I.1. Multiseturi ................................................................................................... 4 I.2. Grafuri definite prin multiseturi .................................................................. 4 I.3. Multisetul gradelor. Teoreme de caracterizare ........................................... 5
Bibliografie ....................................................................................................... 29
Introducere
Aceast lucrare de teoria grafurilor are drept scop familiarizarea cititorului cu aspecte mai pu in cunoscute ale acesteia care pot fi abordate pe baza unor cunotin e solide dobndite ncepnd cu perioada liceului. Pentru o bun parcurgere a lucrrii sunt presupuse cunoscute principalele no iuni de teoria grafurilor. n primul capitol este prezentat no iunea de graf n contextul su maxim de generalitate (ce permite existen a buclelor i a multimuchiilor), fiind introdus cu ajutorul no iunii de multiset (mul ime cu multiplicit i). Capitolul trateaz problema clasic a irului gradelor unui graf n acest cadru general, prezentnd n acest sens trei rezultate de caracterizare, mpreun cu algoritmii corespunztori. n Capitolul II este tratat problema planarit ii unui graf, att n spa iul 2-dimensional ct i o generalizare a acesteia. Sec iunea a doua a acestui capitol arat legtura strns ce exist ntre planaritate i hamiltoneintate, furniznd criterii de stabilire a uneia dintre propriet i, atunci cnd este presupus cealalt. Ultimul dintre capitole prezint cititorului no iunea de cuplaj, care cumulat cu cea binecunoscut de graf bipartit converg la elaborarea a doi algoritmi importan i (algoritmul ungar i Kuhn - Munkres) cu o larg aplicabilitate n probleme legate de planificarea activit ilor organizatorice (alctuire de orare, ncadrarea optim a personalului unei companii n raport cu pregtirea acestuia, etc. ).
1. Multiseturi
Conceptul de multiset reprezint o generalizare a no iunii matematice elementare de mul ime. Simplu spus, un multiset reprezint o mul ime n care fiecare dintre elementele ei se poate repeta de un numr prestabilit de ori. Dup cum bine tim, acest lucru nu este permis n cazul no iunii standard de mul ime. Pentru a da rigoare acestui concept dm urmtoarea Defini ii: Fie S o mul ime finit nevid. Un multiset (mul ime cu repeti ie) peste S este o pereche R=(S,r) format din mul imea S i o func ie r: S numit func ia multiplicitate (sau repeti ie) a elementelor din S. Aceast func ie are rolul de a ine minte de cte ori se repet fiecare element din mul imea S. Vom spune c R=(S,r) este un m-multiset dac numrul total al elementelor acestuia ( innd cont de multiplicit i) este m. Avem nevoie n cele ce urmeaz de urmtoarele Nota ii: := := := | ,, | ; ; ;
= = =
| , | |=
Dm, aadar, n continuare urmtoarele Defini ii: Un graf neorientat peste V este o pereche G=(V,E), unde E= , este un multiset peste . Un element e=uv se numete muchie din E, iar dac u=v, acesta se numete bucl. Dac , , atunci G se numete p-graf.
. Vom nota Un graf neorientat simplu peste V este o pereche G=(V,E), unde muchiile acestui graf, de asemenea, cu e=uv. Observm c un graf neorientat simplu este un 1-graf neorientat fr bucle. Un graf orientat peste V este o pereche G=(V,E), unde E= , este un multiset peste (altfel spus, un multiset de perechi ordonate). Un element e=(u,v) din E se numete arc, iar dac u=v, se numete bucl.. Dac n defini ia grafului simplu nlocuim exponentul 2 printr-un numr oarecare , obinem definiia unui hipergraf k-uniform G=(V,E), unde . Mai general, dac , atunci G=(V,E) se numete hipergraf.
Prin tergerea buclelor unui graf neorientat G=(V,E) i prin nlocuirea multimuchiilor prin multimuchii cu multiplicitatea egal cu 1, ob inem graful simplu suport al acestuia. Prin ignorarea orientrii arcelor unui graf orientat G=(V,E) ob inem graful neorientat suport al acestuia. = , Fie izomorfe i vom nota ~ i = , dou grafuri neorientate. Spunem c i dac exist o func ie bijectiv : cu proprietatea:
= , , ,
1.
sunt
n acest caz, func ia se numete izomorfism de grafuri (neorientate). Din punct de vedere intuitiv, dou grafuri sunt izomorfe dac se pot reprezenta n plan printr-un acelai desen.
No iunea de multiset al gradelor asociat unui graf este suficient de interesant i elementar n acelai timp nct s ne poat furniza o serie de teoreme deosebite de caracterizare a acesteia n diferite contexte cu grad mare de generalitate. n acest sens, rezultatele prezentate n continuare ne dau condi ii necesare i suficiente ca un ir de numere naturale s poat fi multisetul gradelor unui graf neorientat oarecare, a unui graf neorientat fr bucle, respectiv a unuia neorientat simplu. Demonstra iile tuturor acestor teoreme sunt de natur algoritmic si ele sunt nso ite, pentru o mai mare claritate, de algoritmii propriu-zii de construire a grafurilor ce ndeplinesc condi iile cerute. Ultimul dintre acestea este un rezultat clasic n domeniu, cunoscut sub numele de teorema Havel Hakimi. Celelalte, dei mai pu in ntlnite, sunt la fel de frumoase ca i acesta.
Teorema I.1 graf Un multiset neorientat = = , , ,, dac i (unde 1) este multisetul gradelor unui numai dac este ndeplinit condi ia
.
care ndeplinete Reciproc, s presupunem c avem un ir de numere , , , condi ia din enun i vrem s artm c acesta poate fi multisetul gradelor unui graf neorientat. Pentru aceasta vom construi un astfel de graf = , . Fie = ,, nodurile acestuia.
Demonstra ie: Implica ia direct este imediat. Se presupune c este multisetul gradelor grafului neorientat = , i atunci = | | 2).
Din rela ia ) rezult c printre cele n grade ale nodurilor grafului trebuie s fie un numr par 2k de grade impare. Fr a restrnge generalitatea putem presupune c acestea sunt , , , . Construim n fiecare nod un numr maxim de bucle, astfel nct , 1 i unim cele 2k noduri de grad impar astfel: unde = multiplicitatea , , este graful format din vrful (vezi Fig. I.1). i o bucl . cu
...
Figura I.1
...
Pe baza teoremei demonstrate anterior putem da algoritmul de construire a unui graf neorientat care are multisetul gradelor egal cu un multiset dat ce ndeplinete condi iile teoremei.
Algoritmul II.1
dac altfel ultimul_impar0 pentru i1, muchie de ori /* dac toate nodurile de grad impar de dinainte sunt legate n perechi, l memorm pentru a fi legat cu urmtorul de grad impar, ca i el */ /* legm acest nod cu ultimul de dinaintea sa de grad impar, muchie
_
/* re inem ultimul nod de grad impar rmas pentru a fi unit cu altul de grad impar */
memorat n ultimul_impar */
ultimul_impar0
Teorema I.2 Un multiset = unui graf neorientat fr bucle urmtoarele condi ii:
; .
= ,
(unde ) este multisetul gradelor dac i numai dac sunt ndeplinite simultan
Demonstra ie: ncepem cu implica ia direct. Fie Proprietatea este, evident, ndeplinit. Dac
graf neorientat cu
este graf neorientat fr bucle, nsemn c cel mai mare grad al unui nod din graf | |= de unde
Reciproc, fie un multiset ce ndeplinete condi iile , . Construim un graf , neorientat, fr bucle, cu = . Ideea este aceea de a construi mai nti un
7
graf = , neorientat cu bucle astfel nct = , dup algoritmul dat de Teorema II.1. Transformm apoi buclele grafului n multimuchii astfel: Figura I.2
n mod evident, aceast transformare pstreaz gradele nodurilor, deci, va rezulta astfel un nou graf notat = , cu = i care con ine cel mult un nod cu bucle. Pentru o singur bucl putem aplica urmtoarea transformare:
Dar, dac n nodul sunt mai multe bucle dect muchii existente n graf, fcnd toate transformrile de tipurile anterioare rmn, totui, bucle n nodul . Aadar trebuie s demonstrm c numrul de bucle din n este cel mult egal cu numrul de muchii din graful . Pentru aceasta notm cu m numrul de muchii incidente n care nu sunt bucle. Avem, de aici, c numrul de bucle n este de iar numrul de muchii din graful este
Vrem, deci, s artm c Figura I.4 ceea ce este echivalent cu = , deci e ndeplinit i pentru de
muchii
Aadar numrul de bucle din n este ntr-adevr cel mult egal cu numrul de muchii din graful , ceea ce completeaz demonstra ia teoremei. Aceast demonstra ie ne ajut s formulm un algoritm ce primete ca date de intrare un ir de n numere naturale, verific dac el poate reprezenta multisetul gradelor unui graf neorientat fr bucle i n caz afirmativ l construiete.
Algoritmul I.2
1 >
dac altfel
) sau
/* memoreaz ultimul nod de grad impar pentru a-l uni cu urmtorul tot de grad impar */ /* memoreaz ultimul nod cu bucle rmase pentru a le grupa cu buclele urmtorului, transformndu-le n muchii */ /* numtul de bucle ale nodului curent */ /* numtul de bucle rmase netransformate ale nodului anterior */
/* verificm dac existun nod de grad impar anterior numai cu bucle*/ , =1 /* mbog im mul imea
2m
A rmas s rezolvm cazul n care au mai rmas bucle (din construc ie, acestea pot fi la unul din ultimele noduri ale grafului creat).
dac nr_bucle_ant=0 pentru i1, _ _ E (e= pn cnd r(e) r(e)-1 dac r(e)=0 E E E = e= , 1
_ _
/* evitm cazurile cnd bucla este incident cu muchia , pentru c nu putem efectua transformri */
Prezentm acum teorema care ne d condi iile necesare i suficiente ca un ir de numere naturale s poat fi multisetul gradelor unui graf neorientat simplu (numit, n acest caz, ir grafic).
Teorema I.3 (Havel, Hakimi) Un multiset = multisetul gradelor unui graf neorientat simplu = 1, 1, , = , , unde i 1 este dac i numai dac multisetul , ,,
1,
este multisetul gradelor unu graf neorientat simplu. Demonstra ie: Reciproca este imediat. Fie multisetul gradelor unui graf neorientat simplu = , . Fie = ,, nodurile grafului i fr a restrnge generalitatea le putem considera aezate n ordinea descresctoare a gradelor. Adugm acestui graf un alt nod i unim nodul cu primele noduri ale lui . Ob inem astfel un nou graf cu = .
Implica ia direct. Fie = , neorientat simplu cu ,, nodurile aezate n ordinea descresctoare a gradelor i = . Vrem s demonstrm c noul multiset ob inut din este multistul gradelor nodurilor unui alt graf = , . l construim cu ajutorul grafului i lum discu ie dou cazuri posibile. Cazul 1: Nodul este adiacent cu , , acestuia ob inem un graf simplu, cu = . Eliminnd nodul . i muchiile incidente
10
Cazul 2: Exist printre nodurile , , noduri cu care nu este adiacent. Ideea este de a reduce acest caz la cel anterior, fr a modifica gradele nodurilor grafului . Fie , , rezult c 1 astfel nct 1 astfel nct . Dar, . = ,
, iar 1 (pentru c este adiacent cu Dar ), rezult ca ,, , , astfel nct i . Facem atunci urmtoarea transformare:
Figura I.6
Figura I.7
ob innd un noug graf Repetm transformarea pn cnd toate nodurile , , sunt adiacente lui . Notnd graful ob inut n urma tuturor transformrilor = , , putem considera graful = , care are = . .
Enun ul teoremei ne ajut s construim un algoritm ce determin dac un ir de numere poate fi multisetul gradelor unui graf neorientat simplu, repetnd pasul de reducere a unui multiset cu n elemente la unul cu n-1 elemente . Algoritmul se ncheie n una din cele dou situa ii: fie despre ultimul multiset ob inut se poate observa uor c este unul ce poate fi multisetul gradelor unui graf simplu, fie nu se mai pot efectua reduceri corecte. n mod evident exist dou multiseturi triviale pentru irul gradelor unui graf: (a) multisetul format numai din 0 (b) multisetul format numai din 1 (sunt n numr par dac ini ial 1 ), pentru c la fiecare pas de reducere i, suma gradelor scade cu ) La fiecare pas i, avem multisetul = . Acestuia sigur nu i mai putem aplica procedeul de reducere dat de teorem dac are loc una din situa iile: (c) (nu mai am +1 elemente n multiset) (d) (al +1 - lea element din multiset s nu fie 0, altfel, aplicnd pasul de reducere multisetului , elementul va deveni -1)
11
Algoritmul I.3
dac pentru k1, dac dac pentru i1, dac 1 /* dup o reducere, poate deveni mai mic dect = sau = sau = 1 STOP e multisetul gradelor unui graf simplu STOP nu e multisetul gradelor unui graf simplu /* (a), (b) */ /* (c), (d) */ 1 ) sau > sau > 1 STOP nu e multisetul gradelor unui graf simplu
/* pentru un singur element rmas */ dac = STOP e multisetul gradelor unui graf simplu
Criteriile pentru ca un multiset s fie irul gradelor unui graf simplu sunt date i de urmtorul rezultat: Teorema I.4 (Erds, Gallai) Un multiset = multisetul gradelor unui graf neorientat simplu ); 1 min , = , unde i , dac i numai dac . 1 este
, 1, ,
n tratarea problemei clasice a verificrii dac un multiset este sau nu ir grafic, ns, este preferat rezultatul dat de Havel i Hakimi datorit simplit ii algoritmului dedus.
12
1. Grafuri planare
Defini ii:
Spunem c un graf neorientat simplu = , este graf planar dac admite o reprezentare grafic n plan astfel nct muchiile sale s nu se intersecteze n alte puncte afar de nodurile sale. O astfel de reprezentare (notat ) poart numele de hart, iar graful se numete graful suport al hr ii . Spunem n acest caz c M este o reprezentare plan fr autointersec ii a grafului G. O hart a grafului va mpar i planul n pr i conexe pe care le numim fe e, mul imea muchiilor ce o delimiteaz poart numele de frontier, iar numrul acestora este gradul fe ei. n fiecare hart exist o fa infinit (cea exterioar, nemrginit), iar o muchie interioar acestei fe e se va numi muchie critic. Nota ii: (sau simplu, ) mul imea fe elor din reprezentarea grafului gradul unei fe e
prin harta
; , notat , astfel:
| ,
Exemplu:
Figura II.1
13
Cu no iunile anterioare, putem formula urmtoarele: Observa ii: Un graf planar poate avea mai multe hr i fiecare corespunznd unei alte reprezentri plane; = | | Dac este graf conex, atunci ~ ; | | |; | |; | =| =| Unei muchii critice din harta i se asociaz o bucl n ; = ; Pentru grafurile planare are loc urmtorul rezultat clasic: Teorema II.1 (Formula poliedral a lui Euler) Fie rela ia: = , un graf planar conex i | || |
, ,
Demonstra ie: Deoarece este o hart conex este asigurat existen a unui arbore par ial = , , al hr ii , unde are un singur element, fa a infinit. Cunoatem urmtoarea proprietate a arborelui | |=| |-1, din care rezult c | || Rmne s artm c rela ia se pstreaz adugnd la cele | | | | 1 p elemente din mul imea = ,, , muchiile terse din graful pentru ob inerea arborelui par ial . La adugarea n arborele a unei muchii , 1, , aceasta mparte fa a n care este introdus n dou fe e, deci att numrul muchiilor, ct i cel al fe elor crete de fiecare dat cu o unitate, iar numrul nodurilor rmne, n mod evident, constant. Adic | || | | =| || | | |=| | | |= | 1 | | 1 | | |=| | | | 1 1= 2.
| |=
Din Teorema Euler rezult o serie de corolare, ce pot fi considerate drept criterii de verificare a non-planarit ii unor grafuri particulare, facil de implementat. Dm n continuare cteva dintre acestea.
n mod similar, formula lui Euler valabil pentru arborele par ial se conserv la introducerea tuturor muchiilor din mul imea .
un graf planar, | | , ,
3. Atunci | | 3| | 6. = ,
. Din condi ia | |
14
| |= | || |
3| | => | | | | | |= | || |
(1)
Observa ie: Pentru implementare, acest corolar ne d un criteriu de non-planaritate: n condi iile teoremei, dac inegalitatea din concluzie nu are loc, atunci graful nu este planar. Corolarul II.3 Fie Demonstra ie: Presupunem prin reducere la absurd c > 5; atunci 6, , de unde | | 6| |, deci | | 3| |. ns din corolarul anterior cunoatem rela ia | | 3| | 6. Contradic ie. = , un graf conex, planar, simplu. Atunci 5.
Un alt rezultant important n teoria grafurilor planare, pe lng Teorema poliedral a lui Euler este Teorema Kuratowski, ce reprezint o caracterizare simpl, remarcabil, a grafurilor planare. n vederea enun rii acestui rezultat, prezentm dou rezultate premergtoare i o defini ie. Lema II.4 Graful complet nu este graf planar. este planar, din Corolarul II.2 ar rezulta
Demonstra ie: Prin reducere la absurd, presupunem c graful , ar fi planar. Cum lungimea celui mai mic ciclu n acest graf este patru, rezult c fiecare fa a oricrei hr i are gradul cel pu in patru, de unde inegalitatea 4| | = | | = 18. De aici ob inem: | | 4. Dar din Teorema lui Euler deducem inegalitatea = | | | | | | 6 9 4 = 1. Contradic ie! Defini ie: Se numete subdiviziune a unui graf noduri n interiorul muchiilor. = , graful ob inut prin inserarea de
Un graf G este este planar dac i numai dac nu con ine subdiviziuni ale grafurilor .
Demonstra ia acestui rezultat fundamental pentru teoria grafurilor depete cadrul i inten ia acestei lucrri. Cititorul care dorete s intre n detaliile acesteia poate consulta, spre exemplu, [1] sau [2].
15
2. Planaritate i hamiltoneitate
Este un lucru binecunoscut faptul c no iunea de hamiltoneitate, dei uor de definit, nu admite caracterizri elementare. Totui, n cazul grafurilor planare, aceasta admite o caracterizare mai simpl. n acest sens, vom prezenta n aceast sec iune o condi ie necesar pentru ca grafurile planare s con in un ciclu hamiltonian, cunoscut sub numele de teorema lui Grinberg. Acest rezultat deosebit de interesant, a fost folosit n literatura de specialitate pentru a construi exemple de grafuri planare ne-hamiltoniene cu propriet i suplimentare deosebite. Un astfel de exemplu a fost dat de Tutte 1 (1946) pentru a nega o conjectur faimoas a lui Tait (1880), care afirma c orice graf 3-conex cubic planar are un ciclu hamiltonian2. Importan a acestei conjecturi n teoria grafurilor este central, ntruct dac aceasta s-ar fi dovedit adevrat, ar fi implicat faimoasa teorem a celor patru culori. Privind n sens invers, ne putem ntreba n ce condi ii un graf despre care tim c este hamiltonian poate fi planar. Teorema cu care ncheiem aceast sec iune rspunde la aceast ntrebare, dnd o condi ie necesar i suficient ca un graf hamiltonian s fie planar. Prezentm mai nti un rezultat cu grad sporit de generalitate. Teorema II.7 , din , Fie = , , o hart conex a unui graf planar, un ciclu elementar i cele dou regiuni determinate de n plan. Notm cu , 1 i numrul i-fe elor i respectiv numrul vrfurilor lui din care nu sunt n . Analog, notm cu 1 i corespunztor regiunii . Atunci avem
= .
. Demonstra ie: Not cu numrul muchiilor lui din . Teorema poliedral a lui Euler aplicat n cazul hr ii induse n de mul imea vrfurilor din mpreun cu cele ale lui conduce la urmtoarea egalitate: | Sau, innd cont c | |=| = | |, | | | = 1 | . din ultimele dou rela ii ob inem . 1 =
Pe de alt parte
|. Eliminnd =|
1 2
Vezi figura II.2 Grafurile k-conexe sunt cele n care trebuie eliminate cel pu in k muchii pentru a deveni ne-conex, iar grafurile cubice sunt cele n care orice nod are gradul trei
16
=|
Teorema II.8 (Grinberg) , din Fie = , , o hart conex a unui graf planar, cele dou regiuni determinate de n plan. Notm cu , respectiv . Atunci avem
= .
Demonstra ie: Se observ uor c acest rezultat este o consecin direct a teoremei precedente, deoarece n cazul unui ciclu hamiltonian, cu nota iile anterioare, avem = = . Dup cum am amintit n paragraful de prezentare al acestei sec iuni, graful alturat este un exemplu de graf 3-conex cubic planar ne-hamiltonian, exemplu care infirma n 1946 o conjectur dificil, cu o vechime de 75 de ani la acel moment. Faptul c acest graf este 3-conex cubic i planar se observ direct din reprezentarea sa grafic, nehamiltoneitatea fiind o consecin a teoremei lui Grinberg.
Figura II.2 Graful Tutte Prezentm n continuare rezultatul care ne spune n ce condi ii un graf hamiltonian este planar. Pentru aceasta vom introduce cteva no iuni premergtoare.
Fie = , un graf hamiltonian i un ciclu hamiltonian al su. Notm cu = , graful complementar n al ciclului . Numim, n acest caz, muchiile corzi (n raport cu ciclul ). grafului Fie corzilor lui o hart a grafului . Cu nota iile anterioare construim graful de intersec ie al n raport cu harta , notat , , astfel: .
Defini ii:
nodurile acestuia vor fi corzile grafului ; considerm c ntre dou corzi avem muchie dac acestea se intersecteaz n harta
17
Cu aceste pregtiri dm acum, fr demonstra ie, rezultatul anun at: Fie = , un graf hamiltonian, o hart a sa i un ciclu hamiltonian al grafului . Atunci este planar dac i numai dac , este graf bipartit. Teorema II.9
Figura II.3
aceast sec iune are un caracter mai pu in formal, ntruct implic prezentarea i utilizarea unor no iuni de un nivel matematic avansat n raport cu nivelul acestei lucrri 4 compacte, conexe 5 altfel spus: echivalent din punct de vedere topologic
18
mnere (3-sfere). Aadar, ntrebarea din paragraful precedent se traduce cu ajutorul teoremei amintite anterior la urmtorul rezultat: Teorema II.9 (de reprezentare fr autointersec ii a grafurilor) Orice graf poate fi reprezentat fr autointersec ii pe o sfer sau pe o -sfer. Graful este planar dac i numai dac acesta admite o reprezentare fr autointersec ii pe o sfer. Demonstra ie: n ciuda dificult ii aparente a enun ului, demonstra ia este imediat. ntr-adevr, sa presupunem mai nti c graful este planar. Atunci, prin proiec ie stereografic acesta poate fi reprezentat fr autointersec ii pe o sfer. Tot cu ajutorul proiec iei stereografice se vede uor c orice graf care admite o reprezentare fr autointersec ii pe o sfer este planar. Presupunem acum ca graful nu este planar. Fie o hart plan a acestuia i 0 proiec ia stereografic a hr ii pe sfer. Pentru fiecare dou muchii care se intersecteaz n , adugm cte un mner sferei care s foloseasc 0 ntr-un punct diferit de vrfurile lui drept pasaj de trecere pentru una din cele dou muchii, i modificm harta 0 n concordan . Prin adugarea succesiv a unor astfel de mnere, ob inem rezultatul dorit.
Aceast teorem ndrept ete urmtoarea: Defini ie: Numim genul unui graf cel mai mic numr natural reprezentat pe o g-sfer fr autointersec ii. pentru care graful poate fi
Spre exemplu, orice graf planar are genul 0. Cum grafurile K3,3 i K5 nu sunt planare, nseamn ca ele au genul cel pu in 1. ncheiem aceast sec iune men ionnd c aceste dou grafuri au genul exact 1, ele putnd fi reprezentate, fr autointersec ii, pe un tor.
19
III. Cuplaje
1. No iuni introductive
Vom ncepe acest capitol prin a prezenta o problem din via a cotidian care i va gsi rezolvarea n mod firesc n acest cadru, al teoriei grafurilor. S presupunem c ntr-o companie avem un numr de lucrtori i tot attea locuri de munc. Fiecare loc de munc are specificul su i fiecare angajat este calificat pentru unul sau mai multe dintre acestea. Problema const n a determina o mpr ire a locurilor de munc, astfel nct fiecare lucrtor s fie angajat conform uneia dintre calificrile sale. Pentru a o rezolva vom introduce o nou no iune, aceea de cuplaj, mpreun cu o serie de observa ii i rezultate pregtitoare. Aadar, Defini ii: Fie = , un graf simplu. Se numete cuplaj al grafului o mul ime de muchii cu proprietatea c oricare dou sunt neincidente (mul ime independent de muchii). saturate, iar
Nodurile grafului care apar in muchiilor cuplajului se numesc cele care nu apar in cuplajului poart numele de noduri nesaturate. Exemplu:
Spunem c un lan sau ciclu elementar este alternant dac muchiile sale apar in alternativ cuplajului i mul imii = . Dac acesta are capetele nesaturate, l numim lan (ciclu) deschis. Exemplu: = 1 ,3,4,5, = 1, ,3,4,5,6 lan lan alternant deschis alternant nchis
Figura III.1
20
O mul ime de noduri se numete transversal dac orice muchie a grafului are cel pu in unul din noduri n mul imea . Spunem c o mul ime de noduri s con in toate nodurile mul imii . poate fi saturat dac exist un cuplaj care
Un cuplaj se numete perfect dac acesta satureaz mul imea . Dac din mul imea de noduri rmne exact un nod nesaturat, numim cuplajul aproape perfect. Nota ii:
Observa ii: III.1) Un graf cu numrul de noduri impar nu poate con ine un cuplaj perfect. III.2) Fie grafului pe cele ale lui diferen a simetric a dou cuplaje , . Componentele conexe ale sunt de patru tipuri (am colorat cu negru muchiile cuplajului i cu rou ): ciclu , tip ); alternant (numim, pe scurt, component de
saturat i );
III.3) |
||
numrul
21
Un prim rezultat important este: Teorema III.1 (Berge) Fie = , un graf simplu cu i un cuplaj al acestuia. Atunci cuplaj maximal dac i numai dac nu exist n niciun lan alternant deschis. este un
Demonstra ie: Pentru implica ia direct ra ionm prin reducere la absurd. Fie un cuplaj maximal i un lan alternant deschis. Definim un nou cuplaj ca fiind diferen a simetric dintre cuplajul i mul imea muchiilor lan ului : = . Cum este lan este de cardinal strict mai mare alternant deschis atunci | | = | | 1, deci cuplajul dect , contradic ie cu maximalitatea cuplajului . Pentru implica ia invers, fie un cuplaj pentru care nu exist niciun lan alternant deschis. Prin reducere la absurd, presupunem c nu este un cuplaj maximal. Fie un astfel de cuplaj maximal. Atunci, n mod evident, | | > | |, adic | | | | > . Dar, conform Observa iei III.3: | | | | = numrul componentelor conexe din componentelor conexe din de tip , .
de tip
numrul
De aici, deducem c numrul componentelor conexe din pozitiv, deci exist cel pu in un lan , n , adic
Prezentm n cele ce urmeaz, fr demonstra ie, o serie de rezultate ce ne ajut s formulm algoritmii de rezolvare a problemei prezentate la nceputul capitolului. Vom folosi urmtoarele: Nota ii: Pentru = , un graf simplu i , notm cu mul imea nodurilor adiacente celor din ; Pentru un graf bipartit cu mul imea nodurilor dat de parti iile i i mul imea muchiilor vom folosi nota ia = , . graf bipartit. Atunci mul imea de noduri | | |. poate fi saturat dac i
O generalizare a acestui rezultat o reprezint urmtoarea Teorema III.3 (Tutte) Un graf = , are un cuplaj perfect dac i numai dac pentru orice submul ime de noduri numrul de componente conexe cu un numr impar de noduri n subgraful indus de mul imea este mai mic sau egal dect | |. = , =|
22
2. Algoritmul ungar
Cu pregtirile anterioare putem trece la rezolvarea problemei descrise n debutul capitolului. Pentru aceasta vom nota mul imea lucrtorilor cu = ,, i mul imea locurilor de munc cu = ,, . Construim, cu ajutorul acestora, graful bipartit = , , unde = dac i numai dac lucrtorul este calificat pentru locul de munc . Problema se reduce astfel la determinarea unui cuplaj perfect al grafului . n condi iile acestei probleme teorema lui Hall asigur existen a unui astfel de cuplaj. Pentru determinarea lui vom folosi un algoritm de rezolvare numit algoritmul ungar. Acesta decide dac, n general un graf bipartit admite un cuplaj perfect sau nu. n caz afirmativ, metoda determin un astfel de cuplaj iar n caz contrar aceasta returneaz (conform teoremei lui Hall) | | |. o submul ime cu proprietatea c | Algoritmul pornete cu un cuplaj arbitrar (de exemplu, prima muchie n ordinea lexicografic a etichetelor nodurilor). Dac acesta satureaz toate nodurile mul imii , atunci algoritmul se oprete, pentru c a fost determinat un cuplaj perfect. Altfel, se alege, n ordinea etichetelor, un nod , nesaturat i se ncearc construirea unui lan alternant deschis cu extremitatea ini ial n nodul ales. Mai nti se alege un (primul) vecin (nod adiacent) al lui . Dac acesta este nesaturat, am aflat deja un lan alternant deschis de lungime unu, cu extremitatea ini ial n nodul ales i extremitatea final n . din cuplajul i continum Altfel, adugm lan ului muchia din , muchia procedeul cu noul pe post de , ocolind nodurile din mul imea care apar in deja lan ului . Dac lan ul construit astfel6 pas cu pas este alternant deschis, atunci este determinat (similar metodei folosite n demonstra ia teoremei lui Berge) cuplajul = care satureaz din mul imea un nod n plus fa de cuplajul anterior, dup care se reia procedeul, cu noul cuplaj n locul lui . n cazul n care lan ul nu este alternant deschis (extremitatea final este nod al cuplajului ) nseamn ca mul imea = verific | | |, deci, conform teoremei lui Hall, graful nu admite un cuplaj inegalitatea | perfect. Pentru o mai bun n elegere a algoritmului contruim schema logic a acestuia i dm un exemplu de rulare.
Construirea lan ului lund nodurile n ordinea lor lexicografic poate fi mbunt it cu ajutorul arborilor arborilor M-alternan i. Cititorul poate studia aceast variant n lucrarea [1], pag. 81-84
23
Este X saturat ? S T NU
DA
STOP satureaz pe
nesaturat
STOP |
| |
DA
? NU
LL
SS TT
Este saturat ?
LL
DA
Fie graful = ,, , , , . Aplicm acestuia algoritmul ungar n vederea ob inerii unui cuplaj perfect. Pornim cu = .
Exemplu:
] , , ;
24
X saturat ? NU: z = , S={ }, T= = ? NU: y = ; L = [ ] saturat ? DA: z = ; L = , ; S ={ , }, T={ } = ? NU: y = ; L = , , ] saturat ? , , ; DA: = = , , ; X saturat ? NU: z = , S={ }, T= = ? NU: y = ; L = [ ] saturat ? DA: z = ; L = , ; S ={ , }, T={ } = ? NU: y = ; L = , , ; saturat ? DA: z = ; L = , , S ={ , , }, T={ , = ? NU: y = ; L = , , , saturat ? DA: z = ; L = , , S ={ , , , }, T={ = ? NU: y = ; L = , , , saturat NU: = , , , X saturat ? DA: STOP
} , ,
, ;
, } , ,
Observa ie: Cuplajul perfect al garfului nu este unic acesta depinde de cuplajul ini ial. Un alt exemplu de cuplaj perfect pentru este:
25
optim n graful , deci algoritmul se ncheie. Dac, n schimb, nu exist un cuplaj perfect n = i, n acest graful , nseamn c, aplicnd algoritmul ungar am ajuns n situa ia caz, efectum o reetichetare a nodurilor grafului dup urmtoarea regul: - calculm = min ; -
alegem etichetarea valid , dac = , dac , altfel - determinm noul graf . Aceste trei opera ii asigur apari ia n graful a unui nou nod nesaturat al mul imii cu ajutorul cruia extindem cuplajul (tehnica diferen ei simetrice fa de lan ul -alternant deschis deja cunoscut) la un nou cuplaj . Dup care este reluat algoritmul, pn la ob inerea cuplajului optim.
27
Etichetare valid
Determinarea , un cuplaj n
Este X saturat n ?
Calculul pentru , ,
28
Bibliografie
[1] Bondy, J.A., Murty, U.S.R, Graph Theory with Applications, Elsevier Science Publishing, 1976 [2] Diestel, R., Graph Theory, Springer-Verlag Heidelberg, 2005 [3] Popescu, D.R., Combinatoric i teoria grafurilor, Societatea de tiin e Matematice din Romnia, 2005 [4] Tomescu, I., Probleme de combinatoric i teoria grafurilor, Ed. Didactic i Pedagogic, Bucureti, 1981
29