Sunteți pe pagina 1din 29

Prof.

Popescu Rozica - Maria

Lecii complementare de teoria grafurilor

Editura Sfntul Ierarh Nicolae ISBN 978-606-577-028-7

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

Capitolul II. Reprezentarea fr autointersecii a grafurilor simple ................. 13


II.1. Grafuri planare ........................................................................................ 13 II.2. Planaritate i hamiltoneitate .................................................................... 16 II.3. Reprezentri grafice fr autointersecii ale grafurilor ........................... 18

Capitolul III. Cuplaje ....................................................................................... 20


III.1. Noiuni introductive ............................................................................... 20 III.2. Algoritmul ungar ................................................................................... 23 III.3. Algoritmul Kuhn - Munkres .................................................................. 26

Bibliografie ....................................................................................................... 29

Introducere

Aceast lucrare de teoria grafurilor are drept scop familiarizarea cititorului cu aspecte mai puin cunoscute ale acesteia care pot fi abordate pe baza unor cunotine solide dobndite ncepnd cu perioada liceului. Pentru o bun parcurgere a lucrrii sunt presupuse cunoscute principalele noiuni de teoria grafurilor. n primul capitol este prezentat noiunea de graf n contextul su maxim de generalitate (ce permite existena buclelor i a multimuchiilor), fiind introdus cu ajutorul noiunii de multiset (mulime cu multipliciti). 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 planaritii unui graf, att n spaiul 2-dimensional ct i o generalizare a acesteia. Seciunea a doua a acestui capitol arat legtura strns ce exist ntre planaritate i hamiltoneintate, furniznd criterii de stabilire a uneia dintre proprieti, atunci cnd este presupus cealalt. Ultimul dintre capitole prezint cititorului noiunea de cuplaj, care cumulat cu cea binecunoscut de graf bipartit converg la elaborarea a doi algoritmi importani (algoritmul ungar i Kuhn - Munkres) cu o larg aplicabilitate n probleme legate de planificarea activitilor organizatorice (alctuire de orare, ncadrarea optim a personalului unei companii n raport cu pregtirea acestuia, etc. ).

I. Grafuri definite prin multiseturi. Multisetul gradelor unui graf

1. Multiseturi
Conceptul de multiset reprezint o generalizare a noiunii matematice elementare de mulime. Simplu spus, un multiset reprezint o mulime 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 noiunii standard de mulime. Pentru a da rigoare acestui concept dm urmtoarea Definiii: Fie S o mulime finit nevid. Un multiset (mulime cu repetiie) peste S este o pereche R=(S,r) format din mulimea S i o funcie r: S numit funcia multiplicitate (sau repetiie) a elementelor din S. Aceast funcie are rolul de a ine minte de cte ori se repet fiecare element din mulimea S. Vom spune c R=(S,r) este un m-multiset dac numrul total al elementelor acestuia (innd cont de multipliciti) este m. Avem nevoie n cele ce urmeaz de urmtoarele Notaii: := , , | ; =

: = | ; := | , || = ;

2. Grafuri definite prin multiseturi


n aceast seciune vom prezenta binecunoscutele noiuni de graf neorientat, graf orientat i izomorfism de grafuri dintr-o perspectiv mai rar ntlnit, folosindu-ne de conceptul de multiset introdus n seciunea precedent. Aceast perspectiv are avantajul de a da posibilitatea unui graf de a avea bucle, precum i un numr orict de mare de muchii ntre oricare dou noduri ale sale. Vom prezenta de asemenea n mod succint prin prisma acestei perspective mai puin familiare cteva noiuni de baz mai rar ntlnite de teoria grafurilor, precum cea de hipergraf, hipergraf k-uniform i graf suport.

Dm, aadar, n continuare urmtoarele Definiii: 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.

Un graf neorientat simplu peste V este o pereche G=(V,E), unde . Vom nota 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 definiia 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, obinem graful simplu suport al acestuia. Prin ignorarea orientrii arcelor unui graf orientat G=(V,E) obinem graful neorientat suport al acestuia.

