Documente Academic
Documente Profesional
Documente Cultură
8.1.
n acest paragraf ne referim la evoluia descompunerii n grafuri, din care prezentm cteva din rezultatele, deja obinute, despre tipuri de descompuneri n grafuri i anume: descompunerea n care o anumit caracteristic numeric a grafului are proprietatea de aditivitate, descompunerea n care legea de adiacen ntre submulimile partiiei este cunoscut, descompunerea n funcie de operaia de compoziie, G-descompunerea i n final, descompunerea substituie i partiionarea vrfurilor. Fie G un graf cu mulimea vrfurilor V(G) = V i mulimea muchiilor E(O}= E. n teoria grafurilor, o clas foarte larg de probleme se refer la descompunerea (partiia) mulimii vrfurilor V n submulimile Xi , i I ,
astfel nct proprieti de urmtoarele tipuri au loc (Olaru, Antohe): 1) Subgraful indus [Xi ] (i I) trebuie s aib proprieti prescrise; de exemplu, problema colorrii grafurilor n care Xi trebuie s fie mulimi stabile i problema acoperirii grafurilor cu clici; 2) Descompunerea n care o anumit caracteristic numeric a grafului G trebuie s aib proprietatea de aditivitate, adic relaia ([Xi ]G ) = (G) are loc;
Legea de adiacen ntre submulimile Xi , X j ,i j , trebuie s fie cunoscut. Apare ca o problem de descompunere referitoare la o operaie de un tip oarecare, care este, esenial, legea de adiacen; o astfel de descompunere este numit descompunere n funcie de un tip de operaie. Apar de asemenea combinaii ale tipului 1) i 3); n astfel de descompuneri, subgrafurile [Xi] trebuie s satisfac nite condiii (de indecompozabilitate, coindecompozabilitate). Exist de asemenea probleme care sunt combinaii ale tipurilor 1) i 2) i acestea sunt n acelai timp impuse fiecrui subgraf. Aici este inclus problema grafurilor perfecte. 3)
iI
Propoziia 2. Grafurile - critice nu au cutset care s fie clic. Propoziia 3. Dac G este un graf - decompozabil atunci exist o - descompunere n componente - indecompozabile care sunt tare stabile. Teorema 1. Pentru un graf G cu (G) 2, urmtoarele afirmaii sunt echivalente: G este minimal imperfect (adic este minimal critic); (i) (ii) G este minimal tare stabil; (iii) G este minimal cu: (G x) < (G), x V(G) . {(i) echivalent (ii): E. Olaru, (i) echivalent (iii): W. Wessel }. Propoziia 4. Un graf G este perfect dac i numai dac singurele subgrafuri - indecompozabile ale lui G sunt clici. Propoziia 5. Un graf G este perfect - decompozabil dac i numai dac el conine un graf parial - critic i perfect - decompozabil. Propoziia 6. Un graf G - critic este perfect - decompozabil dac i numai dac componentele sale conexe sunt clici. Remarcm c orice graf admite cel puin un graf parial - critic. Un criteriu de decompozabilitate este urmtorul. Propoziia 7. Un graf G este - decompozabil dac i numai dac el are cel puin un graf parial - critic decompozabil.
104
Observm c un graf decompozabil poate fi prezentat n diverse forme ca S-descompunere de subgrafuri indecompozabile. Este, deci necesar a considera altfel S-descompunerea, proprie (Olaru, Antohe). Definiie. O S-descompunere n subgrafuri indecompozabile este proprie dac ea conine un numr minim de S-componente indecompozabile banale. Teorema 2. (Olaru, Antohe). Orice graf finit decompozabil admite o S-descompunere proprie, unic pn la un izomorfism. Definiie. Un subgraf [A] a unui graf G este numit coindecompozabil dac A este omogen i este maximal cu aceast proprietate. Teorema 3. (Olaru, Antohe). Orice graf (finit sau nu) admite o unic S-descompunere n care S-componentele sunt coindecompozabile.
i E = U Ei {xy | x Vi , y Vj i vi v j E 0 } .
i 1
Mai notm E = E 0 [E1 ,..., E n ] . H0 se numete factor extern a lui H, Hi, i = 1, , n se numesc factori interni ai lui H.
105
Un graf neorientat G = (V,E), care prin orientarea fiecrei muchii obinem graful orientat (V,F) care satisface urmtoarea condiie: dac ab F i bc F implic ac F ( a, b, c V ), se numete graf de comparabilitate (Golumbic, Shamir). Teorema 4. Fie G = G 0 [G1 ,..., G n ] , unde Gi sunt grafuri neorientate disjuncte. Atunci G este graf de comparabilitate dac i numai dac Gi i = 0, l, ..., n este graf de comparabilitate. Definiie. Un graf se numete decompozabil dac el poate fi exprimat ca o compoziie nebanal de subgrafuri induse; altfel, el se numete indecompozabil. Pentru orice graf exist compoziia banal: G = K1[G]. Formal, G = (V,E) este decompozabil dac exist o partiie V = V1 + ... + Vn a vrfurilor n submulimi nevide disjuncte dou cte dou cu 1 < r < |V| astfel nct G = G R [G V ,..., G V ] pentru orice mulime de 1 v reprezentani R = {x1 ,..., x n } , xi din Vi. O astfel de partiie induce o
descompunere proprie a lui G. G are o mulime partitiv nebanal dac i numai dac G este decompozabil.
8.1.4. G-descompunerea
Un graf orientat este o pereche G = (V,E), unde V este o mulime nevid, iar E este o mulime de perechi ordonate de elemente distincte ale lui V. Elementele lui E se numesc arce. Pentru un graf orientat G = (V,E), notm cu G 1 = (V, E 1 ) , graful invers, unde E 1 = {(x, y) | (y, x) E} . Fie G = (V,E) un graf. Un graf orientat H =(V,F) (avnd aceeai / mulime de vrfuri ca i G) cu proprietatea c F F1 = 0 i F F1 = E se numete orientarea grafului G. (H se obine asociind o orientare fiecrei muchii a lui G). n acest paragraf prezentm un algoritm pentru G - descompunere. Fie R o relaie binar pe mulimea muchiilor unui graf neorientat G = (V,E), definit astfel: abRxy dac i numai dac ori a = x i byE ori b = y i axE. nchiderea reflexiv i tranzitiv R' a lui R definete o relaie de echivalen pe E, ale crei clase de echivalen se numesc clase de implicaii. Dac A este o clas de implicaie atunci A = A A 1 este nchiderea simetric a lui A.
106
Pentru G = (V ,E), un graf, o partiie a lui E n k mulimi: E = B1 + ... + Bk se numete G-descompunere dac Bi sunt clase de implicaii din graful G = (V, B + B + ... + B ), i = 1, k .
i i +1 k
O secven de muchii [x1 y1 ,..., x n y n ] se numete schem de descompunere pentru G dac exist o G-descompunere E = B1 + ... + Bk astfel nct x i yi Bi , i = 1, k . Are loc urmtorul algoritm de descompunere:
Input: Output: Un graf G = (V,E). O G-descompunere; Un numr k;
E1 := E
i := 1
Fie Ei + 1 := Ei Bi If Ei + 1 = 0 then /
Fie k := i stop else Incrementeaz i cu 1 go to loop end if end
107
Condiia a doua poate fi reformulat astfel. Fiecare bloc Ei verific: pentru fiecare i ori x ~ Ei ori x ~ Ei pentru x V Ei , adic Ei este / modul. R. McConnell i Spinrad au descoperit un algoritm O(m+n) pentru partiionarea vrfurilor. Vrful v separ (spliteaz) un bloc B ori de cate ori v este utilizat pentru a divide B n blocurile B N(v) i B N(v) . Descompunerea modular (Jamison, Olariu) sau descompunerea substituie (descoperit independent de mai muli autori printre care R. H. Mohring i F. J. Radamacher) nseamn partiionarea unui graf G n subgrafuri, fiecare din ele este un modul ntr-un subgraf al lui G. n particular, graful nsui i mulimile cu un singur vrf sunt considerate module. Algoritmul urmtor partiioneaz un graf n O(mlogn) timp. Algoritmul alege un vrf v care ori i) nu a fost folosit nainte ca element de splitare ori | B' | ii) v B, | B | , B' care a coninut v ultima dat cnd v a fost ales 2 ca element de separare ori iii) este ntr-un bloc care nu va fi separat n viitor. Vrful v este folosit s separe fiecare bloc care nu conine v. Separarea cauzat de v poate fi executat n O(|N(v) |). Pentru a separa pe B, prima dat verificm dac v nu este n B; apoi loca1izm vecinii lui v ntr-un nou bloc B' , care este pstrat "legat" de B pn la sfritul separrii cauzat de v. Dac nici un vrf nu satisface criteriul i) sau ii) pentru alegerea elementului de separare, orice vrf din cel mai mare bloc activ C rmas, va satisface criteriul iii). Orice alt vrf v a ncercat s separe C, deoarece v a fost separat de C la un moment dat i este acum ntr-un bloc care este cel mult de lungimea lui C. Algoritmul propriu-zis:
Fie partiia iniial ( B1,..., B j ); Pentru fiecare bloc Bi execut lastused[Bi] = cea mai mare valoare; { folositultimadata[Bi] = cea mai mare valoare} READY = (B1,..., B j); Ct timp (G este nevid) execut Ct timp (READY 0 ) execut / C = orice bloc din READY; lastused[C] = |C|; pentru fiecare vrf x din C execut separ toate blocurile exceptnd C n funcie de adiacena la x;
108
pentru fiecare bloc B separat n B, B2 prin x execut lastused[B2] = lastused[B]; dac |B| lastused[B]/2 atunci adaug B la READY; dac |B2| lastused[B2]/2 atunci adaug B2 la READY; C = cel mai mare bloc rmas; returneaz C ca parte a partiiei finale; folosete fiecare vrf din C pentru a separa celelalte blocuri; G = G C.
Prezentm n continuare un algoritm de complexitate O(mlogn) dat de McConnell pentru gsirea descompunerii substituie a unui graf. Aceast metoda de descompunere se bazeaz pe algoritmul de partiionare de mai sus. Algoritmul lucreaz n dou faze. Prima faz gsete o submulime de module din arborele de descompunere utiliznd partiionarea i produce o ordine pe vrfuri astfel nct celelalte module vor fi gsite (specificate) prin alegerea diferitelor vrfuri ca elemente de separare. Descriem procedura de baz. Ori de cte ori procesul de partiionare returneaz o mulime S de lungime mai mare dect 1, S este modul al lui G. Alegem orice vrf s din S, mprim S n s i S s i rencepem procedura de partiionare. Pstram un arbore a mulimii partiiilor care se produc n timpul acestei proceduri. Iniial, arborele are o rdcin, s ca descendentul direct stng i V s ca descendentul direct din dreapta. Ori de cate ori o mulime este separat n vecini i nevecini, lum un nou nod intern cu vecinii drept descendentul direct stng i nevecinii drept descendentul direct drept. Dac S a fost specificat (menionat, gsit) ca a fi un modul, marcm nodul intern corespunztor lui S. Notm c aceast procedur va gsi modulele care nu conin un vrf arbitrar ales s, dar nu va gsi modulele coninnd s. Acestea vor fi gsite de faza a doua. Ideea este de a ordona vrfurile astfel nct ntotdeauna alegem vrfuri pentru separare pentru faza a doua care nu apar mpreun cu s ntr-un submodul. Numrm vrfurile din timpul traversrii standard postordine, n care mulimea descendenilor copilului (descendentului direct) drept dintr-un nod dat va fi mai mare dect a descendenilor nodului stng al aceluiai copil (descendent direct). Faza a doua a procedurii este aceeai cu prima, excepie fiind atunci cnd avem un modul S, ntotdeauna alegem un vrf x cu cel mai mare numr din S cu respectarea procedurii de ordonare din prima faz, separnd S n x i S x i continum ca mai sus. Timpul total luat pentru gsirea celui mai mare numr de vrfuri este O(nlogn), astfel se termin cele dou faze n O(mlogn) timp.
109
Arborele de descompunere este produs prin combinarea modulelor gsite n timpul celor dou faze. Fie un modul M. Daca exist un descendent direct c al lui M care nu formeaz muchii cu nici un alt descendent direct al lui M din G, tergem c din M i adugm un nod etichetat P cu c drept un descendent direct i M drept cellalt descendent direct. Similar, dac exist un descendent direct c ' al lui M, extremitate a tuturor muchiilor cu toi ceilali descendeni direci ai lui M, tergem c' din M i adugm un nod S cu c' drept un descendent direct i M drept cellalt descendent direct. Aceasta ia O(n+m) timp. Unim arborii gsii n fiecare din cele dou stagii astfel. Traversm arborele n ordinea primul n adncime. Dac ntlnim un nod serie (care corespunde unui modul M astfel nct [M]G este neconex) sau paralel (care corespunde unui modul astfel nct [M]G este neconex) x, care are un ascendent direct p de acelai tip, lum toi descendenii direci ai lui x descendeni direci ai lui p. n final, combinm modulele gsite n timpul fiecreia din cele dou faze ntr-un singur arbore de descompunere, T. Fie T1 i T2 arborii gsii n timpul celor dou faze. Fie toate nodurile lui T1 i T2 n ordine nedescresctoare a numrului de descendeni direci vrfuri pendante. Cnd un modul M este ntlnit, adugm M dac M nu este deja parte a arborelui combinat. Pentru a cunoate dac un modul M cu k descendeni vrfuri pendante este deja n arbore este suficient a verifica dac cel mai mic numr de vrfuri din M este deja ntr-un modul de lungime k. Dac memorm cel mai mic numr de vrfuri din fiecare modul i modificm variabila i pentru un vrf v cnd v este vrful cu cel mai mic numr dintr-un modul de lungime i, acest pas ia timp constant pe modul. Adugarea unui modul M la T se face astfel. Orice descendent direct c al lui M se afl n T i pentru orice rdcin r din arborele curent care conine un descendent direct al lui M, r devine un descendent direct al lui M n arbore. Orice metod natural de a marca un arbore, pentru ca un drum s nu fie traversat de dou ori, ne permite s combinm doi arbori n O(n) timp. La sfritul acestui paragraf, prezentm urmtorul rezultat (Olariu). Pentru un graf G urmtoarele dou afirmaii sunt echivalente: G nu are nici un subgraf indus izomorf cu grafurile cu secvena de (i) grade (2,2,2,3,3), (1,1,2,3,3), (2,2,3,3,4,4); (ii) pentru fiecare subgraf indus H a lui G, cel puin una din urmtoarele afirmaii sunt adevrate: (a) H conine o mulime omogen; (b) (H) 2 .
110
8.2.
8.2.1. Introducere
Fie G = (V,E) un graf neorientat, fr bucle i muchii multiple. n diverse probleme de teoria grafurilor, cu precdere n construcia unor algoritmi de recunoatere apare frecvent un anumit tip de partiie a mulimii vrfurilor n trei clase A, B, C astfel nct A s induc graf conex, iar C s fie total adiacent cu B i total neadiacent cu A. Aa se ntmpl, de exemplu, cu construcia cografurilor pornind de la K1,2 i substituind vrfurile cu cografuri. Introducerea noiunii de descompunere slab (C. Croitoru) i studiul proprietilor ei ne permite s obinem alte rezultate de acest tip, cum ar fi: caracterizarea cografurilor cu coarbori ( rezultat cunoscut, obinut de Lerchs, dar pentru care obinem demonstraie mai uoar). De asemenea, caracterizm grafurile K1,3 free i dm un algoritm de recunoatere i un altul pentru determinarea unui cuplaj de cardinal maxim n aceast clas de grafuri. De asemenea, alte proprieti se obin pentru grafuri triangulate, garfuri {P4, C4}- free, grafuri paw free, grafuri confidenial conexe. O parte din acest capitol a fost prezentat la ROSYCS 2000 Iai.
Demonstraie. Deoarece graful G este incomplet, (G ) 2 , exist vrfurile x y , neadiacente. Fie A0 = {x}; B0 = N ( x); C0 = N ( x) .
x1 N ( x), y1 N ( x) astfel nct x 1 y 1 . Pentru A1 = A0 {x1},[ A1 ] este conex, deoarece [ A0 ] este conex i x1 N ( x) . N ( A1 ) = ( N ( A0 ) {x1}) ( N ( x1 ) C0 ). y1 N ( A1 )
(deoarece x 1 y 1 i y1 N ( x) i y 1 A0 ). Deci N ( A1 ) . Dac N ( A1 ) ~ N ( A1 ) atunci [V A1 ] = [ N ( A1 )]G + [ N ( A1 )]G . Presupunem c s-a construit Ai
Bi=N(Ai) , Ci = N ( Ai ) . Dac Bi ~ Ci atunci A = Ai. Dac nu, fie xi +1 Bi i yi +1 Ci cu x i + 1 y i + 1 . Notm Ai +1 = Ai {xi +1}; Bi +1 = N ( Ai +1 ); Ci +1 = N ( Ai +1 ) . [Ai+1] este conex, deoarece [Ai] este conex i xi +1 N ( Ai ) . yi +1 N ( Ai +1 ) (deoarece x i + 1 y i + 1 i yi +1 N ( Ai ) i y i + 1 A i ). Deci N ( Ai +1 ) . Dac Bi +1 ~ Ci +1 atunci A=Ai+1 i
[V Ai +1 ]G = [ N ( Ai +1 )]G + [ N ( Ai +1 )]G . Deoarece
A0 A1 ... Ai ... V
i V < rezult p N astfel nct N ( Ap ) ~ N ( Ap ) i deci A = Ap este componenta slab cu proprietatea din enun. Propoziia 3. Fie G = (V,E) un graf conex i incomplet i A V . Atunci A este component slab a lui G dac i numai dac G(A) este conex i N ( A) ~ N ( A) .
112
Demonstraie. Presupunem c exist n N ( A) i n N ( A) astfel nct nn E (G ) . Fie A = A {n} i N = ( N ( A) {n}) ( N (n) N ( A)) . [ A]G este conex, N ( A) = N i V (G ) ( A N ( A)) {n } . Deci N ( A) V (G ) A , contrazicnd maximalitatea lui A. Invers. Fie G(A) conex i N ( A) ~ N ( A) . Artm c G(A) este component slab. Fie A A , component slab. A A N ( A) (deoarece A N ( A ) i G ( A) conex). Fie n A A . Atunci N ( A) N (n) . Deci N ( A) , contrazicnd definiia componentei slabe. Definiia 4. O partiie de forma ( A, N ( A),V N [ A]) , unde A este mulime slab o numim descompunere slab n raport cu A a grafului G. Numim A component slab, N(A) mulime separatoare minimal, iar VN[A] mulime ndeprtat (remote set). Propoziia 5. Dac G=(V,E) este un graf conex i incomplet atunci mulimea vrfurilor V admite o descompunere slab (A,B,C) astfel nct G(A) este component slab i G(V-A)=G(B)+G(C). {Demonstraia este cea dat n propoziia 2}. Observaia 6. Fie G=(V,E) un graf conex i incomplet. Dac A este mulime slab atunci A V . { A mulime slab i G conex rezult A V , altfel N G ( A) = ,V A = , adic N G ( A) = V A }. Fie G un graf conex i WG={A: A mulime slab n G}. Observaia 7. Fie G=(V,E) un graf conex. WG are cel puin un element dac i numai dac G nu-i complet. {Dac G nu este complet atunci v V (G ) astfel nct N G ( A) V A . Deci {v} este mulime slab, adic {v} WG . Artm implicaia invers. Presupunem c exist A mulime slab n G. Atunci N G ( A) V A . Deci
N G ( A) . Deci a Ab N G ( A) astfel nct ab E (G ) . Deci G nu este complet.} 0 Fie WG = { A | A WG , A maximal n raport cu incluziunea }. Mai numim componentele slabe ale unui graf G i frunze. Mulimea 0 frunzelor o notm cu LG. Deci LG = WG .
113
atunci A este cutset (mulime separatoare) n G . {n G A, R = N ( A) i N sunt mulimi nevide de vrfuri total neadiacente} 0 Remarca 9. Fie G=(V,E) un graf conex i incomplet. Dac A WG atunci N G ( A) este cutset (mulime separatoare) n G. {n G A, R = N ( A) i A sunt mulimi nevide de vrfuri total neadiacente} Demonstraia dat n propoziia 3. ofer un algoritm polinomial pentru construirea unei descompuneri slabe pentru un graf conex i incomplet. Algoritm de descompunere slab a unui graf
Input: Un graf conex i cu cel puin dou vrfuri neadiacente, G=(V,E). Output: O partiie V=(A,N,R) astfel nct G(A) conex, N=N(A),
A R = N ( A ) .
begin A := o mulime arbitrar de vrfuri astfel nct
A N ( A) V
N:=N(A)
Se observ c [A]G este conex, N=NG(A), R este un invariant al algoritmului. Consecina 10. Dac G este conex i cu cel puin dou vrfuri 0 neadiacente i A WG atunci
114
{ 2 = (G ) ([ A]) + ([ R]) 1 + 1 = 2 .}. n continuare reamintim urmtorul rezultat. Lema 12. Dac G este un graf conex, C este cutset, K1,K2,,Kp (p 2) sunt componentele conexe ale lui G-C atunci: N ( K i ) C , i = 1,..., p; (i) (ii) C este cutset minimal dac i numai dac N ( K i ) = C , i = 1,..., p n ncheierea acestei seciuni caracterizm grafurile G cu proprietatea A ~ N , unde (A,N,R) este descompunere slab. Fie G=(V,E) un graf, X V i k N* . Numim vecintatea de ordin k a lui X, mulimea k N G ( X ) = { a | a X , un drum indus n G, P, de lungime k de la x X la a astfel nct V ( P ) X = {x} }. Evident, N G ( A) = N G ( A) . Lema 13. 0 Fie G conex i (A,N,R) o descompunere slab cu A WG . Atunci
3 N G ( R) = dac i numai dac A ~ N . Demonstraie. 3 Fie N G ( R) = . Presupunem, totui, c a A i n N cu a n . Deoarece [ A {n}] este conex atunci un drum P de lungime 2 de la a la n. ntruct N ~ R i R A atunci P , obinut din P la care adugm muchia nr (r R) , este un drum indus n G de lungime 3. Obinem c 3 N G ( R) , o contradicie. Dac A ~ N , avnd i N ~ R rezult c pentru r R , nu exist drum indus de lungime 3 cu o extremitate n r i restul vrfurilor n V-R. 3 Deci N G ( R) = .
8.3.
Teorema celor patru culori (cunoscut i sub numele de teorema de colorare a hrii cu ajutorul a patru culori) afirm urmtoarele: fiind dat un plan separat n regiuni, regiunile pot fi colorate folosind nu mai mult de patru culori, astfel nct dou regiuni adiacente nu sunt colorate cu aceeai culoare. Dou regiuni se numesc adiacente doar dac mpart un segment de grani. Teorema celor patru culori a fost prima teorem major ce a necesitat computerul pentru a fi demonstrat, iar aceast demonstraie nu este acceptat de toi matematicienii deoarece ar fi omenete imposibil de
115
demonstrat un astfel de lucru. n ultim instan, pentru a da crezare demonstraiei, trebuie s se ncread n corectitudinea compilrii i a execuiei hardware. Istoric Se ridic problema folosirii a cinci sau mai multe culori. n anul 1890, Heawood a demonstrat c toate grafurile planare sunt cinci-colorabile. ntre 1960 i 1970 matematicianul german Heinrich Heesch a dezvoltat metode de utilizare a calculatorului n scopul gsirii acelei demonstraii att rvnite. Nu mai devreme de anul 1976 s-a demonstrat ipoteza celor patru culori a lui, de ctre Kenneth Appel i Wolfgang Haken la Universitatea din Illinois. Au fost asistai, n ceea ce privete algoritmica, de John Koch. Dac s-ar fi ntmplat ca ipoteza privind cele patru culori s fie fals, ar fi existat cel puin o hart cu cele mai puine regiuni posibile care s necesite cinci culori pentru colorare. Demonstraia a artat c un astfel de contraexemplu minimal nu poate exista. Odat cu demonstraia teoremei, au fost elaborai algoritmi eficieni de 4-colorare a hrilor, necesitnd doar O (n 2 ) timp de rulare, unde n reprezint numrul de noduri. n anul 1996, Neil Robertson, Daniel P. Sanders, Paul Seymour i Robin Thomas au creat un algoritm cu timpul ptratic. n anul 2004 Benjamin Werner i Georges Gonthier au formalizat o demonstraie a teoremei. Determinarea suficienei folosirii a trei culori n colorarea optim a unei hri, este de complexitate NP, ceea ce indic faptul c nu vom avea o soluie rapid. Determinarea posibilitii de 4-colorare a unui graf general (posibil ne-planar) are de asemenea complexitatea NP. Expunere formal n teoria grafurilor Pentru a expune formal teorema, este mai simplu s o reformulm n teoria grafurilor. Teorema afirm c vrfurile fiecrui graf planar pot fi colorate cu ajutorul a cel mult patru culori, astfel ca dou vrfuri adiacente oarecare s nu aib aceeai culoare. Sau, pe scurt: orice graf planar este patru-colorabil. n cazul acesta, fiecare regiune a hrii este nlocuit cu un vrf, iar dou vrfuri sunt conectate prin intermediul unei muchii dac i numai dac regiunile corespunztoare mpart un segment de grani. Generalizri S-ar putea pune problema colorrii suprafeelor ce nu sunt neaprat plane. Problema corespunztoare sferei este echivalent cu cea din plan. Pentru suprafeele nchise (orientate sau neorientate), de clas pozitiv,
116
numrul maxim p de culori necesare depinde de caracteristica Euler a suprafeelor conform formulei: 7 + 49 24 p= , 2
unde parantezele indic partea ntreag a funciei. Singura excepie n ceea ce privete aceast formul o reprezint sticla lui Klein, a crei caracteristic a lui Euler are valoarea 0 i necesit 6 culori. Aceasta a fost denumit iniial ipoteza Heawood, fiind demonstrat ca i Teorema colorrii hrii de ctre Gerhard Ringel i J. T. W. Youngs n anul 1968. Alternativ, pentru o suprafa orientat, formula poate depinde de parametrul g (parametru ce caracterizeaz clasa (genul) suprafeei): 7 + 1 + 48 g p= . 2
O 3-colorare este suficient acestui graf, ns, dac s-ar folosi mai puine culori ar rezulta noduri (vrfuri) adiacente de aceeai culoare. Gsirea numrului minim de culori necesare colorrii unui graf oarecare are dificultate NP
117
118
Algoritmi predefinii Algoritmii de colorare pot fi divizai n dou categorii: Algoritmi optimali de colorare (de exemplu, Algoritmul lui Zykov, metoda ramificrii i mrginirii, etc. ) Algoritmi care nu asigur un rezultat cu cele mai puine culori posibile. n aceast categorie se pot ncadra algoritmii secveniali, algoritmii euristici, algoritmi globali aleatori, algoritmi metaeuristici, respectiv algoritmii genetici.
119
Exemple
Polinomul cromatic pentru grafurile t(t-1)(t-2) t(t-1)(t-2)...(t-n+1) t(t-1)n-1 (t-1)n + (-1)n(t-1) t(t-1)(t-2)(t7-12t6 + 67t5-230t4 + 529t3-814t2 + 775t-352)
Proprieti P(G,0) = 0 P(G,1) = 0 dac G conine o muchie P(G,t) = 0, dac t < (G). P(G, 1) este numrul orientrilor aciclice ale lui G Dac G are n noduri, m muchii, i k componente G1,G2,,Gk, atunci o P(G,t) are gradul n. n o Coeficientul lui t n P(G,t) este 1. n1 o Coeficientul lui t n P(G,t) este m. 0 1 k1 o Coeficienii corespunztori : t ,t , t sunt toi zero. k o Coeficientul lui t este diferit de zero.
o P(G,t) = P(G1,t)P(G2,t)P(Gk,t) Coeficienii fiecrui polinomul cromatic n parte alterneaz n ceea ce privete semnele. Un graf G cu n vrfuri este arbore dac i numai dac P(G,t) = t(t 1)n 1. Derivata evaluat n 1, P'(G,1), reprezint invariantul cromatic (G). Calcularea polinomului cromatic De fiecare dat cnd G conine o bucl, acesta nu poate fi colorat, astfel c P(G, t ) = 0 . Dac e nu este o bucl, atunci polinomul cromatic satisface relaia de recuren P(G, t ) = P(G e, t ) P(G / e, t ) unde G e reprezint graful G din care a fost nlturat muchia e, iar G / e reprezint graful pentru care nodurile finale ale muchiilor sale sunt contractate ntr-un singur vrf. Cele dou expresii dau natere unei proceduri recursive, numit (n.procedura) algoritmul suprimare (tergere) contractare.
120