Fie = , i = , dou grafuri neorientate. Spunem c i sunt izomorfe i vom nota ~ dac exist o funcie bijectiv : cu proprietatea: n acest caz, funcia 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.
= , , , 1 .

3. Multisetul gradelor. Teoreme de caracterizare


ntruct conceptul de graf prezentat anterior este mai cuprinztor dect cel clasic, permind existena buclelor i a mai multor muchii ntre aceleai dou noduri, noiunea de ir al gradelor asociat unui graf va trebui generalizat n mod corespunztor. Aceasta se realizeaz prin urmtoarea: Definiie: Fie = , un graf neorientat i = , , mulimea nodurilor sale considerate n ordinea cresctoare a gradelor acestora. Numim multisetul gradelor nodurilor lui G, sau secvena gradelor, sau nc irul gradelor nodurilor lui G multisetul = . . . , unde reprezint gradul nodului . Vom nota n cele ce urmeaz cu min i max .

Noiunea 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 condiii 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. Demonstraiile tuturor acestor teoreme sunt de natur algoritmic si ele sunt nsoite, pentru o mai mare claritate, de algoritmii propriu-zii de construire a grafurilor ce ndeplinesc condiiile cerute. Ultimul dintre acestea este un rezultat clasic n domeniu, cunoscut sub numele de teorema Havel Hakimi. Celelalte, dei mai puin ntlnite, sunt la fel de frumoase ca i acesta.

Teorema I.1 graf Un multiset = , , , ( unde 1) este multisetul gradelor unui neorientat = , dac i numai dac este ndeplinit condiia
0 2.

Reciproc, s presupunem c avem un ir de numere , , , care ndeplinete condiia 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.

Demonstraie: Implicaia direct este imediat. Se presupune c este multisetul gradelor grafului neorientat = , i atunci = 2| |0 2).

Din relaia 0 2) 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 = , / este graful format din vrful i o bucl cu multiplicitatea /2 (vezi Fig. I.1). Se observ cu uurin c multisetul gradelor grafului construit coincide 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 condiiile teoremei.

Algoritmul II.1
dac 1 2) STOP nu e multisetul gradelor unui graf neorientat altfel pentru i 1, ultimul_impar0 /* reinem ultimul nod de grad impar rmas pentru a fi unit cu altul de grad impar */

muchie de /2 ori dac ultimul_impar=0 ultimul_impari altfel muchie _ ultimul_impar0 /* 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, memorat n ultimul_impar */

Teorema I.2 Un multiset = ( unde 2) este multisetul gradelor unui graf neorientat fr bucle = , dac i numai dac sunt ndeplinite simultan urmtoarele condiii:
0 2;

Demonstraie: ncepem cu implicaia direct. Fie = , graf neorientat cu = . Proprietatea este, evident, ndeplinit. Dac este graf neorientat fr bucle, nsemn c cel mai mare grad al unui nod din graf este mai mic dect numrul de muchii existente n graf, |= | .

de unde

Reciproc, fie un multiset ce ndeplinete condiiile , . 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 conine 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

Obinem astfel un nou graf , cu = .

Figura I.3

Vrem, deci, s artm c


Figura I.4

muchii

Aadar numrul de bucle din n este ntr-adevr cel mult egal cu numrul de muchii din graful , ceea ce completeaz demonstraia teoremei. Aceast demonstraie 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.

ceea ce este echivalent cu 2 . Dar aceast relaie este ndeplinit de = , deci e ndeplinit i pentru .

Algoritmul I.2
dac 1 2) sau > STOP nu e multisetul gradelor unui graf neorientat fr bucle

altfel ant_deg_impar0 ant_cu_bucle0 nr_bucle_c0 nr_bucle_ant0 pentru i 1, /* 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 */

nr_bucle_c /2

dac 1 2

dac ant_deg_impar0

/* verificm dac existun nod de grad impar anterior numai cu bucle*/ /* mbogim mulimea

Ee = __ , = 1 muchiilor E */ altfel ant_deg_impi impar */ dac nr_bucle_c>0 dac ant_cu_bucle=0

/* reinem nodul pentru a fi unit cu urmtorul de grad

/* dac nu mai exist bucle nainte, reinem nodul */

ant_cu_buclei; nr_bucle_antnr_bucle_c altfel mmax(nr_bucle_ant, nr_bucle_c) muchie e=__ ; ant_cu_buclei nr_bucle_ant|nr_bucle_ant-nr_bucle_c| 2m /* transformm numrul maxim posibil de bucle */

dac nr_bucle_c>nr_bucle_ant

A rmas s rezolvm cazul n care au mai rmas bucle (din construcie, acestea pot fi la unul din ultimele noduri ale grafului creat).

dac nr_bucle_ant=0 pentru i 1, __ repet pn cnd __ i __ r(e) r(e)-1 dac r(e)=0 E e= E (e= /* scoatem o muchie din E */ /* evitm cazurile cnd bucla este incident cu muchia , pentru c nu putem efectua transformri */

E =

E =

, 1

, 1

Prezentm acum teorema care ne d condiiile 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 = , unde 2 i 1 este multisetul gradelor unui graf neorientat simplu = , dac i numai dac multisetul
= 1, 1, , 1, , , ,

este multisetul gradelor unu graf neorientat simplu.


Demonstraie: 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 . Obinem astfel un nou graf

cu = .

Cazul 1: Nodul este adiacent cu , , . Eliminnd nodul i muchiile incidente acestuia obinem un graf simplu, cu = .

Implicaia direct. Fie = , neorientat simplu cu , , nodurile aezate n ordinea descresctoare a gradelor i = . Vrem s demonstrm c noul multiset obinut din este multistul gradelor nodurilor unui alt graf = , . l construim cu ajutorul grafului i lum discuie dou cazuri posibile.

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 . Dar , iar 1 (pentru c este adiacent cu ), rezult ca 2, , , , astfel nct i . Facem atunci urmtoarea transformare: Fie 2, , 1 astfel nct . Dar, = , rezult c 1 astfel nct .

Figura I.6

Figura I.7

obinnd un noug graf Repetm transformarea pn cnd toate nodurile , , sunt adiacente lui . Notnd graful obinut n urma tuturor transformrilor = , , putem considera graful = , care are = . .

Enunul 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 situaii: fie despre ultimul multiset obinut 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 iniial 1 2), pentru c la fiecare pas de reducere i, suma gradelor scade cu 2 ) . Acestuia sigur nu i La fiecare pas i, avem multisetul = mai putem aplica procedeul de reducere dat de teorem dac are loc una din situaiile: (c) (nu mai am +1 elemente n multiset) (d) 0 (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 1 2) sau > sau > 1 STOP nu e multisetul gradelor unui graf simplu

pentru k 1,

dac = 0 sau = 1 STOP e multisetul gradelor unui graf simplu dac = 0 sau pentru i 1, 1 STOP nu e multisetul gradelor unui graf simplu

/* (a), (b) */ /* (c), (d) */

dac

/* dup o reducere, poate deveni mai mic dect n cazul n care naintea reducerii erau egale*/

reordonm multisetul , , /* pentru un singur element rmas */ dac = 0 STOP e multisetul gradelor unui graf simplu altfel STOP nu 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 = , unde 2 i 1 este multisetul gradelor unui graf neorientat simplu = , dac i numai dac
1 min , , 1, , .

0 2);

n tratarea problemei clasice a verificrii dac un multiset este sau nu ir grafic, ns, este preferat rezultatul dat de Havel i Hakimi datorit simplitii algoritmului dedus.

12

II. Reprezentarea fr autointersecii a grafurilor simple

1. Grafuri planare
Definiii:

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 hrii . Spunem n acest caz c M este o reprezentare plan fr autointersecii a grafului G. O hart a grafului va mpari planul n pri conexe pe care le numim fee, mulimea muchiilor ce o delimiteaz poart numele de frontier, iar numrul acestora este gradul feei. n fiecare hart exist o fa infinit (cea exterioar, nemrginit), iar o muchie interioar acestei fee se va numi muchie critic. (sau simplu, ) mulimea feelor din reprezentarea grafului prin harta ; gradul unei fee ; Pentru un graf planar se poate defini harta dual a unei hri , notat , astfel: ={ | , , , , } Exemplu: = | Notaii:

Figura II.1

13

Cu noiunile anterioare, putem formula urmtoarele: Observaii: Un graf planar poate avea mai multe hri fiecare corespunznd unei alte reprezentri plane; = 2|| 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) relaia:

Fie = , un graf planar conex i = , , o hart a acestuia. Atunci are loc || | | || = 2

Demonstraie: Deoarece este o hart conex este asigurat existena unui arbore parial = , , al hrii , unde are un singur element, faa infinit. Cunoatem urmtoarea proprietate a arborelui | |=| |-1, din care rezult c || || ||=|| || 1 1= 2. Rmne s artm c relaia se pstreaz adugnd la cele | | || 1 p elemente din mulimea = , , , muchiile terse din graful pentru obinerea arborelui parial . La adugarea n arborele a unei muchii , 1, , aceasta mparte faa n care este introdus n dou fee, deci att numrul muchiilor, ct i cel al feelor crete de fiecare dat cu o unitate, iar numrul nodurilor rmne, n mod evident, constant. Adic | | | | | | = || || 1 || 1 = || || || = 2

Din Teorema Euler rezult o serie de corolare, ce pot fi considerate drept criterii de verificare a non-planaritii unor grafuri particulare, facil de implementat. Dm n continuare cteva dintre acestea.

n mod similar, formula lui Euler valabil pentru arborele parial se conserv la introducerea tuturor muchiilor din mulimea .

Corolarul II.2

Demonstraie: Fie = , , o hart a grafului planar = , . Din condiia || 3 rezult irul de inegaliti
14

Fie = , un graf planar, || 3. Atunci | |3|| 6.

2| = | 3|| => || || Din Teorema Euler i relaia (1) rezult imediat


(1)

|| | | || = 2 || | | | || = | |>= |2 || | ||>= |3|| 6. Observaie: Pentru implementare, acest corolar ne d un criteriu de non-planaritate: n condiiile teoremei, dac inegalitatea din concluzie nu are loc, atunci graful nu este planar. Corolarul II.3 Fie = , un graf conex, planar, simplu. Atunci 5.

Demonstraie: Presupunem prin reducere la absurd c > 5; atunci 6, , de unde 2| | 6||, deci | | 3||. ns din corolarul anterior cunoatem relaia | | 3|| 6. Contradicie.

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 enunrii acestui rezultat, prezentm dou rezultate premergtoare i o definiie. Lema II.4 Graful complet nu este graf planar.

Demonstraie: Presupunnd prin absurd c graful este planar, din Corolarul II.2 ar rezulta | = |10 3|| 6 = 9! Lema II.5 Demonstraie: 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 hri are gradul cel puin patru, de unde inegalitatea 4|| = 2| = |18. De aici obinem: || 4. Dar din Teorema lui Euler deducem inegalitatea 2 = || | | || 6 9 4 = 1. Contradicie! Graful , nu este graf planar.

Definiie: Se numete subdiviziune a unui graf = , graful obinut prin inserarea de noduri n interiorul muchiilor.

Cu aceste pregtiri, putem da acum Teorema II.6 (Kuratowski) Un graf G este este planar dac i numai dac nu conine subdiviziuni ale grafurilor , i . Demonstraia acestui rezultat fundamental pentru teoria grafurilor depete cadrul i intenia 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 noiunea 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 seciune o condiie necesar pentru ca grafurile planare s conin 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 proprieti 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. Importana 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 condiii un graf despre care tim c este hamiltonian poate fi planar. Teorema cu care ncheiem aceast seciune rspunde la aceast ntrebare, dnd o condiie necesar i suficient ca un graf hamiltonian s fie planar. Prezentm mai nti un rezultat cu grad sporit de generalitate. Teorema II.7 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-feelor din i respectiv numrul vrfurilor lui din care nu sunt n . Analog, notm cu , 1 i corespunztor regiunii . Atunci avem
2 = 2 .

Demonstraie: Not cu numrul muchiilor lui din . Teorema poliedral a lui Euler aplicat n cazul hrii induse n de mulimea vrfurilor din mpreun cu cele ale lui conduce la urmtoarea egalitate: || || 1 = 2 Sau, innd cont c || = ||, = 2 ||. Eliminnd din ultimele dou relaii obinem 2 = || 2 2. = 1 .

Pe de alt parte

1 2

Vezi figura II.2 Grafurile k-conexe sunt cele n care trebuie eliminate cel puin k muchii pentru a deveni ne-conex, iar grafurile cubice sunt cele n care orice nod are gradul trei

16

Analog obtinem pentru zona exterioar : 2 = | | 2 2. Scznd ultimele dou relaii obinem concluzia teoremei.

Fie = , , o hart conex a unui graf planar, un ciclu hamiltonian i , cele dou regiuni determinate de n plan. Notm cu , , 1 numrul i-feelor din , respectiv . Atunci avem

Teorema II.8 (Grinberg)

2 = 0.

Demonstraie: Se observ uor c acest rezultat este o consecin direct a teoremei precedente, deoarece n cazul unui ciclu hamiltonian, cu notaiile anterioare, avem = = 0. Dup cum am amintit n paragraful de prezentare al acestei seciuni, 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 condiii un graf hamiltonian este planar. Pentru aceasta vom introduce cteva noiuni premergtoare.

Fie = , un graf hamiltonian i un ciclu hamiltonian al su. Notm cu = , graful complementar n al ciclului . Numim, n acest caz, muchiile grafului corzi (n raport cu ciclul ) . Fie o hart a grafului . Cu notaiile anterioare construim graful de intersecie al n raport cu harta , notat , , astfel: corzilor lui nodurile acestuia vor fi corzile grafului ; considerm c ntre dou corzi avem muchie dac acestea se intersecteaz n harta .
17

Definiii:

Cu aceste pregtiri dm acum, fr demonstraie, rezultatul anunat: 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

3. Reprezentri grafice fr autointersecii ale grafurilor3


Am vzut n prima seciune a acestei lecii faptul c nu orice graf este planar. ntradevr, teorema poliedral a lui Euler reprezint o constrngere serioas n acest sens. Cu ajutorul ei am putut demonstra cteva corolare la captul crora am vzut ca grafurile K3,3 i K5 nu sunt planare. Mai mult, teorema lui Kuratowski ne arat faptul c orice graf care conine n interiorul lui unul din grafurile K3,3 sau K5 nu este planar (nu admite o reprezentare n plan fr autointersecii). Totui, ar fi de dorit ca orice graf s poat admite, ntr-o form sau alta, o reprezentare fr autointersecii. Acest fapt ntr-adevr are loc, dar pentru a putea ntelege mai bine n ce fel anume, avem nevoie de cteva noiuni premergtoare. Definiie: Numim triangularizare a unei suprafee 4 o acoperire a acelei suprafee cu triunghiuri pentru care orice dou triunghiuri ale acoperirii sau nu au nimic n comun, sau au exact un vrf n comun sau au exact o latur comun. Figura II.3 arat un exemplu de triangularizare de suprafa, pentru cazul sferei. Este uor de remarcat c orice triangularizare a unei suprafee geometrice poate fi privit ca o reprezentare grafic fr autointersecii a grafului asociat acestei triangularizri. n acest moment, ne putem ntreba dac nu cumva are loc reciproca acestei observaii simple; mai exact: este adevrat c orice graf poate fi reprezentat fr autointersecii pe o suprafa bine aleas? Pentru a rspunde la aceast ntrebare mai precis, amintim pe scurt un rezultat clasic din domeniul topologiei. Teorem (de caracterizare a suprafeelor compacte i conexe) Orice suprafa compact i conex este homeomorf5 cu o sfer sau cu o -sfer (o sfer la care s-au ataat mnere). Pentru o mai bun ntelegere a acestui rezultat, figura alturat exemplific noiunea de -sfer pentru cazul unei sfere cu trei
3

Figura II.3

Figura II.4

aceast seciune are un caracter mai puin formal, ntruct implic prezentarea i utilizarea unor noiuni 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:

Orice graf poate fi reprezentat fr autointersecii pe o sfer sau pe o -sfer. Graful este planar dac i numai dac acesta admite o reprezentare fr autointersecii pe o sfer. Demonstraie: n ciuda dificultii aparente a enunului, demonstraia este imediat. ntr-adevr, sa presupunem mai nti c graful este planar. Atunci, prin proiecie stereografic acesta poate fi reprezentat fr autointersecii pe o sfer. Tot cu ajutorul proieciei stereografice se vede uor c orice graf care admite o reprezentare fr autointersecii pe o sfer este planar.

Teorema II.9 (de reprezentare fr autointersecii a grafurilor)

Presupunem acum ca graful nu este planar. Fie o hart plan a acestuia i 0 proiecia stereografic a hrii pe sfer. Pentru fiecare dou muchii care se intersecteaz n 0 ntr-un punct diferit de vrfurile lui , adugm cte un mner sferei care s foloseasc drept pasaj de trecere pentru una din cele dou muchii, i modificm harta 0 n concordan. Prin adugarea succesiv a unor astfel de mnere, obinem rezultatul dorit.

Aceast teorem ndreptete urmtoarea: Numim genul unui graf cel mai mic numr natural pentru care graful poate fi reprezentat pe o g-sfer fr autointersecii. Spre exemplu, orice graf planar are genul 0. Cum grafurile K3,3 i K5 nu sunt planare, nseamn ca ele au genul cel puin 1. ncheiem aceast seciune menionnd c aceste dou grafuri au genul exact 1, ele putnd fi reprezentate, fr autointersecii, pe un tor. Definiie:

19

III. Cuplaje

1. Noiuni introductive
Vom ncepe acest capitol prin a prezenta o problem din viaa 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 mprire a locurilor de munc, astfel nct fiecare lucrtor s fie angajat conform uneia dintre calificrile sale. Pentru a o rezolva vom introduce o nou noiune, aceea de cuplaj, mpreun cu o serie de observaii i rezultate pregtitoare. Aadar, Fie = , un graf simplu. Se numete cuplaj al grafului o mulime de muchii cu proprietatea c oricare dou sunt neincidente (mulime independent de muchii). Definiii:

Nodurile grafului care aparin muchiilor cuplajului se numesc saturate, iar cele care nu aparin cuplajului poart numele de noduri nesaturate. Exemplu:

Spunem c un lan sau ciclu elementar este alternant dac muchiile sale aparin = . Dac acesta are capetele nesaturate, l numim alternativ cuplajului i mulimii lan (ciclu) deschis. Exemplu: = 12,3,4,5,7 lan alternant deschis = 1,2,3,4,5,6 lan alternant nchis

Figura III.1

20

Spunem c o mulime de noduri poate fi saturat dac exist un cuplaj care s conin toate nodurile mulimii .

O mulime de noduri se numete transversal dac orice muchie a grafului are cel puin unul din noduri n mulimea .

Un cuplaj se numete perfect dac acesta satureaz mulimea . Dac din mulimea de noduri rmne exact un nod nesaturat, numim cuplajul aproape perfect.

Notaii:

graful indus de mulimea ;

transversal de cardinal minim (o numim transversal minimal);

cuplaj de cardinal maxim (l numim cuplaj maximal);

Observaii: III.1) Un graf cu numrul de noduri impar nu poate conine un cuplaj perfect. III.2) Fie diferena simetric a dou cuplaje , . Componentele conexe ale grafului sunt de patru tipuri (am colorat cu negru muchiile cuplajului i cu rou pe cele ale lui ): ciclu , alternant (numim, pe scurt, component de tip ;)

lan , alternant cu un capt saturat i cellalt saturat (component tip , ); lan , alternant cu ambele capete saturate (component tip , ); lan , alternant cu ambele capete saturate (component tip , ).

III.3) | | | | = numrul componentelor conexe din de tip , numrul componentelor conexe din de tip , .

21

Un prim rezultat important este: Fie = , un graf simplu cu i un cuplaj al acestuia. Atunci este un cuplaj maximal dac i numai dac nu exist n niciun lan alternant deschis. Teorema III.1 (Berge)

Demonstraie: Pentru implicaia direct raionm prin reducere la absurd. Fie un cuplaj maximal i un lan alternant deschis. Definim un nou cuplaj ca fiind diferena simetric dintre cuplajul i mulimea muchiilor lanului : = . Cum este lan alternant deschis atunci | | = | | 1, deci cuplajul este de cardinal strict mai mare dect , contradicie cu maximalitatea cuplajului .

Pentru implicaia 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 | | | > |0. Dar, conform Observaiei III.3: | | | = |numrul componentelor conexe din de tip , numrul componentelor conexe din de tip , .

De aici, deducem c numrul componentelor conexe din de tip , este strict pozitiv, deci exist cel puin un lan , n , adic alternant deschis. Contradicie!

Prezentm n cele ce urmeaz, fr demonstraie, o serie de rezultate ce ne ajut s formulm algoritmii de rezolvare a problemei prezentate la nceputul capitolului. Vom folosi urmtoarele: Notaii: Pentru = , un graf simplu i , notm cu mulimea nodurilor adiacente celor din ; Pentru un graf bipartit cu mulimea nodurilor dat de partiiile i i mulimea muchiilor vom folosi notaia = , .

Teorema III.2 (Hall, 1935)

Fie = , graf bipartit. Atunci mulimea de noduri poate fi saturat dac i numai dac , | | ||. O generalizare a acestui rezultat o reprezint urmtoarea Teorema III.3 (Tutte) Un graf = , are un cuplaj perfect dac i numai dac pentru orice submulime de noduri numrul de componente conexe cu un numr impar de noduri n subgraful indus de mulimea este mai mic sau egal dect ||. = || . Fie = , graf bipartit. Atunci
22

Teorema III.4 (Knig)

2. Algoritmul ungar
Cu pregtirile anterioare putem trece la rezolvarea problemei descrise n debutul capitolului. Pentru aceasta vom nota mulimea lucrtorilor cu = , , i mulimea 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 condiiile acestei probleme teorema lui Hall asigur existena 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 submulime cu proprietatea c | | ||. Algoritmul pornete cu un cuplaj arbitrar ( de exemplu, prima muchie n ordinea lexicografic a etichetelor nodurilor). Dac acesta satureaz toate nodurile mulimii , 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 iniial 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 iniial n nodul ales i extremitatea final n . Altfel, adugm lanului muchia din , muchia din cuplajul i continum procedeul cu noul pe post de , ocolind nodurile din mulimea care aparin deja lanului . Dac lanul construit astfel6 pas cu pas este alternant deschis, atunci este determinat (similar metodei folosite n demonstraia teoremei lui Berge) cuplajul = care satureaz din mulimea un nod n plus fa de cuplajul anterior, dup care se reia procedeul, cu noul cuplaj n locul lui . n cazul n care lanul nu este alternant deschis (extremitatea final este nod al cuplajului ) nseamn ca mulimea = verific inegalitatea | | ||, deci, conform teoremei lui Hall, graful nu admite un cuplaj perfect. Pentru o mai bun nelegere a algoritmului contruim schema logic a acestuia i dm un exemplu de rulare.

Construirea lanului lund nodurile n ordinea lor lexicografic poate fi mbuntit cu ajutorul arborilor arborilor M-alternani. Cititorul poate studia aceast variant n lucrarea [1], pag. 81-84

23

cuplaj arbitrar

START

Este X saturat ?

DA

satureaz pe

STOP

S T STOP

NU nesaturat

| | ||

DA

= ? NU SS T T

LL

NU lan L=, , alternant deschis

Este saturat ?

DA

LL

Fie graful = , , , , , . Aplicm acestuia algoritmul ungar n vederea obinerii unui cuplaj perfect. Pornim cu = .

Exemplu:

X saturat ? NU: z = , S={ }, T= = ? NU: y = ; L = [ ] saturat ? = , ; NU: = ,


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

Observaie: Cuplajul perfect al garfului nu este unic acesta depinde de cuplajul iniial. Un alt exemplu de cuplaj perfect pentru este:

25

3. Algoritmul Kuhn (1955) Munkres (1957)


Am vzut c algoritmul ungar ne rezolv problema determinrii unui cuplaj perfect ntr-un graf bipartit, de exemplu cel al asocierii lucrtori locuri de munc. Dar ce s-ar ntmpla dac nu am reine numai pentru ce loc de munc este fiecare lucrtor calificat, ci i gradul specializrii sale? n aceast situaie putem modela problema cu ajutorul unui graf bipartit ponderat. Astfel este definit o funcie pondere : care asociaz fiecrei muchii a grafului un numr real pozitiv (altfel spus, aceast funcie ne indic gradul de pricepere al lucrtorului pentru locul de munc prin valoarea ). Observm c, fr a restrnge generalitatea, aceast problem poate fi modelat cu ajutorul unui graf bipartit complet n care, dac lucrtorul nu este calificat pentru locul de munc muchiei i vom asocia ponderea 0, n celelalte cazuri ponderea fiind strict pozitiv. O prim soluie a acestei probleme ar fi generarea tuturor celor n! cuplaje perfecte ale grafului bipartit complet i selectarea unuia optim dintre acestea. Pentru valori mari ale lui n aceast soluie este, n mod evident, total ineficient. Algoritmul Kuhn Munkres reprezint o variant de rezolvare a acestei probleme acceptabil din punctul de vedere al complexitii. Pentru a-l putea prezenta avem nevoie de urmtoarea: Definiie: Fie = , un graf bipartit complet. Spunem c o funcie : este o etichetare valid a nodurilor grafului dac , este ndeplinit inegalitatea . Numrul l vom numi eticheta nodului . Se poate observa c o astfel de etichetare valid exist ntotdeauna, spre exemplu: = max , dac ; (III.5) = 0, dac . Pentru o etichetare valid vom nota cu mulimea de muchii din pentru care are loc egalitatea = : = | = ; i cu graful generat de mulimea de muchii . Legtura ntre acest subgraf al grafului i determinarea unui cuplaj perfect optim este dat de urmtoarea Teorema III.6 Fie o etichetare valid a grafului . Dac conine un cuplaj perfect , atunci este un cuplaj optim pentru graful . Demonstraie: Presupunnd c conine un cuplaj perfect , cum = = rezult c este un cuplaj perfect i pentru graful , atunci = . Dar cum toate muchiile conin o singur dat toate nodurile grafului i, fiind din graful ponderea unei muchii este suma etichetelor extremitilor ei, rezult c = . n schimb, pentru un cuplaj perfect oarecare al grafului are loc relaia anterioar cu inegalitate: = . Comparnd, obinem c , deci este un cuplaj optim al grafului . Acest rezultat, mbinat cu algoritmul ungar prezentat n seciunea anterioar reprezint instrumentele ce stau la baza construirii algoritmului Kuhn Munkres. Pentru a aplica algoritmul, alegem pentru nceput o etichetare valid a nodurilor grafului ( de exemplu, cea dat de III.5), determinm graful asociat acestei etichetri, i alegem un cuplaj arbitrar al acestuia, . Pentru acest cuplaj, aplicm algoritmul ungar n vederea determinrii unui cuplaj perfect n graful , care, conform Teoremei III.6, ar fi cuplaj
26

optim n graful , deci algoritmul se ncheie. Dac, n schimb, nu exist un cuplaj perfect n graful , nseamn c, aplicnd algoritmul ungar am ajuns n situaia = i, n acest caz, efectum o reetichetare a nodurilor grafului dup urmtoarea regul: - calculm = min ;

alegem etichetarea valid , dac = , dac , altfel - determinm noul graf . Aceste trei operaii asigur apariia n graful a unui nou nod nesaturat al mulimii cu ajutorul cruia extindem cuplajul ( tehnica diferenei simetrice fa de lanul -alternant . Dup care este reluat algoritmul, pn la deschis deja cunoscut) la un nou cuplaj obinerea cuplajului optim.

27

Etichetare valid

Determinarea , un cuplaj n

Este X saturat n ?

este cuplaj optim

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 tiine Matematice din Romnia, 2005 [4] Tomescu, I., Probleme de combinatoric i teoria grafurilor, Ed. Didactic i Pedagogic, Bucureti, 1981

29

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