Daniela ROŞCA
MATEMATICI SPECIALE:
PROBLEME DE NUMĂRARE, PROBABILITĂŢI DISCRETE, TEORIA GRAFURILOR
U.T. PRESS Cluj-Napoca, 2016 ISBN 978-606-737-187-1
Editura U.T.PRESS Str.Observatorului Str.Observatorului nr. 34 C.P.42, O.P. 2, 400775 Cluj-Napoca Tel.:0264-401.999 Tel.:0264-401.999 / Fax: 0264 - 430.408 e-mail:
[email protected] www.utcluj.ro/editura
Director:
Ing. Călin D. Călin D. Câmpean
Recenzia:
Prof.dr. Dorian Popa Prof.dr. Neculae Vornicescu
Copyright © 2016 Editura U.T.PRESS Reproducerea integrală sau integrală sau parţială a parţială a textului sau ilustraţiilor din ilustraţiilor din această carte această carte este posibilă numai cu acordul prealabil scris al editurii U.T.PRESS.
ISBN 978-606-737-187-1
Editura U.T.PRESS Str.Observatorului Str.Observatorului nr. 34 C.P.42, O.P. 2, 400775 Cluj-Napoca Tel.:0264-401.999 Tel.:0264-401.999 / Fax: 0264 - 430.408 e-mail:
[email protected] www.utcluj.ro/editura
Director:
Ing. Călin D. Călin D. Câmpean
Recenzia:
Prof.dr. Dorian Popa Prof.dr. Neculae Vornicescu
Copyright © 2016 Editura U.T.PRESS Reproducerea integrală sau integrală sau parţială a parţială a textului sau ilustraţiilor din ilustraţiilor din această carte această carte este posibilă numai cu acordul prealabil scris al editurii U.T.PRESS.
ISBN 978-606-737-187-1
Prefat¸˘ a Cursul de Matematici Speciale , inclu in cluzˆ zˆand and capito cap itolele lele Combinatoric˘ Combinatoric˘ a , Probabilit˘ at ¸i discrete ¸si si Teoria Teoria grafurilor , este inclus inclus ˆın programa programa de studii studii a sect¸iei ¸iei de Calculatoar Calcul atoaree ¸si si Tehnologia Tehnologi a Informat Inf ormat¸iei ¸iei ˆın primul semestru semestr u al anului ˆıntai. aˆi. Capitolele mai sus ment¸ionate ¸ionat e sunt su nt ramuri ra muri ale a le a¸sa-numitelor sa-numit elor matema matematici discrete , numit num itee ¸si matematici si matematici finite , care se ocup˘ a cu studiul obiectelor matematice care au o structur˘ a discret˘a, a, ˆın sensul c˘a nu necesit˘a not¸iunea ¸iunea de continuitate. Majoritatea Majo ritatea obiectelor matematice studiate ˆın matematicile discrete sunt mult¸imi ¸imi finite sau infinit num˘arabile, arabile, cum ar fi grafurile finite sau mult¸imi ¸imi de numere ˆıntregi. ıntregi . Matematicile discrete au c˘ ap˘ ap˘atat atat un mare interes interes ˆın ultimii ultimii ani datorit˘a aplicat¸iilo ¸ii lorr sale sa le ˆın ¸stiin st iint¸ele ¸t ele calculatoarelor. calculatoarelor. Conceptele Conceptele din matematicile discrete sunt utile ˆın ın studiul studiul sau descrierea descrierea obiectelor obiectelor sau problemelor problemelor din algoritmi ¸si si limbaje de programare. Pe lˆang˘ ang˘a ramurile studiate aici, matematicile discrete mai includ: lant¸uri ¸uri Markov, algoritmica (studiul metodelor de calcul), teoria complexit˘at a¸ii ¸t ii (studiul limit˘arilor arilor teoretice ¸si si practice ale algoritmilor), logica (studiul rat r at ¸ionamentelor), teoria mult¸imilor, ¸imilor, geometria discret˘ a ¸si si comput com putat at¸ional˘ ¸ional˘ a, a, teoria codific˘arii ar ii ¸si si criptologia, criptologia, optimizarea optimizarea discret˘ a, a, algebra liniar˘a etc. Aceast˘a carte este este accessibil˘ a oric˘arei arei persoane care are cuno¸stint stint ¸e de matematic˘ a dobˆandite and ite ˆın liceu. lice u. Cluj-Napo ca, o ctombrie 2016
Daniela Ro¸sca
3
Cuprins 1 Metode de num˘ arare 7 1.1 Num˘ararea ca ¸si biject¸ie. Principiul cutiei . . . . . . . . . . . 7 1.2 Principii de baz˘ a . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.3 Num˘ararea perechilor . . . . . . . . . . . . . . . . . . . . . . . 9 1.4 Funct¸ii, cuvinte ¸si select¸ii . . . . . . . . . . . . . . . . . . . . . 11 1.4.1 Select¸ii ordonate cu repetit¸ii (cuvinte) . . . . . . . . . 11 1.4.2 Inject¸ii ca ¸si select¸ii ordonate f˘ ar˘a repetit¸ii . . . . . . . 12 1.4.3 Permut˘ ari . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.4.4 Select¸ii neordonate f˘ ar˘a repetit¸ii . . . . . . . . . . . . . 14 1.4.5 Select¸ii neordonate cu repetit¸ii . . . . . . . . . . . . . . 15 1.5 Design-uri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.6 Partit¸ii ¸si distribut¸ii . . . . . . . . . . . . . . . . . . . . . . . 17 1.6.1 Partit¸ii ale unei mult¸imi ˆın submult¸imi (partit¸ii de mult¸imi) 18 1.6.2 Distribut¸ii, surject¸ ii ¸si numere multinomiale . . . . . . 19 1.6.3 Partit¸ii ˆıntregi . . . . . . . . . . . . . . . . . . . . . . . 22 1.7 Recurent¸e ¸si funct¸ii generatoare . . . . . . . . . . . . . . . . . 22 1.8 Relat¸ii de recurent¸a˘ ¸si funct¸ii generatoare . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.8.1 Recurent¸e liniare . . . . . . . . . . . . . . . . . . . . . 23 1.8.2 Funct¸ii generatoare . . . . . . . . . . . . . . . . . . . . 24 1.8.3 Recurent¸e liniare neomogene . . . . . . . . . . . . . . . 25 1.8.4 Recurent¸a lui Catalan . . . . . . . . . . . . . . . . . . 27 1.8.5 Cˆateva propriet˘ a¸t i ale funct¸iilor generatoare . . . . . . 28 1.9 Probleme rezolvate . . . . . . . . . . . . . . . . . . . . . . . . 29 2 Probabilit˘ a¸t i discrete 2.1 Evenimente aleatoare . . . . . . . . . . . . . 2.2 Axiomele teoriei probabilit˘ a¸tilor . . . . . . . 2.3 Probabilit˘a¸ti condit¸ionate ¸si independent¸a˘ . 2.4 Probabilitatea total˘ a. Formula lui Bayes . . 2.5 Scheme probabilistice . . . . . . . . . . . . . 2.5.1 Schema binomial˘ a. . . . . . . . . . . 2.5.2 Schema multinomial˘ a . . . . . . . . . 2.5.3 Schema hipergeometric˘ a . . . . . . . 2.5.4 Schema hipergeometric˘ a generalizat˘ a 2.5.5 Schema urnelor lui Poisson . . . . . . 2.6 Variablile aleatoare . . . . . . . . . . . . . . 2.6.1 Variabile aleatoare discrete . . . . . . 2.6.2 Variabile aleatoare continue . . . . . 2.7 Suma variabilelor aleatoare . . . . . . . . . . 2.8 Exemple de v.a.d. . . . . . . . . . . . . . . . 4
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
32 32 33 35 37 39 39 39 40 41 41 42 43 44 45 46
5
CUPRINS
2.9 2.10 2.11 2.12 2.13 2.14
2.8.1 Distribut¸ia binomial˘a . . . . . . . . . 2.8.2 Distribut¸ia hipergeometric˘a . . . . . 2.8.3 Distribut¸ia lui Poisson . . . . . . . . 2.8.4 Distribut¸ia geometric˘ a . . . . . . . . 2.8.5 Distribut¸ia binomial˘a negativ˘ a. . . . 2.8.6 Distribut¸ia urnelor lui Poisson . . . . Valoare medie s¸i variant¸a˘ . . . . . . . . . . . Covariant¸a . . . . . . . . . . . . . . . . . . . Valori medii ¸si variant¸e pentru cˆ a teva v.a.d. Teorema lui Chebˆ a¸sev . . . . . . . . . . . . Legile numerelor mari . . . . . . . . . . . . . Probleme rezolvate . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
46 46 47 47 48 49 49 52 53 57 58 61
3 Teoria grafurilor 67 3.1 Introducere . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.1.1 Grafuri . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.1.2 Gradul unui vˆ arf. Teorema lui Euler . . . . . . . . . . 68 3.1.3 Lant¸uri, lant¸uri simple, lant¸uri elementare, cicluri ˆın grafuri . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 3.1.4 Conectivitate ˆın grafuri . . . . . . . . . . . . . . . . . . 71 3.1.5 Multigrafuri, grafuri orientate ¸si multigrafuri orientate 72 3.1.6 Drumuri, drumuri simple, drumuri elementare, cicluri in grafuri orientate . . . . . . . . . . . . . . . . . . . . 74 3.1.7 Conectivitate ¸si conectivitate tare ˆın grafuri orientate . 75 3.2 Reprezentarea grafurilor . . . . . . . . . . . . . . . . . . . . . 77 3.2.1 Matrice de adiacent¸a˘ . . . . . . . . . . . . . . . . . . . 77 3.2.2 Matrice de incident¸a˘ . . . . . . . . . . . . . . . . . . . 82 3.3 Arbori, sortare ¸si c˘ autare . . . . . . . . . . . . . . . . . . . . . 83 3.3.1 Arbori cu r˘ ad˘acin˘a . . . . . . . . . . . . . . . . . . . . 85 3.3.2 Arbori de decizie . . . . . . . . . . . . . . . . . . . . . 86 3.3.3 Arbori de sortare . . . . . . . . . . . . . . . . . . . . . 87 3.4 Arbori binari ¸si coduri binare . . . . . . . . . . . . . . . . . . 89 3.4.1 Arbori binari . . . . . . . . . . . . . . . . . . . . . . . 89 3.4.2 Coduri binare . . . . . . . . . . . . . . . . . . . . . . . 91 3.5 Arbori de acoperire . . . . . . . . . . . . . . . . . . . . . . . . 96 3.5.1 C˘autare ˆın adˆancime ¸si c˘autare ˆın l˘argime . . . . . . . 99 3.5.2 Grafuri cu ponderi ¸si arbori economici . . . . . . . . . 101 3.5.3 Arbore de acoperire minim˘ a ˆın grafuri orientate . . . . 105 3.5.4 Lant¸ minim. Algoritmul lui Dijkstra . . . . . . . . . . 107 3.6 Algoritmi de tip greedy . . . . . . . . . . . . . . . . . . . . . . 110 3.6.1 Algoritm greedy pentru problema ponderii maxime . . 111 3.6.2 Algoritm greedy pentru colorarea vˆ arfurilor . . . . . . 112 3.7 Grafuri bipartite . . . . . . . . . . . . . . . . . . . . . . . . . 114 3.7.1 Cupla je . . . . . . . . . . . . . . . . . . . . . . . . . . 115 3.7.2 Cuplaje in grafuri bipartite . . . . . . . . . . . . . . . 116 3.7.3 Cuplaj maxim . . . . . . . . . . . . . . . . . . . . . . . 119 3.8 Grafuri hamiltoniene ¸s i euleriene . . . . . . . . . . . . . . . . . 121 3.8.1 Grafuri hamiltoniene . . . . . . . . . . . . . . . . . . . 122 3.8.2 Grafuri euleriene . . . . . . . . . . . . . . . . . . . . . 123 3.8.3 Problema po¸s ta¸s ului . . . . . . . . . . . . . . . . . . . 126 3.9 Ret¸ele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
CUPRINS
3.9.1 3.9.2 3.9.3 3.9.4
6 Drumuri critice . . . . . . . . . . . . . . . . . . . . . . 128 Flux ¸si t˘aietur˘a . . . . . . . . . . . . . . . . . . . . . . 130 Flux maxim, t˘ aietur˘a minim˘a . . . . . . . . . . . . . . 132 Algoritmi pentru g˘ asirea unui flux maxim cu valori ˆıntregi 135
Anexa A: Relat¸ii binare 137 A.1 Relat¸ii de echivalent¸a˘ . . . . . . . . . . . . . . . . . . . . . . . 137 A.2 Relat¸ii de ordine . . . . . . . . . . . . . . . . . . . . . . . . . 138
Capitolul 1 Metode de num˘ arare In multe probleme din teoria probabilit˘ a¸tilor sau ¸stiint¸a calculatoarelor avem nevoie s˘a calcul˘am num˘arul de evenimente rezultate ˆın urma efectu˘ arii unui experiment, a obiectelor sau a operat¸iilor necesare unui algoritm. Acest capitol prezint˘ a cˆateva metode de baz˘ a legate de cele mai comune situat¸ii ˆıntˆalnite ˆın problemele de num˘ arare.
1.1
Num˘ ararea ca ¸si biject¸ie. Principiul cutiei
Cum putem num˘ara o mult¸ime finit˘a? In practic˘a, de obicei indic˘am obiectele ¸si spunem unu, doi, trei etc, oprindu-ne atunci cˆand am ajuns la ultimul obiect. Din punct de vedere matematic, aceast˘ a metod˘ a ˆınseamn˘a a construi o funct¸ ie de la mult¸ imea pe care vrem s˘a o num˘ ar˘a m la mult¸imea Nn = 1, 2, . . . , n . Aceast˘a funct¸ie trebuie s˘a fie bijectiv˘a: fiecare obiect trebuie num˘arat o singur˘ a dat˘ a . In consecint¸a˘, prima definint¸ie va fi:
{
}
Definit¸ia 1.1 Fie m de la A la Nm .
∈ N. Mult ¸imea A are m membri dac˘ a exist˘a o biject ¸ie
Pentru a ar˘ a ta c˘ a prin num˘arare nu putem obt¸ine rezultate diferite, avem nevoie de a¸sa-numitul principiu al cutiei (al lui Dirichlet). ≪
≫
Teorema 1.1 (Principiul cutiei) Fie m este adev˘ arat˘ a urm˘ atoarea afirmat ¸ie:
∈ N. Atunci pentru orice n ∈ N
Dac˘ a exist˘ a o inject ¸ie de la Nn la Nm , atunci n
≤ m.
O formulare echivalent˘ a este urm˘ atoarea: Dac˘ a n > m, atunci nu exist˘ a nici o inject¸ie de la Nn la Nm . Aceasta ˆınseamn˘a c˘a, dac˘a n > m ¸si n obiecte sunt introduse ˆın m cutii, atunci (cel put¸in) o cutie va cont¸ine mai mult decˆ at un obiect. Folosind principiul cutiei, urm˘atoarea definit¸ie determin˘ a o valoare unic˘a pentru m.
Definit¸ia 1.2 Dac˘ a exist˘ a o biject ¸ie ˆıntre A ¸si Nm , atunci spunem c˘ a A are m˘ asura sau cardinalul m ¸si scriem
|A| = m. In continuare ne vom numi n-mult¸ime o mult¸ime A cu n elemente ¸si o k-submult¸ime a lui A o submult¸ime cu k elemente. 7
˘ CAPITOLUL 1. METODE DE NUM ARARE
8
Cˆ ateva aplicatt¸ii ale principiului cutiei Exemplul 1.1 In orice mult ¸ime cu mai mult de 13 persoane, exist˘ a cel put ¸in dou˘ a care au ziua de na¸stere ˆın aceea¸si lun˘ a. Cutiile
≪
≫
sunt aici cele 12 luni ¸si obiectele sunt pesoanele. ≪
≫
Exemplul 1.2 La o petrecere, ori de cˆ ate ore dou˘ a persoane sunt prezentate una alteia, ele ˆı¸si dau mˆ ana. S˘ a se explice de ce la petrecere trebuie s˘ a fie (cel put ¸in) dou˘ a persoane care dau mˆ ana de acela¸si num˘ ar de ori. Solut ¸ie. Not˘am cu A mult¸imea persoanelor de la petrecere, m = A , ¸si fie
| |
f (x) = num˘arul de persoane din A cu care x d˘a mˆana. Valorile posible ale lui f (x) sunt 0, 1, . . . , m 1, deci putem defini funct¸ia f : A B, cu B = 0, 1, , m 1 . Nu putem aplica principiul cutiei, deoarece A = B . Dar, dac˘a exist˘a o persoan˘ a x∗ care d˘ a mˆana cu m 1 persoane, ∗ atunci fiecare d˘ a mˆana cu x , ¸si prin urmare nu exist˘ a nici o persoan˘ a care s˘a nu fi dat mˆ ana. In consecint¸a˘, valorile 0 ¸si m 1 nu pot fi luate simultan de c˘atre o funct¸ie fixat˘a f, deci B m 1. Din principiul cutiei deducem c˘a f nu este injectiv˘ a, deci exist˘a dou˘a persoane x 1 , x2 pentru care f (x1 ) = f (x2 ). Deci x1 ¸si x2 dau mˆana de acelasi num˘ar de ori. Aceast˘a problem˘ a poate fi formulat˘ a ¸si ˆın felul urm˘ator: S˘a se arate c˘ a ˆın orice mult¸ime A de persoane exist˘ a dou˘a care au acela¸si num˘ ar de prieteni ′ ˆın A. Presupunem c˘ a A 2 ¸si c˘a, dac˘a x este prieten cu x , atunci x′ este prieten cu x. Desigur, metoda a ar˘ata si a indica num˘arul nu este suficient˘ a pentru a num˘ara mult¸imi mai sofisticate, prin urmare e nevoie s˘a studiem alte metode.
→ | | | |
{
−
··· − }
−
−
| |≤ −
| | ≥
≪
1.2
≫
Principii de baz˘ a
Primul principiu este foarte simplu ¸si poate fi formulat matematic astfel: Principiul 1 (principiul adun˘ arii) Dac˘a A ¸si B sunt mult¸imi nevide ¸si disjuncte, atunci A B = A + B.
| ∪ | | | | |
Evident, rezultatul poate fi extins la orice reuniune de mult¸imi dou˘a cˆate dou˘a disjuncte A1 , A2 , , An adic˘a
· ·· |A ∪ A ∪ · · · ∪ A | = |A | + |A | + ··· + |A |. 1
2
n
1
2
n
(1.1)
a, atunci cˆ and exist˘ a n cazuri Observat¸ia 1.1 Principiul adun˘arii spune c˘ astfel ˆıncˆ at al i-lea caz are ki opt ¸iuni, pentru i = 1, 2, . . . , n, ¸si oricare dou˘a cazuri nu au nici o opt ¸iune ˆın comun, atunci num˘ arul total de opt ¸iuni este k1 + k2 + . . . + kn . O aplicat¸ie simpl˘a a formulei (1.1) este o form˘a generalizat˘ a a principiului cutiei: presupunem c˘ a un num˘ar de obiecte sunt distribuite ˆın n cutii ¸si Ai reprezint˘ a mult¸imea obiectelor din cutia i, 1 i n. Intrucˆ at mult¸imile Ai sunt disjuncte, num˘ arul total de obiecte este A1 + A2 + + An . Dac˘a presupunem c˘ a nici o cutie nu cont¸ine mai mult de k obiecte, num˘ arul total de obiecte este cel mult + k = nk. k + k +
≤ ≤ | | | | ·· · | |
·· ·
Exprimˆand contrariul afirmat¸iei de mai sus, obt¸inem principiul generalizat al cutiei:
˘ CAPITOLUL 1. METODE DE NUM ARARE
9
Teorema 1.2 Dac˘ a m obiecte sunt distribuite ˆın n cutii ¸si m > nk, atunci cel put ¸in o cutie cont ¸ine cel put ¸in k + 1 obiecte. Exemplul 1.3 Intr-o competit ¸ie ˆın care echipele au cinci membri, regula aste c˘ a membrii fiec˘ arei echipe trebuie s˘ a aib˘ a zilele de na¸stere ˆın aceea¸si lun˘ a. Cˆ ate persoane sunt necesare pentru a garanta c˘ a se poate construi o echip˘ a? Solut ¸ie. Aplicˆand principiul generalizat al cutiei, num˘ arul de persoane este strict mai mare decˆ at 4 12, deci num˘arul minim de persoane este 49.
·
In cazul cˆ and mult¸imile Ai nu sunt ˆın mod necesar disjuncte, avem urm˘atorul rezultat. Principiul 2 (Principiul includerii ¸si al excluderii ) Dac˘a A1, A2, . . . , An sunt mult¸imi finite, atunci n−1
|A ∪ A ∪ . . . ∪ A | = α − α + α − · · · (−1) 1
2
n
1
2
3
αn ,
(1.2)
unde αi este suma cardinalelor intersect¸iilor de i mult¸imi: n
α1 =
�| | �| ∩
Ai ,
i=1
α2 =
Ai
1≤i
· ··
∩ A |, j
n
αn =
Ai .
i=1
Demonstrarea principiului includerii ¸si al excluderii se poate face prin induct¸ie dup˘a n. Ca ¸si o consecint¸a˘ imediat˘a are loc urm˘atorul rezultat.
Corolarul 1.3 Dac˘ a A1 , A2 , . . . , An sunt submult ¸imi ale unei N -mult ¸imi date X , atunci num˘ arul de elemente care nu apart ¸in nici uneia din aceste submult ¸imi este
|X \ (A ∪ . . . ∪ A )| 1
n
= X A1 = N α1 + α2
| |−| ∪···∪A | − − . . . + (−1) α . n
n
n
(1.3)
O aplicat¸ie a acestui principiu este problema deranjamentelor (a se vedea sect¸iunea 1.9, pag. 30).
1.3
Num˘ ararea perechilor
In practic˘a avem nevoie cˆ ateodat˘ a s˘a num˘ar˘am lucruri care pot fi descrise ˆın mod natural ca ¸si perechi de obiecte. De exemplu, vrem s˘ a calcul˘am ˆınc˘arcarea didactic˘ a pentru un an de studiu. Pentru a face acest lucru, construim un tabel, unde fiecare linie corespunde unui student ¸si fiecare coloan˘ a corespunde unei discipline. Dac˘ a un student x particip˘a la cursul y atunci marc˘am pozit¸ia corespunz˘ atoare (x, y) din tabel. Num˘ arul total de semne
˘ CAPITOLUL 1. METODE DE NUM ARARE
10
este ˆınc˘arcarea didactic˘ a. student curs S 1 S 2 S 3 .. .
C 1
C 2
S m suma pe coloane
\
C 3
···
C n
suma pe linii
· ·
rx (S ) ...
·
·
cy (S )
·
|S |
··· ·
Problema noastr˘ a va fi num˘ararea unei submult¸imi S a produsului cartezian X Y, unde X este mult¸imea student¸ilor ¸si Y este mult¸imea disciplinelor. Primul mod const˘a ˆın a num˘ara semnele de pe linia x ¸si a g˘asi totalul pe linii rx (S ), pentru fiecare x X . Num˘arul de elemente din of S poate fi obt¸inut adunˆ and toate sumele pe linii,
×
∈
|S | =
�
rx (S ).
(1.4)
x∈X
Al doilea mod const˘ a ˆın a calcula semnele din coloana y ¸si a calcula totalul pe coloane cy (S ), pentru fiecare y Y . In acest caz S poate fi obt¸inut˘a prin adunarea tuturor sumelor pe coloane,
∈
|S | =
�
| |
cy (S ).
(1.5)
y∈Y
Evident, cele dou˘ a sume trebuie s˘ a coincid˘a ¸si aceste dou˘a expresii pentru S sunt deseori utilizate ˆın practic˘ a pentru a verifica rezultate, sau ˆın teorie pentru a deduce anumite propriet˘ a¸t i ale cardinalelor mult¸imilor X ¸si Y.
||
Exemplul 1.4 Intr-o grup˘ a sunt 24 fete. Fiecare fat˘ a cunoa¸ste 7 din b˘ aiet ¸ii din grup˘ a ¸si fiecare b˘aiat cunoa¸ste 8 fete din grup˘ a. Cˆ at ¸i b˘ aiet ¸i sunt ˆın grup˘ a? Solut ¸ie. Not˘am cu n num˘arul de b˘ aiet¸i. Construim un tablou unde plas˘ am b˘aiet¸ii pe coloane ¸si fetele pe linii. De fiecare dat˘a cˆ and b˘aiatul x o cunoa¸ste pe fata y, marc˘am elementul (x, y). Egalˆand suma de pe linii cu suma de pe coloane obt¸inem 8n = 7 24, deci exist˘a n = 21 b˘aiet¸i.
·
a se g˘ aseasc˘ a o mult ¸ime de submult ¸imi ale lui Exemplul 1.5 Este posibil s˘ N7 cu proprietatea c˘ a fiecare are 5 elemente ¸si fiecare element al lui N7 apart ¸ine la exact 4 din aceste submult ¸imi? Solut ¸ie. Construim un tablou cu elementele 1, 2, . . . , 7 pe linii ¸si submult¸imile cerute A 1 , . . . , Ak ale lui N7 (k necunoscut ˆın acest moment) pe coloane. Ori de cˆate ori i A k , marc˘am pozit¸ia (k, i). Totalul pe linii va fi 4 7 = 28, ˆın timp ce totalul pe coloane va fi 5 k. Deoarece 5 nu este divizor al lui 28, problema are r˘ aspuns negativ. O consecint¸a˘ simpl˘a a egalit˘a¸t ilor (1.4) ¸si (1.5) este al doilea principiu de baz˘a: Principiul 3 (Principiul multiplic˘ arii) Date fiind mult¸imile X ¸si Y , cardinalul mult¸imii X Y este dat de
∈
·
·
×
|X × Y | = |X | · |Y |. Evident, rezultatul poate fi extins la un produs finit de mult¸imi:
|X × X × . . . × X | = |X | · |X | · . . . · |X |. 1
2
n
1
2
n
˘ CAPITOLUL 1. METODE DE NUM ARARE
11
Observat¸ia 1.2 Principiul multiplic˘ arii spune c˘ a, atunci cˆ and o procedur˘ a poate fi desp˘ art ¸it˘ a ˆın n pa¸si, astfel ˆıncˆ at exist˘ a k1 opt ¸iuni pentru pasul 1, ¸si astfel ˆıncˆ at, dup˘ a efectuarea pasului i 1 (i = 1, 2, . . . , n) exist˘ a ki opt ¸iuni pentru pasul i, atunci num˘ arul de moduri ˆın care poate fi realizat˘ a procedura este k1 k2 . . . kn .
−
· · ·
1.4
Funct¸ii, cuvinte ¸si select¸ii
In cele mai multe probleme de num˘ arare avem un num˘ ar n de obiecte care sunt distribuite ˆın k clase sau grupuri . Num˘arul de moduri ˆın care poate fi f˘acut˘ a aceast˘ a distribut¸ie depinde de urm˘ atoarele: 1. 2. 3. 4. 5. 6.
obiectele sunt distincte sau nu; clasele sunt distincte sau nu; ordinea obiectelor dintr-o clas˘ a este relevant˘ a sau nu; ordinea claselor este relevant˘ a sau nu; obiectele pot fi folosite mai mult de o singur˘ a dat˘ a sau nu; sunt admise clase vide sau nu.
Exercit¸iu 1.4 S˘ a se g˘ aseasc˘ a un exemplu practic pentru fiecare din cazurile enumerate mai sus.
1.4.1
Select¸ii ordonate cu repetit¸ii (cuvinte)
Pentru o mult¸ime dat˘ a Y = , consider˘ am mult¸imea f, f : Valorile luate de funct¸ia f determin˘ a m-uplul
̸ ∅
{
(f (1), f (2), . . . , f ( m))
∈ Y × . . . × Y := Y
m
Nm
→ Y }.
.
Reciproc, fiecare element din Y m este un m-uplu (y1 , y2 , . . . , ym ) ¸si corespunde unei funct¸ii f : Nm Y definit˘a prin
→
f (1) = y 1 , f (2) = y 2 , . . . , f ( m) = y m . In concluzie, a defini o funct¸ie f : Nm Y este echivalent cu a alege un m element din Y . Dac˘ a privim elementele mult¸imii Y ca pe litere ale unui alfabet, atunci secvent¸a f (1), f (2), . . . f ( m) poate fi privit˘ a ca cele m litere ale unui cuvˆ ant . De exemplu, dac˘a Y = a,b,c,d , cuvintele pom ¸si alb corespund, respectiv, funct¸iilor f, g : N3 Y definite prin
→
≪
{
≫
→
}
≪
≫
f (1) = p, f (2) = o, f (3) = m, g(1) = a, g(2) = l, g(3) = b.
Definit¸ia 1.3 Un cuvˆ ant de lungime m ˆın alfabetul Y este o funct ¸ie f : Nm Y.
→
¸imi finite nevide ¸si fie Teorema 1.5 Fie X, Y mult
F = {f,
f : X
→ Y }.
Dac˘ a X = m ¸si Y = n, atunci
| |
| |
|F| = n
m
.
˘ CAPITOLUL 1. METODE DE NUM ARARE
12
Demonstrat¸ie. Orice f
∈ F este determinat de m-uplul valorilor sale (f (x ), f (x ), . . . , f ( x )) ∈ Y . Prin urmare, |F| = |Y | = n 1
m
2
m
m
m
O formulare echivalent˘ a a acestei teoreme este: Num˘ arul cuvintelor de lungime m dintr-un alfabet Y cu n symboluri este nm .
Exemplul 1.6 Intr-un alfabet cu 26 litere, exist˘ a 263 cuvinte cu 3 litere, presupunˆ and c˘ a nu exist˘ a nici o restrict ¸ie la formarea cuvintelor. O ilustrare intuitiv˘ a a obt ¸inerii acestui num˘ ar este urm˘ atoarea: |_______|
|_______|
|_______|
↑
↑
↑
26 moduri
26
26
Aici cele trei cutii reprezint˘ a cele trei pozit ¸ii ale literelor cuvintelor, fiecare din ele fiind completat independent ˆın 26 moduri. ≪
≪
≫
≫
Prin urmare, exist˘ a un alt mod de a interpreta o funct¸ie f : Nm Y (sau, echivalent, un cuvˆant de lungime m ˆın alfabetul Y ): Pentru a construi cuvˆantul pom , mai ˆıntˆai am selectat litera p din stoc, apoi o, apoi m . Presupunem c˘ a avem un stoc nelimitat de litere. Astfel, fiecare cuvˆ ant rea a literelor alfabetului Y = a , b , . . . , z , cu prezint˘ a o select¸ie ordonat˘ repetit¸ii permise. In concluzie, putem enunt¸a urm˘atoarea teorem˘a.
→
≪
≫
{
}
arul de select ¸ii ordonate cu repetit ¸ie a m obiecte din nTeorema 1.6 Num˘ m mult ¸imea Y este n .
Exemplul 1.7 Dac˘ a X este o m-mult ¸ime, atunci num˘ arul total de submult ¸imi m ale lui X este 2 . Solut ¸ie. Presupunem c˘ a X = x1 , x2 , . . . , xm ¸si fie Y alfabetul 0, 1 . Orice submult¸ime S a lui X corespunde unui cuvˆ ant de lungime n din alfabetul Y , definit de funct¸ia 1, dac˘a xi S, f (i) = 0, dac˘a xi / S.
{
}
{ }
{
∈ ∈ De exemplu, dac˘ a m = 7 ¸si S = {x , x , x }, cuvˆa ntul este 0101100. In concluzie, num˘ arul de submult¸imi distincte ale lui X coincide cu num˘ arul de cuvinte de lungime m din alfabetul {0, 1}, care este 2 . 2
4
5
m
1.4.2
Inject¸ii ca ¸si select¸ii ordonate f˘ ar˘ a repetit¸ii
In unele situat¸ ii ne este permis sa avem doar un obiect de fiecare tip. De exemplu, dac˘a select˘ a m o echip˘a, nici un juc˘a tor nu poate fi selectat mai mult de o singur˘a dat˘ a. A realiza o select ¸ie ordonat˘ a ˆınseamn˘a a defini o funct¸ie f : Nm Y, cu f (i) reprezentˆ a nd al i-lea obiect selectat. A permite repetit¸ii ˆınseamn˘a c˘a este posibil s˘a avem f ( j) = f (k) pentru j = k. A nu permite repetit¸ii ˆınseamn˘a a impune ca f s˘a fie injectiv˘ a. Suntem interesat¸i s˘a determin˘am num˘arul de inject¸ii. Acest num˘ar este dat ˆın teorema urm˘ atoare.
→
̸
˘ CAPITOLUL 1. METODE DE NUM ARARE
13
Teorema 1.7 Num˘ arul de select ¸ii ordonate f˘ ar˘ a repetit ¸ii, a m obiecte dintro mult ¸ime Y cu n elemente, este egal cu num˘ arul de inject ¸ii f : Nm Y ¸si este dat de formula
→
n(n
− 1)(n − 2) . . . (n − m + 1) = (n −n!m)! .
(1.6)
a ˆın n moduri. Dac˘a nu adDemonstrat¸ie. Valoarea f (1) poate fi atribuit˘ mitem repetit¸ii, valoarea f (2) poate fi atribuit˘ a ˆın n 1 moduri, ¸si ˆın final, valoarea f (m) poate fi atribuit˘a ˆın n m + 1 moduri. Din regula de multiplicare rezult˘ a formula (1.6).
−
−
Observat¸ia 1.3 Numerele n(n 1) . . . (n m + 1) apar destul de frecvent ˆın probleme de num˘ arate, astfel c˘ a au primit urm˘ atoarele denumiri:
−
nm := n(n
−
− 1)(n − 2) . . . (n − m + 1)
sunt numite factoriale descendente1 (de n de lungime m). Analog se consider˘ a nm := n(n + 1)(n 2) . . . (n + m 1)
−
care se vor numi factoriale ascendente.2
−
arul nm este de fapt num˘ arul de cuvinte de lungime Observat¸ia 1.4 Num˘ m ale c˘aror litere, elemente din Y (cu Y = n), sunt diferite. Din acest motiv, aceste cuvinte se numesc m-permut˘ ari ale lui Y sau aranjamente de n luate cˆ ate m. De exemplu, 1234 ¸si 6512 sunt dou˘ a 4-permut˘ ari ale lui Y = 1, 2, . . . , 6 .
| |
{
}
Exemplul 1.8 Cˆ ate cuvinte din 4 litere se pot forma dintr-un alfabet de 9 simboluri, dac˘ a nici o liter˘ a nu se poate folosi mai mult de o singur˘ a dat˘ a? R˘ aspuns. 94 = 9 8 7 6 = 3024.
· · ·
Exemplul 1.9 Pentru o clas˘ a format˘ a din 30 elevi, ˆın cˆ ate moduri se pot acorda premii la sfˆ ar¸sit de an, ¸stiind c˘ a exist˘ a un premiu ˆıntˆ ai, un premiu doi ¸si un premiu trei? R˘ aspuns. 303 = 30 29 28 = 24360.
· ·
1.4.3
Permut˘ ari
Presupunem c˘ a un num˘ar de obiecte sunt a¸sezate aleator unul dup˘ a altul. Din punct de vedere matematic, acest lucru ˆınseamn˘ a a defini o funct¸ie de la mult¸imea de pozit¸ii ocupate de obiecte, la mult¸imea de obiecte. ≪
≫
¸imi finite X = Definit¸ia 1.4 O permutare a unei mult σ : X X.
→
̸ ∅ este o biject ¸ie
Pentru a simplifica scrierea, ˆın mod frecvent se consider˘ a, ˆın loc de o nmult¸ime X arbitrar˘ a, mult¸imea Nn. Mult¸imea tuturor permut˘ arilor lui Nn va fi notat˘a prin Πn . Ca o consecint¸a˘ immediat˘a a teoremei 1.7, avem: 1 2
In limba englez˘a falling factorials . In limba englez˘a rising factorials .
˘ CAPITOLUL 1. METODE DE NUM ARARE
14
Teorema 1.8 Num˘ arul permut˘ arilor mult ¸imii Nn este
|Π | = n(n − 1) · . . . · 2 · 1 = n !
(1.7)
n
O permutare π
∈ Π va fi notat˘a cu n
(π(1), π(2), . . . , π(n)) .
Exemplul 1.10 Patru persoane se pot a¸seza ˆın ¸sir indian ˆın 4! = 24 moduri. Definit¸ia 1.5 O permutare π pentru orice i Nn .
∈
∈ Π se nume¸ste deranjament dac˘ a π(i) ̸= i n
Astfel, (3, 2, 1) nu este deranjament al lui N3 , dar (2, 3, 1) este deranjament. Num˘arul de deranjamente va fi calculat ˆın sect¸iunea 1.9, pag. 30.
1.4.4
Select¸ii neordonate f˘ ar˘ a repetit¸ii
Presupunem c˘a avem o mult¸ime X cu n obiecte ¸si select˘ am k din ele. Rezultatul select¸iei este o k- submult¸ime Y . In acest model, important este rezultatul select¸iei, ¸si nu procesul de select¸ie. De asemenea, nu exist˘ a posibilitatea de repetit¸ie (fiecare membru al lui X este ˆın Y sau nu ¸si nici un membru nu poate fi selectat mai mult de o singur˘a dat˘ a). De exemplu, dintro clas˘a de 30 elevi, vrem s˘a select˘am 3 elevi pentru a participa la o excursie gratuit˘a ˆın jurul lumii. Desigur nimeni nu va fi interesat de ordinea ˆın care s-a f˘acut select¸ia, ci doar de rezultatul select¸iei. Num˘arul de select¸ii neordonate f˘ ar˘a repetit¸ii a k obiecte dintr-o n- mult¸ime X , este num˘ arul de k- submult¸imi ale mult¸imii X . In general, acest num˘ ar este notat cu nk (se cite¸ste combin˘ ari de n luate cˆ ate k) ¸si se 3 nume¸ste num˘ ar binomial .
(
Teorema 1.9 Num˘ arul binomial
�� n k
=
n(n
( n k
are expresia k
− 1) . . . (n − k + 1) = n k!
k!
=
n! . k!(n k)!
−
(1.8)
Demonstrat¸ie. Cele k elemente ale k-submult¸imii pot fi selectate ˆın n(n 1) (n k + 1) moduri, la fel cum am f˘acut pentru select¸iile ordonate f˘ ar˘a repetit¸ii. Aceste k obiecte pot fi permutate ˆıntre ele ˆın k! moduri. Deoarece ordinea nu conteaz˘ a, alegem doar unul din cele k! moduri, astfel c˘a ˆın final num˘arul de k-submult¸imi ale unei n-mult¸imi va fi
−
·· · −
n(n
− 1) . . . (n − k + 1) . k!
O proprietate imediat˘ a este
( ( n k
=
n n−k
.
Observat¸ia 1.5 Num˘ arul binomial poate fi definit ˆıntr-un caz mai general, ca x x(x 1) . . . (x k + 1) = , (1.9) k k! pentru x 3
( n k
.
��
−
−
∈ R, k ∈ N ∪ {0}.
In cele mai multe din c˘art¸ile romˆane¸sti se folose¸ste notat¸ia C nk pentru num˘arul binomial
˘ CAPITOLUL 1. METODE DE NUM ARARE
15
Exemplul 1.11 Dintr-o clas˘ a de 30 elevi putem selecta o echip˘ a de 7 elevi 30 care s˘ a participe la o excursie ˆın 7 = 2035800 moduri.
(
Exemplul 1.12 (Num˘ ararea ¸sirurilor de bit ¸i de lungime n cu exact k zerouri) Care este num˘ arul de ¸siruri de bit ¸i de lungime n cu exact k zerouri? Solut ¸ie. Fiecare ¸sir de bit¸i este determinat prin alegerea unei k- submult¸imi a n- mult¸imii de pozit¸ii. Astfel, zerourile sunt plasate ˆın aceste k pozit¸ii ¸si unit˘a¸tile ˆın cele n k pozit¸ii r˘amase, a¸sa cum s-a f˘acut ˆın exemplul 1.7, pag. 12. In concluzie, num˘arul cerut este nk .
−
1.4.5
(
Select¸ii neordonate cu repetit¸ii
Suntem interesat¸i acum de cazul select¸iilor neordonate cu repetit¸ii. a se scrie select ¸iile neordonate de patru obiecte din mult ¸imea Exemplul 1.13 S˘ a,b,c , cu repetit ¸ii permise.
{
}
Solut ¸ie. Exist˘a 15 asemenea select¸ii ¸si acestea sunt: aaaa aacc bbbb
aaab abbb bbbc
aaac abbc bbcc
aabb abcc bccc
aabc accc cccc
Cum se pot num˘ara ˆın cazul general? Ideea este s˘ a reprezent˘ am asemenea select¸ii ca ¸si cuvinte cu litere din alfabetul 0, 1 . De exemplu, cuvˆantul asociat select¸iei abcc va fi 101011. Zerourile sunt markeri care separar˘a tipurile de obiecte, iar unit˘ a¸t ile ne specific˘a num˘arul de obiecte din fiecare tip. Dac˘a nu exist˘a nici obiect de un anumit tip, nu se pune nimic. Astfel, ˆın exemplul nostru, aceast˘ a asociere va fi
{ }
a 1
b 0 1 0
c 1
c 1
Problema se reduce astfel la a determina num˘ arul de ¸siruri de bit¸i de lungime ¸sase, care cont¸in exact dou˘ a zerouri. Acest num˘ar este 62 = 15 (a se vedea exemplul 1.12, pag. 15). In general, putem enunt¸a urm˘ atoarea teorem˘ a.
(
Teorema 1.10 Num˘ arul de select ¸ii neordonate, cu repetit ¸ii, a k obiecte dintrn+k−1 o mult ¸ime de n obiecte este . k
(
Demonstrat¸ie. Intrucˆat select¸iile sunt neordonate, f˘ ar˘a a altera generalitatea problemei putem aranja obiectele astfel ca, ˆın cadrul fiec˘ arei select¸ii, toate obiectele de un anumit tip apar primele, urmate de obiectele de un alt tip etc. Dup˘a aceea, se poate asocia fiec˘ arei select¸ii cˆate un cuvˆant de lungime n + (k 1) din alfabetul 0, 1 , a¸sa cum am explicat ˆın exemplul anterior. Presupunem c˘ a avem ni obiecte de tipul i. Primele n1 litere ale cuvˆanului vor fi 1, urmate de un 0, urm˘atoarele n 2 litere vor fi din nou 1, urmate de un 0, ¸si a¸sa mai departe. Dac˘a pentru un i avem ni = 0, atunci vom avea doi markeri consecutivi. De exemplu, pentru select¸iile accc ¸si cccc cuvintele vor fi 100111 ¸si respectiv 000111. Asocierea definit˘ a prin aceast˘ a regul˘ a este o
−
{ }
˘ CAPITOLUL 1. METODE DE NUM ARARE
16
−
biject¸ie de la mult¸imea de select¸ii la mult¸imea de cuvinte de lungime n +k 1 care cont¸in exact n 1 zerouri. In concluzie, num˘ arul de cuvinte este
−
�
��
n + k 1 n 1
−
−
=
n+k k
�
−1
.
(1.10)
a a defini o select ¸ie neordonat˘ a cu Observat¸ia 1.6 Putem remarca faptul c˘ repetit ¸ii a k obiecte dintr-o mult ¸ime de n obiecte este echivalent cu a introduce k bile identice ˆın n cutii distincte. Intr-adev˘ ar, construct ¸ia de ¸siruri de bit ¸i poate fi f˘ acut˘ a luˆ and cˆate un 1 pentru fiecare bil˘ a ¸si 0 ca marker care separ˘ a cutiile.
Exemplul 1.14 Avem 6 feluri de pr˘ ajituri. Cˆate platouri diferite care s˘ a cont ¸in˘ a 10 pr˘ ajituri se pot alc˘ atui? (presupunˆ and c˘ a avem cel put ¸in 10 pr˘ ajituri din fiecare fel). R˘ aspuns.
( 15 5
= 3003.
Exemplul 1.15 S˘ a se arate c˘ a, dac˘ a sunt aruncate trei zaruri identice, exist˘ a 56 rezultate posibile. Cˆ ate rezultate exist˘a ˆın cazul cˆ and sunt aruncate n asemenea zaruri? R˘ aspuns. Acest num˘ar este
( n+5 5
, ˆın particular
( 8 5
= 56.
a expresia (x1 +x2 +x3)n este dezvoltat˘a ¸si c˘a Exemplul 1.16 Presupunem c˘ termenii asemenea sunt restrˆ an¸si, folosind regulile algebrice cunoscute. Care este num˘ arul de termeni din formula care rezult˘ a? R˘ aspuns. Avem n de 1 (obiecte, corespunzˆ and monoamelor x i ), ¸si 2 markeri, separˆa nd pe x1 de x2 ¸si respectiv pe x2 de x3. Astfel, num˘ arul de ¸siruri de bit¸i de lungime n + 2 cont¸inˆand 2 zerouri ¸si n unit˘a¸t i va fi n+2 . n
(
1.5
Design-uri
Un fabricant a dezvoltat un produs nou ¸si dore¸ste s˘ a evalueze n variet˘a¸t i ale lui cerˆand anumitori consumatori s˘ a testeze aceste variet˘ a¸t i. Este imposibil din punct de vedere practic ca fiecare consumator s˘ a testeze toate variet˘ at¸ile, deci ar fi rezonabil s˘ a se impun˘a urm˘atoarele condit¸ii: (i) Fiecare consumator ar trebui s˘ a testeze acela¸si num˘ ar k de variet˘ a¸t i; (ii) Fiecare varietate ar trebui s˘ a fie testat˘ a de acela¸si num˘ar r de consumatori. De exemplu, dac˘a n = 8, k = 4, r = 3, o schem˘a posibil˘a ar fi s˘ a cerem la 6 persoane s˘ a testeze variet˘ a¸t ile, dup˘a cum urmeaz˘ a: 1234 5678 1357 2468 1247 3658, unde num˘ arul 1, 2, . . . , 8 reprezint˘ a variet˘a¸tile. ¸ime. O mult ¸ime de k-submult ¸imi ale lui X Definit¸ia 1.6 Fie X o n-mult este un design cu parametrii (n,k,r) dac˘ a fiecare membru al lui X apart ¸ine la exact r dintre submult ¸imile lui . Un element B se nume¸ste un bloc al design-ului.
B
∈ B
B
˘ CAPITOLUL 1. METODE DE NUM ARARE
17
A¸sa cum am v˘ azut ˆın exemplul 1.5, pag.10, nu exist˘ a nici un design cu parametrii (7, 5, 4), deci este necesar s˘ a g˘asim condit¸ii asupra parametrilor (n,k,r) care s˘a asigure existent¸a unui design cu ace¸sti parametri. Prin urmare, s˘ a consider˘ am o n-mult¸ime X ¸si fie o mult¸ime de ksubmult¸imi ale lui X , nu neap˘ arat un design. Ca ¸si ˆın sect¸iunea 1.3, construim un tablou (pentru cazul particular n = 6, k = 3). Un semn pe pozit¸ia (x, C i ) ˆınseamn˘a x C i . Pentru fiecare x X, fie r(x) num˘arul de aparit¸ii ale lui x ca ¸si element al unei submult¸imilor C i .
C
∈
∈
x
\ C 1 2 3 4 5 6
C 1
C 2
C 3
C 4
3
3
3
r(x) 3 2 1 3 1 2
3
Dac˘a presupunem c˘ a fiecare C i este o k-submult¸ime a lui X , atunci pe fiecare coloan˘a totalul va fi k. Egalˆand totalul pe linii cu totalul pe coloane obt¸inem
�
r(X ) =
x∈X
|C|· k.
(1.11)
S˘a presupunem acum c˘ a avem un design B cu parametrii (n,k,r). In acest caz ˆın egalitatea (1.11) ˆınlocuim r(x) = r, obt¸inˆand n r = k b,
·
·
(1.12)
unde b = este num˘ arul de blocuri. Mai mult, num˘arul total de k-submult¸imi ale lui X este nk , deci num˘ arul b de blocuri ar trebui s˘a fie mai mic decˆ at acest num˘ ar. In concluzie
|B|
(
�≤ �
nr b = k
n . k
(1.13)
Se poate demonstra c˘ a (1.12) ¸si (1.13) sunt de asemenea condit ¸ii suficiente pentru existent¸ a unui design. Mai precis, are loc teorema 1.11. Pentru demonstrat¸ia implicat¸iei inverse ¸si alte propriet˘ a¸t i ale designs-urilor, a se consulta [2].
Teorema 1.11 Exist˘ a un design cu parametrii (n,k,r) dac˘ a ¸si numai dac˘ a
� � − ≤
k nr ¸si r
|
1.6
n k
−
1 . 1
Partit¸ii ¸si distribut¸ii
In acest paragraf vom studia partit¸ii ale unei mult¸imi ˆın submult¸imi (partit¸ii de mult¸imi), partit¸ii ˆıntregi, ¸si distribut¸ii ale unei mult¸imi de obiecte ˆıntr-o mult¸ime de cutii.
˘ CAPITOLUL 1. METODE DE NUM ARARE
1.6.1
18
Partit¸ii ale unei mult¸imi ˆın submult¸imi (partit¸ii de mult¸imi)
Definit¸ia 1.7 Fie I = o mult ¸ime de indici, finit˘a sau infinit˘ a. O partit ¸ie a unei mult ¸imi X este o familie = X i , i I de submult ¸imi nevide ale lui X , astfel ˆıncˆ at
̸ ∅
1. X =
∪
H {
∈ }
X i ,
i∈I
2. X i sunt disjuncte dou˘ a cˆ ate dou˘ a. Cu alte cuvinte, fiecare element x X trebuie s˘ a apart ¸in˘ a uneia ¸si numai uneia din submult ¸imile X i . Submult ¸imile X i se mai numesc ¸si clasele sau ¸iei . p˘ art ¸ile partit
∈
H
Observat¸ia 1.7 A defini o partit ¸ie a unei n- mult ¸imi X ˆın k p˘ art ¸i este echivalent cu a plasa n bile distincte ˆın k cutii identice astfel ˆıncˆ at s˘ a nu r˘ amˆ an˘ a goal˘ a nici o cutie (plasare surjectiv˘ a).
H = {X , X , X , X }, unde X = {1, 2, 9}, X = {3, 5, 7, 10}, X = {4}, X = {6, 8}
Exemplul 1.17 Familia 1
1
2
3
2
4
3
4
este o partit ¸ie a lui N10. Un alt exemplu de partit¸ie este dat ˆın Apendicele A , pag.137, unde am ar˘atat ¸si cum o relat¸ie de echivalent¸a˘ determin˘ a o partit¸ie. Desigur ne intereseaz˘ a s˘a calcul˘am num˘arul de partit¸ii. Un prim rezultat privind acest num˘ ar este urm˘ atorul. arul de partit ¸ii ale unei n-mult ¸imi X ˆın k Teorema 1.12 Fie S (n, k) num˘ p˘ art ¸i (numite ¸si k-partit¸ii), 1 k n. Atunci
≤ ≤
1. S (n, 1) = 1, 2. S (n, n) = 1, 3. S (n, k) = S (n
− 1, k − 1) + kS (n − 1, k), pentru 2 ≤ k ≤ n − 1.
a cu u¸surint¸a˘ c˘a S (n, 1) = 1, deoarece Demonstrat¸ie. Mai ˆıntˆai se constat˘ exist˘a doar o partit¸ie a lui X ˆıntr-o singur˘ a parte, si anume = X . La fel, S (n, n) = 1, ˆıntrucˆat din nou exist˘ a doar o partit¸ie a lui X ˆın n clase, si anume = x , x X . R˘amˆane de demonstrat 3. Pentru aceasta, s˘ a fix˘am z X . Cu z fixat, distingem urm˘ atoarele tipuri de partit¸ii: Tipul 1: partit¸ii ˆın care mult¸imea z este o parte, Tipul 2: partit¸ii ˆın care partea care ˆıl cont¸ine pe z are ¸si alte elemente. S˘a calcul˘am num˘arul de partit¸ii de tipul 1. Dac˘ a mult¸imea z este ˆınl˘aturat˘a din partit¸ie, obt¸inem o partit¸ie a (n 1)- mult¸imii X z ˆın k 1 p˘art¸i, ¸si exist˘a S (n 1, k 1) astfel de partit¸ii. Reciproc, dat˘a fiind o astfel de partit¸ie, putem reconstitui partea z . S˘a calcul˘am acum num˘ arul de partit¸ii de tipul 2. Presupunem c˘ a este o partit¸ ie de tipul 2 cu p˘ art¸ile X 1 , X 2 , . . . , Xk . Putem defini o pereche de obiecte (i, 0 ), cu i luat astfel ˆıncˆat z X i ¸si cu 0 luat˘a ca ¸si partit¸ie a (n 1)- mult¸imii X z cu cele k p˘art¸i X 1 , . . . , Xi−1 ,
H { }
H {{ } ∈ }
∈
{ }
−
−
H
−
\ { }
{} \{ } −
−
{ }
∈
H
H
˘ CAPITOLUL 1. METODE DE NUM ARARE
19
X i z , X i+1 , . . . , Xk . Exist˘a k valori posibile pentru i ¸si S (n 1, k) partit¸ii posibile 0, deci avem kS (n 1, k) asemenea perechi. Reciproc, dat˘ a fiind o asemenea perche (i, 0 ), putem reda z p˘art¸ii X i ¸si reconstitui . Intrucˆ at pentru un z fixat o partit¸ ie poate fi fie de tipul 1 fie de tipul 2, prin adunarea numerelor obt¸inute pentru fiecare tip de partit¸ie se obt¸ine concluzia 3.
\{ } H
H
−
−
H
Observat¸ia 1.8 Numerele S (n, k) sunt cunoscute ca ¸si numerele lui Stirling4 de spet¸ a a doua. Din nefericire nu exist˘ a o formul˘ a simpl˘ a pentru aceste numere, dar folosind recurent ¸a 3 putem construi urm˘ atorul tabel: n k 1 2 3 4 5 6 7 8
\
1 2 3 1 1 1 1 3 1 1 7 6 1 15 25 1 31 90 1 63 301 1 127 966
4
5
6
1 10 65 350 1701
1 15 140 1050
1 21 266
7
· ··
8
1 28 1
·· · ¸imea N5 are urm˘ atoarele 2-partit ¸ii, unde am ˆınlocuit Exemplul 1.18 Mult cu + ¸si am omis acoladele ¸si virgulele pentru a simplifica scrierea:
∪
12345 = 1234 + 5, 1235 + 4, 1245 + 3, 1345 + 2, 2345 + 1, 124 + 35, 125 + 34, 134 + 25, 135 + 24, 145 + 23, 234 + 15, 235 + 14, 245 + 13, 345 + 12. Intr-adev˘ ar, am obt ¸inut S (5, 2) = 15 partit ¸ii.
1.6.2
Distribut¸ii, surject¸ii ¸si numere multinomiale
Am v˘azut c˘ a o partit¸ie este echivalent˘ a cu o plasare surjectiv˘ a de bile distincte ˆın cutii identice (neordonate). In cazul ˆın care cutiile sunt ordonate, partit ¸ia se va numi distribut¸ie. Astfel, a defini o distribut¸ie ˆınseamn˘a a plasa obiecte distincte ˆın cutii distincte, astfel ˆıncˆ at nici o cutie s˘a nu r˘ amˆan˘ a goal˘a, sau, echivalent, a defini o surject¸ie de la mult¸imea bilelor la mult¸imea cutiilor. In exemplul 1.17, pag. 18 avem plasarea cutia 1: 1, 2, 9;
cutia 2: 3, 5, 7, 10;
cutia 3: 4;
cutia 4: 6, 8,
D : X → N dat˘a de
care define¸ste surject¸ia
D
4
x 1 2 3 4 5 6 7 8 9 10 . (x) 1 1 2 3 2 4 2 4 1 2
In concluzie, problema num˘ ar˘arii distribut¸iilor este echivalent˘a cu problema num˘ar˘arii surject¸iilor. In acest moment putem demonstra urm˘ atorul rezultat. 4
James Stirling (1692-1770), matematician scot¸ian.
˘ CAPITOLUL 1. METODE DE NUM ARARE
20
Teorema 1.13 Fie mult ¸ime Y . Atunci
S mult ¸imea surject ¸iilor de la o n-mult ¸ime X la o k (1.14) |S| = k! · S (n, k). Demonstrat¸ie. Fiecare surject¸ie D : X → Y induce o partit¸ie a lui X ˆın k p˘art¸ i. Dac˘ a o asemenea partit¸ie este dat˘ a, exist˘a k! surject¸ ii care o pot genera, ˆıntrucˆat cele k p˘art¸i se pot atribui celor k elemente ale lui Y un orice mod bijectiv. In concluzie, are loc formula (1.14).
Exemplul 1.19 S˘ a se calculeze num˘ arul de moduri ˆın care se pot ˆımp˘ art ¸i c˘ art ¸ile la jocul de Bridge. Re-formulare. Avem 52 obiecte (c˘art¸i de joc) ¸si patru cutii (cei patru juc˘ atori), ¸si trebuie s˘ a distribuim cˆate 13 c˘ art¸i fiec˘arui juc˘ator. In acest joc conteaz˘ a ce c˘art¸i prime¸ste fiecare juc˘ ator. Astfel, nu vom cere determinarea num˘ arului de partit¸ii ale 52-mult¸imii X ˆın patru 13-submult¸imi, ci num˘arul de funct¸ii sur jective de la 52-mult¸imea X la 4-mult¸imea Y = N,E,S,W cu proprietatea c˘a fiecare cutie a lui Y prime¸ste 13 obiecte din X . Mai general, putem cere num˘ arul de surject¸ii de la o n-mult¸ime la o kmult¸ime de cutii y1 , y2 , . . . , yk cu proprietatea c˘ a ≪
{
≫
{
}
}
n1 obiecte sunt introduse ˆın prima cutie y1 , n2 obiecte sunt introduse ˆın a doua cutie y 2 ,
···
nk obiecte sunt introduse ˆın a k-a cutie yk . Acest num˘ ar este notat cu
�
n n1 , n2, . . . , nk
�
(1.15)
ar multinomial . In continuare vom da o formul˘a pentru ¸si este numit num˘ acest num˘ ar. Teorema 1.14 Date fiind numerele ˆıntregi pozitive (> 0) n, n1 , n2 , . . . , nk satisf˘ acˆ and condit ¸ia n1 + n2 + . . . + nk = n, avem
�
n n1 , n2 , . . . , nk
�
=
n! . n1 ! n2 ! . . . nk !
· · ·
(1.16)
Demonstrat¸ie. Mai ˆıntˆai aranj˘am obiectele ˆın X = x1 , x2 , . . . , xn astfel:
{
}
xπ(1), xπ(2), . . . , xπ(n) , unde π este o permutare a lui Nn . Apoi definim o surject¸ie de la X la Y prin introducerea primelor n 1 obiecte din list˘ a ˆın prima cutie (y1 ), a urm˘atoarelor n2 obiecte ˆın a doua cutie (y2), . . . , a ultimelor nk obiecte ˆın ultima cutie (yk ). Se obt¸ine aceea¸si surject¸ie dac˘ a se permut˘ a primele n 1 obiecte ˆıntre ele ˆın orice mod. Acest lucru poate fi f˘ acut ˆın n1 ! moduri. Astfel, din cele n! permut˘ari π, exist˘a n1 ! n2 ! . . . nk ! care vor induce o surject¸ie dat˘ a. In concluzie, num˘ arul de surject¸ii proprietatea specificat˘a este ˆıntr-adev˘ a r cel din formula (1.16).
·
· ·
˘ CAPITOLUL 1. METODE DE NUM ARARE
21
Observat¸ia 1.9 Num˘ arul multinomial (1.15) mai apare ¸si sub terminologia num˘ arul de permut˘ ari cu repetit ¸ii , a n = distincte, unde ni sunt de tipul i, i = 1, 2, . . . , k .
∑ k
ni simboluri de k tipuri
i=1
ane adev˘ arat˘ a ¸si ˆın cazul cˆ and una sau Observat¸ia 1.10 Teorema 1.14 r˘amˆ mai multe din numerele ni sunt zero. In acest caz, simbolul din (1.15) este definit ca ¸si num˘ arul de funct ¸ii de la o n-mult ¸ime la o mult ¸ime de k cutii , cu proprietatea c˘ a ni obiecte sunt plasate ˆın cutia i, pentru i = 1, . . . , k. In acest caz funct ¸iile nu sunt ˆın mod necesar surject ¸ii, ˆıntrucˆ at admitem ca anumit numere ni s˘ a fie zero. Cu convent ¸ia 0! = 1, formula (1.16) r˘ amˆ ane adev˘ arat˘ a. ≪
≫
ate cuvinte de 10 litere se pot forma din literele cuvˆ antului Exemplul 1.20 Cˆ MATEMATICA? Solut ¸ie. Fiecare cuvˆ ant corespunde unei surject¸ii de la mult¸imea x1 , x2 , . . . , x10 la mult¸imea de 6 cutii A,C,E,I,M,T , astfel ˆıncˆ at trei obiecte merg ˆın cutia A, un obiect ˆın cutia C, un obiect un cutia E, un obiect ˆın cutia I, dou˘a obiecte ˆın cutia M ¸si dou˘ a obiecte un cutia T. Num˘arul total de cuvinte va fi ≪
≪
≫
≪
≫
{
≫
≪
�
}
≫
≪
10 3, 1, 1, 1, 2, 2
�
{
≪
≫
≫
=
}
≪
≫
10! = 151200. 3!1!1!1!2!2!
S˘a observ˘am c˘a ˆın cazul particular k = 2 num˘arul multinomial coincide cu num˘arul binomial. Din acest motiv este de a¸steptat s˘ a existe o generalizare a teoremei binomiale (a binomului lui Newton). Aceast˘ a generalizare este cunoscut˘a ca ¸si teorema multinomial˘ a.
Teorema 1.15 (Teorema multinomial˘ a) Fie n, k numere ˆıntregi pozitive (> 0). Atunci n
(x1 + x2 + . . . + xk ) =
��
�
n xn1 1 xn2 2 . . . xnk k , n1 , n2, . . . , nk
(1.17)
unde suma este luat˘ a dup˘ a toate k-uplele de numere ˆıntregi nenegative ( (n1, n2 , . . . , nk ) astfel ˆıncˆ at n1 + n2 + . . . + nk = n.
≥ 0)
Demonstrat¸ie. Atunci cˆand se calculeaz˘ a membrul stˆang, termenul xn1 1 xn2 2 xnk k apare prin alegerea de ni ori a factorului xi , i = 1, 2, . . . , k. Cu alte cuvinte, termenul xn1 1 xn2 2 xnk k corespunde unei funct¸ii de la mult¸imea de n factori (monoame) la mult¸imea x1 , x2 , , xk , cu proprietatea c˘ a c˘a ni factori merg ˆın xi , pentru i = 1, 2, . . . , k. Exist˘a
·· ·
···
{
· ··
�
}
n n1 , n2, . . . , nk
�
asemenea funct¸ii, ¸si prin urmare acesta este num˘ arul de termeni nk n1 n2 x1 x2 xk din produs.
·· ·
˘ CAPITOLUL 1. METODE DE NUM ARARE
1.6.3
22
Partit¸ii ˆıntregi
Definit¸ia 1.8 Fie n N. Suma n = n1 + n2 + . . . + n k , cu ni N, se va numi o k-partit arului n. Num˘ arul de k-partit ¸ii ale lui ¸ie (ˆ ıntreag˘ a) a num˘ n va fi notat cu P (n, k).
∈
∈
¸ie ˆıntreag˘ a a lui n este echivalent cu a Observat¸ia 1.11 A defini o k-partit introduce n bile identice ˆın k cutii identice, astfel ˆıncˆ at nici o cutie s˘a nu r˘ amˆ an˘ a goal˘ a (plasare surjectiv˘ a). Pentru num˘ arul P (n, k) nu exist˘a nici o formul˘a de recurent¸a˘ acceptabil˘ a, similar˘a celei din teorema 1.12 pentru numerele lui Stirling S (n, k), care s˘a ne permit˘ a calculul imediat al numerelor P (n, k). ¸iile lui 8 sunt: Exemplul 1.21 4-partit 5 + 1 + 1 + 1, 4 + 2 + 1 + 1, 3 + 3 + 1 + 1, 3 + 2 + 2 + 1, 2 + 2 + 2 + 2. Se pot considera de asemenea k-partit¸ii ˆıntregi ordonate, dac˘a, de exemplu, se consider˘ a c˘a 3 + 3 + 1 + 1 = 3 + 1 + 3 + 1. Astfel, construct¸ia unei k-partit¸ii ˆıntregi ordonate a lui n este echivalent˘ a cu plasarea a n bile identice ˆın k cutii distincte, astfel ˆıncˆat nici o cutie s˘a nu r˘ amˆan˘a goal˘a. Problema num˘ ar˘arii partit¸iilor ˆıntregi ordonate nu poate fi rezolvat˘ a ˆın mod similar cu cazul partit¸iilor ordonate de mult¸imi, unde s-a ˆınmult¸it num˘arul S (n, k) de partit¸ii neordonate de mult¸imi cu num˘arul k! ˆın care p˘art¸ile se pot permuta ˆıntre ele (a se vedea teorema 1.13). Intr-adev˘ ar, pentru 3 + 1 + 1 nu exist˘ a 6 = 3! partit¸ii ordonate distincte, cu numai trei: 3 + 1 + 1, 1 + 3 + 1, 1 + 1 + 3. Prin urmare, trebuie folosit˘ a o alt˘a abordare.
̸
Teorema 1.16 Num˘ arul k-partit ¸iilor ˆıntregi ordonate ale lui n este
( n−1 k−1
.
Demonstrat¸ie. Observ˘am c˘a fiecare k-partit¸ie ordonat˘ a a lui n este echivalent˘a cu introducerea a n bile identice ˆın k cutii distincte, astfel ˆıncˆat nici o cutie s˘a nu r˘ amˆan˘a goal˘a. Deci, ˆıncepem prin a plasa cˆ ate o bil˘a ˆın fiecare cutie. Astfel, r˘amˆan de plasat arbitrar cele n k bile r˘amase ˆın k cutii. S¸irul de bit¸i asociat (a se vedea sect¸iunea 1.4.5, pag. 15) va cont¸ine n k unit˘a¸t i ¸si k 1 zerouri. Num˘ arul de ¸siruri de bit¸i de lungime n k + k 1 = n 1, cu exact k 1 zerouri, este intr-adev˘ ar n−1 . k−1
−
−
(
−
−
− −
−
Exemplul 1.22 3-partit ¸iile ordonate ale lui 6 sunt: 4 + 1 + 1, 1 + 4 + 1, 1 + 1 + 4, 3 + 2 + 1, 3 + 1 + 2, 2 + 3 + 1, 2 + 1 + 3, 1 + 3 + 2, 1 + 2 + 3, 2 + 2 + 2. Avem ˆıntr-adev˘ ar
1.7
( 5 2
= 10 partit ¸ii ordonate.
Rezolvarea problemelor de num˘ arare folosind relat¸ii de recurent¸˘ a
Exemplul 1.23 (Problema turnurilor din Hanoi) Avem trei suporturi numerotate 1,2,3 ¸si pe unul din suporturi avem a¸sezate n discuri, fiecare mai mic ˆın diametru decˆ at cel situat sub el. O mi¸scare permis˘ a const˘ a ˆın a muta un disc de pe un suport pe altul, astfel ˆıncˆ at un disc s˘ a nu fie a¸sezat peste un disc cu suport mai mic. Cˆ ate mut˘ ari permise sunt necesare pentru a muta cele trei discuri de pe un suport pe altul?
˘ CAPITOLUL 1. METODE DE NUM ARARE
23
Solut ¸ie. Pentru a rezolva problema mut˘ arii tuturor discurilor de pe suportul 1 pe suportul 2, execut˘ am urm˘atoarele: 1. (recursiv) Rezolv˘ am problema mut˘arii a n 1 discuri de pe suportul 1 pe suportul 3; 2. mut˘am discul n pe suportul 2; 3. (recursiv) Rezolv˘ am problema mut˘arii a n 1 discuri de pe suportul 3 pe suportul 2. Fie an num˘arul de mut˘ ari necesare pentru a muta n discuri de pe un suport pe altul. Obt¸inem urm˘atoarea relat¸ie de recurent¸a˘
− −
an = 2an−1 + 1,
a1 = 1.
Avem, a2 = 3, a3 = 7, deci se poate ghici cu u¸surint¸a˘ c˘a an = 2n 1, fapt care se poate demonstra imediat prin induct¸ie. Ce se ˆıntˆampl˘a ˆıns˘a dac˘ a se obt¸ine o relat¸ie de recurent¸a˘ unde este imposibil s˘a ghicim termenul general? Pentru aceste situat¸ii avem nevoie de teorii mai sofisticate.
−
1.8
Relat¸ii de recurent¸˘ a ¸si funct¸ii generatoare
1.8.1
Recurent ¸e liniare
Fie k
∈ N. Un tip simplu de recurent¸a˘ este un+k = α 1un+k−1 + α2 un+k−2 + . . . + αk un , n
≥ 0.
(1.18)
cu αi , i = 1, 2, . . . , k, numere reale date astfel ˆıncˆ at αk = 0. Aceasta este a liniar˘ a de ordin k ¸si o formul˘a explicit˘a pentru termenul numit˘ a recurent¸˘ general un se poate g˘ a si ori de cˆ ate ori u0 , u1 , . . . , uk−1 sunt dat¸i. Pentru a dovedi acest lucru e nevoie s˘ a demonstr˘ am mai ˆıntˆai urm˘atoarea lem˘ a.
̸
¸imea de ¸siruri care satisfac relat ¸ia de recurent ¸˘ a (1.18) este Lema 1.17 Mult un spat ¸iu vectorial de dimensiune k.
Demonstrat¸ie. Dac˘a (an )n ¸si (bn )n satisfac (1.18), atunci un calcul simplu arat˘ a c˘a α (an)n ¸si (an + b n )n satisfac (1.18), deci avem un spat¸iu liniar. Pentru a g˘ asi dimensiunea lui, e nevoie s˘a g˘asim o baz˘a format˘a din k ¸siruri. Ideea este s˘ a asociem ecuat ¸ia caracteristic˘ a R(x) = 0, unde
·
R(x) = x k
k−1
− α x − ... − α 1
k−1 x
−α . k
(1.19)
Sunt posibile urm˘ atoarele situat¸ii privind r˘ad˘acinile lui R:
1. Dac˘a r 1 este o r˘ad˘acin˘a a lui R, atunci ¸sirul (un )n, unde u n = r 1n , satisface (1.18). Intr-adev˘ ar, avem r1k = α1 r1k−1 + . . . + α k−1 r1 + α k ¸si, dup˘a ˆınmult¸irea acestei egalit˘ a¸t i cu r 1n , rezult˘a concluzia. 2. Dac˘a r1 este o r˘ad˘acin˘a dubl˘a nenul˘a a lui R, atunci ¸sirul (bn )n , unde bn = n r1n , satisface (1.18). Intr-adev˘ ar, din R(r1 ) = R ′ (r1 ) = 0 obt¸inem k r1n+k = α1(k 1)r1n+k−1 + . . . + αk−1r1n+1 , r1n+k = α1r1n+k−1 + . . . + αk−1 r1n+1 + αk r1n .
−
Dac˘a se ˆınmult¸e¸ste a doua egalitate cu n ¸si se adun˘a aceste dou˘ a egalit˘a¸t i, se obt¸ine concluzia.
˘ CAPITOLUL 1. METODE DE NUM ARARE
24
3. Dac˘a r 1 este o r˘ ad˘acin˘a cu multiplicitatea p pentru R, atunci ¸sirurile (un )n cu un r1n , n r1n , n2 r1n, . . . , n p−1 r1n
∈ {
}
sunt solut¸ii pentru (1.18). Pentru a ar˘ ata acest lucru se folosesc acelea¸si argumente ca ¸si ˆın cazul anterior.
4. Dac˘a r 1,2 = α scrie
± iβ = e
a±b i
sunt r˘ad˘acini complexe ale lui R, atunci putem
r1 = e a ebi = e a (cos b + i sin b), n ¸si prin urmare r1,2 = ean (cos b n ¸si (dn)n, date de
± i sin b n). In acest caz ¸sirurile (c )
n n
1 n (r1 + r2n ) = e a n cos b n, 2 1 n (r1 r2n) = e a n sin b n, dn = 2 sunt solut¸ii reale pentru (1.18). cn =
−
5. Dac˘a r1,2 = α βb i sunt r˘ad˘acini complexe pentru R cu multiplicitatea p, atunci ˆın acela¸si mod putem ar˘ ata c˘ a
±
cn , dn , n cn , n dn , n2 cn , n2 dn, . . . , n p−1 cn , n p−1 dn satisfac relat¸ia de recurent¸a˘ (1.18). In concluzie, celor k r˘ad˘acini ale lui R li se pot asocia solut¸ii liniar independente ale recurent¸ei. Solut¸ia general˘ a (Y n )n a recurent¸ ei (1.18) va fi o combinat¸ie liniar˘a a acestor solut¸ii. Coeficient¸ii combinat¸iei liniare vor fi determinat¸i ˆın mod unic din condit¸ile init¸iale Y 0 = u0 , . . . , Yk−1 = uk−1 . De exemplu, ˆın cazul cˆ and R sunt r˘ad˘acini reale ¸si distincte, solut¸ia general˘a este (Y n)n , cu Y n = β 1 r1n + β 2 r2n + . . . + β k rkn . Constantele reale β i vor fi determinate ˆın mod unic din condit¸iile Y i = u i , i = 1, . . . , k, care se pot scrie astfel: β 1 + β 2 + . . . + β k = u 0 , β 1 r1 + β 2 r2 + . . . + β k rk = u 1, .. . ≪
≫
β 1 r1n−1 + β 2 r2n−1 + . . . + β k rkn−1 = u k−1 . Necunoscutele β 1 , . . . , βk sunt unic determinate deoarece determinantul sistemului este nenul (fiind un determinant Vandermonde asociat r˘ ad˘acinilor distincte r i ). Se poate demonstra c˘ a acest determinant este nenul ¸si ˆın restul cazurilor.
1.8.2
Funct ¸ii generatoare
A¸sa cum s-a v˘azut deja ˆın exemplul 1.23, solut¸ia unei probleme de num˘ arare (¸si nu numai) poate fi exprimat˘ a ca ¸si un ¸sir (un )n . In asemenea cazuri, un mod uzual de a rezolva acest tip de probleme se bazeaz˘ a pe reprezentarea lui (un )n ca ¸si o serie de puteri ∞
gu (x) =
� n=0
un xn .
(1.20)
˘ CAPITOLUL 1. METODE DE NUM ARARE
25
In aceast˘ a situat¸ie, gu se folose¸ste sub denumirea de funct¸ie generatoare 5 pentru ¸sirul (un )n . (Este desigur necesar ca seria s˘ a convearg˘ a dac˘ a gu este definit˘a ca ¸si funct¸ie de x. Dac˘a gu este privit˘a ca ¸si un element al unui inel de polinoame, o asemenea convergent¸a˘ nu este necesar˘ a ). In unele cazuri e posibil ca seria (1.20) s˘a se reduc˘ a la sum˘a finit˘a, ¸si atunci gu este un polinom.
Exemplul 1.24 Fie m N fixat ¸si fie u n num˘ arul de n-submult ¸imi ale unei m-mult ¸imi. Se ¸stie (a se vedea sect ¸iunea 1.4.4, pag. 14) c˘ a
∈
un =
��
m , n
de unde funct ¸ia generatoare va fi
�� � m
gu (x) =
n=0
m n x = (1 + x)m . n
In cazul cˆand formula de recurent¸a˘ este dat˘ a pentru (un)n , funct¸ia generatoare poate fi util˘ a pentru determinarea unei expresii generale pentru un . Metoda are trei pa¸si: (i) din relat¸ia de recurent¸a˘ deducem o ecuat¸ie pentru g u (x), (ii) se rezolv˘a ecuat¸ia pentru g u (x), (iii) se g˘ase¸ste o formul˘ a pentru coeficient¸ii un ai lui gu(x) (prin descompunere ˆın fract¸ii simple sau prin teorema binomial˘a) ˆın felul urm˘ator: Dac˘ a se pot determina gu ¸si seria sa de puteri, pentru a g˘asi un vom identifica coeficient¸ii seriei de puteri.
Observat¸ia 1.12 Pentru recurent ¸a liniar˘ a ¸si omogen˘ a studiat˘ a ˆın paragraful precedent, se pot utiliza de asemenea funct ¸ii generatoare, dar aceast˘ a metod˘ a necesit˘ a mai multe calcule decˆ at folosirea polinomului caracteristic.
1.8.3
Recurent ¸e liniare neomogene
In unele cazuri metoda funct¸ilor generatoare poate fi folosit˘ a pentru rezolvarea recurent¸elor liniare ¸si neomogene. O asemenea recurent¸˘ a este un+2 = au n+1 + bun + f (n),
u0 , u1 dat¸i.
(1.21)
Aplicabilitatea metodei depinde de forma particular˘ a a funct¸iei f . Fie ∞
gu (x) =
�
un xn .
n=0
Dac˘a se ˆınmult¸e¸ste aceast˘ a identitate cu (a + bx) se obt¸ine (a + bx)gu (x) = au0 + (au1 + bu0 )x + (au2 + bu1 )x2 + . . . +(aun + bun−1)xn + . . . 5
Funct¸ile generatoare au fost introduse de c˘atre De Moivre ¸si Euler la ˆınceputul secolului XVIII.
˘ CAPITOLUL 1. METODE DE NUM ARARE
26
Din (1.21) deducem c˘a au1 + bu0 = u2 f (0), au2 + bu1 = u3 f (1), .. . aun + bun−1 = un+1 f (n
− −
−
− 1).
Inlocuind aceast˘ a expresie se obt¸ine, dup˘a gruparea termenilor ¸si dup˘a ˆınmult¸irea egalit˘a¸t ii cu x, ∞
x(a + bx)gu (x) = au 0x +
�
∞
un+1 x
n+1
n=1
� −
f (n
n=1
− 1)x
n+1
.
(1.22)
In acest moment e nevoie s˘a determin˘ am suma seriei de puteri ∞
�
f (n
n=1
− 1)x
n+1
= h(x).
Dac˘a nu putem g˘ asi aceast˘ a sum˘a h, metoda e¸sueaz˘a. Presupunem c˘ a am g˘asit h. Ne concentr˘ am pe (1.22) ¸si ˆınlocuim prima sum˘a din membrul drept cu gu (x) u0 u1x. Astfel, (1.22) devine
− − −u + (au − u )x − h(x) . g (x) = bx + ax − 1 0
u
0
1
2
(1.23)
Dezvoltˆand aceast˘a funct¸ie ˆın serie de puteri ¸si identificˆand coeficientul lui xn , vom obt¸ine o expresie general˘ a pentru un.
Exemplul 1.25 S˘ a se g˘ aseasc˘ a termenul general un al recurent ¸ei un+2 =
−u
n+1 + 2un +
n, cu u0 =
−2, u = 1. 1
Solut ¸ie. Din calculele de mai sus, efectuate pentru cazul general, g˘ asim ∞
h(x) =
�
∞
(n
n=1
− 1)x
n+1
= x
3
�
(n
n=2
n−2
− 1)x
x3 = , (1 x)2
−
Apoi, din (1.23),
−2 + 3x = A + B + C + D , (1 − x) (2x + 1) (1 − x) (1 − x) 1 − x 2x + 1 , B = − , C = − , D = − . Mai departe, scriem
gu (x) = cu A =
1 3
3
3
7 9
14 27
1 1
−x
1 (1
−
x)2
1 (1
−
x)3
2
28 27
∞
=
� |· � � �− xn
C
n=0 ∞
=
(n + 1)xn
n=0 ∞
=
1 = 2x + 1
| ·B
(n + 1)(n + 2)xn
n=0 ∞
( 1)n (2x)n
n=0
|·D
|·A
˘ CAPITOLUL 1. METODE DE NUM ARARE
27
Identificˆ and coeficientul lui xn se obt¸ine A (n + 1)(n + 2) + B(n + 1) + C + D( 1)n 2n 2 1 = 9n2 15n 52 7( 1)n 2n+3 . 54
un =
(
−
− − −
−
¸a liniar˘ a ¸si neomoObservat¸ia 1.13 Intr-un caz mai general, cˆand recurent gen˘ a este un+k = a 1 un+k−1 + a2 un+k−2 + . . . + ak un + g(n), cu u0, u1, . . . , uk−1 dat ¸i, ˆıncepem cu calculul lui (1 + a1 x + a2 x2 + . . . + ak xk−1 )gu (x) ¸si sper˘ am din nou c˘ a termenii care cont ¸in g(n) pot fi manipulat ¸i ˆın mod convenabil.
1.8.4
Recurent ¸a lui Catalan
Dac˘a vrem s˘a calcul˘am num˘arul u n de arbori binari cu n vˆarfuri (a se vedea paragraful 3.4.1), ajungem la urm˘ atoarea relat¸ie de recurent¸a˘ cunoscut˘ a sub 6 numele de recurent¸a lui Catalan . un+1 = u 0 un + u1 un−1 + . . . + uk un−k + . . . + un u0 .
ar al lui Catalan . cu u0 = u 1 = 1. Num˘arul un se nume¸ste al n-lea num˘ S˘a observ˘ ama c˘a num˘arul de termeni din aceast˘a recurent¸a˘ nu este constant, ca ¸si ˆın cazurile precedente. Consider˘am funct¸ia generatoare ∞
gu (x) =
�
un xn .
n=0
Avem gu2 (x) = = + =
(u0 + u1 x + u2 x2 + . . .)(u0 + u1 x + u2 x2 + . . .) u0 + 2u0 u1x + (u0 u2 + u21 + u2u0 )x2 + . . . (u0 un + u1un−1 + . . . + unu0 )xn + . . . u0 + u2 x + u3 x2 + . . . + un+1 xn + . . . ,
de unde deducem c˘ a
∞
xgu2 (x)
= x +
�
un xn ,
n=2
¸si mai departe xgu2 (x)
− g (x) + 1 = 0. u
Rezolvˆand aceast˘a ecuat¸ie obt¸inem gu1 (x) = 6
1+
√ 1 − 4x 2x
,
gu2 (x) =
1
− √ 1 − 4x . 2x
Eug` ene Charles Catalan (1814-1894), matematician belgian.
˘ CAPITOLUL 1. METODE DE NUM ARARE
28
Deoarece gu (0) = u 0 = 1, singura solut¸ie va fi gu (x) =
1
− √ 1 − 4x . 2x
Dezvolt˘am acum funct¸ia gu folosind formula (1
α
− y)
= 1+
α α(α 1) 2 α(α y + y + . . . + 1! 2!
−
− 1) . . . (α − n + 1) y n!
n
+ ...
pentru α = 1/2 ¸si y = 4x. Coeficientul lui xn va fi
−
��
1 3 . . . (2n 1) n+1 1 2n un = 4 = . 2n+2 (n + 1)! n+1 n
· · ·
1.8.5
−
Cˆ ateva propriet˘ at¸i ale funct¸iilor generatoare
a un se poate scrie ca ¸si o convolut¸ie de Teorema 1.18 (Convolut¸ia) Dac˘ ¸siruri (an)n ¸si (bn)n, adic˘ a n
un =
�
ak bn−k ,
k=0
atunci gu (x) = g a (x)gb (x).
Demonstrat¸ie. Dac˘a evalu˘am ga gb , ga (x)gb (x) = (a0 + a1 x + . . . + anxn + . . .)(b0 + b1 x + . . . + bn xn + . . .), coeficientul lui xn va fi ˆıntr-adev˘ ar n
a0 bn + a1 bn−1 + . . . + anb0 =
�
ak bn−k .
k=0
Teorema 1.19 Dac˘ a
n
bn =
�
ak ,
k=0
atunci
gb (x) =
ga (x) . 1 x
−
a obt¸inem Demonstrat¸ie. Folosind seria geometric˘ ga (x) = (a0 + a1 x + . . . + an xn + . . .)(1 + x + x2 + . . . + xn + . . .) 1 x = a0 + (a0 + a1 )x + (a0 + a1 + a2 )x2 + . . . + (a0 + a1 + . . . + an)xn + . . .
−
deci coeficientul lui xn va fi ˆıntr-adev˘ ar bn =
∑ n
k=0
ak .
˘ CAPITOLUL 1. METODE DE NUM ARARE
Teorema 1.20 Dac˘ a
∞
�
an+k ,
gb (x) =
ga (1) 1
bn =
n
≥ 0,
k=1
atunci
Demonstrat¸ie. Fie ha (x) = g a (1)
∑ ∞
29
cn xn , cu
− g (x) . −x a
− g (x). Seria sa de puteri se poate scrie a
n=0
c0 = g(1) a0 = a 1 + a2 + . . . , cn = an , pentru n 1.
−
−
≥
Conform teoremei 1.19 avem ha (x) = 1 x
−
∞
�
n
n
bnx , cu bn =
n=0
�
n
ck = c 0 +
k=0
∞
�− � ( ak ) =
k=1
an+k .
k=1
1.9
Probleme rezolvate
Problema 1.1 (Bile identice ˆın cutii distincte cu un num˘ ar arbiarul de moduri ˆın care k bile identice pot fi trar de bile ˆın cutii) Num˘ introduse ˆın n cutii distincte, cu un num˘ ar arbitrar de bile ˆın fiecare cutie n+k−1 este . k
(
Solut ¸ie. Num˘arul cerut poate fi g˘ asit prin aplicarea direct˘ a a teoremei 1.10, pag. 15. arul de solut ¸ii ˆıntregi nenegative ale ecuat ¸iei Problema 1.2 Care este num˘ x1 + x2 + . . . + x6 = 10? Solut ¸ie. A se vedea exempul 1.14, pag. 16 sau problema 1.1. Num˘arul cerut va fi din nou 15 . 5
(
Problema 1.3 (Bile identice ˆın cutii distincte cu nici o cutie goal˘ a) Num˘ arul de moduri ˆın care k bile identice pot fi introduse ˆın n cutii distincte, k−1 cu un num˘ ar arbitrar de bile ˆın fiecare cutie ¸si nici o cutie goal˘ a, este n−1 .
(
Solut ¸ie. Folosim ideea din demonstrat¸ia teoremei 1.10, pag. 15. Introducem o bil˘a ˆın fiecare cutie, ˆıntrucˆ at nu admitem cutii goale. Astfel, r˘amˆ ane s˘a introducem cele k n bile r˘amase ˆın n cutii, ˆın acela¸si mod ˆın care s-a f˘ acut ˆın problema precedent˘ a. Acest num˘ar este prin urmare
−
�− n
1 + k n 1
−
� �−�
−n
=
k n
−
1 . 1
Problema 1.4 Care este num˘ arul de solut ¸ii ˆıntregi pozitive (> 0) ale ecuat ¸iei x1 + x2 + . . . + x6 = 10?
˘ CAPITOLUL 1. METODE DE NUM ARARE
30
Solut ¸ie. Conform problemei 1.3, num˘ arul cerut este
( 9 5
.
Problema 1.5 Care este num˘ arul de solut ¸ii ˆıntregi nenegative ale ecuat ¸iei x1 + x2 + x3 + x4 + x5 = 36, unde x1
≥ 4, x ≥ 7. 4
Solut ¸ie. Problema poate fi reformulat˘ a astfel: Care este num˘ arul de moduri ˆın care 36 bile identice pot fi introduse ˆın 5 cutii distincte, cu cel put ¸in 4 bile ˆın prima cutie ¸si cel put¸in 7 bile ˆın a patra cutie? Incepem prin a introduce 4 bile ˆın prima cutie ¸si 7 bile ˆın cutia a patra. R˘amˆan 25 bile care trebuie introduse arbitrar ˆın 5 cutii, ¸si acest lucru se poate face ˆın 29 moduri (a se vedea problema 1.1). 4
(
Problema 1.6 (Problema deranjamentelor) O secretar˘ a ineficient˘a trebuie s˘ a introduc˘ a n scrisori ˆın n plicuri adresate. In cˆ ate moduri poate realiza faptul de a introduce fiecare scrisoare ˆıntr-un plic gre¸sit? Solut ¸ie. Trebuie s˘ a calcul˘am num˘ arul de deranjamente ale permut˘ a rii Πn (definit¸ia 1.5, pag. 14). Fie π : Nn Nn permutarea definint˘ a prin
→
π(i) = j, dac˘a scrisoarea i este introdus˘a ˆın plicul j. Conform corolarului 1.3, pag. 9, num˘arul de deranjamente va fi dn = n!
n
− α + α − α · ·· + (−1) α , 1
2
3
n
unde αk este num˘ arul de permut˘ ari care fixeaz˘ a k pozit¸ii. Spunem c˘a o permutare π fixeaz˘ a pozit¸ia j dac˘a π( j) = j . Putem alege k pozit¸ii ˆın nk moduri. Pentru fiecare fixare a k pozit¸ii, exist˘a (n k)! permut˘ ari ale pozit¸iilor r˘amase, prin urmare
( ��
−
αk = Astfel
�−
dn = n! 1
n (n k
1 1 + 1! 2!
−
− k)! = n!k! . 1 1 + . . . + ( 1)n 3! n!
−
�
.
Problema 1.7 (Poker) In jocul de poker exist˘ a 52 c˘ art ¸i de joc ¸si un juc˘ ator prime¸ste 5 c˘ art ¸i. S˘ a se g˘ aseasc˘ a num˘ arul de cazuri posibile pentru fiecare din urm˘ atoarele mˆ aini: a. Chint˘ a regal˘ a (A, K, Q, J, 10 de aceea¸si culoare); b. Chint˘ a de culoare (5 c˘ art ¸i consecutive de aceea¸si culoare, dar nu chint˘ a regal˘ a); c. Careu (oricare patru c˘ art ¸i de acela¸si rang ¸si a cincea carte arbitrar˘ a); d. Full house (3 c˘ art ¸i de acela¸si rang ¸si ˆınc˘ a o pereche de alt rang); e. Culoare (oricare 5 c˘ art ¸i de aceea¸si culoare, dar nu chint˘ a regal˘ a sau chint˘a de culoare); f. Chint˘ a (oricare 5 c˘ art ¸i consecutive, dar nu toate de aceea¸si culoare); g. Trei de acel¸si fel (3 c˘ art ¸i de acela¸si rang ¸si 2 c˘ art ¸i de 2 ranguri diferite); h. Dou˘ a perechi (cˆ ate 2 c˘ art ¸i de 2 ranguri diferite ¸si a cincea carte de alt rang); i. O pereche (2 c˘ art ¸i de un rang, plus 3 c˘ art ¸i de 3 alte ranguri diferite).
˘ CAPITOLUL 1. METODE DE NUM ARARE
31
Solut ¸ie. a. 4 (exist˘a 4 alegeri pentru o culoare ( , , , ) ¸si cˆate o chint˘ a regal˘a pentru fiecare culoare). b. 4 9 = 36 (4 alegeri pentru o culoare, pentru fiecare culoare 9 moduri de a obt¸ine 5 c˘art¸iˆın ordine: (A, 2, 3, 4, 5), (2, 3, 4, 5, 6), (3, 4, 5, 6, 7), . . . , (9, 10,J,Q,K )). c. 13 48 = 624 (13 alegeri pentru un rang, un mod de a selecta 4 c˘ art¸i din acest rang, 48 moduri de a selecta a cincea carte). d. 13 43 12 42 = 3744 (13 moduri de a selecta un rang pentru cele 3 c˘art¸i, 43 moduri de a alege 3 c˘art¸i din acest rang, 12 moduri de a selecta un rang pentru pereche ¸si 42 moduri de a obt¸ine o pereche din acest rang). e. 4 13 40 = 5108 (4 moduri de a selecta o culoare, 13 moduri de a 5 5 alege 5 c˘art¸i dintr-o culoare; sc˘adem chinta regal˘ a ¸si chinta de culoare). 5 f. 10 4 40 = 10200 (10 moduri de a alege 5 ranguri consecutive ¸si 4 moduri de a alege o carte din fiecare rang; sc˘ adem chinta regal˘ a ¸si chinta de culoare). g. 13 43 12 42 = 54912 (13 moduri de a selecta un rang, 43 moduri de 2 a alege 3 c˘ art¸i dintr-un rang, 12 moduri de a alege celelalte ranguri ¸si 42 2 moduri de a alege o carte din fiecare din aceste 2 ranguri). 4 4 h. 13 44 = 123 552 ( 13 moduri de a selecta 2 ranguri, 42 moduri 2 2 2 2 de a alege 2 c˘ art¸i din fiecare din aceste ranguri, 44 moduri de a alege a cincea carte). i. 13 42 12 43 = 1 098 240 (13 moduri de a alege un rang, 42 moduri de 3 a alege 2 c˘ art¸i din acest rang, 12 moduri de a alege cˆ ate o carte din fiecare 3 din aceste ranguri). S˘a ment¸ion˘ a m c˘a exist˘a 52 = 2 598 960 moduri de a alege 5 c˘ art¸i. 5 Num˘arul de mˆaini care nu apart¸in nici uneia din situat¸iile ment¸ionate anterior va fi 1 302 540, care este put ¸in mai mare decˆ at 52 /2 = 1 299 480. 5
♣♦♥♠
·
· ·
(( · · ( ( ( −
(
· −
( ( · ( ( ( · ( ( ·
( ( ( (
(
(
(
(
Capitolul 2 Probabilit˘ a¸t i discrete 2.1
Evenimente aleatoare
Multe procese din natur˘ a, societate, economie, medicin˘ a etc. depind de ¸sans˘ a, adic˘a rezultatul unui proces nu poate fi prevazut cu exactitate. Cursul de schimb valutar dintr-o anumit˘ a zi din viitor, presiunea arterial˘a a unei persoane la un moment dat, sunt doar dou˘ a exemple. Asemenea evenimente aleatoare nu pot fi prev˘ azute cu exactitate, dar frecvent¸a relativ˘a cu care apar ˆıntr-o serie lung˘a de repet˘ ari ale experimentului este de obicei stabil˘a. Evenimentele care au aceast˘ a proprietate se numesc evenimente aleatoare sau a modele matematice pentru stochastice . Teoria probabilit˘a¸t ilor ne furnizeaz˘ asemenea fenomene aleatoare. Un experiment aleator este un proces ˆın care mai multe rezultate sunt posibile, astfel c˘a nu putem spune dinainte care va fi rezultatul experimentului. Spunem c˘a dou˘ a rezultate sunt incompatibile dac˘a ele nu pot avea loc simultan. Posibilele rezultate dou˘a cˆ ate dou˘ a incompatibile ale unui experiment se numesc evenimentele elementare ale experimentului. Mult¸imea evenimentelor elementare este notat˘ a cu E ¸si este numit˘ a spat¸iu de select¸ie. De exemplu, ˆın experimentul arunc˘ arii unui zar o singur˘a dat˘ a, evenimentele elementare sunt e1 , e2 , . . . , e6 , unde ei este evenimentul apare fat¸a i . Deci, spat¸iul de select¸ie va fi E = e1 , e2, e3 , e4 , e5 , e6 . Dac˘a se consider˘ a experimentul test˘ arii duratei de funct¸ionare a unui bec, exist˘ a o infinitate de evenimente elementare ex , x [0, ), ex fiind evenimentul durata de funct ¸ionare este x minute . Intrucˆ at acest material este dedicat matematicilor discrete , vom considera ˆın continuare doar experimente cu un num˘ ar finit sau num˘ arabil de rezultate. Pe lˆang˘a evenimentele elementare, suntem desigur interesat ¸i de evenimente mai complexe, de exemplu, atunci cˆand este aruncat un zar, aparit¸ia unui num˘ar par. Fie un experiment dat ¸si fie E mult¸imea evenimentelor sale elementare. Orice submult¸ime a lui E este numit˘ a eveniment. Un eveniment A are loc dac˘ a ¸si numai dac˘a unul din evenimentele elementare care intr˘ a ˆın component¸a lui A are loc. De exemplu, ˆın experimentul arunc˘ arii unui zar, mult¸imea A = e2 , e4 , e6 poate fi interpretat˘ a ca fiind evenimentul apare un num˘ ar par . Intr-adev˘ar, acest eveniment are loc ˆın aruncarea unui zar dac˘ a ¸si numai dac˘a unul din evenimentele elementare cont¸inute ˆın A are loc. Deoarece E E ¸si E , E ¸si pot de asemenea fi privite ca ¸si evenimente, conform definit¸iei unui eveniment. Intrucˆ at mult¸imea E este ≪
{
≫
≪
≫
⊆
{
}
∈ ∞
}
∅⊆
∅
32
≫
≪
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
33
alc˘atuit˘ a din toate evenimentele elementare ¸si ˆın orice experiment are loc exact un eveniment elementar, E are loc ˆıntotdeauna. De aceea E va fi numit evenimentul sigur. Pe de alt˘ a parte, nu cont¸ine nici un eveniment elementar, prin urmare nu are loc niciodat˘ a . Prin urmare el va fi numit evenimentul imposibil. Fie A1 , A2 , . . . , An E evenimente. Atunci:
∅
⊆
1. A1 . . . An este un eveniment numit suma sau reuniunea evenimentelor A i , care are loc exact atunci cˆ and cel put¸in unul din evenimentele A1 , . . . , An are loc.
∪ ∪
2. A1 . . . An este un eveniment numit produsul sau intersect¸ia evenimentelor Ai , care are loc dac˘ a ¸si numai dac˘a A1, . . . , An au loc simultan.
∩ ∩
Evenimentele A1 , A2 E se numesc incompatibile dac˘a A1 A2 = (A1 ¸si A2 nu pot avea loc simultan). Deoarece A = E A E , A este de asemenea un eveniment. El are loc exact atunci cˆ and A nu are loc. Evenimentul A va fi numit evenimentul complementar lui A. In final s˘a ment¸ion˘ a m c˘a toate propriet˘ a¸t ile operat¸iilor , ¸si complementaritate valabile pentru mult¸imi vor fi de asemenea valabile pentru evenimente.
⊆ \ ⊆
∩
∅
∪ ∩
2.2
Axiomele teoriei probabilit˘ a¸tilor
¸iu de select ¸ie asociat unui Definit¸ia 2.1 (Kolmogorov) 1 Fie E un spat experiment aleator ¸si fie (E ) = A, A E . O m˘ asur˘ a de probabilitate pe E este o funct ¸ie P : (E ) [0, 1] care satisface urm˘ atoarele condit ¸ii (axiome):
P P
{ →
⊆ }
1. P (E ) = 1, 2. P
�∪ � ∑ ∞
Ak
∞
P (Ak ) dac˘ a Ak sunt evenimente dou˘ a cˆ ate dou˘ a dis-
=
k=1
k=1
juncte (incompatibile).
Consecint¸e Fie E un spat¸iu de select¸ie asociat unui experiment aleator ¸si fie A, B evenimente. Au loc urm˘atoarele propriet˘ a¸t i:
⊆ E
1. P ( ) = 0.
∅
�∪ � ∑ n
2. P
n
Ai
=
k=1
P (Ak ) dac˘ a Ak , k = 1, . . . , n , sunt evenimente dou˘a
k=1
cˆate dou˘ a incompatibile. 3. P (A) = 1
− P (A),
4. P (B A) = P (B) P (A B). Dac˘a A B, atunci P (B A) = P (B)
\
−
∩
\ − P (A). 5. P (A ∪ B) = P (A) + P (B) − P (A ∩ B). 6. Dac˘a A ⊆ B, atunci P (A) ≤ P (B). 1
⊆
Andrey Nikolaevich Kolmogorov (1903–1987), matematician rus.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
34
7. Dac˘a Ai , i = 1, . . . , n , sunt evenimente arbitrare, atunci
�� � � − � ∩ � ∩ ∩ − · · · − − n
P
n
Ai
P (Ai )
=
i=1
i=1
P (Ai
P (Ai
A j )+
1≤i
A j
( 1)n P (A1
Ak )
1≤i
8. P (A 9. P
∩ . . . ∩ A ). n
∪ B) ≤ P (A) + P (B). A ≤ P (A ).
�∪ � ∑ ∞
∞
i
k=1
k
k=1
Demonstrat¸ie.
1. Luˆand ˆın condit¸ia 2. A1 = E, Ak = , pentru k > 1, obt¸inem
∅
∞
P (E ) = P (E ) +
� i=2
P ( ), deci P ( ) = 0.
∅
∅
2. Lu˘am ˆın condit¸ia 2. Ak = , pentru k > n.
∅
∪ A) = P (A) + P (A). 4. Scriem B = (A ∩ B) ∪ (B \ A). Deoarece A ∩ B ¸si B \ A sunt disjuncte, avem P (B) = P (A ∩ B) + P (B \ A), de unde concluzia. 5. Scriem A ∪ B = A ∪ (B \ A), deci P (A ∪ B) = P (A)+P (B \ A). Inlocuind P (B \ A) din proprietatea precedent˘ a, obt¸inem concluzia. 6. Folosind proprietatea 4 pentru cazul A ⊆ B, obt¸inem 0 ≤ P (B \ A) = P (B) − P (A), de unde inegalitatea cerut˘ a. 3. Avem 1 = P (E ) = P (A
7. Aceast˘a proprietate poate fi demonstrat˘ a prin induct¸ie dup˘ a n.
Observat¸ia 2.1 Definit ¸ia 2.1 a fost dat˘a de Kolmogorov ¸si ne vom referi la 1. ¸si 2. ca ¸si la axiomele lui Kolmogorov. Exist˘ a ¸si alte definit ¸ii ale probabilit˘ at ¸ii, folosind unele din propriet˘ at ¸ile 1.-9., caz ˆın care axiomele lui Kolmogorov apar ca ¸si consecint ¸e. a natura unui experiment este astfel ˆıncˆ at acesta are Propozit¸ia 2.1 Dac˘ doar un num˘ ar finit de evenimente elementare, ¸si dac˘ a ele sunt egal probabile, atunci din axiomele lui Kolmogorov rezult˘ a c˘ a probabilitatea unui eveniment A este P (A) =
num˘ arul de evenimente elementare favorabile lui A . num˘ arul tuturor evenimentelor elementare
(2.1)
Formula (2.1) a fost folosit˘a de Laplace2 pentru a defini probabilitatea. Demonstrat¸ie. Vom ar˘ata c˘a o probabilitate definit˘a prin axiomele lui Kolmogorov satisface (2.1). 2
Pierre-Simon, Marquis de Laplace (1749-1827), matematician ¸si astronom francez.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
35
Pentru ˆınceput consider˘ am spat¸iul de select¸ie E = e1, . . . , en cu e i evenimente elementare egal probabile. Atunci
{
}
n
1 = P (E ) = P (e1
∪ ... ∪ e ) = n
de unde
�
P (ei ) = nP (e j ),
(2.2)
i=1
1 pentru orice j Nn . n In a treia egalitate din (2.2) am folosit faptul c˘ a evenimentele elementare sunt incompatibile. Mai departe, fie A E , A = e 1 e2 . . . ek . Probabilitatea lui A va fi P (e j ) =
∈
⊆
∪ ∪ ∪
k
P (A) = P (e1
∪ e ∪ ... ∪ e ) = 2
k
�
P (e j ) = k
j=1
· n1 = nk .
Intr-adev˘ ar, k este num˘ arul de evenimente elementare favorabile lui A ¸si n este num˘ arul total de evenimente elementare. In concluzie, (2.1) este demon strat˘a.
Exemplul 2.1 Dou˘ a zaruri sunt aruncate simultan ¸si exist˘ a un premiu atunci cˆ and suma fet ¸elor este 10. Care este probabilitatea de a cˆ a¸stiga premiul?
≥
Solution. Spat¸iul de select¸ie asociat experimentului va fi E = e11 , e12 , . . . , e16, e21 , e22 , . . . , e26 , . . . , e61 , e62 , . . . , e66 ,
{
}
ˆın timp ce evenimentul A de a avea suma fet¸elor A = e46 , e55 , e56 , e64 , e65
{
Astfel, P (A) =
2.3
≥ 10 poate fi scris ca ¸si , e }. 66
|A| = 6 = 1 . |E | 36 6
Probabilit˘ a¸t i condit¸ionate ¸si evenimente aleatoare independente
Probabilitatea unui eveniment aleator A este alterat˘ a, ˆın general, cˆand se cunoa¸ste faptul c˘ a un alt eveniment aleator B cu P (B) = 0 a avut loc. Probabilitatea evenimentului A, cu condit¸ia c˘a B (cu P (B) = 0) a avut loc deja, este notat˘a cu P (A B) ¸si este numit˘a probabilitatea evenimentului a de evenimentul B. A condit¸ionat˘
̸ ̸
|
a avem dou˘ a urne, U 1 cont ¸inˆ and 5 albe ¸si 5 Exemplul 2.2 Presupunem c˘ bile negre ¸si U 2 cont ¸inˆ and o bil˘ a alb˘ a ¸si 9 bile negre. Realiz˘ am experimentul de a alege la ˆıntˆ amplare una din urne ¸si de a scoate, la ˆıntˆ amplare, o bil˘ a din aceast˘ a urn˘a. Apoi consider˘ am urm˘ atoarele evenimente: B : Ai :
≪
≪
bila extras˘ a este alb˘ a , bila a fost extras˘ a din urna i , i = 1, 2. ≫
≫
Atunci P (B A1 ) =
|
5 1 = , 10 2
P (B A2 ) =
|
1 . 10
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
36
In general, probabilit˘a¸tile condit¸ionate sunt definite prin relat¸iile P (A B) , dac˘a P (B) = 0, P (B) P (A B) P (B A) = , dac˘a P (A) = 0, P (A)
|
∩
̸
|
∩
̸
P (A B) =
care implic˘a P (A
∩ B) = P (B) · P (A|B) = P (A) · P (B|A).
(2.3)
a evenimente aleatoare A, B se numesc independente Definit¸ia 2.2 Dou˘ (unul de cel˘ alalt) atunci cˆ and realizarea unuia nu influent ¸eaz˘ a ˆın nici un fel probabilitatea de realizare a celuilalt, adic˘ a atunci cˆ and P (A B) = P (A).
|
Astfel, pentru evenimentele independente A, B avem P (A
∩ B) = P (A) · P (B).
(2.4)
Definit¸ia 2.3 Evenimentele aleatoare A1 , . . . , An se numesc total independente dac˘ a pentru orice m n ¸si orice m-uplu (i1 , i2 , . . . , im ), 1 i1 < i2 < .. . < im n are loc
≤ ∩ A ∩ . . . ∩ A
P (Ai1
i2
≤
im )
≤
= P (Ai1 )P (Ai2 ) . . . P ( Aim ).
Definit¸ia 2.4 Evenimentele aleatoare A1 , . . . , An se numesc dou˘ a a Ai ¸si A j sunt independente pentru orice cˆ ate dou˘ a independente dac˘ i = j.
̸
Este imediat faptul c˘ a evenimentele total independente sunt independente dou˘a cˆate dou˘ a. Totusi, implicat¸ia invers˘a nu este adev˘ arat˘ a ˆın general, a¸sa cum arat˘ a urm˘atorul exemplu. ¸iu de select ¸ie, unde toate eveExemplul 2.3 Fie E = e1, e2 , e3 , e4 un spat nimentele elementare ei au probabilitatea P (ei ) = 1/4. Consider˘ am evenimentele A = e1 e2 , B = e1 e3 , C = e1 e4 . Vom ar˘ ata c˘ a evenimentele A,B,C sunt dou˘a cˆ ate dou˘a independente, dar nu sunt total independente. Pe de o parte, P (A) = P (B) = P (C ) = 1/2,
{
}
∪
∪
∪
∩ B) = P (e ∪ (e ∩ e )) = P (e ∪ ∅) = P (e ) = 41 , ¸si analog P (A ∩ C ) = P (B ∩ C ) = 1/4. In concluzie P (A ∩ B) = P (A) · P (B), P (A ∩ C ) = P (A) · P (C ), P (B ∩ C ) = P (B) · P (C ), P (A
1
2
3
1
1
deci evenimentele A, B,C sunt dou˘ a cˆ ate dou˘ a independente. Pe de alt˘ a parte, P (A
∩ B ∩ C ) = P (e ) = 41 , 1
deci A, B,C nu sunt total independente.
1 P (A) P (B) P (C ) = , 8
·
·
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
37
Teorema 2.2 Fie A1 , A2 , . . . , An evenimente aleatoare. Atunci P (A1 A2 . . . An ) = P (A1) P (A2 A1 ) P (A3 A1
∩ ∩ ∩ · | ·
| ∩ A ) · . . . · P (A |A ∩ . . . ∩ A 2
n
1
n−1 ).
a folosind induct¸ia dup˘a n ¸si forDemonstrat¸ie. Demonstrat¸ia este imediat˘ mula (2.3). O consecint¸a˘ imediat˘a este
Corolarul 2.3 Dac˘ a evenimentele A1, A2, . . . , An sunt total independente, atunci P (A1 A2 An ) = P (A1 ) P (A2 ) . . . P (An).
∩ ∩···∩
2.4
·
· ·
Formula probabilit˘ a¸t ii totale. Formula lui Bayes3
¸iu de select ¸ie asociat unui experiment aleator. Definit¸ia 2.5 Fie E un spat O mult ¸ime = A1 , A2 , . . . , An de evenimente aleatoare se nume¸ste sistem a complet de evenimente (SCE) pentru E dac˘
S {
1. E = A 1
}
∪ A ∪ ... ∪ A , = j. A ∩ A = ∅, pentru i ̸
2.
i
2
n
j
Un (SCE) se poate defini ˆın mod analog pentru o mult ¸ime num˘arabil˘a de evenimente.
Teorema 2.4 (Legea probabilit˘a¸t ii totale) Fie E un spat ¸iu de select ¸ie asociat unui experiment, = A1 , A2 , . . . , An un (SCE) ¸si B un eveniment aleator. Atunci n
S {
P (B) =
}
�
P (Ai ) P (B Ai ).
·
i=1
|
(2.5)
Formula (2.5) este cunoscut˘a sub numele de formula probabilit˘ a¸t ii totale (FTP). Demonstrat¸ie. Avem B = E B = (A1 = (A1
∩
Intrucˆ at evenimentele Ai patibile, se obt¸ine c˘a
∪ A ∪ ... ∪ A ) ∩ B ∩ B) ∪ (A ∩ B) ∪ . . . ∪ (A ∩ B). 2
n
2
n
∩ B din ultima sum˘a sunt dou˘a cˆate dou˘a incomn
P (B) =
� i=1
P (Ai
∩ B).
Mai departe, folosirea formulei (2.3) pentru probabilit˘ a¸tile P (Ai conduce la concluzia (2.5).
∩ B) ne
Observat¸ia 2.2 S˘ a ment ¸ion˘ am c˘ a evenimentul B are loc ˆımpreun˘ a cu unul (¸si numai unul) din evenimentele unui SCE. 3
Thomas Bayes (1702-1762), matematician britanic.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
38
Exemplul 2.4 Avem trei urne de tipul 1 (cont ¸inˆ and dou˘ a bile albe ¸si ¸sase bile negre) ¸si o urn˘ a de tipul 2 (cont ¸inˆ and o bil˘a alb˘ a ¸si opt bile negre). Se alege o urn˘ a la ˆıntˆ amplare ¸si apoi din urna aleas˘ a se extrage o bil˘ a. Care este probabilitatea evenimentului B: bila extras˘ a este alb˘ a ? ≪
≫
Solut ¸ie. Consider˘am evenimentele Ai : este aleas˘a o urn˘a de tipul i , i = 1, 2. Atunci = A1 , A2 va fi un SCE, ˆıntrucˆat E = A 1 A2 ¸si A 1 A2 = . Evenimentul B are loc ˆımpreun˘ a cu unul din evenimentele din . Conform formulei probabilit˘a¸t ii totale avem ≪
S {
≫
}
∪
S
∩
∅
P (B) = P (A1 ) P (B A1) + P (A2) P (B A2 ).
·
|
·
|
Inlocuind P (A1 ) = 3/4, P (A2 ) = 1/4, P (B A1 ) = 2/8, P (B A2 ) = 1/9, obt¸inem P (B) = 31/144. Presupunem c˘ a ipotezele teoremei probabilit˘ a¸t ii totale sunt satisf˘ acute. Atunci putem cere s˘ a se calculeze probabilitatea evenimentului Ai , condit¸ionat˘ a de faptul c˘a evenimentul B a avut loc. Aceast˘a probabilitate va fi
|
P (Ai B) =
|
P (Ai ) P (B Ai ) = P (B)
·
|
|
P (Ai ) P (B Ai )
∑ n
·
|
.
(2.6)
P (Ak ) P (B Ak )
·
k=1
|
Aceast˘a formul˘a este cunoscut˘ a sub numele de formula lui Bayes . Ea este utilizat˘ a pentru a evalua probabilit˘ a¸tile evenimentelor A i care formeaz˘a un (SCE), dup˘ a ce se cunoa¸ste rezultatul unui experiment. De fapt acestea sunt probabilit˘ a¸tile cauzelor realiz˘arii unui eveniment. Formula lui Bayes cont¸ine probabilit˘ a¸tile P (Ai ), P (B Ai ),
|
i
∈N , n
care pot fi calculate ˆınaintea efectu˘ arii experimentului. Din acest motiv ele se numesc probabilit˘ at¸i a priori. Executˆand experimentul, constat˘ am c˘a evenimentul B a avut loc ¸si vrem s˘a stabilim probabilit˘a¸tile P (Ai B), pentru i = 1, . . . , n ,
|
unde P (Ai B) reprezint˘ a probabilitatea ca realizarea lui B s˘a fie datorat˘ a aparit¸iei evenimentului Ai (B s˘a se fi realizat ˆımpreun˘ a cu Ai ). Aceste probabilit˘a¸t i se numesc probabilit˘ a¸t i a posteriori.
|
a a fost exExemplul 2.5 In experimentul din exemplul 2.4, presupunem c˘ tras˘ a o bil˘ a alb˘ a ( B s-a realizat). Care este probabilitatea ca bila extras˘ a sa fi provenit dintr-o urn˘ a de tipul 1 (probabilitatea ca s˘ a se fi realizat datorit˘ a evenimentului A1 )? Solut ¸ie. Aplicˆand formula lui Bayes obt¸inem P (A1 ) P (B A1 ) P (A1 B) = = P (B)
|
·
|
3 4
·
1 4
31 144
=
27 . 31
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
2.5 2.5.1
39
Scheme probabilistice Schema binomial˘ a
Presupunem c˘ a avem o urn˘a cont¸inˆand N 1 bile albe ¸si N 2 bile negre. Extragem o bil˘a, observ˘am culoarea sa ¸si apoi o reintroducem ˆın urn˘ a. Evident, compozit¸ia urnei r˘ amˆane neschimbat˘ a de la o extragere la alta. Dac˘ a not˘ am cu A evenimentul bila extras˘ a este alb˘ a , atunci A va fi evenimentul bila extras˘ a este neagr˘ a ¸si probabilit˘a¸t ile acestor evenimente vor fi ≪
≫
≪
≫
P (A) =
N 1 = p, N
P (A) =
N 2 = q, cu N = N 1 + N 2 . N
Desigur, p + q = 1 ¸si p, q r˘amˆan neschimbate de la o extragere la alta. Efectu˘am n asemenea extract¸ii conform procedurii descrise mai sus. Cerem probabilitatea evenimentului X k : printre cele n bile extrase, k sunt albe ¸si n ≪
− k sunt negre
≫
.
Solut ¸ie. O successiune favorabil˘ a de evenimente A, A este evenimentul B = A A . . . A A A . . . A .
− ( ( − �� k ori
n
k ori
Astfel, P (B) = pk q n−k . Intrucˆ at exist˘a nk esemenea evenimente favorabile cu k aparit¸ii ale lui A ¸si n k aparit¸ii ale lui A (vezi exemplul 1.12, pag. 15) ¸si ˆıntrucˆ at aceste nk evenimente sunt incompatibile, avem P (X k ) =
n k n−k p q , pentru k = 0, 1, . . . , n . k
Observat¸ia 2.3 Probabilitatea P (X k ) este coeficientul lui xk din polinomul ϕn (x) = ( p x + q )n . Din acest motiv, funct ¸ia ϕn se nume¸ste funct¸ia generatoare pentru schema binomial˘ a. Schema binomial˘ a a fost studiat˘ a pentru prima oar˘ a de Bernoulli4 . Din acest motiv, ea este se mai nume¸ste ¸si schema lui Bernoulli. O aplicare a acestei scheme este prezentat˘ a ˆın paragraful 2.14, pag. 62.
2.5.2
Schema multinomial˘ a
Aceast˘a schem˘ a este o generalizare a schemei binomiale. Presupunem c˘ a se d˘a o urn˘a care cont¸ine N bile de k culori notate c1, c2 , . . . , ck . Mai precis, exist˘a N i bile de culoarea c i , pentru i Nk , N 1 + . . . + N k = N . Ca ˆın cazul anterior, extragem o bil˘a, observ˘ am culoarea ei ¸si o reintroducem ˆın urn˘ a. Dac˘a se noteaz˘ a cu Ai evenimentul bila extras˘ a are culoarea ci , atunci
∈
≪
pi = P (Ai ) =
N i , pentru i N
≫
∈N
k
¸si = A1 , A2 , . . . , Ak va fi un sistem complet de evenimente, cu evenimentul sigur E : o bil˘ a este extras˘ a . Evident, p1 + p2 + . . . + pk = 1.
S { 4
≪
}
≫
James Bernoulli (cunoscut ¸si ca Jacob I) (1654-1705), matematician elvet¸ian.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
40
Efectu˘am n extrageri ˆın modul descris mai sus. Cerem probabilitatea evenimentului X n1,...,nk : printre cele n bile extrase, ni au culoarea ci , pentru i ≪
k ≫ .
∈N
Desigur, n1 + n2 + . . . + nk = n. Solut ¸ie. Vom ar˘ata c˘ a P (X n1,n2,...,nk ) =
n! pn1 1 pn2 2 . . . pnk k . n1 ! n2 ! . . . nk !
· · · ·
(2.7)
O succesiune favorabil˘ a de evenimente A1, A2 , . . . , Ak este evenimentul B = A1 A1 . . . A1 A2 A2 . . . A2 . . . Ak Ak . . . Ak .
� � n1 ori
n2 ori
nk ori
Probabilitatea acestui eveniment este P (B) = p n1 1 pn2 2 . . . pnk k . Intrucˆat exist˘a n n1 , n2, . . . , nk
asemenea evenimente favorabile cu ni aparit¸ii ale culorii ci pentru 1 i n (vezi teorem 1.14, pag. 20) ¸si ˆıntrucˆat aceste evenimente sunt incompatibile, formula (2.7) are loc. Teorema 1.15 ne permite s˘ a facem urm˘ atoarea observat¸ie.
≤ ≤
Observat¸ia 2.4 Probabilitatea ˆın (2.7) este coeficientul lui xn1 1 xn2 2 . . . xnk k al polinomului ˆın k variabile Φn (x1 , x2 , . . . , xk ) = ( p1x1 + p2 x2 + . . . + pk xk )n . Datorit˘ a aceastui fapt, aceast˘ a funct ¸ie se nume¸ste funct ¸ia generatoare a schemei multinomiale.
2.5.3
Schema hipergeometric˘ a
Presupunem c˘ a avem o urn˘a cont¸inˆand N bile, din care N 1 sunt albe ¸si N 2 = N N 1 sunt negre. Se extrag n bile succesiv, f˘ar˘a a le reintroduce ˆın urn˘a. Se cere probabilitatea evenimentului
−
Y n1 ,n2 : printre cele n bile extrase, n1 sunt albe ¸si n2 sunt negre . ≪
≫
Solut ¸ie. Dac˘a not˘am bilele albe cu a1 , a2 , . . . , aN 1 , ¸si bilele negre cu b1 , b2 , . . . , bN 2 , exist˘a N moduri de a extrage n bile dintr-o urn˘a de N bile ¸si o succesiune n favorabil˘ a de bile este de forma
( (
ai1 , ai2 , . . . , ain1 , b j1 , b j2 , . . . , b jn2 .
1 Exist˘a N moduri de a extrage n1 bile albe dintr-un total de N 1 bile albe. n1 2 Pentru fiecare succesiune fixat˘a de bile albe, exist˘a N moduri de a extrage n2 n2 bile negre dintr-un total de N 2 bile negre. Deci, ˆın total exist˘ a N 1 N 2 n1 n2
(
� �� � ( (( (( (
extract¸ii favorabile ¸si prin urmare probabilitatea cerut˘a este P (Y n1,n2 ) =
N 1 n1
N 2 n2
N n
=
N 1 N 2 n1 n2 N 1 +N 2 n1 +n2
.
(2.8)
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
2.5.4
41
Schema hipergeometric˘ a generalizat˘ a
Schema hipergeometric˘ a se poate generaliza ˆın felul urm˘ ator: se presupune c˘a o urn˘a cont¸ine N bile de k culori, notate c1 , c2 , . . . , ck . Mai precis, exist˘a N i bile de culoarea ci (1 i n) ¸si N 1 + . . . + N k = N . Se extrag n bile ¸si se cere probabilitatea evenimentului
≤ ≤
Y n1,...,nk : printre cele n bile extrase, ni au culoarea ci , i ≪
k ≫ .
∈N
Desigur, n1 + n2 + . . . + nk = n. Argumente similare cu cele folosite la schema hipergeometric˘ a ne conduc la formula N 1 N 2 k . . . N n1 n2 nk P (Y n1,n2 ,...,nk ) = . (2.9) N
( ( ( ( n
2.5.5
Schema urnelor lui Poisson
In aceast˘ a schem˘ a avem n urne notate U i , 1 i n, fiecare cont¸inˆand bile albe ¸si negre, dar ˆın proport¸ii diferite. Introducem urm˘ atoarele notat¸ii:
≤ ≤
pi = probabilitatea s˘ a extragem o bil˘ a alb˘a din urna U i , q i = probabilitatea s˘ a extregem o bil˘a neagr˘ a din urna U i , pentru 1 i n ¸si cu pi + q i = 1. Extragem n bile, cˆate una din fiecare urn˘a, ¸si vrem s˘a calcul˘am probabilitatea evenimentului
≤ ≤
Z k : printre cele n bile extrase, k sunt albe ¸si n ≪
− k sunt negre
≫
.
Solut ¸ie. Pentru a simplifica prezentarea, consider˘ am pentru ˆınceput cazul particular n = 4 ¸si calcul˘am probabilitatea de a avea k = 3 bile albe ¸si o bil˘a neagr˘ a (n k = 1). Pentru i N4 , consider˘am evenimentele Ai : bila extras˘ a din urna U i este alb˘ a . Atunci evenimentele complementare Ai vor fi bila extras˘ a din urna U i este neagr˘ a . Evenimentele care exprim˘ a extract¸iile favorable sunt:
−
∈
≫
≪
≪
≫
B1 B2 B3 B4
= = = =
A1 A1 A1 A1
∩A ∩A ∩A ∩A
2 2 2 2
∩A ∩A ∩A ∩A
3 3 3 3
∩A , ∩A , ∩A , ∩A , 4 4 4 4
evenimentele din component¸a fiec˘ arui produs fiind total independente. Prin urmare, probabilit˘ a¸t ile evenimentelor favorable sunt P (B1 ) = p 1 p2 p3 q 4 , P (B3 ) = p 1q 2 p3 p4 ,
P (B2 ) = p 1 p2q 3 p4 , P (B4 ) = q 1 p2 p3 p4 .
Mai departe, evenimentul Z 3 poate fi scris ca ¸si Z 3 = B 1
∪B ∪B ∪B . 2
3
4
Intrucˆ at evenimentele din aceast˘ a sum˘a sunt incompatibile, probabilitatea cerut˘a va fi suma probabilit˘a¸t ilor P (Bi ), P (Z 3 ) = p 1 p2 p3q 4 + p1 p2 q 3 p4 + p1 q 2 p3 p4 + q 1 p2 p3 p4 .
(2.10)
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
42
Dac˘a se consider˘ a polinomul Q4 (x) = ( p1 x + q 1)( p2 x + q 2 )( p3 x + q 3 )( p4 x + q 4 ), atunci P (Z 3 ) reprezint˘ a coeficientul lui x3 din polinomul Q4 (x). In cazul general, consider˘am polinomul n
Qn(x) =
∏
( pi x + q i )
i=1
¸si folosim un rat¸ionament similar pentru a ar˘ ata c˘ a probabilitatea P (Z k ) este k coeficientul lui x din Qn (x).
Observat¸ia 2.5 Dac˘ a toate urnele sunt identice, atunci pi = p, q i = q ¸si polinomul Qn(x) se reduce la Qn (x) = ( px + q )n . Coeficientul lui xk va fi
��
n k n−k p q , k
care este exact probabilitatea din schema binomial˘ a. Intr-adev˘ ar, faptul c˘ a urnele sunt identice este echivalent cu situat ¸ia cˆ and avem o urn˘ a ¸si reintroducem bila ˆın urn˘ a dup˘ a fiecare extragere.
2.6
Variablile aleatoare
Exist˘a multe definit¸ii pentru variabila aleatoare (v.a.), din care o vom adopta pe urm˘ atoarea: a care ia valori care depind de rezultatul unui expeDefinit¸ia 2.6 O variabil˘ a aleatoare. Aceasta riment, astfel depinzˆ and de ¸sans˘ a, este numit˘ a variabil˘ este de fapt o funct ¸ie cu valori reale definit˘ a pe spat ¸iul de select ¸ie. De exemplu, num˘a rul de bacterii pe o unitate de suprafat¸a˘ ˆın studiul efectului unui medicament, num˘ arul de votant¸i ˆın favoarea anumitui candidat sunt variabile aleatoare. a aleatoare. Funct Definit¸ia 2.7 Fie X o variabil˘ ¸ia de distribut ¸ie (sau a prin F : R [0, 1], functtia de repartit ¸ie) a v.a. X este definit˘
→
F (x) = P (X < x), pentru orice x
∈ R.
Din punctul de vedere al teoriei probabilit˘a¸t ilor, o variabil˘a aleatoare este complet caracterizat˘ a de funct¸ia sa de repartit¸ie. Ea se consider˘ a cunoscut˘a atunci cˆ and funct¸ia sa de repartit¸ie este cunoscut˘ a. Funct¸ia de repartit¸ie F definit˘a mai sus urm˘atoarele propriet˘ a¸t i:
P1. P (a X < b) = F (b) F (a), pentru orice a, b Demonstrat ¸ie. Dac˘a se consider˘ a evenimentele
≤
−
A : a X < b, B : X < b, C : X < a,
≤
∈ R, a < b.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
avem B = A urmare
∪ C ¸si A ∩ C = ∅.
P (A) = P (B)
43
Astfel, P (B) = P (A) + P (C ) ¸si prin
− P (C ) = P (X < b) − P (X < a) = F (b) − F (a).
atoare. P2. Funct¸ia F este cresc˘ Demonstrat ¸ie. Fie x1 x2 . Atunci P (x1 folosind P1, F (x2 ) F (x2 ) 0.
−
≤
≥
≤ X < x ) ≥ 0, de unde, 2
a la stˆanga: P3. Funct¸ia F este continu˘ F (x
P4.
lim F (x) = 0,
x→−∞
pentru orice x
− 0) = F (x),
∈ R.
lim F (x) = 1.
x→∞
In practic˘ a exist˘a dou˘a tipuri de variabile aleatoare: discrete ¸si continue .
2.6.1
Variabile aleatoare discrete
Definit¸ia 2.8 O variabil˘ a aleatoare X se nume¸ste discret˘ a (v.a.d.) dac˘a poate lua doar un num˘ ar finit sau num˘arabil de valori. Astfel, ea este determinat˘ a de valorile sale x1 , x2 , . . . , xn (sau x1, x2, . . .) ¸si de probabilit˘ at ¸ile pi = P (X = xi ) cu care ia aceste valori. Valorile pi trebuie s˘ a satisfac˘a i pi = 1.
∑
Deci, o v.a.d. poate fi scris˘a ca ¸si X :
�
x1 x2 . . . xn p1 p2 . . . pn
�
n
,
pi > 0,
�
pi = 1,
i=1
dac˘a ia un num˘ ar finit de valori, sau ca ¸si X :
�
x1 x2 . . . x n . . . p1 p2 . . . pn . . .
�
∞
,
pi > 0,
�
pi = 1,
i=1
dac˘a mult¸imea valorilor sale este num˘arabil˘a. Pentru a nu considera de fiecare dat˘a cazuri separate, vom adopta uneori a doua notat¸ie pentru o v.a. finit˘ a, admit¸aˆnd c˘ a p i = 0 pentru i = n + 1, n + 2, . . .. In acest caz vom nota
X = {x , x , . . . , x , . . .} sau X = {x , x , . . . , x }. ¸ia f : X → { p , p , . . . , p , . . .}, Definit¸ia 2.9 Funct 1
2
n
X
1
1
2
2
n
n
f X (xi ) = p i = P (X = x i ), se nume¸ste funct ¸ie de probabilitate a v.a.d. X . Funct¸ia de probabilitate f X define¸ste complet variabila aleatoare X . ¸iile de mai sus avem Propozit¸ia 2.5 Cu notat F (x) =
�
pi .
xi
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
44
Figura 2.1: Funct¸ia de repartit¸ie a unei variabile aleatoare discrete.
Demonstrat¸ie. Fie k
∈ N astfel ˆıncˆat x
k
F (x) = P (X < x) = P (X = x 1
∪
X = x 2 k
= p1 + p2 + . . . + pk =
≤x
k+1 .
...
∪
∪
Atunci X = x k )
� � pi =
pi .
xi
i=1
Definit¸ia 2.10 Variabilele aleatoare X ¸si Y se numesc independente dac˘ a P (X = x, Y = y) = P (X = x) P (Y = y).
·
Variabilele aleatoare X 1 , . . . , Xn se numesc total independente dac˘ a pentru orice m n ¸si orice m-uplu (i1 , i2 , . . . , im ), 1 i1 < i2 < .. . < im n avem
≤
≤
≤
P (X i1 = x 1 , X i2 = x 2 , . . . , Xi m = x m ) = P (X i1 = x 1 ) P (X i2 = x 2 ) . . . P (X im = x m ).
·
2.6.2
· ·
Variabile aleatoare continue
Definit¸ia 2.11 O v.a. se nume¸ste absolut continu˘ a dac˘ a funct ¸ia sa de distribut ¸ie F poate fi scris˘a ca ¸si
∫
x
F (x) =
f (t) dt.
−∞
In acest caz, funct ¸ia f : R
→ R se nume¸ste functt ¸ia densitate a distribut ¸iei.
Intrucˆ a t lim F (x) = 1, funct¸ia densitate trebuie s˘ a satisfac˘ a egalitatea x→∞
∫
∞
f (x) dx = 1.
−∞
Alte propriet˘ a¸t i imediate ale unei v.a. continue sunt:
∫
b
P (a
≤ X < b) = F (b) − F (a) =
P (X = a) = 0.
a
f (x) dx,
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
45
Un exemplu de distribut¸ie continu˘ a des ˆıntˆ alnit ˆın practic˘a este distribut¸ia 5 normal˘ a, numit˘a ¸si distribut¸ia lui Gauss: 1 f (x) = √ ·e 2πσ
µ − 12 ( x− σ )
2
.
Aceast˘a distribut¸ie de probabilitate are o important¸a˘ major˘ a ˆın multe do0.9
0.8
2
µ=0, σ
=0.2
0.7
0.6
0.5
0.4
2
µ=−2, σ
=0.5
0.3
2
µ=0, σ
=1
0.2
2
µ=0, σ
0.1
0 −5
−4
−3
−2
−1
0
1
2
3
=0.5
4
5
Figura 2.2: Cˆateva funct¸ii densitate normale. menii. Ea const˘ a dintr-o familie de distribut¸ii de aceea¸si form˘ a general˘ a, depinzˆand de doi parametri: media µ ¸si deviat¸ia standardσ. Graficul s˘au se nume¸ste deseori clopotul lui Gauss , datorit˘a faptului c˘ a graficul funct¸iei sale densitate de probabilitate are forma unui clopot (vezi figura 2.2). In continuare ne vom limita la variabile aleatoare discrete.
2.7
Suma variabilelor aleatoare
a variabile aleatoare discrete. Suma lor este de Definit¸ia 2.12 Fie X, Y dou˘ asemenea o v.a.d., notat˘ a X + Y , ¸si definit˘ a prin P (X + Y = z ) =
�
P (X = x, Y = z
x∈X
− x),
(2.11)
Pentru suma a n variabile aleatoare X 1 , . . . , Xn , definit¸ia poate fi adaptat˘a cu u¸surint¸a˘: P (X 1 + . . . + X n = z ) =
�
P (X 1 = x 1 , . . . , Xn−1 = x n−1 , X n = z
x1 ∈X 1 ,...,xn−1 ∈X n−1
− (x + . . . + x 1
n−1 ).
Dac˘a X, Y sunt variabile aleatoare independente, suma (2.11) devine P (X + Y = z ) =
�
P (X = x) P (Y = z
·
x∈X
Exemplul 2.6 Fie p (0, 1), q = 1 rate de schema binomial˘ a:
∈
X : 5
�( �
i n i n−i , i = 0, . . . , n, p q k
− x).
− p ¸si fie X, Y v.a. independente geneY :
�( � m j
j , j = 0, . . . , m . p j q m− j
Carl Friedrich Gauss (Gauß) (1777-1855), matematician ¸si fizician german, care a adus contribut¸ii semnificative ˆın multe domenii, printre care teoria numerelor, analiz˘a, geometrie diferent¸ial˘a, geodezie, magnetism, astronomie ¸si optic˘ a.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
46
Pentru suma X + Y avem k
� · − �� � · � − � � � �� − � � � �( �
P (X + Y = k) =
P (X = j) P (Y = k
j)
j=0 k
=
j=0
n j n− j p q j k
= p q
j=0
m+n k
pk− j q m−(k− j)
j
m
k
j
m + n . k
= pk q n+m−k
X + Y :
k
n j
k n+m−k
In concluzie,
m
k pk q m+n−k
, i = 0, . . . , m + n.
2.8 Exemple de variabile aleatoare discrete 2.8.1
Distribut¸ia binomial˘ a
a X are o distribut Definit¸ia 2.13 Variabila aleatoare discret˘ ¸ie binomial˘ a cu parametrii n, p ( n N, p (0, 1)) dac˘ a funct ¸ia sa de probabilitate este f X : 0, 1, . . . , n (0, 1],
{
f X (k) =
� �} →
∈
∈
n k n−k p q pentru orice k k
∈ N ∪ {0}, unde q = 1 − p. n
∑
(2.12)
n
Definit¸ia este corect˘ a ˆıntrucˆat f X > 0 ¸si
f X (k) = 1, ultima egalitate
k=0
rezultˆand din
�� � �( � n
k=0
n k n−k = ( p + q )n = 1. p q k
Cu notat¸iile din definit¸ia 2.8, aceast˘ a v.a. se poate scrie de asemenea k n k n−k , p q k
X :
k
∈ {0, 1, . . . , n}.
(2.13)
Distribut¸ia binomial˘a poate fi definit˘ a astfel: presupunem c˘ a repet˘ am un experiment de n ori ¸si c˘a experimentele individuale ˆın aceast˘ a serie de repet˘ ari sunt total independente. Presupunem de asemenea c˘ a ˆın toate experimentele un eveniment A are loc cu probabilitatea p, independent˘ a de num˘ arul experimentului. Atunci v.a. X va reprezenta num˘ arul de aparit¸ii ale lui A ˆıntr-o asemenea serie de n experimente. Cum am v˘ azut deja ˆın paragraful 2.5.1, funct¸ia de probabilitate f X este ˆıntr-adev˘ar cea dat˘ a ˆın (2.12).
2.8.2
Distribut¸ia hipergeometric˘ a
Definit¸ia 2.14 Variabil˘ a aleatoare discret˘ a X are o distribut ¸ie N, n a, n hipergeometric˘ a cu parametrii n,a,b ( n ,a,b funct ¸ia sa de probabilitate este f X : 0, 1, . . . , n (0, 1], f X (k) =
( (( a k
b n−k a+b n
∈ ≤ ≤ b) dac˘a { }→ , pentru orice k ∈ {0, 1, . . . , n}. (2.14)
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
47
∑ � � �� − � � � n
Definit¸ia este corect˘ a, ˆıntrucˆat f X > 0 ¸si loc din identitatea lui Vandermonde6 n
k=0
a k
b
n
f X (k) = 1. Ultima egalitate are
k=0
=
k
a+b , n
(2.15)
care rezult˘ a prin identificarea coeficientului lui x n din egalitatea (1 + x)a+b = (1 + x)a (1 + x)b . V. a. hipergeometric˘ a poate fi generat˘ a folosind schema hipergeometric˘ a (a se vedea paragraful 2.5.3).
2.8.3
Distribut¸ia lui Poisson
Definit¸ia 2.15 Variabila aleatoare discret˘ a X are o distribut ¸ie 7 a funct ¸ia sa de probabilitate este f X : Poisson cu parametrul λ > 0 dac˘ 0, 1, 2, . . . (0, 1], λk −λ f X (k) = e . (2.16) k! Avem f X > 0 ¸si
{
}→
∞
�
∞
f X (k) = e
−λ
k=0
� k=0
λk = e −λ eλ = 1, k!
·
deci definit¸ia este corect˘ a.
2.8.4
Distribut¸ia geometric˘ a
Definit¸ia 2.16 Variabila aleatoare discret˘ ¸ie geomea X are o distribut a funct ¸ia sa de probabilitate este f X : N tric˘ a cu parametrul p (0, 1] dac˘ (0, 1], f X (k) = p q k−1 , pentru orice k N ¸si cu q = 1 p. (2.17)
∈
→
∈
−
Distribut¸ia geometric˘ a poate fi generat˘ a astfel: consider˘ am un experiment ¸si fie A un eveniment care poate avea loc ca ¸si rezultat al experimentului. Fie p = P (A). Repet˘ am experimentul independent, pˆ an˘a la prima aparit¸ie a lui A ¸si not˘ am cu Ai evenimentul care const˘ a ˆın aparit¸ia lui A ˆın al i-lea experiment, i = 1, 2, . . . . Atunci, pentru variabila aleatoare X reprezentˆ and num˘arul de experimente efectuate pˆ an˘a la prima aparit¸ie a lui A, avem f X (k) = P (X = k) = P (A1 Desigur, f X > 0 ¸si
2
∞
�
k−1
∩ A ∩ . . . ∩ A ∩ A ) = p q
p q k−1 =
k=1
k−1
k
.
p
1
− q = 1,
seria implicat˘ a fiind cea geometric˘ a. 6 7
Alexandre-Th´eophile Vandermonde (1735–1796), muzician ¸si chimist francez. Sim´eon Denis Poisson (1781-1840), matematician ¸si fizician francez.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
2.8.5
48
Distribut¸ia binomial˘ a negativ˘ a
Definit¸ia 2.17 Variabila aleatoare discret˘ a X are o distribut ¸ie binomial˘ a negativ˘ a, sau binomial˘ a cu exponent negativ cu parametrul p (0, 1], dac˘ a funct ¸ia sa de probabilitate este f X : n, n + 1, . . . (0, 1],
∈
{
}→
f X (k) =
�−� k n
1 n k−n p q , 1
− pentru orice k ∈ {n, n + 1, . . .}, q = 1 − p.
(2.18)
Pentru a demonstra corectitudinea, folosim seria binomial˘ a generalizat˘ a (1 + x)α = 1 + αx +
�� � ∞
=
( α j
−
α j x j
j=0
Aici
α(α 1) 2 α(α x + 2! cu α
− 1)(α − 2) x
3
+ ...
3!
∈ R, |x| < 1.
(2.19)
reprezint˘ a num˘ arul binomial
�� α j
=
α(α
− 1) . . . (α − j + 1) , j !
definit ˆın formula (1.9), pag. 14. In cazul particular x = q, α =
−
�� � �� �� � � − ∞
(1
−n
− q )
=
j=0
�
q j
k−n
k=n
de unde
∞
j
j=0 ∞
=
−n , seria (2.19) devine n + j − 1 n + j − 1 q = j n−1 k−1 q , n−1
∞
f X (k) = p n(1
q )−n = 1
k=n
¸si prin urmare v.a. este definit˘ a corect. V.a. binomial˘a cu exponent negativ poate fi generat˘ a astfel: consider˘am un experiment ¸si fie A un eveniment care poate avea loc ca ¸si rezultat al acestuia. Fie p = P (A) > 0. Repet˘ am experimentul independent, pˆ an˘a cˆand evenimentul A are loc de n ori, dup˘a care ne oprim. X este variabila aleatoare care reprezint˘ a num˘arul de experimente efectuate pˆ an˘a cˆ and A s-a realizat de n ori. Valorile posibile pentru X sunt ˆıntr-adev˘ar n, n + 1, n + 2, . . .. Atunci, pentru un k (k n) fixat, f X (k) poate fi calculat˘ a astfel:
≥
f X (k) = P (X = k) = P (An−1 k−1
1 k
∩ A ),
unde A1k ¸si An−1 k−1 sunt evenimentele A1k : An−1 k−1 :
A are loc ˆın al k-lea experiment , A are loc de n 1 ori ˆın primele k
≪
≪
≫
−
− 1 experimente
≫
.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
49
Probabilit˘a¸t ile lor sunt, folosind schema binomial˘ a (vezi paragraful 2.5.1), P (A1k ) = p, k P (An−1 k−1 ) = n
�−� −
1 n−1 p (1 1
(k−1)−(n−1)
− p)
=
�−� k n
−
1 n−1 k−n p q . 1
Intrucˆ at aceste evenimente sunt independente, formula (2.18) este demonstrat˘a.
2.8.6
Distribut¸ia urnelor lui Poisson
a X urmeaz˘ a distribut Definit¸ia 2.18 Variabila aleatoare discret˘ ¸ia urnelor lui Poisson cu parametrii pi (0, 1], i 1, . . . , n dac˘ a funct ¸ia sa de probabilitate este f X : 0, 1, . . . , n (0, 1],
∈ }→
{
∈{
f X (k) = pk , pentru tot ¸i k
}
(2.20)
∈ {0, 1, . . . , n}, unde p este coeficientul lui x
∏ k
k
din polinomul
n
Qn (x) =
( pi x + q i ).
i=1
Aici q i = 1
− p . Aceast˘ a v.a. este bine definit˘a ˆıntrucˆ at f i
X
n
> 0 ¸si
n
�
pk = Q n (1) =
∏
( pi + q i ) = 1.
i=1
k=0
Aceast˘a distribut¸ie este generat˘ a de schema urnelor lui Poisson (vezi paragraful 2.5.5).
2.9
Valoarea medie ¸si variant¸a unei variabile aleatoare discrete
Fie X o v.a.d. cu valorile posibile x 1 , x2 , . . . , xn , . . ., ¸si fie p k = P (X = x k ) ¸si i N.
∈
arul Definit¸ia 2.19 Num˘ αi =
�
xik pk ,
k
dac˘ a seria converge absolut, se nume¸ste momentul de ordin i al lui X . Num˘ arul µi = (xk α1 )i pk ,
�
−
k
se nume¸ste momentul centrat de ordin i al lui X . De o important¸˘a deosebit˘ a sunt momentele α1 ¸si µ2 . arul Definit¸ia 2.20 Num˘ α1 =
�
xk pk ,
k
se nume¸ste expectat ¸a sau valoarea a¸steptat˘ a sau valoarea medie sau media lui X ¸si este notat cu E (X ) sau M (X ).
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
50
Valoarea medie este o m˘ asur˘a a centrului de distribut¸ie, ˆın sensul urm˘ator: dac˘a p k sunt interpretate ca ¸si mase asociate punctelor x k R, atunci E (X ) este centrul de mas˘a al acestui sitem, pe axa real˘ a:
∈
∑∑ � �
xk pk . pk
α1 = E (X ) =
Exemplul 2.7 Dac˘ a se consider˘ a variabila aleatoare X :
k 1/6
k∈N6
reprezentˆ and num˘ arul fet ¸ei apare cˆ and se arunc˘ a un zar, atunci valoarea sa medie este 6 6 1 E (X ) = k pk = k = 3.5 . 6 k=1 k=1
�· �
arul µ2 se nume¸ste variant Definit¸ia 2.21 Num˘ ¸a lui X ¸si este notat cu 2 var (X ) sau D (X ). Astfel,
�
var (X ) =
(xk
k
2
− α ) p 1
k
(
− E (X ))
= E (X
2
.
R˘ ad˘ acina p˘ atrat˘ a a variant ¸ei este numit˘ a deviat ¸ia standard sau dispera cu σ(X ) sau D(X ): sia , ¸si este notat˘ σ(X ) =
√
var (X ).
Inainte de a prezenta propriet˘ a¸t ile de baz˘ a ale expectant¸ei ¸si variant¸ei, d˘am urm˘atoarea definit¸ie.
� �
xk , k I, o v.a.d., i N ¸si a R. Atunci pk variabilele aleatoare a + X , aX ¸si X i sunt definite, respectiv, ca ¸si
Definit¸ia 2.22 Fie X :
a + X : a X : X i :
∈
∈
� � ∈ � � ∈ � � ∈ (
∈
a + xk , k I, pk a xk , k I, pk xik , k I. pk
¸a ¸si variant ¸a au urm˘ atoarele propriet˘ at ¸i: Propozit¸ia 2.6 Expectant a 1
P1. E (a) = a, dac˘ a a este v.a. constant˘ a a : P2. E (aX ) = aE (X ).
.
ar, dac˘ a Z = X + Y, P3. E (X + Y ) = E (X ) + E (Y ); Intr-adev˘
��
xk X : , k pk cu pij
∈ N ,
Y :
��
yk , k rk
m , atunci Z :
∈ N = P (X = x , Y = y ), i ∈ N, j ∈ N n
i
n
E (Z ) =
m.
j
m
�� i=1 j=1
n
(xi + y j ) pij =
� �
xi + y j , pij
Astfel,
m
m
n
�� �� xi
i=1
pij +
j=1
y j
j=1
pij .
i=1
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
51
Dar m
�
pij = P (Z = x i + y1) + . . . + P (Z = x i + ym )
j=1
= P (Z = x i + y1 ... = P (X = x i ) = p i ,
∪
n
E (X + Y ) =
n i=1 pij
= r j , pentru orice j
xi pi +
y j r j = E (X ) + E (Y ).
j=1
n
P4. E (aX + bY ) = aE (X ) + bE (Y ), E
n
ai X i
ai E (X i )
=
i=1
i=1
− E (X )) = 0. P6. Dac˘ a X ≥ 0, atunci E (X ) ≥ 0. P6’. Dac˘ a X ≥ Y, atunci E (X ) ≥ E (Y ). ar, P7. var (X ) = α − α = E (X ) − (E (X )) . Intr-adev˘ var (X ) = E (X − E (X )) = E X − 2E (X ) · X + (E (X )) = E (X ) − 2E (X ) · E (X ) + (E (X )) = E (X ) − (E (X )) . 2 1
2
∈ N
m
i=1
P5. E (X
m)
i
∑ � � �∑ � ∑
pentru tot ¸i i Nn . Analog calcul˘ am de unde concluzia
∈
∪ Z = x + y
2
2
((
2
2
2
2
2
2
2
ar, P8. var (aX + b) = a 2 var (X ). Intr-adev˘ var (a X + b) = = = =
Consecint ¸e:
(( (
−
E (aX + b E (aX + b))2 E (aX + b a E (X ) b)2 E a2 (X E (X ))2 a2 var (X ).
− −
−
var (b) = 0, var (X + b) = var (X ), var (aX ) = a2 var (X ).
P9. Dac˘ a X, Y sunt v.a. independente, E (X Y ) = E (X )E (Y ).
·
Intr-adev˘ ar, fie
��
xk X : , k pk
∈ N , n
Y :
��
yk , k rk
m . Atunci X
· Y :
∈ N
� �
xi y j , pij
cu pij = P (X = x i
∩
Y = y j ) = P (X = x i ) P (Y = y j ) = p i r j .
·
m,
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
52
Atunci n
m
n
E (X Y ) =
xi y j pij =
·
i=1 j=1
m
xi pi
=
xi y j pi r j
i=1 j=1
n
y j r j
i=1
P9’. Dac˘ a X i , i
m
�� �� �� ��� � �∏ � ∏
= E (X )E (Y ).
j=1
∈ N sunt v.a.d. total independente, atunci s
s
s
E
X i
E (X i ).
=
i=1
i=1
Observat¸ia 2.6 Dac˘ a dou˘ a v.a.d. nu sunt independente, proprietatea P9 nu are loc ˆın general. Deviat¸ia standard ¸si variant¸a sunt o m˘asur˘a a ˆımpr˘ a¸stierii unei distribut¸ii ˆın jurul valorii medii.
2.10
Covariant¸a
Cum am v˘azut, este important s˘ a calcul˘am variant¸a unei sume de v.a., cunoscˆand variant¸ele termenilor sumei. Pentru aceasta, avem nevoie cˆ ateva rezultate preliminare. ˆIncepem cu urm˘ atoarea definit¸ie. a v.a. astfel ˆıncˆ at E (X ), E (Y ), Definit¸ia 2.23 Fie X, Y dou˘ E (X Y ), var (X ) ¸si var (Y ) exist˘ a. Covariant ¸a lui X ¸si Y este definit˘a prin cov (X, Y ) = E ((X E (X )) (Y E (Y ))) . (2.21)
·
−
· −
Propozit¸ia 2.7 Covariant ¸a are urm˘ atoarele propriet˘ at ¸i: P1. cov (X, X ) = var (X ). P2. cov (X, Y ) = E (X Y )
· − E (X )E (Y ).
P2’. Dac˘ a X ¸si Y sunt independente, atunci cov (X, Y ) = 0. a X i , i P3. Dac˘
∈ N , atunci n
�� � � � � � � �� � − � � � �� � − � � �� � � � n
n
X i =
var
cov (X i , X j ).
var (X i ) + 2
i=1
i=1
1≤i
Demonstrat¸ie. Avem, folosind P4 din propozit ¸ia 2.6 pag. 50, n
n
X i
var
= E
i=1
n
X i
i=1 n
= E
E (X i )
i=1
X i
E (X i )
2
i=1
Folosind apoi formula n
ai
i=1
pentru ai = X i
2
n
a2i + 2
=
i=1
ai a j ,
1≤i
− E (X ), se obt ¸ine concluzia. i
.
2
(2.22)
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
53
Definit¸ia 2.24 Variabilele aleatoare X 1 , X 2 , . . . , Xn se numesc necorelate dac˘ a cov (X i , X j ) = 0, pentru i = j.
̸
In acest moment putem s˘ a d˘am un rezultat privind variant¸a sumei de variabile aleatoare. Mai precis, are loc urm˘ atorul rezultat. arate urm˘ atoarele afirmat ¸ii: Propozit¸ia 2.8 Sunt adev˘
P4. V.a. total independente sunt necorelate. a X 1 , . . . , Xn sunt v.a. necorelate, atunci P5. Dac˘ var (X 1 + X 2 + . . . + X n ) = var(X 1 ) + var(X 2 ) + . . . + var(X n ). Demonstrat¸ie Al doilea termen din membrul drept al egalit˘ at ¸ii (2.22) se anuleaz˘ a.
P6. var(X + Y ) = var(X ) + var(Y ) dac˘ a ¸si numai dac˘ a cov(X, Y ) = 0.
2.11
Valori medii ¸si variant¸e pentru cˆ ateva variabile aleatoare discrete
Distribut¸ia binomial˘ a Teorema 2.9 Dac˘ a X este a v.a.d. avˆ and o distribut ¸ie binomial˘ a dat˘ a ˆın (2.13), atunci E (X ) = np, var (X ) = np q. Demonstrat¸ie.
��� �� � �� � n
E (X ) =
k
k=0
n k n−k p q . k
Pentru a calcula aceast˘a sum˘ a, deriv˘am formula binomial˘a ˆın raport cu x n
n
(q + p x) =
k=0
obt¸inˆand
n
n(q + p x)n−1 p =
k=1
Pentru x = 1, avem
n k k n−k p x q , k
n k n−k k−1 p q kx . k
(2.23)
E (X ) = n( p + q )n−1 p = np. Apoi, folosind proprietatea P7 din propozit¸ia 2.6, var(X ) = E (X 2 ) unde
� �� n
E (X 2) =
− (E (X ))
k2
k=0
2
n k n−k p q . k
,
(2.24)
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
54
Dac˘a ˆınmult¸im identitatea (2.23) cu x, o deriv˘am (ˆın raport cu x) ¸si apoi ˆınlocuim x = 1, obt¸inem E (X 2) = np (1 + (n
− 1) p).
inlocuind ˆın (2.24), ˆın final obt¸inem concluzia 2 2
− p) − n p
var (X ) = np (1 + np
= np q.
Distribut¸ia hipergeometric˘ a a X este o v.a.d. avˆ and o distribut ¸ie hipergeometric˘ a Teorema 2.10 Dac˘ dat˘ a ˆın (2.14), atunci a+b E (X ) = np, var (X ) = np q a+b
Demonstrat¸ie.
− n , cu p = a , q = b . a+b a+b −1
� �� � � ( − �� � − � − ( � �� � � − ( − − (
E (X ) = ˆIntrucˆ at
a k
n
1
E (X ) =
a+b n
k
a+b n
k
putem scrie
n
1
k=1
k=0
a k
= a
a a k
a k
1 1
b
n
k
.
1 , 1
b
n
k
= a
a+b−1 n−1 a+b n
(2.25)
,
unde ˆın ultima egalitate am folosit identitatea Vandermonde (2.15). Dup˘a simplific˘ari, are loc concluzia. Pentru variant¸a˘ mai ˆıntˆai evalu˘am 2
E (X ) = =
� �� � � ( � − � � �� � � �� � � � ( − − − � � � � − − − − � � � � − − − ( ( n
1
k2
a+b n
k=1 n
1
a+b n
k=1
a k
b
n
a k k
k
n
b
n
k
k(k
+
1)
k=2
a k
b
n
k
.
Folosind (2.25) ¸si relat¸ia
k(k
1)
a k
= a(a
1)
a k
2 . 2
(2.26)
din nou dintr-o identitate de tip Vandermonde, obt¸inem E (X 2 ) = =
a
a+b n
a + b 1 a(a 1) a + b 2 + a+b n 1 n 2 n
− − n a(a − 1) + n(n − 1) . a+b (a + b)(a + b − 1)
Inlocuind acum E (X ) ¸si E (X 2 ) ˆın formula (2.24) ¸si efectuˆ and calculele, obt¸inem concluzia.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
55
Distribut¸ia Poisson Teorema 2.11 Dac˘ a X este o v.a.d. avˆ and o distribut ¸ie Poisson dat˘ a ˆın (2.16), atunci E (X ) = λ, var(X ) = λ. Demonstrat¸ie. ∞
E (X ) = e
−λ
∞
�
�
λk λk−1 −λ k = λe k = λe −λ eλ = λ. k! (k 1)! k=0 k=1
−
Apoi evalu˘am E (X 2 ), obt¸inˆand ∞
2
−λ
E (X ) = e
∞
� � − �� − � � − − �− �− k
2λ
k
k!
k=0
= λe
k=1
∞
∞
−λ
= λe
λk−1 λk−1 1) + (k 1)! k=1 (k 1)!
(k
k=1 ∞
λk−2 + λe−λ (k 2)!
2 −λ
= λe
k=2 2 −λ λ
= λe
In final, var(X ) = E (X 2)
λk−1 k (k 1)!
−λ
∞
λk−1 (k 1)!
k=1
e + λe−λ eλ = λ(λ + 1).
− (E (X ))
2
= λ(λ + 1)
−λ
2
= λ.
Distribut¸ia geometric˘a a X este o v.a.d. avˆand o distribut ¸ie geometric˘ a dat˘ a ˆın Teorema 2.12 Dac˘ (2.17), atunci 1 q E (X ) = , var(X ) = 2 . p p
Demonstrat¸ie. ∞
E (X ) = p
�
k−1
kq
= p
k=1
� � − �
′
1
q
1
=
q
p (1
−
1 = . q )2 p
∞
2
k2 q k−1.
E (X ) = p
k=1
Pentru a evalua aceast˘ a sum˘a, consider˘ am seria de puteri ∞
�
kq k−1 =
k=1
1
(1
− q ) , 2
o ˆınmult¸im cu q ¸si apoi deriv˘am egalitatea ˆın raport cu q. Obt¸inem ∞
� k=1
2 k−1
k q
=
� � q
(1
− q )
2
Prin ˆınlocuire ˆın E (X 2 ) obt¸inem concluzia.
′
= q
1 + q . (1 q )3
−
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
56
Distribut¸ia binomial˘ a negativ˘ a Teorema 2.13 Dac˘ a X este o v.a.d. avˆ and o distribut ¸ie binomial˘ a negativ˘ a, dat˘ a ˆın (2.18), atunci E (X ) =
n , p
nq . p2
var(X ) =
a folosim metodele anterioare, calculele se Demonstrat¸ie. In acest caz, dac˘ complic˘a destul de mult. De aceea vom folosi o alt˘ a method˘ a pentru calculul expectant¸ei ¸si dispersiei. Mai precis, vom scrie v.a. X ca ¸si o sum˘ a de variabile aleatoare total independente ale c˘aror valori medii ¸si variant ¸e pot fi calculate mai u¸sor. Deci, consider˘ am urm˘atoarea variabil˘ a aleatoare: X 1 = nr. de experimente efectuate pˆ an˘a la prima aparit¸ie a lui A, X k = nr. of experimente efectuate ˆıntre a (k 1)-a ¸si a k-a aparit¸ie a lui A,
−
pentru k = 2, 3, . . . , n . Aceste v.a. sunt total independente ¸si au o distribut¸ie geometricc˘a cu acela¸si parametru p. Conform teoremei 2.17 avem 1 E (X k ) = , p
var(X k ) =
q , p2
pentru orice k Nn . Intrucˆ at valoarea medie a sumei de v.a. este egal˘ a cu suma valorilor medii (vezi P9’ pag. 52), avem
∈
E (X ) = E (X 1) + . . . + E (X n) = nE (X 1 ) =
n , p
¸si astfel formula pentru E (X ) este demonstrat˘ a. Pentru variant¸a˘ avem var(X ) = var(X 1) + . . . + var(X n) = n var(X 1 ) =
·
nq , p2
datorit˘a faptului c˘a v.a. X 1 , X 2 , . . . , Xn sunt total independente (vezi formula (2.8)).
Distribut¸ia urnelor lui Poisson Teorema 2.14 Dac˘ a X este o v.a.d. avˆ and distribut ¸ia urnelor lui Poisson, dat˘ a ˆın definit ¸ia 2.18, atunci n
E (X ) =
�
pk ,
k=1
n
var(X ) =
�
pk q k .
k=1
Demonstrat¸ie. In acest caz metodele directe duc din nou la calcule foarte complicate, deci vom folosi aceea¸si idee de a scrie X ca ¸si sum˘a de n variabile aleatoare total independente.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
57
Deci, fie X k (1 k n) v.a. reprezentˆ and num˘ arul de bile albe extrase din urna U k . Atunci X k sunt total independente ¸si X poate fi scris ca ¸si
≤ ≤
X = X 1 + X 2 + . . . Xn . Variabila aleatoare X k are distribut¸ia X k :
� � 1 0 pk q k
.
Un calcul simplu arat˘a c˘a E (X k ) = p k ,
E (X k2 ) = p k ,
var(X k ) = p k q k , pentru k
∈ N , n
de unde n
E (X ) =
� �
n
E (X k ) =
i=1 n
var(X ) =
� �
pk ,
i=1 n
var(X k ) =
i=1
pk q k .
i=1
In final s˘a observ˘am c˘a, ˆın cazul cˆand urnele sunt identice ( pk = p), obt¸inem, a¸sa cum era de a¸steptat, expectant¸a ¸si variat¸a distribut¸iei binomiale.
2.12
Inegalitatea lui Markov. Chebˆ a¸sev
Teorema lui
a Propozit¸ia 2.15 (Inegalitatea lui Markov) 8 Fie X o variabil˘ aleatoare ¸si fie a > 0. Atunci E ( X 2) . a2
| | ≥ a) ≤ | |
P ( X
(2.27)
Demonstrat¸ie. Fie Z a o v.a. Z a =
{
1, dac˘a X a, 0, ˆın rest.
| | ≥
Aceast˘a v.a. satisface inegalitatea X 2
2
| | ≥ a · Z , din care rezult˘a c˘a E (|X | ) ≥ a E (Z ) = a P (|X | ≥ a). 2
2
a
a
2
Urm˘atorul rezultat, cunoscut sub numele de teorema lui Cebˆ a¸sev9 , poate fi folosit˘a pentru determinarea unei margini inferioare pentru probabilitatea ca o variabil˘a aleatoare Y s˘a apart¸in˘a unui interval [µ kσ,µ + kσ] din jurul valorii medii µ.
−
8 9
Andrey Markov (1856-1922), matematician rus. Pafnuty Lv´ ovich Cebˆa¸sev (1821-1894), matematician rus.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
58
Teorema 2.16 (Cebˆ a¸sev) Fie Y o variabil˘ a aleatoare cu valoarea medie µ 2 ¸si variant ¸a σ finite. Atunci, pentru orice constant˘ a ε1 > 0, avem
| − µ| ≥ ε σ) ≤ ε1 .
P ( Y
1
2 1
(2.28)
− E (Y ) ¸si a = ε σ,
Demonstrat¸ie. Dac˘a ˆın inegalitatea (2.27) se ia X = Y concluzia se obt¸ine imediat.
1
Inegalitatea (2.28) se poate scrie de asemenea ca ¸si
| − µ| < ε σ) ≥ 1 − ε1 ,
P ( Y
1
2 1
sau, dac˘a se noteaz˘ a ε = σε1 , , sau | − E (Y )| ≥ ε) ≤ var(Y ) ε var(Y ) P (|Y − E (Y )| < ε) ≥ 1 − . ε
P ( Y
2
2
(2.29)
arul de client ¸i care intr˘ a ˆıntr-un magazin ˆıntr-o zi, notat Exemplul 2.8 Num˘ cu Y , a fost observat pentru o perioad˘ a lung˘ a de timp ¸si s-a g˘ asit c˘a exist˘ a ˆın medie de 20 client ¸i, cu o deviat ¸ie standard de 2 client ¸i 10 . Probabilitatea distribut ¸iei lui Y este necunoscut˘ a. Ce se poate spune despre probabilitatea ca a doua zi Y s˘ a fie ˆıntre 16 ¸si 24? a g˘asim P (16 < Y < 24). Pentru orice ε > 0, inegalitatea Solut ¸ie. Trebuie s˘ (2.29) se poate scrie ca ¸si σ 2 . ε2
P (µ
− ε < Y < µ + ε) ≥ 1 − Pentru µ = 20 ¸si σ = 2, rezult˘ a c˘a µ − ε = 16 ¸si µ + ε = 24 dac˘ a ε = 4. Astfel,
2 2 3 P (16 < Y < 24) 1 = . 42 4 Aceasta ˆınseamn˘a c˘a totalul client¸ilor de a doua zi va fi ˆıntre 16 ¸si 24 cu o probabilitate de cel put¸in 3/4. S˘a observ˘ am c˘a, dac˘a σ ar fi fost egal cu 1,
≥ −
P (16 < Y < 24)
≥ 1 − 41
2
=
15 . 16
Deci valoarea lui σ are un efect considerabil asupra probabilit˘ a¸t ilor asociate cu intervale.
2.13
Legile numerelor mari
Legile numerelor mari (LNM), numite ¸si teoremele de aur ale calculului probabilit˘ at ¸ilor , sunt teoreme care descriu stabilitatea pe termen lung a unei variabile aleatoare. De exemplu, cˆand se arunc˘a un zar de un anumit num˘ ar de ori, media punctelor va fi stabil˘a ˆın jurul valorii medii 3.5 (vezi exemplul 2.7, pag. 50), atunci cˆ and num˘ arul de arunc˘ ari devine mare. 10
Modul de estimare al deviat¸iei standard dup˘a multe observat¸ii este subiectul statisticii matematice, netratat ˆın acest material.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
59
Forme ale LNM a a numerelor mari Legile numerelor mari exist˘a ˆın dou˘ a forme: legea slab˘ (LSNM) ¸si legea tare a numerelor mari (LTNM) . Ambele afirm˘a c˘a media de select¸ie converge c˘ atre valoarea medie, diferent¸a dintre ele fiind tipul de convergent¸a˘. Definit¸ia 2.25 Un ¸sir (X n )n∈N de variabile aleatoare converge ˆın proba p bilitate c˘ atre o variabil˘ a aleatoare X (¸si not˘am X n X ) dac˘ a
−→
lim P ( X n
| − X |) < ε = 1, pentru orice ε > 0.
n→∞
(2.30)
Un ¸sir (X n )n∈N de variabile aleatoare converge aproape sigur la o variaa.s. bil˘ a aleatoare X (¸si not˘ am X n X ) dac˘ a
�
−→
�
P lim X n = X = 1, pentru orice ε > 0. n→∞
a.s.
(2.31)
p
Se poate ar˘ ata c˘ a, dac˘a X n X , atunci X n X , dar implicat¸ia invers˘a p nu este adev˘ arat˘a ˆın general. Totu¸si, se poate ar˘ a ta c˘ a, dac˘a X n X , a.s. atunci exist˘a un sub¸sir (X nk )k∈N astfel ˆıncˆ at X nk X. Din aceste motive, convergent¸a ˆın probabilitate este numit˘ a convergent¸a˘ slab˘ a, ˆın timp ce convergent¸a aproape sigur˘ a este cunoscut˘ a cu numele de convergent¸a˘ tare.
−→
−→
−→
−→
Definit¸ia 2.26 (Legea slab˘ a a numerelor mari) Un ¸sir (X n )n∈N de variabile aleatoare cu E (X n ) < pentru orice n N se supune LSNM dac˘ a
∞
∈
n
� − (� − 1 n
1 lim P n→∞ n
(X k
E (X k ))
k=1
n
(X k
p
−→ 0,
adic˘ a
E (X k )) < ε = 1,
k=1
∀ε > 0.
(2.32)
In continuare d˘ am cˆateva teoreme referitoare la LSNM.
Teorema 2.17 (LSNM, Markov) Fie (X n )n∈N un ¸sir de variabile aleatoare satisf˘ acˆ and urm˘ atoarea condit ¸iei (cunoscut˘ a ca ¸si condit¸ia lui Markov): 1 var (X 1 + X 2 + . . . + X n ) = 0. n→∞ n2 lim
Atunci (X n )n∈N se supune LSNM.
Demonstrat¸ie. Pentru n
∈ N consider˘am media
X n =
1 (X 1 + X 2 + . . . + X n ) . n
Atunci, avem
��
1 P n
n
k=1
X k
− E (X ) k
� ≥ ≤ ε
P
� � − ≥ � ( − ≥ ( 1 n
= P X n
≤
n
X k
E (X k )
ε
k=1
E (X n )
ε
var X n var(X 1 + . . . + X n ) = . ε2 n2 ε2
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
60
In ultima egalitate am folosit inegalitatea lui Cebˆ a¸sev dat˘a ˆın teorema 2.16, pentru Y = X n . Dac˘a facem n se obt¸ine lim P
n→∞
�� 1 n
→∞
n
− E (X )
X k
k
k=1
� ≥ ε
= 0, pentru orice ε > 0,
care este echivalent cu (2.32), de unde deducem c˘ a ¸sirul (X n )n∈N se supune LSNM.
Teorema 2.18 (LSNM, Cebˆ a¸sev) Fie (X n )n∈N un ¸sir de variabile aleatoare independente dou˘ a cˆ ate dou˘ a, pentru care exist˘ a constanta real˘ a 0 < M < astfel ˆıncˆ at
∞
var (X n )
≤ M, pentru orice n ∈ N.
Atunci ¸sirul (X n )n∈N se supune LSNM.
Demonstrat¸ie. Concluzia rezult˘a imediat din faptul c˘a 1 1 var(X + . . . + X ) = (var(X 1 ) + . . . + var(X n)) 1 n n2 n2
≤ M n
¸si din teorema precedent˘ a.
Teorema 2.19 (LSNM, Poisson) Dac˘ a ˆıntr-un ¸sir de repet˘ ari independente ale unui experiment probabilitatea ca un eveniment A s˘ a aib˘ a loc la fiecare ˆıncercare este p, atunci pentru orice ε > 0 avem lim P
n→∞
� − � mn n
p < ε = 1,
unde mn este num˘ arul de aparit ¸ii ale evenimentului A ˆın n ˆıncerc˘ ari. Teorema lui Poisson afirm˘a c˘a ¸sirul de frecvent¸e relative mn/n ale aparit¸iei unui eveniment tinde ˆın probabilitate c˘ atre probabilitatea evenimentului. Demonstrat¸ie. Pentru un experiment consider˘ am variabila aleatoare X :
� � 1 0 p q
, cu q = 1
− p,
care ia valoarea 1 dac˘ a evenimentul A are loc ¸si 0 ˆın caz contrar. Un calcul simplu arat˘a c˘a E (X ) = p ¸si var(X ) = pq . Atunci, pentru fiecare ˆıncercare consider˘am o variabil˘a aleatoare X n = X ¸si observ˘ am c˘a 1 mn np X n = (X 1 + X 2 + . . . + X n ) = ¸si E (X n ) = = p. n n n S¸irul de v.a. (X n )n∈N satisface condit¸ia lui Markov: 1 n2
n
� i=1
var(X i ) =
pq n
−→ 0, n → ∞,
prin urmare, aplicˆ and teorema lui Markov concluzia rezult˘ a imediat.
˘ ¸ I DISC CAPITOLU CAPITOLUL L 2 2.. PROBABI PROBABILIT LIT AT DI SCRE RETE TE
61
Definit¸ia ¸ia 2.27 (Legea tare a numerelor mari) Un U n ¸sir ( r (X X n )n∈N de varisupune LTNM abile aleatoare, cu E (X n ) < pentru orice n N, se supune dac˘ a
∞
∈
n
� − −→ ( �( − 1 n
1 n→∞ n
(X k
E (X k ))
a.s.
0, adic˘ a
k=1
n
P lim
E (X k ) = 0 = 1.
X k
(2.33)
k=1
Vom enunt¸a ¸a f˘ar˘ ar˘a demonstrat¸ie ¸ie dou˘a rezultate privind LTNM. a (X ( X n)n∈N este un ¸sir sir de variabile varia bile aleaTeorema 2.20 (Kolmogorov) Dac˘ toare inde i ndependen pendente te satisf sat isf˘˘acˆ acˆ and n
lim
n→∞
atunci 1 n
� k=1
1 var (X k ) < k2
n
�
(X k
k=1
∞,
a.s.
− E (X )) −→ 0, k
adic˘ a ¸siru si rul l (X n )n∈N se supune LTNM.
Teorema 2.21 (Kolmogorov) Fie (X n )n∈N un ¸sir sir de variabile aleatoare aleatoare independente independent e ¸si si identic identi c distribuite, distr ibuite, astfel ˆıncˆ at E (X n ) = µ < . Atunci
∞
1 n
n
�
X k
k=1
a.s.
−→ µ,
adic˘ a ¸siru si rul l (X n )n∈N se supune LTNM.
2.14 2.14
Prob Proble leme me rezo rezolv lvat ate e
Problema 2.1 (Problema zilei de na¸ stere) stere) Cˆ ate persoane persoan e trebuie trebui e s˘a fie ˆıntr ın tr-o -o sal˘ sa l˘ a ca s˘ a putem paria ˆın ın mod favorabil (cu o prob probabilitate abilitate de succes succes mai mare decˆ at 0.5) c˘ a exist˘ a cel put ¸in dou dou˘˘a persoane persoan e care au aceea¸ aceea¸si si zi de na¸stere? re? In teoria teor ia probabilit˘ proba bilit˘at a¸ilor ¸tilor aceast˘ a problem˘a se mai nume¸ste ste paradoxul zilei zil ei de na¸stere stere . Exis Exist˘ t˘ a 365 zile zile de na¸stere stere posibil posibile, e, deci am fi tentat tentat ¸i s˘a credem c˘ a ar fi nevoie de jum˘atate atate din acest num˘ ar, a r, 183. 183. Rezultatul este oarecum surprinz˘ ator, ator, de fapt num˘ arul a rul cerut cerut fiind 23. Pent Pentru ru 60 sau sau mai mai multe persoane, probabilitatea este mai mare decˆ at at 99%, totu¸si si nu poate p oate fi 100% decˆ at at dac˘ a exist˘a 366 persoane. Solut ¸ie. Fie pn probabilita proba bilitatea tea ca, ˆıntr-o sal˘a cu n persoane, s˘a nu existe nici o zi de na¸stere stere care s˘ a se repete. Presupunem c˘ a pentru pentr u fiecare fiecar e persoan˘ per soan˘a exist˘a 365 zile de na¸stere stere posibile, toate egal e gal probabile. probab ile.11 Atunci pn = 11
365 364 . . . (365 365n
·
· ·
− n + 1) .
Chiar dac˘a am presupus c˘a cele 365 zile de na¸stere stere pot p ot s˘a cad˘a ˆın ın orice zi, evident¸ele ¸ele statistice arat˘a c˘a acest ac est lucru nu este est e adev˘ a dev˘arat. arat.
˘ ¸ I DISC CAPITOLU CAPITOLUL L 2 2.. PROBABI PROBABILIT LIT AT DI SCRE RETE TE
62
Pentru problema noastr˘a, a, trebuie s˘ a g˘asim asim valoarea minim˘a a lui n pentru care 1 pn > 0.5 (sau, echivalent pn < 0.5). Evalu Evaluˆand aˆnd q n = 1 pn pentru diferite valori ale lui n, g˘asim as im c˘a
−
−
n = 15 n = 20 n = 21 n = 22 n = 23
q n = 25. 25.29% q n = 41. 41.14% q n = 44. 44.36% q n = 47. 47.56% q = 50 .72%
n = 30 n = 40 n = 50 n = 57 n = 100
n
q n q n q n q n q n
= 70. 70.63% = 89. 89.12% = 97. 97.03% = 99. 99.01% = 99. 99.99996%
probabilitatea abilitatea Problema Problem a 2.2 (Aceea¸si si zi de na¸stere stere cu tine) Care este prob ca ˆıntr ın tr-o -o sal˘ sa l˘ a cu n persoane cineva cin eva s˘a aib˘ aiba˘ aceea¸si si zi de na¸stere st ere ca ¸si si tine? ti ne? Solut ¸ie. Fie q n probabilitatea evenimentului contrar An , ca nimeni din sal˘a s˘a nu aib˘a aceea¸si si zi de na¸stere stere cu tine. Atunci An poate fi scris ca ¸si si un produs de n evenimente independente, An = B 1
∩B ∩···∩B , 2
n
unde Bk (1 k n) este evenimentul persoana k nu are ace aceea¸ ea¸si si zi de na¸stere st ere ca tine ti ne . Probabilitatea fiec˘arui B arui B k este
≤ ≤
≪
≫
P ( P (Bk ) =
364 , 365
ˆıntr ın truc ucˆ at aˆt exist˘a 364 cazuri favorabile favorabile (toate zilele dintr-un dintr-un an, cu except ¸ia zilei tale) ¸si si 365 cazuri posibile. p osibile. Prin urmare, probabilitatea cerut˘ a va fi sn = 1
− q
n
=1
�− � 364 365
n
.
Calculul arat˘a c˘a, a, pentru n = 23 persoane, persoane, probabi probabilit litatea atea este s23 = 6.1%, ¸si sn ˆınce ın cep p e s˘a devin˘a mai mare decˆat at 0.5 pentru n 253, care este semnificativ mai mare decˆat at 365/ 365/2 = 185. 185.5 .
≥
Problema Problem a 2.3 (Partida neterminat˘ netermina t˘ a) a) Aceast Aceasta a este es te o veche ¸si si clas c lasic˘ ic˘ a problem˘ a din teoria probabilit˘ at ¸ilor. Consider˘ am dou˘ a echipe, A ¸si si B, presupuse de fort ¸e egale. egale. Ele sunt ˆın competit ¸ie pentru un premiu, primit de prima echip˘ a care cˆ a¸stiga ˘ n jocuri. Dup˘ a ce A a cˆ a¸stigat i jocu j ocuri ri ¸si si B a cˆ a¸stig ti gat j jocuri ( i, j < n), n), competit ¸ia este es te ˆıntrer ın trerup upt˘ t˘ a ˆın mod nea¸step st epta tatt ¸si si trebui treb uiee s˘ a decidem cum s˘ a se ˆımpart ım part˘ a ˘ premiu prem iull ˆın bani. bani . problema˘ a stˆarnit arnit mult interes inter es ˆınc˘a de la ˆınceputurile istoSolut ¸ie. Aceast˘a problem˘ riei teoriei probabilit˘at a¸ilor. ¸t ilor. Lista urm˘ urmatoare a˘toare ne d˘ a sugestii despre proport¸ia ¸ia pe care A trebuie s˘a o primeasc˘a. a. Pacio acioli li (149 (1494) 4) Tarta artagl glia ia (155 (1556) 6) Fores oresta tani ni (160 (1603) 3)
: i/( i/(i + j) j ), : (n + i j) j )/2n, : (2n (2n 1 + i + i j) j )/(4n (4n
−
−
−
2). − 2).
Problema a fost rezolvat˘ a de c˘atre atre Fermat ¸si si Pascal Pasca l ˆın 1654, 165 4, coresp c oresponden ondent¸a t dintre ace¸stia stia care a condus c ondus ˆın final fi nal la g˘ gasirea a˘sirea solut¸iei ¸iei problemei este prezentat˘a ˆın ın [5]. Ideea a fost ca fiecare echip˘ a s˘a primeasc˘ a o fract¸ie ¸ie din premiu egal˘a cu probabilitatea ca aceasta s˘ a cˆa¸ a¸stige stige jocurile joc urile r˘ amase. amase. Deci, num˘arul arul
˘ ¸ I DISC CAPITOLU CAPITOLUL L 2 2.. PROBABI PROBABILIT LIT AT DI SCRE RETE TE
63
de jocuri de care A are nevoie ca s˘ a cˆa¸ a¸stig st igee este es te k1 = n i ¸si si nu num˘ m˘arul arul de jocuri de care B are a¸stig st igee este es te k2 = n j. Num˘ m˘ arul arul maxim B are nevoie ca s˘a cˆa¸ j . Nu de jocuri care trebuie jucate ˆın ın meciul me ciul r˘ ramas a˘mas este k1 + k2 1. Pentru a cˆ a¸ a¸stiga sti ga compe com petit tit¸ia ¸ia ˆın exact exa ct m m jocuri, jocuri, A A trebuie trebuie s˘ a cˆa¸ a¸stig st igee ult u ltimu imull joc¸si k si k 1 1 din primele m primele m 1 jocuri. Conform schemei binomiale (pag. 39), probabilitatea de a cˆ a¸ a¸stiga k1 1 din cele m 1 jocuri r˘ amase amase este
− − −
−
−
−
−
� − �� � m k1
−
1 1
1 2
m−1
,
(
1 prin urmare probabilitatea ca A s˘a cˆa¸stige ˆın m jocuri va fi 2−m km1− . −1 Posibilele valori pentru m sunt k1 , k1 + 1, . . . , k1 + k + k2 1. In concluz concluzie, ie, probabilitatea probabilitatea ca A s˘a cˆa¸ a¸stig st igee este es te
−
� � −− �
k1 +k2 −1
m=k1
1 m 2m k1
1 . 1
Analog, probabilitatea ca B s˘a cˆa¸ a¸stig st igee este es te
� � −− �
k1 +k2 −1
m=k2
1 m 2m k2
1 . 1
Problema 2.4 (Experimente de capturare si recapturare) Un biolog merge la l a un iaz ¸si si captureaz˘ captureaz˘ a K = 60 pe 60 pe¸¸sti, st i, ˆıi march ma rcheaz eaz˘ a˘ pe fiecare cu o pat˘ a de vopsea ¸si si le d˘ a drumul dru mul ˆınapoi ına poi ˆın iaz. iaz . Dup˘ Dupa˘ o vreme vrem e se ˆıntoarce ın toarce ¸si si captureaz˘ a o alt˘ a mult ¸ime de n = 50 pe¸sti, st i, g˘ asind k = 12 pe¸sti st i marcat ma rcat ¸i ¸si n k = 38 pe¸sti st i nemarcat nem arcat ¸i. Car Caree este este cea mai bun˘ a estimare a biologului despre m˘ arimea populat ¸iei de pe¸ pe¸sti sti din iaz? (Presupunem c˘ a nici un pe¸ste ste nu intr˘ a sau iese din iaz ˆıntre cele dou˘ a vizite).
−
Solut ¸ie. Fie N N num˘arul arul de pe¸sti sti din iaz. Probabilitate Probabilitate de a obt¸ine k pe¸ p e¸sti marcat¸i ¸si n k nemarcat¸i ¸i dintr-o select¸ie ¸ie de n pe¸ p e¸sti sti este (folosind schema hipergeometric˘a pag. 40)
−
( (( K k
pN =
N −K n−k N n
.
Pentru a estima populat¸ia, ¸ia, alegem N N ast a stfe fell ˆıncˆ ın cˆat a t s˘a maximizeze pN . Un calcul simplu ne arat˘a c˘a pN = p N − N −1 deci inegalitatea inegalitatea
va fi echivalent˘a cu
N − − K · N − − n , · N − − K − − (n − k) N pN pN −1
≥1
≤ ≤ Kkn .
N In concluzie, pentru
N =
� � Kn k
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
probabilitatea pN va fi maximizat˘a. S˘a ment¸ion˘ am c˘a, ˆın cazul cˆand N =
Kn , k
64
avem egalitatea
K k = , N n care ˆınseamn˘a c˘a proport¸ia de pe¸sti marcat¸i din populat¸ie coincide cu proport¸ia de pe¸sti marcat¸i din select¸ie. In exemplul nostru N = 60·50 = 250, deci probabilitatea p N este maximi12 zat˘a pentru N = 250.
Problema 2.5 5% din b˘ arbat ¸i ¸si 0.25% din femei au o form˘ a de daltonism. Care este probabilitatea ca o persoan˘ a daltonist˘ a s˘ a fie b˘ arbat? Solut ¸ie. Consider˘am experimentul de a testa o persoan˘ a la ˆıntˆamplare ¸si fie evenimentele A : B1 : B2 :
persoan˘ a testat˘ a este daltonist˘ a , persoan˘ a testat˘ a este femeie , persoan˘ a testat˘ a este b˘arbat .
≪
≫
≪
≫
≪
≫
Atunci S = B1 , B2 este un (SCE) ˆıntrucˆat B1 B2 = ¸si B1 B2 = E , E fiind evenimentul sigur o persoan˘ a este testat˘ a . Deci, A are loc ˆımpreun˘a cu unul (¸si numai unul) din evenimentele lui S . Conform formulei probabilit˘a¸t ii totale avem
{
}
∩
≪
∅
≫
∪
P (A) = P (B1 ) P (A B1 ) + P (B2 ) P (A B2 ).
·
|
·
|
Probabilit˘a¸t ile implicate aici sunt 1 P (B1 ) = , 2
P (A B1 ) =
|
5 , 100
P (B2 ) =
1 2
P (A B2) =
|
0.25 , 100
prin urmare P (A) = 2.62%. Presupunem acum c˘ a experimentul de testare a fost realizat ¸si evenimentul A a avut loc, adic˘a persoana testat˘ a este daltonist˘a. Ni se cere probabilitatea P (B2 A), adic˘a probabilitatea ca persoana s˘ a fie b˘ arbat, ¸stiind deja c˘a este daltonist˘ a. Aceasta poate de asemenea fi interpretat˘ a ca ¸si probabilitatea ca realizarea evenimentului A s˘a fie datorat˘a evenimentului B2 din (SCE) S . Pentru a calcula probabilitatea cerut˘ a folosim formula lui Bayes
|
P (B2 A) =
|
P (B1 ) P (A B1 ) = 0.9523 . . . , P (A)
·
|
astfel probabilitatea ca o persoan˘ a daltonist˘a s˘a fie b˘arbat este 95.23%.
Problema 2.6 (Genetic˘ a) O femeie are un frate bolnav de hemofilie ¸si doi p˘ arint ¸i care nu au hemofilie. Dac˘ a ea are doi b˘ aiet ¸i s˘ an˘ ato¸si, care este probabilitatea ca ea s˘ a fie purt˘ atoare? Solut ¸ie. Este cunoscut faptul c˘a hemofilia este cauzat˘ a de o gen˘a recisiv˘ ah pe cromozomul X ¸si c˘a o femeie are ultima pereche de cromozomi XX , ˆın timp ce un b˘arbat are XY . Un copil va mo¸steni un cromozom de la mam˘a ¸si unul de la tat˘a.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
65
Intrucˆ at fratele este bolnav, el trebuie s˘a fie X hY (unde X h este de la mam˘a ¸si Y de la tat˘a). Din faptul c˘a mama este s˘an˘atoas˘a, deducem c˘ a ea este este X h X H . Aceasta pentru c˘ a gena s˘an˘atoas˘a H este dominant˘ a peste gena recisiv˘ a h ¸si deci, ˆıntrucˆat mama este purt˘atoare, ea are o gen˘ a bolnav˘a h. Tata trebuie s˘ a aib˘a prin urmare X H Y , pentru c˘a dac˘ a ar avea X h Y ar ˆınsemna c˘a este bolnav. In concluzie, p˘ arint¸ii sunt X h X H ¸si X H Y . In aceast˘ a situat¸ie, copiii lor ar putea fi: X hX H X H X H X h Y
X H Y
.
Deci, pentru o fiic˘a, ¸sansele s˘ a fie purt˘ atoare sunt 50%. Dac˘ a ea este purt˘ atoare, atunci probabilitatea ca fiii s˘ ai s˘a aib˘a boala este 50% (ˆıntrucˆat fiii s˘a i pot fi sau X h Y , sau X H Y ). Deci, s˘a consider˘am urm˘atoarele evenimente: B : A :
≪
≪
femeia este purt˘ atoare femeia are doi fii s˘an˘ato¸si ≫
≫
Ni se cere probabilitatea P (B A), care poate fi calculat˘ a cu formula lui Bayes. Mai ˆınt˘ai folosim formula probabilit˘a¸t ii totale
|
P (A) = P (A B)P (B) + P (A B)P (B) =
|
|
1 1 1 5 +1 = . 4 2 2 8
·
·
Probabilitatea P (A B) a fost calculat˘a in felul urm˘ator: ea este X h X H , prin urmare un fiu poate fi sau X hY (caz ˆın care este bolnav), sau X h X H (caz ˆın care este s˘ an˘atos). Deci probabilitatea ca un fiu s˘ a fie s˘an˘ atos este 1/2. Acum, formula lui Bayes ne d˘a
|
P (A B)P (B) P (B A) = = P (A)
|
|
1 8 5 8
1 = . 5
a cineva joac˘ a la rulet˘a ¸si pariaz˘ a 1 C pe negru, atunci Problema 2.7 Dac˘ 18 19 cˆ a¸stig˘ a 1 C cu probabilitatea 37 ¸si pierde 1 C cu probabilitatea 37 . a) Care este valoarea a¸steptat˘ a a cˆ a¸stigului? 18 b) Dac˘ a ruleta este una american˘ a, unde probabilitatea de cˆ a¸stig este 38 , ˆın 20 timp ce probabilitatea de a pierde este 38 , care este ˆın acest caz valoarea a¸steptat˘ a a cˆ a¸stigului? c) O persoan˘ a joac˘ a la ruleta american˘ a ¸si pariaz˘ a 1 pe negru de 19 ori. Care este valoarea a¸steptat˘ a a cˆ a¸stigului s˘ au? Solut ¸ie. a) V.a. reprezentˆ and cˆ a¸stigul este X :
�
1 18 37
−1 19 37
�
.
Valoarea ei medie va fi E (X ) = 1
19 + (−1) · = −0.0270. · 18 37 37
Aceasta ˆınseamn˘a c˘a pierde ˆın medie 2.70 cent¸i ˆın fiecare joc.
˘ ¸ I DISCRETE CAPITOLUL 2. PROBABILIT AT
66
b) In cazul al doilea, v.a. reprezentˆand cˆa¸stigul este Y :
�
1 18 38
−1 20 38
�
¸si valoarea sa medie va fi 18 20 + (−1) · = −0.0526$. · 38 38
E (Y ) = 1
(dublul celei din primul caz !!!). c) Pentru i N19 , fie Y i v.a. reprezentˆ and cˆ a¸stigul la al i-lea joc. Atunci 2 E (Y i ) = E (Y ) = 38 , de unde expectant¸a cerut˘ a va fi
∈
−
E (Y 1 + . . . + Y 19 ) = E (Y 1 ) + . . . + E (Y 19 ) = 19
�· − � 2 38
=
−1 $.
Problema 2.8 Un b˘ arbat nu cump˘ ar˘ a niciodat˘ a bilet de autobuz. El presupune c˘ a exist˘ a o probabilitate de 0.05 de a fi prins. Prima amend˘ a nu cost˘ a nimic, a doua cost˘ a 20 lei, ¸si amenzile urm˘ atoare cost˘ a 40 lei fiecare. In aceste ipoteze, care este costul a¸steptat a 100 de c˘ al˘ atorii f˘ ar˘ a s˘ a pl˘ ateas˘ a, ˆın comparat ¸ie cu costul a 100 bilete de autobuz, dac˘ a biletul pentru o c˘al˘ atorie cost˘ a 2 lei? Solut ¸ie. Fie p = 0.05 probabilitatea s˘a fie prins o dat˘ a. V.a. reprezentˆ and suma datorat˘ a ˆın cazul cˆand nu pl˘ate¸ste niciodat˘ a bilet este X :
�
unde pk =
0 20 20 + 40 1 . . . 20 + 40 k . . . 20 + 40 98 p0 + p1 p2 p3 ... pk+2 ... p100
·
( 100 k
pk (1
E (X ) =
− p)
100−k
98
�
�
,
. Atunci
� �
(20 + 40k)
k=0
·
100 pk+2(1 k + 2
− p)
98−k
= 140.98 lei,
care este mai mic decˆat suma cheltuit˘ a ˆın cazul ˆın care pl˘ ate¸ste fiecare c˘al˘atorie (200 lei). Pentru a calcula suma, am folosit argumente similare cu cele din calculul valorii medii a distribut¸iei binomiale.
Problema 2.9 Presupunem c˘a, atunci cˆ and cineva c˘ al˘ atore¸ste cu autobuzul, costul unei c˘ al˘ atorii este 2 lei ¸si c˘ a exist˘a o probabilitate p de a fi controlat. De fiecare dat˘ a cˆ and o persoan˘ a este prins˘ a f˘ ar˘ a bilet, amenda este 40 lei. Care este valoarea maxim˘ a a lui p pentru costul a¸stptat a 100 c˘ al˘ atorii f˘ ar˘ a s˘ a pl˘ ateasc˘ a biletul este mai mic˘ a decˆ at 200 lei (suma pl˘ atit˘ a ˆın cazul ˆın care cump˘ ar˘ a de fiecare dat˘ a bilet)? Solut ¸ie. V.a. reprezentˆ and suma pl˘atit˘a ˆın cazul cˆand nu pl˘ate¸ste niciodat˘a bilet este 40k X : 100 k , k = 0, 1, . . . , 100, 100−k p (1 p) k
�(
−
�
1 prin urmare dac˘ a se consider˘a v.a. X = 40 X , atunci X va avea o distribut¸ie binomial˘a. Conform teoremei 2.9, valoarea sa medie va fi E (X ) = 100 p, de unde E (X ) = 4000 p. Inegalitatea 4000 p 200 implic˘a
pmax =
≤
200 = 0.05 . 4000
Capitolul 3 Teoria grafurilor 3.1 3.1.1
Introducere Grafuri
In lumea real˘a, multe din situat¸ii pot fi descrise prin intermediul unei diagrame care const˘ a dintr-o mult¸ime de puncte ˆımpreun˘ a cu segmente care unesc anumite perechi de puncte. De exemplu, punctele pot fi centre de comunicat¸ii ¸si liniile pot fi leg˘aturi, sau punctele pot fi persoane ¸si segmentele pot uni perechi de prieteni. In asemenea diagrame suntem interesat ¸i ˆın principal dac˘a dou˘a puncte sunt sau nu unite printr-un segment. O reprezentare matematic˘ a a situat¸iilor de acest tip ne conduce la conceptul de graf.
Definit¸ia 3.1 Un graf G const˘ a dintr-o mult ¸ime (finit˘ a) V , ale c˘ arei elemente se numesc vˆ arfuri, ¸si o mult ¸ime E de perechi neordonate cu componentele ˆın V , ale c˘ arei elemente se numesc muchii . De obicei se scrie G = (V, E ) iar muchiile se noteaz˘ a x, y sau mai scurt xy, unde x, y V .
{ }
∈
Observat¸ia 3.1 Intr-un graf, muchia xy coincide cu muchia yx ¸si admitem ca muchie ¸si o pereche xx. Exemplul 3.1 G = (V, E ), cu V = a,b,c,d,f , E = ab, ad, bf, cd, df . Definit¸ia 3.2 Fie G = (V, E ) un graf.
{
Spunem c˘ a dou˘ a vˆ arfuri x, y este muchie.
}
{
}
∈ V sunt adiacente (sau vecine) dac˘ a xy
O muchie este o mult ¸ime de unul sau dou˘ a vˆ arfuri distincte numite extremit˘ at ¸i . Dac˘ a un vˆ arf v este extremitate pentru muchia e, atunci spunem c˘ a v este a este incident˘ arfului v. incident muchiei e ¸si despre e spunem c˘ a vˆ
a ˆıntr-un vˆ O bucl˘ arf v este o muchie care une¸ste vˆarful v cu el ˆınsu¸si. O a extremit˘ at ¸i diferite. muchie proprie este o muchie care une¸ste dou˘ Un graf f˘ ar˘ a bucle se nume¸ste graf simplu . Graful G′ = (V ′ , E ′ ) este numit subgraf al lui G dac˘ a V ′
′
⊆ V ¸si E ⊆ E.
Dac˘ a V 1 V , graful format de vˆarfurile lui V 1 ¸si toate muchiile din E ˆıntre aceste vˆ arfuri este numit subgraf indus de mult ¸imea vˆ arfurilor V 1 .
⊆
67
68
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.1: Reprezentarea grafului din exemplul 3.1. Un subgraf de acoperire al grafului G este un subgraf care cont ¸ine toate vˆ arfurile lui G. Graful G se nume¸ste complet dac˘ a xy
∈ E pentru orice x, y ∈ V , x ̸= y. Observat¸ia 3.2 Fie G = (V, E ) un graf ¸si fie G mult ¸imea tuturor subgrafurilor grafului G. Pe G se poate defini urm˘ atoarea relat ¸ie: H ≼ H ⇐⇒ H subgraf al lui H . (3.1) Se poate demonstra cu u¸surint ¸˘ a c˘ a (G , ≼) este mult ¸ime part ¸ial ordonat˘ a. 1
2
1
2
Pentru definit ¸ia relat ¸iei de ordine part ¸iale ¸si mai multe detalii despre relat ¸ii, a se vedea anexa A, pag. 138.
3.1.2
Gradul unui vˆ arf. Teorema lui Euler pentru grafuri
arf v ˆıntr-un graf simplu G = (V, E ) este Definit¸ia 3.3 Gradul unui vˆ num˘ arul de muchii ale lui G incidente ˆın v. Acesta va fi notat cu δ (v) sau deg (v). Intr-un graf cu bucle, se consider˘ a c˘a fiecare bucl˘ a ˆın v aduce o contribut ¸ie egal˘ a cu 2 la δ (v). Pentru graful din exemplul 3.1, gradele sunt δ (a) = 2, δ (b) = 2, δ (c) = 1, δ (d) = 3, δ (f ) = 2. Relat¸ia dintre suma gradelor ¸si num˘ arul de muchii este dat de teorema 1 lui Euler . a dup˘ a toate vˆarfurile Teorema 3.1 (Euler) Suma valorilor lui δ (v), luat˘ unui graf G = (V, E ), este egal˘ a cu dublul num˘ arului de muchii:
� v∈V
δ (v) = 2 E .
| |
Demonstrat¸ie. O muchie e = xy aduce o contribut¸ie 2 la gradul total: 1 la δ (x) ¸si 1 la δ (y). O consecint¸a˘ imediat˘a a teoremei lui Euler este urm˘ atorul corolar: a un num˘ ar par de vˆ arfuri care au grad Corolarul 3.2 Intr-un graf, exist˘ impar. 1
Leonhard Euler (1707-1783), matematician ¸si fizician elvet¸ian.
69
CAPITOLUL 3. TEORIA GRAFURILOR
3.1.3
Lant¸uri, lant¸uri simple, lant¸uri elementare, cicluri ˆın grafuri
Frecvent folosim grafurile ca ¸si modele pentru situat¸ii practice ˆın care sunt implicate trasee. In aceste situat¸ii, vˆarfurile reprezint˘ a ora¸se/jonct¸iuni ¸si fiecare muchie reprezint˘ a un drum sau o alt˘a form˘a de comunicat¸ ie. Prin urmare avem nevoie s˘ a introducem cˆ ateva not¸iuni suplimentare, pentru a putea manevra aceste situat¸ii practice.
Definit¸ia 3.4 2 Fie G = (V, E ) un graf. ¸ de lungime k (k Un lant
∈ N) ˆın G este un ¸sir ω = ⟨v , e , v , e , v , . . . , e , v ⟩, 0
1
1
2
2
k
k
ai c˘ arui termeni sunt alternativ vˆ arfuri ¸si muchii, astfel ˆıncˆ at, pentru 1 i k, extremit˘ at ¸ile lui ei sunt vi−1 ¸si vi . Spunem c˘ a ω este un lant ¸ ˆıntre v0 ¸si vk sau un (v0 , vk ) – lant ¸. Lant ¸ul ω este deseori reprezentat doar prin ¸sirul de vˆ arfuri v0 , v1 , . . . , vk sau prin ¸sirul de muchii e1 , e2 , . . . , ek .
≤ ≤ ⟨
⟨
⟩
⟩
Un lant ¸ ω 1 ˆın G este numit un sublant a ω1 este un ¸sir ω1 = ¸ al lui ω dac˘ vi , ei+1 , vi+1 , . . . , e j , v j de termeni consecutivi ai lui ω.
⟨
⟩
Un lant ¸ lant ¸ ˆın care toate muchiile (dar nu ¸ simplu ˆın G este un lant neap˘ arat ¸si vˆ arfurile) sunt distincte. Un lant ¸ ˆın care toate vˆ arfurile (¸si implicit ¸ elementar ˆın G este un lant toate muchiile) sunt distincte, cu except ¸ia primului ¸si al ultimului, care pot s˘ a coincid˘ a. Vom folosi de asemenea cuvintele lant ¸/lant ¸ simplu/lant ¸ elementar pentru a numi un graf sau subgraf ale c˘ arui vˆ arfuri ¸si muchii apart ¸in lant ¸ului respectiv. Un lant ¸/lant ¸ simplu/lant ¸ elementar ˆın G este numit ˆınchis dac˘ a primul ¸si ultimul vˆ arf coincid. Un lant ¸/lant ¸ simplu/lant ¸ elementar care nu este ˆınchis se nume¸ste deschis. Un ciclu ˆın G este un lant ¸ simplu ˆınchis. Un ciclu elementar ˆın G este un lant ¸ elementar ˆınchis din G. a vˆ arfuri x, y V , notat˘ a d(x, y) sau dist(x, y), este Distant ¸a dintre dou˘ minimul lungimilor tuturor lant ¸urilor din G, dintre x ¸si y .
∈
¸uri Definit¸ia 3.5 Fie ω1 = x1 , x2 , . . . , xk , ω2 = y1 , y2, . . . , y p dou˘a lant dintr-un graf G = (V, E ), astfel ˆıncˆ at xk = y 1 . Lant ¸ul
⟨
ω1
⟩
⟨
⟩
∪ ω = ⟨x , x , . . . , x , y , . . . , y ⟩ 2
1
2
k
2
p
se nume¸ste reuniunea sau concatenarea lant ¸urilor ω1 ¸si ω2. Dac˘ a un lant ¸ ω cont ¸ine un sublant ¸ ˆınchis ω ′ , atunci ω poate fi redus la un lant ¸ notat ω ω ′ , prin ˆındep˘ artarea din ω a vˆ arfurilor ¸si muchiilor din ′ ω , cu except ¸ia primului ¸si ultimului vˆ arf.
−
2
Not¸iunile corespunz˘atoare din limba englez˘ a sunt: walk = lant ¸, closed walk = lant ¸ ˆınchis , trail = lant ¸ simplu , path = lant ¸ elementar , cycle = ciclu elementar , closed trail = ciclu
70
CAPITOLUL 3. TEORIA GRAFURILOR
In continuare d˘ am cˆateva propriet˘a¸ti ale lant¸urilor unui graf. ¸ ω ˆıntre dou˘ a vˆ arfuri distincte x, y este fie un lant ¸ Propozit¸ia 3.3 Orice lant elementar, fie cont ¸ine un sublant ¸ ˆınchis al lui ω.
Demonstrat¸ie. Dac˘a ω nu este un lant¸ elementar, atunci un sub¸sir al lui ω cuprins ˆıntre dou˘ a vˆarfuri repetate define¸ste un sublant¸ ˆınchis al lui ω. Propozit¸ia 3.4 Dac˘ a exist˘ a lant ¸ˆıntre x ¸si y ˆın G, atunci exist˘ a de asemenea un lant ¸ elementar ˆıntre x ¸si y ˆın G. Demonstrat¸ie. Dac˘a lant¸ul ω nu este elementar, el cont¸ine un sublant¸ ˆınchis ω1 . Lant¸ul ω ω1 este fie elementar, fie cont¸ine un sublant¸ ω2 . In cazul al doilea, consider˘am (ω ω1 ) ω2 ¸si repet˘ am procedura (un num˘ ar finit de ori), pˆan˘a cˆand obt¸inem un lant¸ elementar.
−
−
−
¸ine un ciclu elementar. Propozit¸ia 3.5 Orice ciclu C cont a . Atunci C ∗ nu Demonstrat¸ie. Fie C ∗ un lant¸ ˆınchis de lungime minim˘ are nici un lant¸ ˆınchis propriu deoarece singurele sale vˆ arfuri care se repet˘ a sunt primul ¸si ultimul. In concluzie, C ∗ este un ciclu elementar.
Observat¸ia 3.3 Aceast˘ a proprietate nu este adev˘ arat˘ a dac˘ a C este doar un lant ¸ ˆınchis. Pentru rezultatul urm˘ ator, trebuie s˘ a introducem o nou˘ a terminologie. ¸ime de cicluri elementare care nu au muchii comune Definit¸ia 3.6 O mult C 1, C 2, . . . , Cn este numit˘ a descompunere a lant ¸ului simplu ˆınchis τ , dac˘a aceste cicluri elementare sunt sublant ¸uri pentru τ ¸si dac˘ a reuniunea mult ¸imilor muchiilor lor coincide cu mult ¸imea muchiilor din τ (cu alte cuvinte C 1, C 2, . . . , Cn formeaz˘ a o partit ¸ie a mult ¸imii de muchii din τ ).
{
Propozit¸ia 3.6 Un lant ¸ simplu ˆınchis poate fi descompus ˆın cicluri elementare f˘ ar˘ a muchii ˆın comun. Demonstrat¸ie. Demonstr˘am prin induct¸ie dup˘a k (k = num˘arul de muchii). Pentru k = 1, lant¸ul simplu este o bucl˘a. Presupunem proprietatea adev˘ arat˘ a pentru orice lant¸uri simple ˆınchise cu m muchii ¸si fie τ un lant¸ simplu ˆınchis cu m + 1 muchii. Conform propozit¸iei 3.5, τ cont¸ine un ciclu elementar C . Atunci τ C este un lant¸ simplu ˆınchis avˆ and m muchii. Din ipoteza induct¸iei, τ C poate fi descompus ˆın cicluri elementare f˘ ar˘a muchii comune ¸si prin urmare τ poate fi scris ca ¸si reuniunea acestor cicluri elementare disjuncte ¸si C .
≤
−
≤
−
Definit¸ia 3.7 (Operat¸ii cu grafuri) Fie G = (V, E ) un graf. Prin ¸ ¸ine un subgraf stergerea unei muchii e E din graful graf G, se obt notat G e, care cont ¸ine toate vˆ arfurile lui G ¸si toate muchiile lui G, cu except ¸ia lui e.
−
∈
stergerea unui vˆ arf x Prin ¸ V din graful G, se obt ¸ine un subgraf notat G x, care cont ¸ine toate vˆ arfurile lui G cu except ¸ia lui x ¸si toate muchiile lui G cu except ¸ia celor incidente ˆın x.
−
∈
}
71
CAPITOLUL 3. TEORIA GRAFURILOR
Prin ad˘ ¸ine un alt augarea unei muchii e1 = xy / E la graful G, se obt graf, notat G + e1 , cu mult ¸imea vˆ arfurilor V x y ¸si mult ¸imea muchiilor E e1 .
∈
∪{ }∪{ }
∪{ }
3.1.4
Conectivitate ˆın grafuri
Definit¸ia 3.8 Fie G = (V, E ) un graf. G se nume¸ste conex dac˘ a, pentru oricare dou˘ a vˆ arfuri x, y, exist˘ a un lant ¸ ˆıntre x ¸si y. O component˘ a conex˘ a (sau simplu component˘ a ) a lui G este un subgraf 3 conex maximal S al lui G, ˆın sensul c˘ a S nu este un subgraf propriu al nici unui subgraf conex al lui G.
aietur˘ a sau bridge dac˘ O muchie e E se nume¸ste muchie t˘ a prin ˆınl˘ aturarea lui e cre¸ste num˘ arul de componente conexe.
∈
Cˆand un graf de dimensiuni mici este dat printr-un desen, este destul de u¸sor s˘ a preciz˘ am dac˘ a este conex sau nu. Totu¸si, cˆand un graf are dimensiuni mari sau cˆand este dat ˆın alt mod (de exemplu prin matricea sa de incident ¸˘ a), avem nevoie de algoritmi eficient¸i pentru a decide dac˘ a este conex sau nu. Un asemenea algoritm este prezentat ˆın paragraful 3.2.1, pag. 81. Urm˘atoarea teorem˘ a afirm˘a c˘a orice graf G care nu este conex poate fi descompus ˆın componente conexe. Important¸a sa este semnificativ˘a deoarece multe propriet˘ a¸t i ale grafurilor pot fi stabilite pentru fiecare component˘ a conex˘a a sa. Din acest motiv, teoremele despre grafuri sunt deseori demonstrate doar pentru grafuri conexe.
Teorema 3.7 (de descompunere ˆın subgrafuri conexe) Pentru orice graf G = (V, E ) exist˘ a un num˘ar (finit) de k subgrafuri conexe G i = (V i , E i ), i Nk , cu urm˘atoarele propriet˘ at ¸i:
∈
1. V i
∩ V = ∅,
2. V =
E i
j
∪ k
V i ,
∩ E = ∅,
∪ k
E =
i=1
pentru orice i, j
j
∈ N , i ̸= j, k
E i .
i=1
Demonstrat¸ie. Pe mult¸imea de vˆarfuri V definim urm˘atoarea relat¸ie: x
∼ y ⇐⇒
x = y
sau exist˘a un (x, y)
− lant¸.
(3.2)
Aceast˘a relat¸ie este o relat¸ie de echivalent¸a˘ pe V , numit˘a relat ¸ia de accesibilitate . Ea induce o partit¸ie V 1 , V 2 , . . . , Vk pe mult¸imea de vˆarfuri V (vezi anexa 3.9.4). Pentru fiecare i Nk , not˘am cu Gi = (V i , E i ) graful indus de submult¸imea de vˆarfuri V i .
{ ∈
}
Apoi trebuie s˘a ar˘at˘am c˘a E s E t =
∩
s = t astfel ˆıncˆat E s
∅ ¸si
∪ k
E i = E . Presupunem c˘ a exist˘a
i=1
∩ E ̸ = ∅ ¸si fie e = xy ∈ E ∩ E . Atunci x, y ∈ V ∩ V , care este o contradict¸ie. R˘ amˆa ne s˘a ar˘at˘am incluziunea E ⊆ E . Fie e = xy ∈ E. Dac˘a x ∈ V ¸si y ∈ V cu s̸ = t, atunci din conexitatea grafului ̸
t
s
t
∪
s
t
k
i
i=1
s
3
t
Pentru definit¸ia unui element maximal a se vedea anexa 3.9.4, pag. 139. Relat¸ia de ordine ˆın acest caz este cea definit˘a ˆın (3.1).
72
CAPITOLUL 3. TEORIA GRAFURILOR
deducem c˘ a exist˘a un lant¸ ˆıntre x ¸si y, adic˘a ˆıntre un vˆarf din V s ¸si un vˆarf din V t , care este o contradict¸ie cu faptul c˘a V s ¸si V t apart¸in unor clase de echivalent¸a˘ diferite. In concluzie x, y apart¸in aceleia¸si clase de equivalent¸˘ a V j . Astfel, e
∈ E
⊆ ∪ k
j
E i .
i=1
O consecint¸a˘ imediat˘a a teoremei 3.7 este urm˘ atorul corolar.
Corolarul 3.8 (Descompunerea ˆ ın componente conexe) Grafurile Gi = (E i , V i ), i Nk , induse de clasele de echivalent ¸˘ a ale relat ¸iei de accesibilitate (3.2), sunt componentele conexe ale grafului G.
∈
Demonstrat¸ie. Presupunem c˘a exist˘ a un subgraf conex al lui G, notat ′ ′ ′ ′ G = (V , E ), astfel ˆıncˆ at G i G . Vom demonstra c˘a G′ = G i . Din Gi G avem V i V ′ ¸si E i E ′ . Presupunem c˘ a exist˘a x V ′ V i . Deoarece Gi G′ ¸si G′ , Gi sunt conexe, vˆ arful x este de asemenea conectat cu toate vˆ arfurile din V i , ˆın contradict¸ie cu construct¸ia lui V i . Apoi, fie e = xy E ′ . Din V ′ = V i avem x, y V i , ¸si prin urmare e E i , deoarece (V i , E i ) este graful indus pe submult¸imea de vˆ arfuri V i . In concluzie, E ′ E i , ¸si astfel demonstrat¸ia este ˆıncheiat˘ a.
≼
≼
⊆
≼
∈
⊆
∈
∈ \
∈
⊆
Acest corolar ne sugereaz˘ a urm˘atoarea definit¸ie alternativ˘ a pentru o component˘a conex˘ a.
Definit¸ia 3.9 O component˘ a conex˘ a a unui graf G = (V, E ) este un subgraf indus de o clas˘ a de echivalent ¸˘ a a relat ¸iei de accesibilitate pe V .
3.1.5
Multigrafuri, grafuri orientate ¸si multigrafuri orientate
In practic˘ a exist˘a situat¸ ii (ca de exemplu ret¸elele electrice), cˆ and trebuie considerate mai multe muchii ˆıntre dou˘ a vˆa rfuri. In aceast˘ a situat¸ie este nevoie de extinderea not¸iunii de graf la o nou˘ a not¸iune, care s˘a admit˘a mai multe muchii ˆıntre aceea¸si pereche de vˆarfuri.
Definit¸ia 3.10 Muchiile multiple (de asemenea numite muchii paa sau mai multe muchii care sunt incidente acelora¸si ralele ), sunt dou˘ dou˘ a vˆ arfuri. Un multigraf este un graf care poate avea muchii multiple. Matematic, un multigraf este alc˘ atuit din: o mult¸ime V de vˆarfuri, o mult¸ime E de perechi neordonate cu componentele ˆın V , ale c˘arei elemente se numesc muchii, o funct¸ie µ : E N 0 , µ(xy) = num˘arul de muchii cu extremit˘ a¸tile x, y. De obicei, un multigraf se noteaz˘ a cu G = (V , E , µ). Terminologia introdus˘a ˆın definit¸iile 3.2, 3.4, este valabil˘a ¸si pentru multigrafuri, cu observat ¸ia c˘a din cele trei notat¸ii date pentru lant¸uri (vezi pag. 69), este corect˘ a doar cea ˆın care sunt specificate atˆ at vˆarfurile cˆat ¸si muchiile. Vom admite de asemenea existent¸a buclelor, iar pentru un multigraf f˘ ar˘a bucle folosim terminologia multigraf simplu .
· · ·
→ ∪ { }
73
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.2: Graful orientat din exemplul 3.2. Conceptele de grafuri ¸si multigrafuri pot s˘ a nu fie suficiente. De exemplu, cˆand avem de-a face cu probleme de trafic, este necesar s˘ a cunoa¸stem care str˘azi ale ret¸elei au sens unic ¸si ˆın ce direct¸ie se poate circula. Evident, doar un graf al ret¸elei de str˘azi nu ne este de folos ˆıntr-o asemenea situat¸ie. Ceea ce avem nevoie este un graf ˆın care fiecare muchie are o anumit˘ a orientare – un graf orientat.
Definit¸ia 3.11 Un graf orientat (sau un digraf ) D const˘ a dintr-o mult ¸ime (finit˘ a) V , ale c˘ arei elemente se numesc vˆ arfuri, ¸si o mult ¸ime A, A V V , ale c˘ arei elemente se numesc arce. De obicei se scrie D = (V, A) ¸si arcele se noteaz˘ a (x, y), cu x, y V .
⊆ ×
∈
Spre deosebire de muchii, arcele sunt perechi ordonate . Astfel, un arc (x, y) une¸ste vˆarfurile x ¸si y ˆıntr-o anumit˘a direct¸ ie (de la x spre y). S˘a mai ment¸ion˘am faptul c˘a, pentru x = y, arcul (x, y) nu coincide cu arcul (y, x).
̸
Exemplul 3.2 D = (V, A), cu V = E =
{a,b,c,d,f }, {(a, b), (b, c), (c, d), (f, d), (f, b), (f, a), (a, f ), (f, b)} .
Definit¸ia 3.12 Fie D = (V, A) un graf orientat. Dou˘ a sau mai multe arce care unesc aceea¸si pereche de vˆ arfuri ˆın aceea¸si direct ¸ie se numesc arce multiple (Dar dou˘ a arce care unesc aceea¸si pereche de vˆ arfuri ˆın direct ¸ii opuse nu sunt arce multiple ! ). Un arc care une¸ste un vˆ arf cu el ˆınsu¸si se nume¸ste bucl˘ a . Un graf orientat f˘ ar˘ a bucle se nume¸ste simplu . Dou˘ a vˆarfuri unite printr-un arc ˆıntr-o direct ¸ie oarecare se numesc adiacente. Vˆ arfurile sunt incidente arcului care le une¸ste. Un arc este incident spre ¸si dinspre vˆarfurile pe care le une¸ste. arful din care pleac˘ a arcul. Extremitatea init ¸ial˘ a a unui arc este vˆ a arcul. Extremitatea final˘ a a unui arc este vˆarful spre care se ˆındreapt˘ Un subgraf orientat (sau subdigraf ) al lui D este un graf orientat ale c˘ arui vˆ arfuri ¸si arce sunt vˆ arfuri ¸si arce ale lui D. Dac˘ a V 1 V , subgraful orientat construit cu vˆarfurile lui V 1 ¸si toate arcele din A care unesc aceste vˆ arfuri se nume¸ste subgraf orientat indus de V 1 .
⊂
74
CAPITOLUL 3. TEORIA GRAFURILOR
Graful suport al unui graf orientat este graful obt ¸inut prin ˆınlocuirea tuturor arcelor din graful orientat prin muchii. arf x este num˘ arul de arce incidente dinspre Gradul exterior al unui vˆ x. Gradul interior al unui vˆ arf x este num˘ arul de arce incidente spre x. Buclele aduc o contribut ¸ie egal˘ a cu 1 la fiecare din aceste grade.
Observat¸ia 3.4 Fie D = (V, A) un graf orientat ¸si fie mult ¸imea tuturor subgrafurilor digrafului D. Ca ¸si ˆın cazul grafurilor, pe se poate introduce urm˘ atoarea relat ¸ie:
D D
H 1
≼ H ⇐⇒ H subgraf orientat al lui H . Se poate ar˘ ata c˘ a (D, ≼) este o mult ¸ime part ¸ial ordonat˘ a . 2
1
2
(3.3)
Teorema 3.9 (Teorema lui Euler pentu grafuri orientate) Suma gradelor interioare s¸i a gradelor exterioare ale vˆ arfurilor unui graf sunt ambele egale cu num˘ arul de arce. Demonstrat¸ie. Fiecare arc aduce urm˘ atoarele contribut¸ii: unu, la gradul exterior al vˆ arfului spre care este incident, unu, la gradul interior al vˆarfului dinspre care este incident.
· ·
3.1.6
Drumuri, drumuri simple, drumuri elementare, cicluri in grafuri orientate
Definit¸ia 3.13
4
Fie D = (V, A) un graf orientat.
Un drum de lungime k (k N) ˆın D este o succesiune finit˘ a ω = v0 , a1 , v1 , . . . , ak , vk ai c˘ arei termeni sunt alternativ vˆ arfuri ¸si arce, astfel ˆıncˆ at, pentru i Nk , arcul ai are extremitatea init ¸ial˘ a vi−1 ¸si extremitatea final˘ a vi . Spunem c˘ a ω este un drum de la v0 la vk sau un (v0 , vk )– drum.
⟨
∈
⟩ ∈
Ca ¸si ˆın cazul grafurilor, un drum ω = v0 , a1 , v1 , . . . , ak , vk poate fi dat de asemenea doar prin ¸sirul vˆ arfurilor sale ω = v0, v1 , . . . , vk sau prin ¸sirul arcelor sale ω = a1 , . . . , ak .
⟨
⟨
⟨
⟩
⟩
⟩
Un drum simplu orientat ˆın D este un drum ˆın care toate arcele (dar nu neap˘ arat vˆ arfurile) sunt distincte. Un drum elementar orientat ˆın D este un drum ˆın care toate vˆ arfurile (¸si implicit toate arcele) sunt distincte, cu except ¸ia primului ¸si ultimului, care pot s˘ a coincid˘ a. Un drum/drum simplu/drum elementar ˆın D se nume¸ste ˆınchis dac˘ a primul ¸si ultimul vˆ arf coincid. Un drum simplu ˆınchis ˆın D se nume¸ste ciclu (cˆ ateodat˘ a ciclu orientat sau circuit ). 4
Not¸iunile corespunz˘atoare din limba englez˘a ˆın cazul grafurilor orientate sunt: digraph = graf orientat , (dar exist˘ a de asemenea terminologia oriented graf , care ˆınseamn˘a ¸si nu se traduce prin graf orientat !), walk = drum , closed walk = drum ˆınchis , trail = drum simplu , path = drum elementar , cycle = ciclu elementar , closed trail = ciclu orientat, circuit . ≪
≫
75
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.3: Un graf orientat ¸si componentele sale conexe. Un drum elementar ˆınchis ˆın D se nume¸ste ciclu elementar . Terminologia introdus˘a ˆın definit¸iile 3.5 ¸si 3.7 este de asemenea valabil˘ a, ˆınlocuind muchiile cu arce.
3.1.7
Conectivitate ¸si conectivitate tare ˆın grafuri orientate
Privind conectivitatea unui graf orientat, lucrurile sunt put ¸in diferite fat¸a˘ de cazul grafurilor. arui Definit¸ia 3.14 Un graf orientat conex este un graf orientat al c˘ graf suport este un graf conex. Un graf orientat neconex este un graf orientat care nu este conex. Un graf orientat este tare conex dac˘ a exist˘ a un drum care une¸ste orice pereche orientat˘a de vˆ arfuri. Un graf orientat este conex dac˘ a graful s˘ au suport este conex. O component˘ a tare conex˘ a a unui graf orientat D este un subgraf tare conex maximal S al lui D, ˆın sensul c˘ a S nu este un subgraf propriu al nici unui subgraf orientat tare conex al lui D. S˘a ment¸ion˘ am faptul c˘a dac˘a un graf orientat este tare conex, atunci el este conex, dar implicat¸ia invers˘a nu este adev˘ arat˘ a ˆın general.
Teorema 3.10 (Descompunerea unui graf orientat ˆın componente tare conexe) Pentru orice graf orientat D = (V, A), exist˘ a o partit ¸ie V 1 , V 2 , . . . , Vk a mult ¸imii V , astfel ˆıncˆ at subgrafurile orientate Di = (V i , Ai ), induse de V i , sunt componentele tare conexe ale lui D.
{
∼ pe V, prin
Demonstrat¸ie. Definim relat¸ia vi
∼ v ⇐⇒ j
i = j
sau
exist˘a un drum, atˆa t de la vi la v j , cˆat ¸si de la v j la vi .
Atunci este o relat¸ie de echivalent¸a˘ pe V , numit˘a relat ¸ia de accesibilitate reciproc˘ a . Aceasta induce o partit ¸ie V l , l Nk a lui V . Pentru l Nk ,
∼
{
∈ }
∈
}
76
CAPITOLUL 3. TEORIA GRAFURILOR
consider˘am subgrafurile orientate Dl = (V l , Al ) induse de V l . Fie s Nk . Vom demonstra c˘a D s este tare conex. Deci fie vi , v j V s , vi = v j . Deoarece vi , v j apart¸in aceleia¸si clase de echivalent¸a˘, vom avea vi v j . Astfel, exist˘a drumurile ω1 = vi , . . . , v j ¸si ω2 = v j , . . . , vi , cu arce din A. Demonstr˘ a m c˘a aceste drumuri au toate arcele ˆın As . Presupunem constrariul, c˘ a exist˘a x∗ / V s astfel ˆıncˆat
∈
∈
⟨
∼
⟩
̸
⟨
⟩
∈
ω1 = vi , . . . , x∗ , . . . , v j .
⟨
⟩
Atunci ω 3 = vi , . . . , x∗ este un drum de la v i la x ∗ ¸si ω4 = x∗ , . . . , v j ω2 ∗ ∗ este un drum de la x la vi . Prin urmare, x = vi , care este o contradict¸ie cu x∗ / V s . In concluzie, atˆat ω 1 cˆat ¸si ω 2 sunt drumuri cu arce din As , deci Ds = (V s , As ) este un subgraf tare conex. Faptul c˘a D s este maximal poate fi ar˘atat folosind acela¸si rat¸ionament ca ¸si ˆın demonstrat¸ia corolarului 3.8.
⟨
⟩
⟨
⟩∪
∈
Ca ¸si pentru grafuri, are loc urm˘ atoarea definit¸ie alternativ˘ a a unei componente tare conexe.
Definit¸ia 3.15 O component˘ a tare conex˘ a a unui graf orientat D = (V, A) este un subfraf orientat indus de o clas˘ a de echivalent ¸˘ a a relat ¸iei de accesibilitate reciproc˘ a pe V . Observat¸ia 3.5 In cazul grafurilor orientate, nu exist˘ a ˆın mod necesar o partit ¸iei a mult ¸imii de arce, adic˘ a k
� ̸
Ai = A,
ˆın general .
i=1
Aceasta ˆınseamn˘ a c˘ a ˆın anumite grafuri orientate exist˘ a arce care nu apart ¸in niciunuia din subgrafurile orientate ale partit ¸iei. Aceste arce au urm˘ atoarea proprietate (vezi figura 3.3): Dac˘a V 1 , V 2 sunt mult¸imile de vˆarfuri a dou˘a componente tare conexe ale lui D, atunci toate arcele ˆıntre V 1 ¸si V 2 au aceea¸si orientare (fie toate dinspre V 1 fie toate spre V 1 ). Spre deosebire de grafurile orientate, ˆın grafuri exist˘ a ˆıntotdeauna o partit ¸ie a muchiilor, a¸sa cum am putut vedea ˆın teorema 3.7. Desigur, ˆın practic˘a este necesar cˆ ateodat˘ a s˘a consider˘ am multigrafuri orientate. Definit¸ia va fi similar˘a cu cea a multigrafurilor.
Definit¸ia 3.16 Un multigraf orientat este un graf orientat care poate avea arce multiple. Matematic, un multigraf orientat const˘ a din: o mult¸ime V de vˆarfuri, o mult¸ime A V V de perechi ordonate cu componentele ˆın V , ale c˘arei elemente se numesc arce, o funct¸ie µ : A N, µ ((x, y)) = num˘ arul de arce de la x la y. De obicei, un multigraf orientat se noteaz˘ a cu D = (V,A,µ). Terminologia introdus˘a ˆın definit¸iile 3.2 ¸si 3.4 este de asemenea valabil˘ a pentru multigrafuri orientate.
· · ·
⊆ × →
77
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.4: Graful G ¸si graful orientat D din exemplul 3.3.
3.2
Reprezentarea grafurilor
Exist˘a mai multe moduri de a reprezzenta un graf/graf orientat: desen, matrice de adiacent¸a˘, matrice de incident¸a˘, lista muchiilor incidente (respectiv listele arcelor care vin ¸si care pleac˘ a).
3.2.1
Matrice de adiacent¸a ˘
¸˘ a A G a grafului (grafului orientat, mulDefinit¸ia 3.17 Matricea de adiacent tigrafului, multigrafului orientat) G cu mult ¸imea de vˆarfuri V = v1 , v2 , . . . , vn este o matrice de dimensiune n n cu elementele (AG )ij = pentru i, j
{
{
×
}
num˘ arul de (vi , v j )– muchii (arce), dac˘ a i = j, num˘ arul de bucle ˆın vi dac˘ a i = j,
̸
∈ N . n
Pe parcursul acestui paragraf vom folosi termenul de graf (resp. graf orientat) ¸si pentru pentru multigrafuri (resp. multigrafuri orientate).
Exemplul 3.3 Pentru graful G ¸si graful orientat D din figura 3.4, matricele de adiacent ¸˘ a sunt, respectiv,
AG =
v1 v2 v3 v4
v1 2 1 1 0
v2 1 0 0 3
v3 1 0 0 1
v4 0 3 1 0
,
AD =
v1 v2 v3 v4
v1 2 1 1 0
v2 0 0 0 2
v3 1 0 0 1
v4 0 1 0 0
Cˆateva propriet˘ a¸t i imediate ale matricelor de adiacent¸a˘ sunt:
.
1. Matricea de adiacent¸a˘ a unui graf (graf orientat) simplu sunt 0 ¸si 1, cu 0 pe diagonala principal˘a; 2. Matricea de adiacent¸˘ a a unui graf este simetric˘a; 3. Dac˘a D = (V, A) este un graf orientat cu V = v1 , . . . , vn ¸si elementele matricei de adiacent¸a˘ sunt aij , i, j Nn , atunci
{
∈
n
�
j=1
}
n
aij = gradul exterior(vi ),
� i=1
aij = gradul interior(v j ).
78
CAPITOLUL 3. TEORIA GRAFURILOR
Dac˘a ˆın matricea din exempul 3.3 vrem num˘ arul de lant¸uri de lungime 2 dintre dou˘ a vˆarfuri, putem s˘ a num˘ar˘am cu u¸surint¸a˘ c˘a exist˘a dou˘a asemenea (v1 , v2 )– lant¸uri, niciun (v2 , v4 )– lant¸ , 4 (v2 , v3 )– lant¸uri, ¸s.a.m.d. Dac˘a se construie¸ste o matrice al c˘ arei element α i,j (i, j Nn) reprezint˘ a num˘arul de (vi , v j )– lant¸uri de lungime 2, aceast˘a matrice va fi egal˘ a cu
∈
6 2 2 4 2 10 4 0 2 4 2 0 4 0 0 10
,
reprezentˆ and exact A2G . In general, are loc urm˘ atoarea proprietate: ¸imea de vˆ arfuri V = Propozit¸ia 3.11 Fie G un graf (graf orientat) cu mult v1 , v2 , . . . , vn ¸si fie AG matricea sa de adiacent ¸˘ a. Atunci valoarea elemen(r) tului a ij al puterii r a matricei A G este egal˘ a cu num˘ arul de (vi , v j )– lant ¸uri (drumuri) de lungime r.
{
}
Demonstrat¸ie. Prin induct¸ie dup˘a r. Pentru r = 1, proprietatea este adev˘arat˘ a. Presupunem c˘ a ea este adev˘arat pentru r. Avem n
(r+1) aij
=
�
(r)
aik akj .
k=1
(r)
In al k-lea termen al acstei sume, factorul a ik reprezint˘ a num˘arul de (vi , vk )– lant¸uri de lungime r ¸si factorul a kj reprezint˘ a num˘arul de (vk , v j )– lant¸uri de (r) lungime 1. Prin urmare, produsul aik akj este egal cu num˘ a rul de (vi , v j )– lant¸uri de lungime r + 1, cu penultimul vˆarf vk . Insumˆand dup˘ a k, obt¸inem num˘a rul total de (vi , v j )– lant¸uri de lungime r + 1, ¸si astfel concluzia este demonstrat˘a.
Observat¸ia 3.6 Egalitatea a( p) a existent ¸a unui (vi , v j )–lant ¸ ij = 0 nu implic˘ de lungime < p. Propozit¸ia 3.11 ne permite s˘a decidem dac˘ a un graf este conex (sau dac˘a un graf orientat este tare conex). Dac˘ a un graf este conex, trebuie s˘a existe lant¸uri (elementare) ˆıntre oricare dou˘ a vˆarfuri. Lungimea fiec˘ arui lant¸ va fi n 1, altfel un vˆarf ar fi vizitat mai mult de o singur˘ a dat˘ a. In concluzie, are loc urm˘ atorul rezultat.
≤ −
Propozit¸ia 3.12 Dac˘ a este matricea de adiacent ¸˘ a a unui graf (sau graf orientat) G cu n vˆ arfuri ¸si
A
T
n−1
=
2
A+A
+ . . . +
n−1
A
,
atunci G este conex (respectiv tare conex) dac˘ a ¸si numai dac˘ a fiecare element ne-diagonal al lui n−1 este > 0.
T
∈
̸
k
A
Demonstrat¸ie. Fie fie i, j Nn , i = j.
(k)
= (aij )i,j∈Nn pentru k
∈ N , T n−1
n−1
= (tij )i,j∈Nn ¸si
⇒ Presupunem c˘a G este tare conex. Atunci exist˘a un (v , v )– lant¸, de o anumit˘ a lungime k, k ∈ N . Astfel, a > 0 ¸si prin urmare t > 0. i
n−1
(k) ij
j
ij
79
CAPITOLUL 3. TEORIA GRAFURILOR
⇐ Dac˘a t
(k)
> 0, atunci exist˘a k Nn−1 astfel ˆıncˆat a ij > 0. Deci, exist˘a un (vi , v j )– lant¸ (de lungime k), prin urmare G este tare conex.
∈
ij
Pentru graful orientat din exemplul 3.3 avem A2D =
4 2 0 2
0 2 0 0
2 2 0 0
0 0 0 2
, A3D =
8 6 0 4
0 0 0 4
4 2 0 4
0 4 0 0
T ,
3
=
4 2 0 2
0 2 0 0
2 2 0 0
0 0 0 2
,
prin urmare graful orientat D nu este tare conex, ¸si aceasta pentru c˘ a nu exist˘a nici un lant¸ ˆıntre v3 ¸si orice alt vˆarf. In cazul ˆın care suntem interesat¸i doar dac˘ a exist˘a cel put ¸in un (vi , v j ) – lant ¸ ¸si nu ne interesaz˘a num˘arul lant¸urilor, putem folosi matrice booleene. O matrice de adiacent¸a˘ boolean˘ a a unui graf (graf orientat) G cu mult¸imea de vˆarfuri V = v1 , . . . , vn are elementele
{
}
{
1, dac˘a exist˘a cel put¸in o muchie (arc) (vi , v j ), 0, ˆın rest. Pentru graful din exemplul 3.3, matricele booleene sunt bij =
BG =
1 1 1 0
1 0 0 1
1 0 0 1
0 1 1 0
, BD =
1 1 0 0
0 0 0 1
1 0 0 1
0 1 0 0
.
Puterile ¸si sumele acestor matrice vor fi calculate utilizˆ and aritmetica boo5 lean˘ a . In aceast˘ a aritmetic˘ a, numerele sunt 1 ¸si 0 (cˆ ateodat˘ a folosite ca ¸si adev˘ arat ¸si fals ), suma ¸si produsul notate ¸si , ¸si definite ca ¸si
⊕ 0 1
⊕ ⊙ ⊙ 0 1
0 1 0 1 1 1
0 1
0 0 0 1
Avantajul aritmeticii booleene ˆın programare este c˘a necesit˘ a mai put¸in˘a memorie ¸si timp. Operat¸iile ¸si pentru matrice booleene sunt definite ca ¸si ˆın cazul matricelor reale, cu ˆın loc de + , ˆın loc de , ¸si au propriet˘a¸tile
⊕ ⊙ ⊕ ⊙ · A ⊕ A = A, A ⊙ I = I ⊙ A = A, A ⊙ (B ⊕ C ) = A ⊙ B ⊕ A ⊙ C.
Pentru o matrice boolean˘ a B vom folosi notat¸iile B [2] = B
⊙ B,
B [ p] = B [ p−1]
⊙ B, pentru p ≥ 3.
am graful orientat din figura 3.5. Matricea sa booExemplul 3.4 Consider˘ lean˘ a de adiacent ¸˘ a va fi
B=
5
0 0 0 0 1
1 0 0 1 0
0 1 0 0 0
0 0 1 0 1
1 0 0 0 0
,
Dup˘a numele lui George Boole (1815-1864), matematician ¸si filozof britanic, inventatorul algebrei booleene, baza aritmeticii calculatoarelor.
80
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.5: Graful orientat din exemplul 3.4.
B [2] =
B [4] =
[2]
[3]
1 0 0 0 0
= B 0 1 0 0 1 0 0 1 1 0
⊕B ⊕B ⊕B 1 1 1 0 0
0 0 0 0 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 1
0 0 0 0 1
R
¸si atunci, cu notat ¸ia
4
1 1 0 0 0
R
, B [3] =
,
4
=
[4]
, 0 0 0 0 1
1 0 0 0 1
1 1 0 0 0 1 1 1 1 1
0 0 1 0 1 1 1 1 1 1
1 0 0 1 1
1 0 0 0 0
1 1 1 1 1
1 0 0 0 1
Are loc un rezultat similar celui dat ˆın propozit¸ia 3.11, anume:
,
.
Propozit¸ia 3.13 Fie B matricea boolean˘ a a unui graf (graf orientat) cu [ p] [ p] n vˆ arfuri ¸si fie p N. Not˘ am cu aij elementele matricei B [ p] ¸si cu rij elementele matricei p = B B [2] . . . B [ p] . Sunt adev˘ arate urm˘ atoarele afirmat ¸ii, pentru i = j :
∈ R ̸
⊕
⊕ ⊕
[ p] 1. Dac˘ a aij = 1, atunci exist˘ a un (vi , v j )- lant ¸ de lungime = p, [ p]
2. Dac˘ a aij = 0, atunci nu exist˘ a niciun (vi , v j ) - lant ¸ de lungime = p, [ p]
3. Dac˘ a rij = 1, atunci exist˘ a un (vi , v j ) - lant ¸ de lungime
≤ p,
[ p]
4. Dac˘ a rij = 0, atunci nu exist˘ a niciun (vi , v j ) - lant ¸ de lungime
≤ p.
Demonstrat¸ie. Demonstrat¸ia se face analog cu cea din propozit¸ia 3.11. Calcularea sumei p = B B [2] . . . B [ p] poate fi prea costisitoare pentru n mare. Putem deduce acelea¸si concluzii ca ¸si ˆın 3. ¸si 4., folosind matricea p = I ın loc de p . Aceast˘a matrice schimb˘a doar diagonala p ˆ principal˘a, ˆın schimb are urm˘atoarea proprietate:
R
B
⊕ R
⊕R
⊕ ⊕
Propozit¸ia 3.14 Dac˘ a B este o matrice boolean˘ a ¸si C = I C [ p] = I
[2]
⊕ B ⊕ B ⊕ . . . ⊕ B
[ p]
,
⊕ B, atunci pentru orice p ∈ N.
Demonstrat¸ie. Prin induct¸ ie. Pentru p = 1, concluzia este adev˘ arat˘ a. Presupunem c˘ a este adev˘ arat˘ a pentru p. Avem C [ p+1] = C [ p] = =
(
[2]
[ p]
⊙ C = I ⊕ B ⊕ B ⊕ . . . ⊕ B ⊙ (I ⊕ B) I ⊕ (B ⊕ B) ⊕ (B ⊕ B ) ⊕ . . . ⊕ (B ⊕ B ) ⊕ B I ⊕ B ⊕ B ⊕ . . . ⊕ B , [2]
[2]
[2]
[ p+1]
[ p]
[ p]
[ p+1]
CAPITOLUL 3. TEORIA GRAFURILOR
81
¸si folosind principiul induct¸iei, concluzia este demonstrat˘ a.
O aplicat¸ie important˘ a a acestei propriet˘ a¸t i este urm˘atoarea: Date fiind dou˘a vˆarfuri distincte vi , v j ale unui graf (graf orientat), se poate determina lungimea unui (vi , v j )– lant¸ de lungime minim˘a, calculˆand successiv puterile booleene ale lui C ¸si ˆınregistrˆand prima aparit¸ ie a unui 1 pe pozit¸ia (i, j). Odat˘a ce 1 apare pe o anumit˘ a pozit¸ie (i, j) din C [ p] , va ap˘area pe aceea¸si pozit¸ie ˆın toate matricele C [ p ] cu p′ p. De fapt, exist˘a o metod˘a mai rapid˘a, ˆın care se evalueaz˘ a puterile C [2] , s C [4] , . . . , C [2 ] , . . . ¸si anumite puteri booleene intermediare dintre puterile 2s ¸si 2s+1 , unde pozit¸ia (i, j) se schimb˘ a din 0 ˆın 1. De exemplu, s˘a presupunem c˘a minimumul lungimii unui (vi , v j )– lant¸ este 51, dar este necunoscut. Mai ˆıntˆai calcul˘am C [2] , C [4] , C [8] , C [16] , C [32], g˘asind elementele ′
≥
[4] [8] [16] [32] c[2] ij = c ij = c ij = c ij = c ij = 0. [64]
Apoi, pentru C [64] g˘asim cij = 1 (deci s = 5), prin urmare exist˘ a un (vi , v j ) – lant¸ de lungime l, cu 32 < l 64. k Mai departe, calcul˘ am C [32] C [2 ] , pentru k = 1, 2, 3, 4 (ˆın general calcul˘am pentru k s 1, pˆana la prima aparit¸ie a lui 1). In cazul nostru
≤
≤ −
[32+2]
cij
⊙
= c [32+4] = c [32+8] = c [32+16] = 0, ij ij ij k
deci 48 < l 64. Apoi, calcul˘am C [48] C [2 ] , pentru k = 1, 2 (ˆın general [48+2] [48+4] pentru k s 2, pˆan˘a apare 1) ¸si g˘ asim cij = 0, cij = 1. Astfel, [51] 50 < l 52, ¸si avem nevoie de ˆıncˆ a un calcul s˘ a g˘asim l, anume cij = 1. In total, am efectuat 6+4+2+1=13 operat¸ii, ˆın loc de 50 necesare pentru a calcula puterile booleene succesive ale lui C pˆan˘a la 51. Puterile booleene ale matricei C sunt de asemenea utile pentru determinarea componentelor tare conexe ale unui graf orientat (respectiv componentele unui graf). Mai precis are loc urm˘atorul rezultat.
≤ ≤ − ≤
⊙
Teorema 3.15 (Metoda lui Foulkes de g˘ asire a componentelor) Fie G un graf (graf orientat) simplu cu m muchii (arce), B matrice sa boolean˘ a de p adiacent ¸˘ a, C = I B, ¸si p N astfel ˆıncˆ at 2 m. Atunci dou˘ a vˆ arfuri distncte vi , v j sunt situate ˆın aceea¸si component˘ a (tare) conex˘ a a lui G dac˘ a [2p ] ¸si numai dac˘ a liniile i ¸si j din C sunt identice.
⊕
∈
≥
p
Demonstrat¸ie. Fie i = j ¸si fie αij elementul (i, j) al matricei C [2 ] . Orice lant¸ din G are cel mult m arce, deci, dac˘ a αij = 0, atunci nu exist˘a niciun (vi , v j )– lant¸.
̸
⇒ Presupunem c˘a v , v sunt situate ˆın aceea¸si component˘a. Atunci este imediat faptul c˘a α = α = α = α = 1. Fie ν ̸ = i, ν ̸ = j . i
j
ii
ij
ji
jj
Dac˘a αiν = 1, exist˘a un (vi , vν )– lant¸ ˆın G. Deoarece exist˘a de asemenea un (v j , vi )– lant¸, reuniunea acestor dou˘ a lant¸uri va fi un (v j , vν ) – lant¸, ¸si prin urmare α jν = 1.
Dac˘a αiν = 0, presupunem c˘a α jν = 1, deci exist˘a un (v j , vν )– lant¸. Ca ¸si ˆınainte, deducem c˘a exist˘a un (vi , vν )– lant¸, care este o reuniune a (vi , v j )– lant¸ului cu acest (v j , vν ) – lant¸. Astfel, αiν = 1, care este o contradict¸ie. Prin urmare, α jν = 0. In concluzie, ˆın ambele cazuri obt¸inem αiν = α jν , ˆınsemnˆand c˘ a liniile [2p ] i ¸si j din C coincid.
82
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.6: Graful din exemplul 3.5.
⇐ Presupunem c˘a α
iν
= α jν pentru tot¸i ν .
Din αii = 1 deducem α ji = 1, prin urmare exist˘a un (v j , vi )– lant¸. In acela¸si mod, din α jj = 1 deducem c˘ a αij = 1, de unde exist˘a un (vi , v j )– lant¸. In concluzie, vi ¸si v j sunt situate ˆın aceea¸si component˘a conex˘a.
Pentru graful din exemplul 3.4 avem C [4] = 4 , deci graful are dou˘a componente tare conexe, una cont¸inˆand vˆarfurile v 1 , v5 ¸si cealalt˘a cont¸inˆand vˆarfurile v2 , v3 , v4 .
R
3.2.2
Matrice de incident¸a˘
Definit¸ia 3.18 (Matrice de incident¸˘ a a unui graf ) Fie G = (V, E ) un graf cu V = v1 , v2 , . . . , vn ¸si E = e1 , e2 , . . . , em . Matricea de incident ¸˘ a a grafului G este o matrice I G de dimensiune n m cu elementele
{
(I G )ij = pentru i, j
}
{
×
}
0, dac˘ a vi nu este extremitate a muchiei e j , 1, dac˘ a vi e extremitatea lui e j ¸si e j e muchie proprie , 2, dac˘ a e j este o bucl˘ a ˆın vi .
∈ N . n
¸˘ a este Exemplul 3.5 Pentru graful din figura 3.6, matricea de incident v1 v I G = 2 v3 v4
e1 2 0 0 0
e2 2 0 0 0
e3 1 1 0 0
e4 0 1 1 0
e5 0 1 1 0
e6 0 1 1 0
e7 0 0 1 1
e8 1 0 0 1
.
Cˆateva propriet˘ a¸t i ale matricei de incident¸a˘ a unui graf sunt: 1. Suma elementelor de pe orice linie a matrice de incident ¸˘ a este egal˘ a cu gradul vˆarfului corespunz˘ ator, dac˘ a o bucl˘ a este considerat˘ a ca avˆ and gradul 2; 2. Sum elementelor de pe orice coloan˘ a a unei matrice de incident¸a˘ este 2; 3. Matricea de incident¸a˘ a unui graf G cu n 2 vˆarfuri are rangul n p, unde p este num˘ arul de componente conexe ale lui G.
≥
−
83
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.7: Graful din exemplul 3.6.
Definit¸ia 3.19 (Matricea de incident¸a ˘ a unui graf orientat) Fie D = (V, A) un graf orientat cu V = v1 , v2 , . . . , vn ¸si A = a1 , a2 , . . . , am . Matricea de incident ¸˘ a a grafului D este o matrice I D de dimensiune n m cu elementele
{
(I D )ij = pentru i, j
−
0, 1, 1, 2,
}
{
} ×
dac˘ a vi nu este extremitate a arcului a j , dac˘ a vi este extremitatea final˘ a a arcului a j , dac˘ a vi este extremitatea init ¸ial˘ a a arcului a j , dac˘ a a j este o bucl˘ a ˆın vi .
∈ N . n
¸˘ a este Exemplul 3.6 Pentru graful din figura 3.7, matricea de incident v1 v I D = 2 v3 v4
a1 2 0 0 0
a2 a3 2 1 0 1 0 0 0 0
−
a4 0 1 1 0
a5 0 1 1 0
− −
a6 0 1 1 0
−
a7 0 0 1 1
−
a8 1 0 0 1
−
.
O proprietate imediat˘ a este c˘ a ˆıntr-un graf orientat f˘ar˘ a bucle, suma pe fiecare coloan˘ a este zero.
3.3
Arbori, sortare ¸si c˘ autare
Definit¸ia 3.20 Un arbore este un graf conex f˘ ar˘ a cicluri. Orice subgraf conex al unui arbore se nume¸ste subarbore. O p˘ ar˘ a cicluri (sau, echivalent, o mult ¸ime de arbori). adure este un graf f˘ In figura 3.8 sunt date exemple de arbori. In continuare vom da cˆ ateva propriet˘a¸t i simple ale arborilor.
Teorema 3.16 Intr-un arbore T , oricare dou˘ a vˆ arfuri distincte x, y sunt conectate printr-un lant ¸ unic. at T este conex, exist˘ a un (x, y) – lant¸, notat v0 , v1 , . . . , vr , Demonstrat¸ie. Intrucˆ cu v0 = x, vr = y. Dac˘a exist˘ a un alt (x, y)– lant¸, u0 , u1 , . . . , us , cu u0 = x, us = y, atunci fie i cel mai mic indice pentru care ui+1 = vi+1 . Deoarece ambele lant¸uri se termin˘a ˆın y, ele se vor ˆıntˆalni ˆınc˘a o dat˘ a, ¸si fie j cel mai mic indice astfel ˆıncˆ at j > i ¸si v j = u k pentru un anumit k. Atunci vi , vi+1 , . . . , v j , uk−1 , . . . , ui+1, vi este un ciclu ˆın T , contrar ipotezei.
⟨
⟨
⟩
⟨
̸
⟩
⟩
84
CAPITOLU CAPITOLUL L 3. TEORIA TEORIA GRAFUR GRAFURILOR ILOR
Figura 3.8: Exemple de arbori.
Teorema 3.17 Graful obt ¸inut din arborele T T = (V, E ) prin eliminarea oric˘ arei muchii are dou˘ a componente, fiecare dintre acestea fiind un arbore. Demonstrat¸ie. ¸ie. Presupunem c˘ a uv Definim
′
′
E , E = E \ ∈ E , \ {uv}, ¸sisi fie S = (V, E ).
V 1 = x
V : un unic icul ul (x, v )– lant¸ din T trece T trece prin u}. { ∈ V Pentru orice x ∈ V , unicul (x, (x, v )– lant¸ trebuie trebu ie s˘a se termine termi ne ¸si si s˘ a ˆınce ın ceap ap˘ a˘ cu muchia uv, uv, altfel T T ar cont¸ine ¸ine un ciclu ⟨x , . . . , u , v , . . . , x⟩. Fie V Fie V = V \ arf din V din V este unit cu u cu u printr-un printr-un lant¸ din S din S ¸si si \ V . Fiecare vˆarf 1
2
1
1
fiecare vˆ arf arf din V din V 2 este unit cu v cu v ˆın S ın S .. In concluzie V concluzie V 1 ¸si V si V 2 sunt mult¸imile ¸imile de vˆarfuri arfuri ale celor dou˘ a componente ale lui S . Fiecare component˘ component˘ a este (prin definit¸ie) ¸ie) conex˘ a ¸si si ea nu cont con¸ine ¸tine niciun ciclu, ˆıntrucˆ at at ˆın T ın T nu nu exist˘ exi st˘a ciclur cic luri. i. Astfel, cele dou˘a componente sunt arbori.
Teorema 3.18 Dac˘ a T = (V, E ) este un arbore, atunci E = V
| | | | | − 1.
Demonstrat¸ie. ¸ie. Prin induct¸ie ¸ie dup˘a V . Dac˘a V = 1, concluzia are loc, deoarece unicul arbore care exist˘ a ˆın acest caz nu are cicluri. Presupunem concluzia adev˘ arat˘ arat˘ a pentru un arbore cu k vˆarfuri. arfuri. Fie T T un arbore cu V = k + 1 ¸si si fie uv o uv o muchie a lui T . T . Da Dac˘ c˘ a T 1 = (V 1 , E 1 ) ¸si si T 2 = (V 2, E 2 ) sunt arborii obt¸inut ¸inut¸i ¸i prin eliminarea muchiei uv din T T (vezi teorema 3.17), avem
| |
| |
≤
| |
|V | + |V | = |V | 1
¸si si
2
|E | + |E | = |E |. 1
2
Astfel,
|E | = |E | + |E | + 1 = |V | − 1 + |V | − 1 + 1 = |V | − 1. 1
2
1
2
In a doua egalitate aplic˘ am am ipoteza induct¸iei ¸iei pentru arborii T 1 ¸si si T 2 .
a cˆ ateva moduri Observat¸ia ¸ia 3.7 Concluziile teoremelor 3.16–3.18 furnizeaz˘ alternative de a defini un arbore.
85
CAPITOLU CAPITOLUL L 3. TEORIA TEORIA GRAFUR GRAFURILOR ILOR
Figura 3.9: Construct¸ia ¸ia arborelui cu r˘ad˘ ad˘acina aci na ˆıntr-un ıntr -un vˆarf arf dat r dat r..
3.3. 3. 3.1 1
Arb Ar bori or i cu cu rr˘ ˘ ad ˘ ad˘ acin˘ acin ˘ a
Frecvent, un vˆarf arf al unui arbore poate avea un rol special dintr-un anumit punct de vedere. vedere. De exemplu, exemplu, ˆıntr-un ıntr-un arbore arb ore genealogic genealogic al unei familii familii regale, putem pune ˆın evident¸˘ ¸a˘ pozit¸ia ¸ia special˘a a regelui punˆandu-l and u-l ˆın vˆarful arful arborelui, si pe tot¸i ¸i fiii sub p˘arint arint¸ii ¸ii lor.6 In general vˆ arful arful cu rol special se nume nume¸¸ste st e r˘ si se asocia aso ciaz˘ z˘a o direct¸ie arei muchii, anume de la r ˘ ad˘ acin˘ a ¸si ¸ie fiec˘arei p˘arinte arinte la fiu. ≪
≫
Definit¸ia ¸ia 3.21 Un arbor arui graf graf arbore e orientat este un graf orientat al c˘ suport este un arbore. Un arbore sau arborescent este un arbore a rbore orientat orien tat ˆın car care e arbore cu r˘ ad˘ acin˘ a sau arborescent ¸˘ a este exist˘ a un vˆ arf special r, numit r˘ ast fel ˆıncˆ at pentru orice alt ad˘ acin˘ a , astfel vˆ arf v , exist˘a un drum (unic) de la r la v . Atunci cˆand and se deseneaz˘ a un arbore cu r˘ ad˘ ad˘acin˘ acin˘a, s˘age¸ile ¸tile de pe arce de obicei se omit, omit, deoarece deoarece direct¸ia arcului este ˆıntotdeuna de la r˘ad˘ ad˘acin˘ acin˘a. De asemen ase menea ea rezult rez ult˘˘a c˘ ca˘ drumul de la r˘ad˘ ad˘acin˘ acin˘a la un vˆarf arf dat este unic. ≪
≫
Definit¸ia ¸ia 3.22 Intr-un ancimea ancimea sau nivelul nivelul unui Intr-un arbor arboree cu r˘ ad˘ acin˘ a, adˆ unui vˆ arf v, notat˘ a a depth( depth(v ), este distant ¸a de la r˘ ad˘ acin˘ a, adic˘ a lungimea unicului drum de la r˘ ad˘ acin˘ a la v. Astfel, r˘ ad˘ acina are nivelul 0. Un vˆ arf ˆıntr-un arbore arbore cu r˘ ad˘ acin˘ a se nume¸ste ste frunz˘ a se afl˘ a la a dac˘ nivelul i (i 0) ¸ 0) ¸si si nu este adiacent niciunui vˆ arf de la nivelul i + 1. 1.
≥
interior . Un vˆarf arf car caree nu este o frunz˘ a este un vˆ arf interior unui arbore cu r˘ ad˘ acin˘ a este cel mai ma i mare m are num˘ n um˘ar ar k k pentru care In˘ alt ¸imea unui nivelul k nu este vid. Dac˘ a vˆ arful x precede x precede imediat vˆ arful y pe y pe drumul de la r˘ ad˘ acin˘ a la y, y , atunci x este p˘ si y este copilul arintele sau tat˘ tat˘ al lui y ¸si copilul sau fiul lui x. Fie x, x, y vˆ arfuri distincte ale unui arbore cu r˘ ad˘ acin˘ a. Atunci y y se se nume¸ nu me¸ste st e al lui x x (¸ (¸si x i x se se nume¸ nu me¸ste st e predecesor y ) dac˘ a x x este descendent al predecesor al lui y) situat pe unicul drum de la r˘ ad˘ acin˘ a la y . Fiecare vˆ arf arf (cu except¸ia ¸ia r˘ad˘ ad˘acinii) acinii) are un unic tat˘ a, a, dar un vˆ arf arf poate avea un num˘ar a r arbitra arbitrarr de fii (inclu (inclusi siv v 0). Deci Deci,, un vˆ arf a rf este o frunz˘a dac˘ a ¸si numai dac˘a nu are ar e nici un fiu. De asemenea, un vˆ arf arf este tat˘ a dac˘ a ¸si si numa numaii 6
S˘ a ment¸ion˘ ¸ion˘am a m c˘ a, a, atunci cˆand and se alc˘atuie¸ atuie¸ste ste un arbore genealogic, istoricii pun de obicei regele pe pozit¸ia ¸ia cea mai joas˘a ¸si si desc d escen enden dent¸ii ¸t ii deasupra lui, tocmai ca s˘a se reproduc˘a forma unui arbore arb ore adev˘arat. arat. Cele dou˘a versiuni sunt, desigur, echivalente.
86
CAPITOLU CAPITOLUL L 3. TEORIA TEORIA GRAFUR GRAFURILOR ILOR
dac˘a este un vˆarf arf interior. Arborii cu r˘ad˘ ad˘acin˘ acin˘a sunt de fapt grafuri orientate, direct¸iile ¸ iile arcelor fiind de la un tat˘ a la fiul s˘au. au. Pentr Pentru u simplici simplicitate tate,, vom vom omite s˘aget aget¸ile ¸ile ¸si si terminologia pentru grafuri orientate.
Definit¸ia ¸ia 3.23 Dac˘ a ˆıntr-un arbore arbore cu r˘ ad˘ acin˘ a fiec fiecare are tat˘ a are cel mult m fii, spunem c˘ a avem un arbore m-ar cu cu r˘ ad˘ acin˘ a. In particula particular, r, pentru pentru m = 2, arborele se va numi binar , iar cˆ and m = 3 se va numi ternar . Un arbore cu r˘ ad˘ acin˘ a m-ar, -a r, ˆın care fiecare tat˘ ta t˘a are exac ex act t m fii, se nume¸ num e¸ste st e complet .
3.3. 3.3.2 2
Arbor Arborii de deci decizi zie e
Incepem acest paragraf cu urm˘ atoarea atoarea teorem˘ a: a: alt ¸imea unui arbore m-ar m -ar cu r˘ ad˘ acin˘ a cu k frunze este cel Teorema 3.19 In˘ put ¸in logm k.
Demonstrat¸ie. ¸ie. Fie h ˆınalt a˘lt¸imea ¸imea arborelui. Inegalitatea cerut˘a h
≥ log
mk
(3.4)
este echivalent˘ a cu m cu m h k, deci ar fi suficient s˘ a ar˘at˘ at˘am am c˘a un arbore arb ore m m–– ar h cu r˘ad˘acina, a˘, de ˆın˘ ın alt a˘lt¸ime ¸ime h, are cel mult m frunze. Ar˘at˘ at˘am am acest lucru prin induct¸ie ¸ie dup˘a h. Da Dac˘ c˘ a h = 0, arborele are un singur vˆarf, arf, care este atˆat at frun fr unz˘ z˘a cˆat at ¸si si tat˘ at ˘a, a, deci ec i k = 1, ¸si si astfel astfe l inegal i negalitate itateaa este adev˘ arat˘ arat˘a. a. Presupunem Presupunem acum c˘a inegalitatea este adev˘ arat˘ arat˘ a pentru 0 h h0 ¸si fie T T un arbore m-ar cu r˘ad˘ ad˘acin˘ acin˘a cu ˆın˘ ınalt a˘lt¸ime ¸ime h0 + 1. Da Dac˘ c˘a not˘am a m r˘ad˘ ad˘acina acina cu r, atunci arborele T r (vezi definit¸ia ¸ia 3.7, pag. pag. 70) va va fi format din cel mult m arbori T 1 , . . . , Tm ale c˘aror aror r˘ ad˘ ad˘acini acini sunt vˆarfurile arfurile de la nivelul 1 din T . T . Fiecare Fiecare T i este astfel arbore cu r˘ad˘ ad˘ acin˘ acin˘a, a, de ˆın˘ ınalt a˘lt¸ime ¸ime h0 . Din Din ipoteza ipoteza indu induct ct¸iei, ¸iei, fiecare din ace¸sti sti T i arbori are cel mult mh0 frunze. Frunzele lui T coincid T coincid cu frunzele arborilor T 1 , . . . , Tm , prin urmare num˘arul arul de frunze din T va T va fi mai mic decˆ dec ˆat at m mh0 = m h0 +1 . In concluz concluzie, ie, conform conform princip principiul iului ui induct induct¸iei, ¸iei, inegalitatea inegalitatea k mh este adev˘arat˘ arat˘ a pentru orice h 0.
≥
≤ ≤
− −
≤
·
≥
≤
I n gene g eneral ral num˘ n um˘arul ar ul log log m k nu este ˆıntreg. Inegalitatea (3.4) (3.4 ) Observat¸ia ¸ia 3.8 In poate fi rescris˘ a ca ¸si h logm k , (3.5)
≥⌈
⌉ unde pentru un num˘ ar real x, se x, se noteaz˘ a cu ⌈ ın treg g z ⌈x⌉ cel mai mic num˘ ar ˆıntre astfe as tfell ˆıncˆ ın cˆ at z ≥ ≥ x. Teorema 3.19 se poate p oate aplica ˆın ın studiul arborilor de decizie. Un arbore de decizie este un arbore m-ar -a r ˆın care ca re:: fiecare vˆ arf arf interior reprezint˘ a o decizie,
• • rezultatele posible ale deciziei sunt reprezentate prin muchiile care unesc
vˆarfurile arfurile situate la nivelul urm˘ ator, ator,
• frunzele arborelui reprezint˘a rezultatele finale ale procedurii.
arat sau fals (0 sau 1), In cazul cˆand and rezultatele deciziei sunt doar adev˘arat avem de-a face cu un arbore de decizie binar.
87
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.10: Arborele de decizie pentru exemplul 3.7.
Exemplul 3.7 (Problema falsei monede) Presupunem c˘ a avem o moned˘ a autentic˘ a etichetat˘ a cu 0 ¸si n alte monede, indentice cu 0 ˆın aparent ¸˘ a, cu except ¸ia faptului c˘ a sunt etichetate 1, 2, . . . , n. Se suspecteaz˘ a c˘ a una din monezi poate fi fals˘ a – fie prea u¸soar˘ a fie prea grea. S˘ a se arate c˘ a sunt necesare cel put ¸in log3 (2n + 1) cˆ ant˘ ariri pe o balant ¸˘ a, pentru a decide care moned˘ a (dac˘ a exist˘a vreuna) este fals˘ a, ¸si de asemenea s˘ a se decid˘ a dac˘a ea este mai u¸ woar˘ a sau mai grea. S˘ a se realizeze o procedur˘ a care folose¸ste exact acest num˘ ar de cˆ ant˘ ariri, cˆ and n = 4.
⌈
⌉
Solut ¸ie. Exist˘a 2n + 1 rezultate (frunze ale arborelui de decizie), anume G 1H 1L 2H 2L
. ..
nH
nL,
unde G ˆınseamn˘a c˘a toate monezile sunt bune, kH ˆınseamn˘a c˘a moneda k este mai grea ¸si kL ˆınseamn˘a c˘a moneda k este mai u¸soar˘a. Avem nevoie de un arbore ternar de decizie, deoarece exist˘ a trei rezultate posible ale fiec˘ arei decizii, atunci cˆ and se cˆant˘ aresc dou˘ a mult¸imi de monezi: < : mult¸imea de monezi din stˆ anga este mai u¸soar˘a = : mult¸imile de monezi au aceea¸si greutate > : mult¸imea de monezi din stˆ anga este mai grea Conform teoremei 3.19, ˆın˘ alt¸imea arborelul de decizie va fi log3 (2n + 1) . In cazul n = 4, ˆın˘alt¸imea va fi 2. Procedura care efectueaz˘ a doar dou˘a cˆant˘ariri este ilustrat˘a ˆın figura 3.10. In finalul acestui paragraf ment¸ion˘ am c˘a ˆın problemele de decizie marginea inferioar˘ a logm k dat˘a ˆın (3.5) este una teoretic˘ a. In anumite situat¸ii este posibil˘a construct¸ia unei proceduri din care s˘ a se poat˘a trage concluzia cu doar logm k decizii, dar exist˘a de asemenea situat¸ii cˆand acest num˘ ar nu poate fi atins.
≥⌈
⌉
⌈
⌈
3.3.3
≥
⌉
⌉
Arbori de sortare
Vrem s˘a ordon˘ am cresc˘ ator o list˘a x1 , x2 , . . . , xn de numere dou˘ a cˆate dou˘ a distincte. Algoritmii folosit¸i pentru a rezolva aceast˘ a problem˘ a presupun compararea a dou˘ a numere ¸si (dac˘a e cazul) schimbarea ˆıntre ele. Acest fel de procedur˘ a se poate reprezenta printr-un arbore de decizie, unde un vˆ arf cont¸ine o comparat¸ie a dou˘ a numere, x i ¸si x j . Deoarece exist˘a dou˘a rezultate posibile (xi < x j ¸si x i > x j ), arborele de decizie este unul binar.
88
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.11: Arborele binar asociat listei X . Un algoritm simplu folosit pentru sortare este a¸sa-numitul algoritm bobble sort , unde se compar˘a de fiecare dat˘ a dou˘a numere consecutive, schimbˆ andule ˆıntre ele dac˘ a nu sunt ˆın ordinea cerut˘ a.
Algoritm 1 (Algoritm bobble sort) pentru j = 1, . . . , n pentru i = 1, . . . , n j dac˘ a xi > xi+1 schimb˘ a xi , xi+1
−
Un algoritm mult mai eficient, care folose¸ste arbori binari ¸si are nevoie de mai put¸ine comparat¸ii, este algoritmul heap-sort. In continuare vom descrie pa¸sii acestui algoritm.
Construirea unui arbore neordonat Incepem prin a ata¸sa elementele listei X = x1 , x2 , . . . , xn vˆarfurilor unui arbore binar, astfel: x1 r˘ad˘acina – nivel 0 x2, x3 – nivel 1 x4, x5, x6 , x7 – nivel 2
{
·· ·
}
Astfel, ˆın acest arbore, xk este tat˘a pentru x 2k ¸si x 2k+1, cˆand 2k + 1 n. Ultimul nivel este de obicei incomplet, iar dac˘a n este par, atunci xn/2 are doar un fiu. Algoritmul heap-sort continu˘ a ˆın felul urm˘ator: mai ˆıntˆai, arborele nesortat este transformat ˆıntr-un tip special de arbore pa care ˆıl vom numi heap. Apoi heap-ul este transformat ˆıntr-o list˘a ordonat˘ a y1 , y2 , . . . , yn.
≤
Definit¸ia 3.24 Un heap este un arbore binar, cu un num˘ ar xi asociat fiec˘ arui vˆarf ¸si cu proprietatea c˘a fiecare tat˘ a este mai mic decˆ at fiii s˘ ai (xi < x2i , xi < x2i+1 ). Transformarea unui arbore neordonat ˆıntr-un heap Vom ˆıncepe s˘a compar˘ am tat¸ii (vˆarfurile interne) ˆın ordine invers˘ a (de la cel mai mare nivel spre r˘ad˘acin˘a). Presupunem c˘ a, atunci cˆand ajungem la vˆarful xk , cei doi subarbori cu r˘ ad˘acinile x2k ¸si x2k+1 au fost deja transformat ¸i ˆın heap-uri. Dac˘a xk < xk+1 ¸si xk < x2k+1 nu facem nimic, ˆıntrucˆ at subarborele cu r˘ad˘acina xk este deja heap. Dac˘a nu, stoc˘ am xk temporar ¸si mut˘am pe cel mai mic dintre fiii s˘ai x2k ¸si x2k+1 ˆın vˆarful vacant. Acest lucru creeaz˘ a o nou˘a pozit¸ie vacant˘ a.
89
CAPITOLUL 3. TEORIA GRAFURILOR
Dac˘a x k este mai mic decˆ at fiii vˆarfului vacant sau dac˘a nu are fii, vom ocupa pozit¸ia vacant˘ a cu xk . Dac˘a nu, ocup˘ a m pozit¸ia vacant˘ a cu cel mai mic dintre fii ¸si continu˘ aum. In final vom g˘asi un loc pentru x k cˆand am ajuns la o frunz˘ a, dac˘a nu ˆınainte. Fie heap(k,n) procedura care, dat fiind un vˆarf xk cu proprietatea c˘ a arborii cu r˘ad˘acinile ˆın x 2k ¸si x 2k+1 sunt heap-uri, transform˘ a subarborele cu r˘ad˘acina xk ˆıntr-un heap. Aplicˆand aceast˘ a procedur˘ a pentru k = 12 n , 12 n 1, . . . , 2, 1, ˆıntregul arbore va fi transformat ˆıntr-un heap.
[ � [ �−
Transformarea unui heap ˆıntr-o list˘a ordonat˘ a Intr-un heap, r˘ ad˘a cina are cea mai mic˘a valoare, deci ea va fi primul element y1 al listei ordonate. Locul vacant r˘ amas la r˘ad˘acin˘a este ocupat de ultima valoare xn ¸si vechea frunz˘a xn este ˆınl˘aturat˘a. Avem acum un arbore cu n 1 vˆ arfuri ¸si doi subarbori cu r˘ ad˘acinile x2 ¸si x3 , care sunt heap-uri. Aplic˘am acum procedura heap(1,n-1) pentru a reface proprietatea de heap a ˆıntregului arbore. In noul arbore (care este heap) r˘ ad˘acina are cea mai mic˘ a dintre valorile r˘amase ¸si aceasta este atribuit˘ a lui y2 . Ultima frunz˘ a este ˆınl˘aturat˘a. Refacem acum heap-ul prin heap(1,n-2) ¸si asa mai departe.
−
Exemplul 3.8 Consider˘ am lista X = 79, 27, 81, 49, 50, 11, 99, 87, 40, 95, 55, 73
{
}
Arborele binar asociat acestei liste este reprezentat ˆın figura 3.11, iar pa¸sii construct ¸iei primului heap sunt prezentat ¸i ˆın figura 3.12. Pasul urm˘ ator este prezentat ˆın figura 3.13.
3.4 3.4.1
Arbori binari ¸si coduri binare Arbori binari
Definit¸ ia unui arbore binar a fost dat˘ a la pag. 86. ˆIntr-un arbore binar, consider˘a m c˘a un fiu poate fi sau un fiu stˆang, sau un fiu drept , cu alte cuvinte vom face distinct¸ie ˆıntre fii.
Definit¸ia 3.25 Fie T = (V, E ) un arbore binar ¸si v V . Un subararfului v este un subarbore binar indus de fiul stˆ ang bore stˆ ang (drept) al vˆ (drept) al lui v ¸si de tot ¸i descendent ¸ii acestora.
∈
Deci, putem considera un arbore ca avˆ a nd trei componente: r˘ ad˘acina ¸si subarborii s˘ai stˆang ¸si drept. Acest lucru ne permite s˘ a enunt¸a˘m urm˘atoarea proprietate recursiv˘ a a unui arbore binar: Dac˘a T este un arbore binar de ˆın˘alt¸ime h, atunci subarborii s˘ai stˆang ¸si drept au ambii ˆın˘alt¸imea h 1, cu egalitate pentru cel put¸in unul din ei. Demonstrat¸ia acestei propriet˘ a¸t i este imediat˘ a, prin induct¸ie dup˘ a h.
≤ −
Observat¸ia 3.9 Alte dou˘ a propriet˘ at ¸i imediate ale arborilor binari sunt urm˘ atoarele: alt ¸ime h are 2h+1 1. Un arbore binar complet de ˆın˘
− 1 vˆ arfuri.
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.12: Pasul 1: Transformarea listei neordonate X ˆıntr-un heap.
90
91
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.13: Pasul 2: Extrgerea r˘ ad˘acinii y1 = 11, ¸stergerea ultimei frunze ¸si construct¸ia din nou a unui heap.
Figura 3.14: Un arbore binar de ˆın˘ alt¸ ime 4, cu r˘ad˘acina ˆın r, ¸si subarborii s˘ai stˆang ¸si drept de ˆın˘alt¸ime 3 resp. 2, cu r˘ad˘acinile r 1 resp. r2 . alt ¸ime h are cel mult 2h+1 1 vˆ arfuri. 2. Orice arbore binar de ˆın˘ Demonstrat¸iile acestor propriet˘ a¸t i rezult˘ a imediat prin induct¸ie.
−
3.4.2
Coduri binare
Pentru a codifica informat¸ia, computerul folose¸ste ¸siruri de cifre binare (bit¸i). Cel mai cunoscut mod de codificare este codificarea ASCII, care asociaz˘ a fiec˘arui simbol ¸sir format din 7 bit¸i.
Definit¸ia 3.26 Un cod binar este o asociere de ¸siruri de bit ¸i unei mult ¸imi de simboluri. Pentru anumite aplicat¸ ii, este de dorit s˘a avem codific˘ari ˆın care codurile sa aib˘a lungime variabil˘a. Deci s˘a consider˘am urm˘ atoarele trei exemple de codific˘ ari: (c1) x1 (c2) x1 (c3) x1
→ 00 → 0 → 0
x2 x2 x2
→ 01 x → 10 → 10 x → 110 → 1 x → 00 3 3 3
x4 x4 x4
Codurile asociate ¸sirului x1 x3 x1 x4 sunt:
→ 11, → 111, → 01.
92
CAPITOLUL 3. TEORIA GRAFURILOR
(c1) 00100011, (c2) 01100111, (c3) 000001. Decodificarea se poate face ˆın mod unic ˆın primele dou˘ a codific˘ari, ˆın timp ce ˆın a treia codifcare, ¸sirul de bit¸i se poate decodifica x1 x1 x1 x1 x1 x2 , dar ¸si x3 x3 x4 . In concluzie, trebuie evitate aceste situat¸ii generate de faptul c˘ a un cod este ˆınceputul unui alt cod, ¸si astfel nu se ¸stie unde ˆıncepe ¸si unde se termin˘ a un cod. Pentru a evita aceast˘ a ambiguitate, introducem urm˘ atoarea proprietate:
Definit¸ia 3.27 Un cod prefix este un cod binar cu proprietatea c˘a niciun cod al unui simbol nu este un sub¸sir init ¸ial al unui cod asociat altui simbol. Num˘ arul de bit ¸i dintr-un cod prefix al unui simbol se nume¸ste lungimea codului. Se poate vedea c˘ a ˆın a treia codificare, codul x1 0 este ¸sir init¸ial al codurilor x3 00 ¸si x4 01, prin urmare (c3 ) nu este un cod prefix. Construct¸ia codurilor prefix poate fi realizat˘ a prin folosirea arborilor binari.
→
→
→
Construct¸ia codurilor prefix Fie T un arbore binar. Dac˘ a etichet˘ am fiecare muchie stˆ ang˘a cu 0 ¸si fiecare muchie dreapt˘ a cu 1, atunci fiec˘arei frunze i se asociaz˘a un cod format dintrun ¸sir de etichete ale muchiilor care compun unicul drum de la r˘ ad˘acin˘a la acea frunz˘ a. De exemplu, liter˘a cod
a 000
b 0010
c d e 0011 0101 011
f 100
g 101
Se poate constata c˘ a orice drum de la r˘ad˘acin˘a la frunz˘ a nu este un subdrum init¸ ial pentru un alt drum de la r˘ ad˘acin˘a la o alt˘a frunz˘ a , deci codurile sunt coduri prefix.
Coduri Huffman Intr-un cod prefix, este natural s˘ a se doreasc˘ a folosirea mai put¸inor bit¸i pentru codificarea simbolurilor mai frecvente. O m˘ asur˘a a eficient¸ei unei codific˘ ari este lungimea medie ponderat˘ a (LMP) a sa, unde lungimea fiec˘arui cod este ˆınmult¸it˘a cu frecvent¸a simbolului pe care ˆıl codific˘ a. In exemplul de mai sus, dac˘a frecvent¸ele sunt liter˘a a frecvent¸a˘ 0.2
b 0.05
c 0.1
d 0.1
e 0.25
f 0.15
g , 0.15
(3.6)
atunci lungimea medie ponderat˘ a este
·
·
·
·
·
·
·
3 0.2 + 4 0.05 + 4 0.1 + 4 0.1 + 3 0.25 + 3 0.15 + 3 0.15 = 3.25. Coeficient¸ii frecvent¸elor sunt adˆ ancimile frunzelor correspunz˘ atoare din arbore.
93
CAPITOLUL 3. TEORIA GRAFURILOR
Definit¸ia 3.28 Fie T un arbore binar ¸si s1 , s2 , . . . , sl frunzele sale, astfel ancimea medie ˆıncˆ at frunzei si ˆıi este asociat˘ a ponderea wi . Atunci adˆ ponderat˘ a (AMP) a arborelui binar T este l
W (T ) =
�
depth (si ) wi .
·
i=1
Un algoritm pentru construct¸ia unui cod prefix, ale c˘arui cuvinte au cea mai mic˘a LMP posibil˘a, a fost dat ˆın 1952 de Huffman7 ˆın teza sa de doctorat la MIT.
Algoritm 2 (Coduri prefix Huffman) Intrare: o mult ¸ime S = s1, . . . , sl de simboluri o list˘ a W = w1 , . . . , wl de ponderi asociate lui S ( wi si ) Ie¸sire: un arbore binar reprezentˆ and un cod prefix pentru mult ¸imea de simboluri S , cu codurile avˆ and LMP minim˘ a se init ¸ializeaz˘ a F ca o p˘ adure de vˆ arfuri izolate cu etichetele s1, . . . , sl , cu ponderile respective w1 , . . . , wl 1 pentru i = 1, . . . , l - alegem din p˘ adurea F doi arbori, T 0 ¸si T 1 cu cele mai mici ponderi - se creaz˘ a un nou arbore binar a c˘ arui r˘ ad˘ acin˘ a are pe T 0 ¸si T 1 ca ¸si subarbori stˆ ang, respectiv drept - se eticheteaz˘ a muchia spre T 0 cu 0 ¸si muchia spre T 1 cu 1 - se asociaz˘ a noului arbore ponderea w(T 0 ) + w(T 1 ) - se ˆınlocuiesc arborii T 0 ¸si T 1 din p˘ adurea F cu noul arbore retur un arbore binar asociat listei W
{
{
}
}
→
−
Definit¸ia 3.29 Arborele binar rezultat prin aplicarea algoritmului 2 va fi numit arbore Huffman pentru lista de simboluri S . Codul prefix care corespunde acestui arbore se va numi cod Huffman . am frecvent ¸ele mult ¸imii de simboluri Exemplul 3.9 Consider˘ S = a,b,c,d,e,f,g , date prin tabelul (3.6). Pa¸sii algoritmului Huffman sunt ilustrat ¸i ˆın figurile 3.15 ¸si 3.16. Codificarea Huffman va fi urm˘ atoarea:
{
}
liter˘ a a cod 00
b 0010
c 0101
d 011
e 10
f 110
g 111
Lungimea medie ponderat˘ a a acestei codific˘ ari este
·
·
·
·
·
·
·
2 0.2 + 4 0.05 + 4 0.1 + 3 0.1 + 2 0.25 + 3 0.15 + 3 0.15 = 2.7.
Schema de decodificare folosind arborele Huffman Un cod dat determin˘ a un drum unic de la r˘ad˘acin˘a la frunza corespunz˘ atoare acelui simbol. Pentru decodificare, se cite¸ste codul de la stˆ anga la dreapta ¸si se parcurge arborele pornind de la r˘ ad˘acin˘a . Cˆand se ajunge la o frunz˘ a, simbolul corespunz˘ator este ˆınregistrat. Urm˘ atorul bit ˆıncepe un nou drum de la r˘ad˘acin˘a la urm˘atorul simbol. Continu˘am pˆan˘a cˆand tot¸i bit¸ii codului au fost citit¸i. 7
David Albert Huffman (1925-1999), inginer electronist american.
CAPITOLUL 3. TEORIA GRAFURILOR
94
Figura 3.15: Iterat¸iile 1-4 din algoritmul lui Huffman pentru exemplul 3.9.
95
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.16: Iterat¸iile 5-6 din algoritmul lui Huffman pentru exemplul 3.9. atoarelor ¸siruri de bit¸i Exemplu: Prin decodificarea urm˘ 1100001010001110, 0100001111110011110, 11000010110011 se obt¸in respectiv ¸sirurile de simboluri facade , baggage , faced .
Correctitudinea algoritmului Huffman Trebuie s˘ a demonstr˘ am c˘a algoritmul Huffman produce un cod prefix optimal (cu cea mai mic˘a LMP). Acest lucru se poate ar˘ ata prin induct¸ie, dar mai ˆıntˆai avem nevoie de cˆateva rezultate preliminare. a frunzelelor unui arbore binar le sunt asociate ponderi ¸si Lema 3.20 Dac˘ dac˘ a fiec˘ arui vˆ arf interior ˆıi este asociat˘ a o pondere egal˘ a cu suma ponderilor copiilor s˘ ai, atunci AMP a arborelui va fi egal˘ a cu suma ponderilor vˆarfurilor interioare: (T ) = w(v)
�
W
v∈I
(am notat cu I mult ¸imea vˆ arfurilor interioare ale lui T ). a (simbol) sk , not˘am dk = depth(sk ). Demonstrat¸ie. Pentru fiecare frunz˘ Contribut¸ia simbolului sk la membrul drept este wk dk , deoarece ponderea wk apare la nivelele 0, 1, 2, . . . , dk−1, deci de dk ori. Contribut¸ia lui sk la membrul stˆang va fi (din definit¸ia 3.28) depth(sk ) wk = d k wk .
·
·
¸ime de simboluri. Pentru orice Teorema 3.21 Fie S = s1 , . . . , sl o mult list˘ a dat˘ a de ponderi W = w1 , . . . , wl , un arbore Huffman are cea mai mic˘ a AMP posibil˘ a dintre tot ¸i arborii binari care au aceste ponderi asociate frunzelor.
{
{
}
}
Demonstrat¸ie. Folosim induct¸ia dup˘a l.
96
CAPITOLUL 3. TEORIA GRAFURILOR
Pentru l = 2, arborele are o r˘ad˘acin˘a cu ponderea w1 + w2 , suma ponderilor fiilor s˘ai stˆang ¸si drept, prin urmare AMP = 1 w1 + 1 w2 ¸si este mininm˘a. Pentru l0 2 dat, presupunem c˘ a algoritmul 2 produce un arbore Huffman H cu AMP minim˘a pentru orice list˘a l0 de ponderi. Fie w1 , w2 , . . . , wl0+1 o list˘a de l0 + 1 ponderi ¸si presupunem c˘ a w1 ¸si w2 sunt cele mai mici dou˘a ponderi, alese primele de c˘ atre algoritm. Astfel, frunzele s1 ¸si s2 sunt frat¸i. Fie y tat˘al lor ¸si fie H = H s1 s2. Atunci H coincide cu arborele obt¸inut prin aplicarea algoritmului Huffman pentru mult¸imea y, s3 , s4 , . . . , sl0+1 , cu w(y) = w 1 + w2 . Dar,
·
·
≥
− −
{
}
depth(s1 ) = depth(s2 ) = depth(y) + 1, (ˆın H ) prin urmare l0 +1
W (H )
=
�
depth(si ) wi
·
i=1
l0 +1
= depth(s1 ) w1 + depth(s2 ) w2 +
·
·
depth(si ) wi
i=3 l0 +1
= w1 + w2 + depth(y) (w1 + w2 ) +
·
= w1 + w2 +
� � i=3
W (H ).
·
depth(si ) wi
·
Din ipoteza induct¸iei, H este optimal ˆıntre tot¸i arborii binari care au ponderile w1 + w2 , w3 , . . . , wl0+1 asociate frunzelor. Presupunem acum c˘a T ∗ este un arbore binar optimal pentru ponderile w1 , w2 , w3 , . . . , wl0+1 . Fie x un vˆarf interior al lui T ∗ , cu cea mai mare adˆancime, ¸si not˘ am cu z ¸si v copiii s˘ai. F˘ar˘a s˘a pierdem generalitatea, putem presupune c˘ a ponderile lui z ¸si v sunt w 1 ¸si w 2 , deoarece ˆın caz contrar am fi putut schimba ponderile lor cu w 1 ¸si w 2 pentru a produce un arbore cu AMP mai mic˘a. Consider˘am arborele T = T ∗ z v. Atunci
− − W (T ) = W (T ) + w + w . ∗
1
2
Dar T este un arbore binar cu frunzele avˆ and ponderile w1 +w2 , w3 . . . , wl0+1 , ¸si prin urmare (T ) (H ). Astfel,
3.5
∗
W ≥ W
W (T ) ≥ W (H ) ¸si ˆın consecint¸a˘ H este optimal.
Arbori de acoperire
Definit¸ia 3.30 Un arbore de acoperire pentru graful G = (V, E ) este un subgraf de acoperire 8 care este un arbore. Intrebarea care se pune ˆın mod natural este: dat fiind un graf conex, exist˘ a un arbore de acoperire, ¸si ˆın caz afirmativ, cum se poate construi un arbore de acoperire? Inainte de a prezenta cˆ ateva metode de construct¸ie a arborilor de acoperire, avem nevoie de cˆ ateva not¸iuni. 8
Definit¸ia 3.2, pag. 67.
97
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.17: Un graf ¸si unul din arborii s˘ ai de acoperire.
Figura 3.18: Un arbore ˆıntr-un graf ¸si muchiile sale frontier˘ a.
Definit¸ia 3.31 Fie G = (V, E ) un graf ¸si G1 = (V 1 , E 1 ) un subgraf al lui G. O muchie a lui G se nume¸ste a muchie frontier˘ a ea a pentru G1 ˆın G, dac˘ are o extremitate ˆın V 1 ¸si cealalt˘ a extremitate ˆın V V 1 .
\
Mult¸i algoritmi de construct¸ie a arborilor de acoperire se bazeaz˘ a pe urm˘ atorul rezultat.
Propozit¸ia 3.22 Fie G = (V, E ) un graf, T un arbore care este un subgraf al grafului G, ¸si e o muchie frontier˘ a pentru T . Atunci subgraful 9 T + e este de asemenea un arbore. Demonstrat¸ie. Ad˘augarea unei muchii frontier˘ a e la arborele T nu poate crea un ciclu, ˆıntrucˆat una din extremit˘ a¸t ile lui e nu apart¸ine lui T . S˘a ment¸ion˘ am c˘a ad˘augarea muchiei e la T implic˘a ¸si ad˘ augarea unui vˆ arf nou ˆın T .
Construct¸ia de baz˘ a a arborilor In schema de baz˘ a pentru construct¸ia arborilor se folosesc etichete pentru vˆarfuri, pentru a marca ordinea ˆın care vˆ arfurile au fost ad˘ augate arborelui. Prin etichetarea vˆ arfurilor ˆınt¸elegem atribuirea etichetelor 0, 1, 2, . . . n 1 (cˆateodat˘ a 1, 2, . . . , n) celor n vˆarfuri ale grafului.
−
Definit¸ia 3.32 Fie G = (V, E ) un graf ¸si x V un vˆ arf. Componenta a C G(x), este subgraful lui G indus de mult ¸imea de vˆ arfuri lui x ˆın G, notat˘ care sunt accesibile din x.
∈
9
Vezi definit¸ia 3.7, pag. 70.
98
CAPITOLUL 3. TEORIA GRAFURILOR
Astfel, dac˘a un graf G = (V, E ) este conex, atunci C G(x) = G pentru orice x V . Reciproc, dac˘ a exist˘a x V astfel ˆıncˆat C G (x) = G, atunci graful G este conex. In continuare prezent˘ a m un algoritm de baz˘ a pentru construct¸ia unui arbore de acoperire pentru componenta C G(x). Acesta ˆıncepe cu o muchie ¸si adaug˘a arborelui muchii frontier˘a succesiv, pˆan˘a cˆand sunt ad˘ augate toate vˆarfurile grafului dat.
∈
∈
Algoritm 3 (Algoritm de baz˘ a pentru construct ¸ia unui arbore de acoperire, cu etichetarea vˆ arfurilor) Intrare: un graf G = (V, E ) ¸si un vˆ arf init ¸ial u V . Ie¸sire: un arbore de acoperire T pentru C G (u) ¸si o etichetare a vˆarfurilor pentru C G (u). se init ¸ializeaz˘ a arborele T cu vˆ arful u a cu 0 vˆ arful u se eticheteaz˘ se init ¸ializeaz˘ a contorul de etichetare i = 1 at timp T nu acoper˘ a C G (u) cˆ - se alege o muchie frontier˘ a e pentru T - fie v extremitatea muchiei e care nu apart ¸ine lui T - se adaug˘ a muchia e ¸si vˆ arful v arborelui T - se eticheteaz˘ a cu i pe vˆ arful v - i = i + 1 retur arbore T ¸si etichetarea vˆ arfurilor lui C G (u)
∈
Observat¸ia 3.10 (unicitatea) S˘ a ment ¸ion˘ am pentru ˆınceput c˘ a, f˘ ar˘ a reguli de alegere a unei muchii frontier˘ a, arborele generat de algoritmul 3 nu este unic. Unicitatea depinde de anumite priorit˘ at ¸i asociate muchiilor sau vˆ arfurilor. Observat¸ia 3.11 Ori de cˆate ori este aplicat algoritmul 3, arborele de acoperire rezultat poate fi privit ca ¸si un arbore orientat cu r˘ ad˘ acina u. Propozit¸ia 3.23 Dac˘ a o execut ¸ie a algoritmului 3 ˆıncepe cu un vˆ arf v al grafului G, atunci subgraful constˆ and din vˆ arfurile etichetate ¸si muchiile arborelui este un arbore de acoperire al componentei C G (v). Corolarul 3.24 Un graf este conex dac˘ a ¸si numai dac˘ a algoritmul 3 eticheteaz˘ a toate vˆ arfurile sale. In cazul ˆın care graful G nu este conex, vom obt¸ine un algoritm de construct¸ie a unei p˘aduri. ¸ime de Definit¸ia 3.33 O p˘ adure de acoperire a unui graf G este o mult arbori, astfel ˆıncˆ at fiecare arbore este un arbore de acoperire a cˆ ate unei componente conexe a lui G. Pentru construct¸ia unei p˘aduri d˘am urm˘atorul algoritm de baz˘ a.
Algoritm 4 (Algoritm de baz˘ a pentru construct ¸ia unei p˘ aduri, cu etichetarea vˆ arfurilor) Intrare: un graf G = (V G , E G) Ie¸sire: o p˘ adure de acoperire F a lui G ¸si o etichetare a vˆ arfurilor lui G. se init ¸ializeaz˘ a p˘ adurea F cu graful vid
99
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.19: Arborele DFS. ¸ializeaz˘ a contorul componentei cu t = 1 se init cˆ at timp p˘ adurea F nu acoper˘ a pe G (nu are ˆınc˘ a
|V | vˆ arfuri) G
- se alege un vˆ arf v care nu este ˆın p˘ adurea F - se folose¸ste algoritmul pentru arbori, pentru a construi un arbore de acoperire T t ˆın C G (v) - se adun˘ a V F la fiecare etichet˘ a a vˆ arfurilor arborelui T t - se adaug˘ a arborele T t la p˘adurea F - t = t + 1 retur p˘ adurea F ¸si etichetarea vˆ arfurilor lui G
| |
3.5.1
C˘ autare ˆın adˆ ancime ¸si c˘ autare ˆın l˘ argime
C˘autarea ˆın adˆancime ¸si c˘autarea ˆın l˘argime sunt de fapt algoritmi de construire de arbori de acoperire, bazat¸ i pe algoritmul 3. Chiar dac˘ a ei sunt folosit¸i cˆateodat˘ a pentru a c˘auta ceva, cuvˆ antul de c˘ autare ne poate oarecum induce ˆın eroare, dar este prea ˆınr˘ ad˘acinat ca s˘ a-l putem schimba. ≪
≫
C˘ autare ˆın adˆ ancime (DFS) Ideea algoritmului DFS10 este de a selecta o muchie frontier˘ a incident˘ a celui mai recent vˆarf ad˘augat ˆın arborele part¸ial (adic˘a vˆarfului cu cea mai mare etichet˘ a ). Cˆand acest lucru nu este posibil, algoritmul se ˆıntoarce la penultimul vˆa rf ad˘ augat (adic˘ a p˘arintele) ¸si ˆıncearc˘a din nou. Astfel, c˘ autarea avanseaz˘a adˆanc ˆın graf (de unde numele ˆın adˆ ancime ). In continuare vom descrie algoritmul DFS. Un exemplu de arbore DFS este ilustrat ˆın figura 3.19. In timpul algoritmului, eticheta asociat˘ a unui vˆarf w se noteaz˘ a cu df (w).
Algoritm 5 (C˘autare ˆın adˆancime) Intrare: un graf conex G = (V, E ) ¸si un vˆ arf de plecare v V Ie¸sire: un arbore de acoperire ˆın adˆ ancime T ¸si o etichetare a vˆ arfurilor lui G se init ¸ializeaz˘ a arborele T cu vˆ arful v ¸ializeaz˘ a mult ¸imea de muchii frontier˘ a pentru T cu se init df (v) = 0 ¸ializeaz˘ a contorul de etichete i = 1 se init cˆ at timp T nu acoper˘ a pe G (nu are ˆınc˘ a V vˆ arfuri) - se actualizeaz˘ a mult ¸imea muchiilor frontier˘ a pentru T - fie e o muchie frontier˘ a pentru T a c˘ arei extremitate etichetat˘ a
∈
∅
| |
10
DFS este prescurtarea termenului englez Depth-First Search , folosit pentru c˘autarea ˆın adˆ ancime.
100
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.20: Arborele BFS. are cel mai mare num˘ ar df posibil. - fie w extremitatea neetichetat˘ a a muchiei e - se adaug˘ a muchia e (¸si vˆ arful w) arborelui T - df (w) = i - i = i + 1 retur arborele T ˆımpreun˘ a cu numerele df
C˘ autare ˆın l˘ argime (BFS) In timp ce ˆın DFS se avanseaz˘ a de la vˆarful curent la un nou vˆ arf ori de cˆ ate 11 ori este posibil, ˆın BFS se verific˘a toate vˆarfurile adiacente vˆ arfului curent ˆınainte de a trece la urm˘ atorul. Select¸ionarea muchiilor frontier˘ a se va face cˆat mai aproape cu putint¸a˘ de vˆarful init¸ial, sau, ˆın termeni de priorit˘a¸t i, muchiile frontier˘ a incidente vˆ arfurilor avˆand cea mai mic˘ a etichet˘ a posibil˘a vor avea cea mai mare prioritate. Un exemplu de arbore BFS este dat ˆın figura 3.20.
Algoritm 6 (C˘autare ˆın l˘ argime) Algoritmul este identic cu algoritmul 5 (DFS), cu except ¸ia cuvintelor cel mai mare, care se ˆınlocuiesc cu cel mai mic. and BFS este aplicat unui graf conex G = (V, E ), extrePropozit¸ia 3.25 Cˆ mit˘ at ¸ile fiec˘ arei muchii din G care nu apart ¸ine arborelui sunt fie la acelat ¸i nivel, fie la nivele consecutive (sau, echivalent, dac˘ a se noteaz˘ a cu r vˆ arful de plecare, distant ¸ele 12 la r sunt fie egale, fie difer˘ a cu unu).
Demonstrat¸ie. Fie T = (V, E ′ ) un arbore de acoperire rezultat prin aplicarea algoritmului BFS pornind din vˆ arful r. Presupunem c˘ a exist˘a muchia e = xy E E ′ astfel ˆıncˆat
∈ \
d(r, x) = p,
d(r, y) = p + s, s > 1.
Dac˘a se noteaz˘a cu ω unicul lant¸ ˆın T dintre r ¸si x, atunci ω e formeaz˘ a un lant¸ ˆıntre r ¸si y de lungime p + 1 < p + s, contradict¸ie cu proprietatea c˘a p + s este lungimea celui mai scurt lant¸ dintre r ¸si y.
∪
Teorema 3.26 (proprietatea de arbore al distant¸elor) Fie G = (V, E ) graf ¸si fie T arborele construit aplicˆ and algoritmul BFS, pornind din vˆ arful v V . Atunci pentru orice vˆ arf x, d(v, x) este egal˘ a cu lungimea unicului
∈ 11
BFS este prescurtarea termenului englez Breadth-First Search folosit pentru c˘autarea ˆın l˘ argime. 12 Definit¸ia distant¸ei dintre dou˘a vˆarfuri a fost dat˘ a la pag. 69.
101
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.21: Un graf ¸si un arbore economic al s˘ au. lant ¸ ˆın T dintre v ¸si x. Cu alte cuvinte, arborele obt ¸inut prin algoritmul BFS pornind din v este un arbore al distant¸elor fat ¸˘ a de v.
Demonstrat¸ie. Reamintim c˘ a d(v, x) este distant¸a dintre v ¸si x, adic˘a lungimea celui mai scurt lant¸ ˆın G dintre v ¸si x. Not˘am k = d(v, x). Construim partit¸ia lui V alc˘atuit˘a din clasele ℓv ( p) = y
{ ∈ V,
d(v, y) = p ,
p = 0, 1, 2, . . . , m .
}
Prin urmare x ℓv (k) ¸si p˘arintele s˘au ˆın T va fi un vˆarf y1 ℓv (k 1). P˘arintele lui y 1 ˆın T va fi un vˆarf y 2 ℓv (k 2), iar continuˆand ˆın acest mod ajungem la vˆarful yk ℓv (0), adic˘a yk = v. Prin urmare am construit lant¸ul < v, yk−1 , yk−2 , . . . , y2 , y1, x > ˆın T , de lungime k.
∈
∈
∈
3.5.2
∈
−
−
Grafuri cu ponderi ¸si arbori economici
Definit¸ia 3.34 Un graf cu ponderi este un graf ˆın care fiec˘ arei muchii i se asociaz˘ a un num˘ ar, numit ponderea sa. Ponderea muchiei e va fi notat˘a cu w(e). Grafurile cu ponderi apar frecvent ˆın aplicat ¸ii; ˆın grafurile de comunicat¸ii ele pot reprezenta costuri de transport, timp de c˘ al˘atorie, distant¸a spat¸ial˘ a, pret¸ul comunicat¸iei sau al ˆıntret¸inerii. Presupunem c˘ a mai multe calculatoare avˆ a nd o locat¸ie fix˘a trebuie legate ˆıntre ele pentru a forma o ret ¸ea (vezi figura 3.21). Costul cre˘ arii unei conexiuni directe ˆıntre o pereche de calculatoare este cunoscut pentru fiecare pereche posibil˘a ¸si este reprezentat prin ponderea muchiei. Desigur avem nevoie de cea mai ieftin˘ a conexiune. Dac˘a asociem un graf ˆın care vˆ arfurile sunt calculatoarele, iar muchiile sunt cablurile care le leag˘ a ¸si ponderea fiec˘ arei muchii este costul conexiunii, atunci scopul nostru va fi s˘ a determin˘ a m un arbore de acoperire de pondere minim˘ a.
Definit¸ia 3.35 Fie G = (V, E ) un graf conex cu ponderi, T = (V, E 1 ) un arbore de acoperire al lui G ¸si ω = e1 , e2 , . . . , en un lant ¸ ˆın G.
⟨
⟩
Ponderea lant ¸ului ω = e1 , e2 , . . . , en este suma ponderilor muchiilor sale: n
⟨
⟩
w(ω) =
� i=1
w(ei ).
102
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.22: Arborele economic obt¸inut cu algoritmul 7.
Ponderea arborelui de acoperire T este suma ponderilor muchiilor sale: w(T ) = w(e).
�
e∈E 1
Un arbore T min pentru care w(T min ) este minim se nume¸ste arbore de acoperire minim˘ a sau arbore economic. Deci, w(T min) = min w(T ), T arbore de acoperire al lui G .
{
}
a se Problema arborelui economic: Fie G graf conex cu ponderi. S˘ g˘aseasc˘a un arbore de acoperire al lui G a c˘arui pondere s˘ a fie minim˘a. O solut¸ie naiv˘a ar fi s˘a scriem tot¸i arborii de acoperire, s˘a calcul˘am ponderile lor ¸si s˘a-l alegem pe cel de pondere minim˘a. In acest caz, dac˘ a graful n−2 G are n vˆarfuri ¸si este complet, atunci exist˘ a n arbori de acoperire,13 care sunt imposibil de analizat ˆın timp real. Prin urmare este nevoie de algoritmi mai eficient¸i pentru g˘ asirea unui arbore economic. Un asemenea algoritm este cunoscut sub numele de algoritmul lui Prim. Acest algoritm a fost descoperit pentru prima oar˘a ˆın 1930 de c˘ atre Jarn`ık14 ¸si mai tˆarziu, independent, de c˘ atre Prim15 ˆın 1957 ¸si Dijkstra ˆın 1959. De aceea mai este cˆateodat˘ a numit algoritmul DJP sau algoritmul lui Jarn`ık.
Algoritm 7 (Algoritmul lui Prim) Intrare: un graf conex cu ponderi G = (V, E ) Ie¸sire: un arbore economic T arf arbitrar s al grafului G se alege un vˆ se init ¸ializeaz˘ a arborele Prim T cu vˆ arful s ¸ializeaz˘ a mult ¸imea muchiilor frontier˘ a cu se init cˆ at timp T nu acoper˘ a graful G (nu are ˆınc˘ a V vˆ arfuri) - se actualizeaz˘ a mult ¸imea de muchii frontier˘ a pentru T - fie e o muchie frontier˘ a cu cea mai mic˘ a pondere w(e) - se adaug˘ a muchia e la arborele T retur arborele Prim T
∅ | |
13
Acest rezultat este cunoscut ca ¸si formula lui Cayley referitoare la arbori de acoperire. Vojtˇech Jarn`ık (1897-1970), matematician ceh. 15 Robert Clay Prim (b. 1921), matematician ¸si calculatorist american. 14
103
CAPITOLUL 3. TEORIA GRAFURILOR
Pentru graful din figura 3.22, pa¸sii algoritmului Prim pornind cu vˆ arful s sunt dat¸i ˆın urm˘atorul tabel: pas muchii frontier˘ a 1 sd, sa, sc 2 cd, ca, cb, sa, sd, sb 3 ab, bc, cd, sb, sd 4 ab, bc, db, sb
muchii ad˘augate sc ac cd sb
Teorema 3.27 (Corectitudinea algoritmului lui Prim) Arborele rezultat ˆın urma aplic˘ arii algoritmului lui Prim este un arbore economic. Demonstrat¸ie. Fie G = (V, E ) un graf conex cu ponderi, T arborele rezultat prin aplicarea algoritmului Prim grafului G ¸si Y un arbore economic al lui G. Not˘am cu T k = (V k , E k ) arborele lui Prim construit dup˘ a k iterat¸ii. Pentru simplicitate ˆıncepem cu cazul ˆın care toate muchiile au ponderi diferite. Dac˘ a Y = T , atunci T este un arbore economic. Dac˘ a nu, ar trebui s˘a obt¸inem o contradict¸ie. Deci, presupunem Y = T . Fie e prima muchie considerat˘ a de algoritm, care este ˆın T dar nu ˆın Y . Fie T i = (V i , E i ) mult¸imea de vˆ arfuri conectate de muchiile ad˘augate ˆınaintea lui e. Prin urmare, o extremitate a lui e este ˆın V i ¸si cealalt˘a nu este ˆın V i . Deoarece Y este un arbore de acoperire al lui G, exist˘a un lant¸ ˆın Y care une¸ste cele dou˘ a extremit˘ a¸t i ale lui e. Cˆand ne deplas˘am de-a lungul acestui lant¸, trebuie s˘ a ˆıntˆalnim o muchie f care une¸ste un vˆarf din V i cu un vˆarf care nu e ˆın V i . La a (i + 1) - a iterat¸ie, cˆand e a fost ad˘ augat˘a la T , f a fost o muchie frontier˘a, deci f ar fi putut fi ¸si ea ad˘augat˘a la T . Deoarece f nu a fost ad˘augat˘a, putem trage concluzia c˘ a
̸
w(f ) > w(e).
(3.7)
Consider˘am acum subgraful Y 1 = Y f + e, care este un arbore. Intr-adev˘ ar, Y + e are un ciclu care cont¸ine pe f , ¸si prin urmare Y + e f nu are nici un ciclu ¸si este conex. S˘ a mai observ˘ am c˘a Y 1 are ˆın T cu o muchie mai mult decˆat avea Y . Pentru Y 1 avem
−
w(Y 1 ) = w(Y )
−
− w(f ) + w(e) < w(Y ),
(3.8)
care este o contradict¸ie cu faptul c˘ a Y este un arbore economic. Deci, T = Y ¸si prin urmare T este un arbore economic. Pentru a finaliza demonstrat¸ia, trebuie s˘ a consider˘ am cazul ˆın care admitem ponderi egale. Demonstrat¸ia de mai sus funct¸ioneaz˘ a, pˆan˘a ˆın punctul ˆın care tragem concluzia (3.7). Aceasta va fi ˆınlocuit˘ a cu w(f ) w(e), ¸si prin urmare inegalitatea (3.8) se schimb˘ a ˆın w(Y 1 ) w(Y ). In acest punct nu vom mai avea o contradict¸ie, ci concluzia c˘a Y 1 este de asemenea un arbore economic. Vom ˆınlocui acum Y cu Y 1 ¸si vom repeta demonstrat¸ia din punctul , pentru noul arbore economic Y . Intrucˆ at Y 1 are ˆın T cu o muchie mai mult decˆat Y , algoritmul se va termina dup˘a cel mult V 1 pa¸si, unde ˆın punctul trebuie s˘a avem Y = T .
≤
≪
≪
≥
≫
≫
| | −
Incheiem cu ment¸iunea c˘a, ˆın cazul ˆın care oricare dou˘ a muchii au ponderi diferite, arborele economic este unic. In cazul cˆ and avem ponderi egale, este
CAPITOLUL 3. TEORIA GRAFURILOR
104
posibil s˘a existe mai mult¸i arbori economici, iar algoritmul lui Prim va g˘ asi pe unul dintre ei. Un alt algoritm folosit pentru g˘asirea unui arbore economic a fost dat de Kruskal16 ˆın 1956. Algoritmul ordoneaz˘ a la ˆınceput muchiile dup˘a ponderile lor ¸si apoi ia din aceast˘a list˘a cˆate o muchie ¸si o adaug˘ a la graful part¸ial, cu condit¸ia ca aceasta s˘ a nu ˆınchid˘a un ciclu.
Algoritm 8 (Algoritmul lui Kruskal) Intrare: un graf conex cu ponderi G = (V, E ). Ie¸sire: un arbore economic T se init ¸ializeaz˘ a graful Kruskal K ca o p˘ adure unde fiecare vˆ arf din V este un arbore separat se creaz˘ a o mult ¸ime S cont ¸inˆ and toate muchiile din G cˆ at timp S este nevid˘ a - se elimin˘ a muchia cu cea mai mic˘ a pondere din S - dac˘a acea muchie nu ˆınchide un ciclu ˆın K (ˆın cazul cˆ and ar fi ad˘ augat˘ a la K ), atunci se adaug˘ a la K - altfel se elimin˘ a retur arbore Kruskal K a dac˘ a muchia e ˆınchide un ciclu, Observat¸ia 3.12 La pasul ˆın care se verific˘ se verific˘ a de fapt dac˘ a ea conecteaz˘ a doi arbori diferit ¸i ai p˘ adurii K . Cˆ and e este ad˘ augat˘ a grafului K , ea va uni cei doi arbori ˆıntr-un singur arbore. Dac˘a graful G nu este conex, atunci algoritmul 8 nu creeaz˘ a un arbore economic, ci o p˘adure economic˘a.
Teorema 3.28 (Corectitudinea algoritmului Kruskal) Fie G un graf conex cu ponderi ¸si fie K un subgraf al lui G care rezult˘ a din aplicarea algoritmului Kruskal. Atunci K este un arbore economic. Demonstrat¸ie. Mai ˆıntˆ ai, prin construct¸ie, K nu poate avea cicluri. Apoi K este conex. Intr-adev˘ ar, dac˘ a presupunem c˘ a K are dou˘a componente, atunci ˆıntr-un punct al algoritmului se adaug˘ a muchia de pondere minim˘a care une¸ste cele dou˘ a componente. Astfel, K este un arbore de acoperire al lui G. Pentru simplitate, ˆıncepem cu cazul ˆın care toate muchiile au ponderi diferite. Fie Y un arbore economic. ⋆ Dac˘ a Y = K , atunci K este un arbore economic. Dac˘ a nu, ar trebui s˘a obt¸inem o contradict¸ie. Deci s˘a presupunem c˘ a Y = K . Fie e prima muchie considerat˘ a de algoritm, care este ˆın K dar nu ˆın Y ¸si fie K i graful construit pˆan˘a ˆın momentul cˆand a fost ad˘ augat˘a muchia e. Atunci Y + e are un ciclu (nu se poate ad˘auga o muchie la un arbore de acoperire ¸si s˘ a se obt¸in˘a tot un arbore). Acest ciclu cont¸ine o alt˘ a muchie f care, la pasul din algoritm ˆın care e a fost ad˘ augat˘a la K i , nu a fost considerat˘ a de c˘ atre algoritm. Motivul pentru care f nu a fost considerat˘ a este c˘a w(f ) > w(e), ¸si nu pentru c˘ a f ar fi ˆınchis un ciclu. (Intr-adev˘ ar, dac˘ a f ar fi ˆınchis un ciclu dac˘a ar fi fost ad˘augat˘a la K i , atunci Y ar fi cont¸inut un ciclu, anume K i + f . Deci f a fost o muchie frontier˘ a la ˆınceputul iterat¸iei (i + 1)).
̸
16
Josef Bernard Kruskal (b. 1928), matematician ¸si statistician american.
CAPITOLUL 3. TEORIA GRAFURILOR
105
Subgraful Y 1 = Y + e f este de asemenea un arbore de acoperire, cu ponderea w(Y 1 ) = w(Y ) + w(e) w(f ) < w(Y ), (3.9)
−
−
care este o contradict¸ie cu faptul c˘ a Y este un arbore economic. Astfel presupunerea K = Y este fals˘a, deci K = Y , prin urmare K este un arbore economic. In ˆıncheiere, trebuie s˘a consider˘ am de asemenea cazul cˆ and anumite ponderi sunt egale. Repet˘ am rat¸ionamentul de mai sus, dar ˆın momentul cˆ and am ajuns la inegalitatea (3.9), aceasta se transform˘ a ˆın
̸
w(Y 1 ) = w(Y ) + w(e)
− w(f ) ≤ w(Y ).
Aceasta va implica faptul c˘a Y 1 este de asemenea arbore economic. In acest caz vom ˆınlocui Y cu Y 1 ¸si vom repeta demonstrat¸ia din punctul ⋆ cu noul Y , pˆan˘a cˆand vom obt¸ine Y = K . ≪
≪
≫
≫
a argumentare pentru corectitudine va fi dat˘a ˆın exemObservat¸ia 3.13 O alt˘ plul 3.16, pag. 112.
3.5.3
Arbore de acoperire minim˘ a ˆın grafuri orientate
Definit¸ia 3.36 Fie D = (V, A) un graf orientat. Un arbore de acoperire ad˘ acin˘ a (vezi definit ¸ia 3.21, pag. cu r˘ ad˘ acin˘ a al lui D este un arbore cu r˘ 85) care cont ¸ine toate vˆ arfurile lui D. arf Propozit¸ia 3.29 Fie D = (V, A) un graf orientat tare conex ¸si fie r un vˆ arbitrar. Atunci exist˘ a un arbore de acoperire al lui D, cu r˘ ad˘ acina r. Ca ¸si ˆın cazul grafurilor, putem asocia unui graf orientat D = (V, A) o funct¸ie pondere w : A R+ , ¸ si putem obt¸ine un graf orientat cu ponderi . Ponderea grafului D este definit˘a ca ¸si
→
w(D) =
�
w(a).
a∈A
Pentru un graf orientat tare conex cu ponderi D = (V, A) ¸si un vˆarf fixat r V , vrem s˘a g˘asim un arbore orientat de acoperire minim˘ a T ∗ (r), cu r˘ad˘acina r, ˆın sensul c˘a
∈
w(T ∗ (r))
≤ w(T (r)),
pentru orice alt arbore de acoperire T (r) al lui D, cu r˘ad˘acina r. Un algoritm pentru a construi un asemenea arbore cu r˘ ad˘acin˘a a fost descoperit de Chu ¸si Liu ˆın 1965 ¸si apoi independent de Edmonds ˆın 1967. Inainte de a da acest algoritm, introducem cˆ ateva notat¸ii. Pentru o mult¸ime de vˆarfuri U V , introducem urm˘ atoarele notat¸ii:
⊆
A− (U ) = A+ (U ) =
{x ∈ V : (x, u) ∈ A ¸si u ∈ U } , {x ∈ V : (u, x) ∈ A ¸si u ∈ U } .
Astfel, A−(U ) este mult¸imea extremit˘ a¸t ilor init¸iale ale arcelor cu extremita+ tea final˘ a ˆın U ¸si A (U ) este mult¸imea extremit˘ a¸t ilor finale ale arcelor cu extremitatea final˘ a ˆın U .
106
CAPITOLUL 3. TEORIA GRAFURILOR
Algoritm 9 (Chu, Liu, Edmonds) Intrare: - un graf orientat tare conex D = (V, A) cu ponderea w : A R+ - un vˆ arf r Ie¸sire: un arbore de acoperire minim˘ a orientat, cu r˘ ad˘ acina r arf v diferit de r, alegem arcul cu extremitatea pentru fiecare vˆ final˘ a v, de pondere minim˘ a fie S mult ¸imea arcelor selectate (cˆ ate un arc pentru fiecare v) se init ¸ializeaz˘ a M = S cˆ at timp T = (V, M ) nu este arbore - fie C un ciclu orientat ˆın T , notat C = v1 , v2 , . . . , vk , v1 - pentru orice vi A− (C ) C se calculeaz˘ a w(i, C ) = min w(i, v j ) + w(C ) w(v j−1 , v j ), v j A+ (i) C , unde v j−1 este extremitatea init ¸ial˘ a a arcului (v j−1 , v j ) al lui C , cu extremitatea final˘ a v j − - alegem i0 A (C ) pentru care w(i0 , C ) este minim - fie v j0 C pentru care w(i0 , C ) = w(i0 , v j0 ) + w(C ) w(v j0−1 , v j0 ) - M = M (v j0 −1 , v j0 ) + (vi0 , v j0 ) ad˘ acina r retur M , arborele de acoperire cerut, cu r˘
→
∈ {
{
\
−
} ∩ }
∈
∈
∈ −
−
Teorema 3.30 (Corectitudinea algoritmului Chu-Liu-Edmonds) Arborele cu r˘ ad˘ acin˘ a obt ¸inut prin aplicarea algoritmului 9 unui graf orientat D = (V, A) pentru un vˆ arf de plecare r V este arborele de acoperire minim˘a pentru D, cu r˘ ad˘ acina r.
∈
Demonstrat¸ie. Mai ˆıntˆai observ˘am c˘a num˘arul de arce din S este V 1 ¸si r˘amˆane neschimbat ˆın timpul algoritmului. Prin urmare, ˆın momentul cˆ and graful T nu mai cont¸ine cicluri, el va fi un arbore de acoperire cu r˘ ad˘acin˘a. Ar˘at˘am c˘a, atunci cˆand funct¸ia pondere este injectiv˘ a, arborele de acoperire cu r˘ad˘acin˘a are pondere minim˘ a. Cˆand ponderea nu este injectiv˘ a, folosim acela¸si rat¸ionament ca ¸si ˆın demonstrat¸ia teoremei 3.27 (corectitudinea algoritmului Prim). Fie T arborele rezultat ˆın urma aplic˘ arii algoritmului 9 ¸si fie T ∗ = T ∗ (r) arborele de acoperire minim˘ a cu r˘ad˘acina r. Presupunem c˘ a T ∗(r) = T. Atunci exist˘a arcele a1 = (i, j) T ∗ T ¸si a2 = (k, j) T. Dac˘a a2 S, atunci w(a2 ) < w(a1). Dac˘a a2 / S , atunci j este vˆarf al unui ciclu C = v j , v j+1 , . . . , v j−1 , v j din S , v j = j. Din criteriul de select¸ie al arcului a2 T , tragem concluzia c˘ a
| |−
∈ \ }
∈ { ∈
w(k, j) + w(C )
− w(v
j−1 , v j ) <
∈
̸
∈
w(i, j) + w(C )
− w(v
j−1 , v j ),
de unde w(a2 ) < w(a1). Not˘ a m cu T 1 arborele cu r˘ ad˘acin˘a obt¸inut din T ∗ prin ˆınlocuirea arcului a 1 cu arcul a 2 . Atunci w(T 1 ) < w(T ∗ ), care contrazice minimalitatea lui T ∗ . am graful orientat din figura 3.23 (stˆ anga) ¸si aplic˘ am Exemplul 3.10 Consider˘ algoritmul 9, cu vˆ arful de plecare r. La primul pas, mult ¸imea S este S = (r, 1), (4, 2), (2, 3), (8, 4), (2, 5), (5, 6), (1, 7), (6, 8) .
{
}
107
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.23: Stˆanga: Graful tare conex orientat din exemplul 3.10. Dreapta: mult¸imea S (linie groas˘a) ¸si arcele candidate pentru ˆınlocuirea unui arc din ciclul C (linie punctat˘ a). Aceast˘ a mult ¸ime de arce formeaz˘ a ciclul C = 2, 5, 6, 8, 4, 2 (figura 3.23, dreapta) de pondere w(C ) = 200 . Mult ¸imea A− (C ) a extremit˘ at ¸ilor init ¸iale ale arcelor cu extremitatea final˘ a ˆın C este
⟨
⟩
A− (C ) = 1, 3, 7 ,
{
}
¸si pentru fiecare din vˆ arfurile acestei mult ¸imi calcul˘ am A+ (1)
∩ C = {2, 5}, A
+
(3)
∩ C = {4}, A
+
(7)
∩ C = {8}.
Atunci w(1, C ) = = w(3, C ) = w(7, C ) =
min w(1, v j ) + 200 w(v j−1 , v j ), v j = 2, 5 min 60 + 200 20, 70 + 200 40 = 230, w(3, 4) + 200 w(8, 4) = 230, w(7, 8) + 200 w(6, 8) = 210.
{ {
− − −
−
− }
}
Deci, i0 = 7, v j0 = 8 ¸si arcul (6, 8) va fi ˆınlocuit cu arcul (7, 8). In acest moment M = (r, 1), (4, 2), (2, 3), (8, 4), (2, 5), (5, 6), (1, 7), (7, 8) ,
{
}
¸si formeaz˘ a un arbore de acoperire orientat, care are ponderea minim˘ a egal˘ a cu 210, deci algoritmul se opre¸ste.
3.5.4
Lant¸ minim. Algoritmul lui Dijkstra
O alt˘a problem˘a de optimizare este problema lant¸ului de lungime minim˘a. Dat˘a fiind, de exemplu, o ret¸ea de c˘ ai ferate care conecteaz˘ a anumite ora¸se, se cere s˘ a se determine cel mai scurt drum dintre dou˘ a ora¸se date din aceast˘a ret¸ea. Formularea problemei este urm˘ atoarea: Problema lant¸ului minim (PLM): Fie s, t vˆarfuri ale unui graf conex cu ponderi G. S˘a se g˘aseasc˘ a un lant¸ ˆıntre s ¸si t a c˘arui pondere s˘ a fie minim˘a.
Observat¸ia 3.14 Dac˘ a ponderile sunt toate egale cu 1, atunci problema se reduce la g˘asirea unui lant ¸ ˆıntre s ¸si t care s˘ a cont ¸in˘ a un num˘ ar minim de muchii. Aceast˘ a versiune a problemei lant ¸ului minim a fost deja rezolvat˘ a cu algoritmul BFS.
108
CAPITOLU CAPITOLUL L 3. TEORIA TEORIA GRAFUR GRAFURILOR ILOR
Problema (PLM) a fost rezolvat˘ a ˆın 1959 de c˘ atre atre Dijkstra.17 De fapt algoritmul s˘au au realizeaz˘ a mai mult decˆat a t cere probl problema ema:: g˘ ase¸ ase¸ste ste cel mai scurt lant¸ de la un vˆarf arf dat s la fiecare la fiecare din din celelalte vˆarfuri arfuri ale grafului.
Definit¸ia ¸ia 3.37 Fie G = (V, E ) un graf cu ponderi. Distant di ntre re do dou˘ u˘a a ¸a dint vˆ arfuri x, y V , V , notat˘a cu dist (x, y ), este este lungim lungimeea celui elui mai scurt scurt lant lan¸t dintre cele dou˘ a vˆ arfuri.
∈
Ideea algoritmului algoritmului este s˘ a construim un arbore Dijkstra, pornind de la un vˆarf arf dat s dat s,, ad˘augˆ augˆand, and, la fiecare iterat¸ie, ¸ie, o muchie frontier˘ a a c˘arei are i extre ex tremit mitate ate care nu e ˆın arbore s˘ a fie cˆ at at mai aproape de s. Pentru simplitate, odat˘ a ce vˆarful s arful s este este fixat, pentru un vˆ arf arf arbitrar x arbitrar x vom vom nota dist(s, dist(s, x) cu dist(x dist(x). La fiecare iterat¸ie ¸ie se adaug˘a o muchie (¸si si implicit i mplicit un vˆarf arf ) la arbo a rborele rele Dijkstr D ijkstra, a, ¸si si atunci se scrie o etichet˘ a pe noul vˆarf. arf. Astfel, vˆarfurile arfurile din arborele Dijkstra la o iterat¸ie ¸ie dat˘a sunt acelea pentru care cel mai scurt lant¸ de la s la s a a fost deja g˘asit. asit. Fie P -valoarea P -valoarea unei muchii frontier˘ ae P ( P (e) = dist( dist(x) + w + w((e), unde x este extremitatea etichetat˘ a a lui e. lui e. Muchiei Muchiei cu cea mai mic˘ a P -valoare P -valoare ˆıi este dat˘a cea mai mare prioritate. Mai mult, P -valoarea P -valoarea muchiei cu cea mai mare prioritate va da distant¸a ¸a de la s la extremitatea neetichetat˘ a a lui e. Algoritmul eticheteaz˘ a fiecare vˆ arf al arborelui cu distant¸a arf ¸a dintre vˆ arful s arful s ¸si acel vˆarf.
Algoritm 10 (lant¸ minim Dijkstra) Intrare: un Intrare: un graf conex G = (V, E ) ponderi ponde ri nenegative nenega tive ¸si si s V Ie¸ Ie ¸sir si re: – un arbore de acoperire T T al lui G, cu r˘aad˘ dacina ˘ s, ˆın care drumul dru mul (unic) de la s la fiecare vˆ arf v este cel mai scurt drum de la s la v ˆın G – o etichetare a vˆ arfurilor, care d˘ a distant ¸a de la s la fiecare vˆ arf ¸ializeaz˘ a arborele Dijkstra T T cu vˆ arful s se init se init ¸ializeaz˘ a mult ¸imea de muchii frontier˘ a pentru T cu dist (s) = 0 se scrie eticheta 0 pe vˆ arful s cˆ at timp arborele T nu T nu acoper˘ a ˆınca˘ graful G - pentru fiecare e muchie frontier˘ a pentru T fie x extremitatea etichetat˘ a a muchiei e P ( P (e) = dist( dist(x) + w + w((e) ∗ - fie e o muchie frontier˘ a pentru T cu T cu cea mai mic˘ a P -valoare P -valoare ∗ - fie y extremitatea neetichetat˘ a a muchiei e ∗ - se adaug˘ a muchia e (¸si varful ˆ y) la arborele T ∗ - dist (y) = P ( P (e ) - se scrie eticheta dist (y ) pe vˆ arful y retur arbore Dijkstra T ¸ T ¸si si o etichetare etichet are a vˆ arfurilor acestuia
∈
∅ ∅
G un graf conex Teorema 3.31 (corectitudinea algoritmului Dijkstra) Fie G un cu ponder pond erii ¸si si T arborele T arborele Dijkstra rezultat din aplicarea algoritmului 10, pornind din vˆ arful s. Atunci, pentru orice vˆ arf x al lui T , T , unicul lant ¸ ˆın T n T ˆ ˆıntre s ¸si si x este cel mai scurt lant ¸ ˆın G ˆıntre s ¸si si x. 17
Edsger Wybe Dijkstra [’d εikstra] (1930-2002), calculatorist olandez.
CAPITOLU CAPITOLUL L 3. TEORIA TEORIA GRAFUR GRAFURILOR ILOR
109
Figura 3.24: Arborii Dijkstra (linii groase) dup˘a pa¸sii sii 2,3,4, 2,3 ,4,5. 5.
Demonstrat¸ie. ¸ie. Demonstrat¸ia ¸ia urmeaz˘ a acela¸ ace la¸si si rat¸ionament ¸ioname nt ca cel folosit folos it ˆın ın demonstrat¸ia ¸ia teoremei 3.27. Exemplul 3.11 Consider˘ am graful cu ponderi din figura 3.24. Dac˘ a aplic˘ am algoritmul 10 pornind din vˆ arful s, pa¸sii sii sunt sun t urm˘ atorii: Pasul 1 dist( dist(s) = 0, P ( P (sz ) = 8 P ( P (sy) sy) = 16 min = 8, 8, P ( P (sw) sw) = 13
⇒
Pasul 2 P ( P (sw) sw) = 13 P ( P (sy) sy) = 16 P ( P (zy) zy ) = 15 P ( P (zv) zv ) = 18 P ( P (zw zw)) = 19 P ( P (zx) zx ) = 25 Pasul 3 P ( P (sy) sy) = 16 P ( P (zy) zy ) = 15 P ( P (zx) zx ) = 25 P ( P (zv) zv ) = 18 P ( P (wx) wx) = 27 Pasul 4 P ( P (yx) yx) = 20 P ( P (zx) zx ) = 25 P ( P (zv) zv ) = 18 P ( P (wx) wx) = 27
aug˘am sz, am sz, dist( dist(z ) = 8. ⇒ ad˘aug˘
aug˘am sw, am sw, dist( 13. dist(w) = 13. ⇒ min = 13 ⇒ ad˘aug˘
aug˘am am zy, dist( dist(y ) = 15. 15. ⇒ min = 15 ⇒ ad˘aug˘
aug˘am am zv, dist( dist(v ) = 18. 18. ⇒ min = 18 ⇒ ad˘aug˘
110
CAPITOLU CAPITOLUL L 3. TEORIA TEORIA GRAFUR GRAFURILOR ILOR
Pasul 5 P ( P (wx) wx) = 27 P ( P (yx) yx) = 20 P ( P (vx) vx) = 24 P ( P (zx) zx ) = 25
aug˘am yx, am yx, dist( dist(x) = 20. 20. ⇒ min = 20 ⇒ ad˘aug˘
Pentru grafuri orientate, exist˘ a mai mult¸i ¸i algoritmi pentru g˘asirea asirea unui arbore orientat al lant¸urilor ¸urilor minime. Printre ace¸stia stia ment¸ion˘ ¸ion˘ am am algoritmii construit¸i ¸i de Moore-Dijk Moo re-Dijkstra stra,, BellmanBe llman-Kalaba Kalaba ¸si si Ford, ˆımpreun˘ ımpreu n˘ a cu variat¸iile ¸iile lor.
3.6 3.6
Algo Algori ritm tmii de de tip tip gree greedy dy
O problem˘a de optimizare este o problem˘ a un care vrem s˘ a g˘asim asim nu doar doa r o solut¸ie, ¸ie, ci cea ci cea mai bun˘ a solut¸ie. ¸ie. Un algoritm de tip greedy (AG) este un algoritm care se repede imediat la ce este mai bun , f˘ar˘ ar˘a s˘a-i a-i pese de consecint¸e. ¸ e. Aces Acesta ta repet˘ repet˘ a o singur˘a procedur˘ a, a, p˘an˘ an˘a cˆ and and nu mai r˘amˆ amˆane ane nimic de f˘acut. acut. Matematic, spunem c˘ a alege solut¸ia ¸ia cea mai bun˘a imediat imediat (sau local), f˘ar˘ ar˘a s˘a ia ˆın considerare considerare efectele acestei decizii ˆın ın viitor, viitor, dar sperˆ and c˘a alegˆand and un optim un optim local la local la fiecare pas, va putea sfˆ ar¸ ar¸si si prin a g˘ asi asi un optim global. ≪
≪
≫
≫
Exemplul 3.12 Presupunem c˘ a vrem s˘ a d˘am am rest o sum˘ a de C6.39 folosind cˆ at mai put ¸ine bancnote bancnote ¸si si monede. Un algoritm greedy greedy ar pro proce ceda da astfel: la fieca fiecare re pas, lu˘ am cea mai mare bancnot˘ a sau moned˘ a posibil˘ a. Piese Piesele le existente sunt 5 C , 2 C , 1 C , 50 c, 20 c, 10 c, 5 c, 2 c, 1 c, deci putem da restul astfel: 6.39 = 5C 5 C + + 1C 1 C + + 20 c + 10 c + 5 c + 2 2 c. (7 piese (7 piese )
·
Pentru euro, algoritmul de tip greedy d˘ a ˆıntotd ınt otdeauna eauna sol solut ut ¸ia optim˘ a. Dar, presupunem c˘ a avem un sistem monetar imaginar, cu monedele 10u 10 u, 7u, 1u. Cu un AG, suma de 15u 15u se pl˘ ate¸ste 15u 15u = 1 10u 10u + 5 1u (6 piese (6 piese)).
·
·
Exist˘ a totu¸si si un mod de a pl˘ati ati cu doar 3 monede, anume 15u 15u = 2 7u + 1 1u.
·
·
Deci, algoritmul greedy d˘ a o solut ¸ie, dar nu o solut ¸ie optim˘ optim˘ a . Alte exemple de algoritmi algoritmi greedy sunt algoritmii lui Prim, Kruskal Kruskal ¸si si Dijkstra, dar a¸sa sa cum am putut vedea, ei ne conduc ˆıntotdeauna la solut ¸ia optim˘a. a. Deci, Deci, pentru pentru anumite anumite probleme probleme de optimiz optimizare, are, un algori algoritm tm de tip greedy poate totu¸si si sa g˘ ases as esc˘ c˘a solu so lut¸ia ¸tia optim˘a. a. Prin urmare, urmar e, ˆıntreb˘ ıntrebarile a˘rile care se pun ˆın ın mod natural sunt: Cˆand and un algoritm greedy g˘ase¸ ase¸ste ste solut sol ut¸ia ¸ia optim˘a? a ? Dac˘ aca˘ ¸stim sti m c˘a este posibl ca s˘a nu g˘aseasc˘ aseasc˘a o solut¸ie ¸ie optim˘a, a, de ce se mai folose¸ste? ste? Vom da un r˘ aspuns aspuns part¸ial ¸ial la prima ˆıntrebare ıntreba re ˆın paragrafu para grafull urm˘ ator. ator. Privitor la a doua ˆıntrebare, ıntrebare, motivul pentru p entru care car e utiliz˘ u tiliz˘am am algoritmi algo ritmi greedy gr eedy este c˘ a de obicei ace¸sti sti algoritmi sunt rapizi, ra pizi, u¸sor sor de implementat, ¸si si deseori ne conduc la o aproximare relativ bun˘a a solut¸iei ¸iei optime.
111
CAPITOLUL 3. TEORIA GRAFURILOR
3.6.1
Algoritm greedy pentru problema ponderii maxime
Fie E o mult¸ime finit˘a ¸si o familie de submult¸imi ale lui E , numite mult¸imi admisibile. Atunci perechea = (E, ) se nume¸ste sistem admisibil de (sub)mult¸imi. Dac˘ a w : E R+ este o funct ¸ie pondere, atunci pentru submult¸imea N definim ponderea sa ca ¸si
I
S →
∈ I
I
w(N ) =
�
w(x).
x∈N
atoarea: S˘ a se g˘aseasc˘a Problema P max a g˘ asirii ponderii maxime este urm˘ o mult¸ime admisibil˘a cu pondere maxim˘ a. Un AG pentru rezolvarea acestei probleme este urm˘ atorul:
Algoritm 11 (Algoritm greedy pentru P max ) Intrare: = (E, ) un sistem de submult ¸imi admisibile Ie¸sire: o solut ¸ie a lui P max (cel put ¸in sper˘ am s˘ a obt ¸inem maximalitatea) se init ¸ializeaz˘ a M = ¸si A = E at timp A = cˆ - alegem e A cu ponderea maxim˘ a - A = A e - dac˘ a M + e , atunci M = M + e retur mult ¸imea M
S
I
̸∅ ∈ −
∅
∈ I
Deci, fiecare element e E a fost considerat o singur˘a dat˘ a , fiind fie ad˘augat, fie eliminat definitiv. Astfel, algoritmul este rapid ¸si simplu, dar nu e sigur c˘a ne conduce la solut¸ia optim˘a.
∈
Exemplul 3.13 Fie E = e1, e2 , e3 , cu ponderile
{
}
w(e1 ) = 3, w(e2 ) = w(e3 ) = 2,
I = {{e }, {e }, {e , e }}.
¸si
1
2
2
3
Solut ¸ia problemei P max este M = e2 , e3 , avˆ and w(M ) = 4, ˆın timp ce solut ¸ia obt ¸inut˘ a cu algoritmul 11 este M = e1 .
{
} { }
Motivul pentru care AG nu a g˘ asit solut¸ia optim˘a este cauzat de faptul c˘a nu exist˘a nicio leg˘atur˘ a ˆıntre mult¸imile din .
I
¸imi = (E, ) se nume¸ste ereditar dac˘ a Definit¸ia 3.38 Un sistem de mult este ˆınchis ˆın raport cu incluziunea, adic˘ a,
S
I
′
dac˘ a A
′
∈ I ¸si A ⊆ A, atunci A ∈ I . Exemplul 3.14 Fie E = R ¸si I mult ¸imea tuturor mult ¸imilor de vectori liniar independent ¸i. Atunci S = (R , I ) este un sistem ereditar de submult ¸imi, 3
3
deoarece orice submult ¸ime a unei mult ¸imi de vectori liniar independent ¸i este liniar independent˘ a.
Exemplul 3.15 Fie G = (V G, E G ) un graf ¸si mult ¸imea de submult ¸imi ale lui E G ale c˘ aror subgrafuri induse sunt subgrafuri aciclice ale lui G. Atunci S = (E G , ) este un sistem ereditar de mult ¸imi.
I
I
112
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.25: Graful pentru problema planific˘ arii. In continuare vom considera problema P max pentru sisteme ereditare de mult¸imi.
Propozit¸ia 3.32 Dac˘ a sistemul = (E, ) are proprietatea c˘ a pentru orice w : E R+ algoritmul de tip greedy 11 ne conduce la o solut ¸ie a lui P max , atunci (E, ) este un sistem ereditar de mult ¸imi.
S
→
I
I
Propozit¸ia 3.33 Aplicˆ and AG unui sistem ereditar de mult ¸imi (E, ) ¸si unei funct ¸ii pondere w : E R, obt ¸inem o mult ¸ime maximal˘ a , ˆın sensul c˘ a nu exist˘ a x E astfel ˆıncˆ at M x .
I
→ ∈
∪ { } ∈ I ¸imi M = (E, I ) se nume¸ste maDefinit¸ia 3.39 Un sistem ereditar de mult
a satisface urm˘ atoarea condit ¸ie, pe care o vom numi proprietatea troid dac˘ de cre¸ stere : Dac˘ a I, J
∈ I ¸si |I | < |J |, atunci exist˘ a e ∈ J \ I astfel ˆıncˆ at I ∪ {e} ∈ I . Propozit¸ia 3.34 Dac˘ a un sistem ereditar de mult ¸imi (E, I ) are proprietatea c˘ a, pentru orice pondere w : E → R , AG conduce la o solut ¸ie a problemei (AP ) :
+
P max, atunci acest sistem are de asemenea proprietatea de cre¸stere.
Teorema 3.35 Un sistem de mult ¸imi (E, ) are proprietatea c˘ a, pentru orice w : E R+ un algoritm de tip greedy conduce la o solut ¸ie a probmemei P max dac˘ a ¸si numai dac˘ a (E, ) este un matroid.
→
I
I
¸imea de Exemplul 3.16 (matroid) Fie G = (V, E ) un graf ¸si fie mult muchii cu proprietatea c˘ a graful generat de aceste muchii nu cont ¸ine cicluri. Atunci = (E, ) este un matroid.
I
S
I
Astfel, algoritmul lui Kruskal (pag. 104) ne conduce la un arbore economic.
3.6.2
Algoritm greedy pentru colorarea vˆ arfurilor
Presupunem c˘ a vrem s˘a planific˘am ¸sase lect¸ii de cˆate o or˘ a V = v1 , v2 , . . . , v6 . Printre participant¸i, exist˘a persoane care vor s˘ a participe la v 1 ¸si v 2 , v 1 ¸si v 4 , v3 ¸si v5, v2 ¸si v6 , v4 ¸si v5 , v5 ¸si v6 , v1 ¸si v6 . Cˆate ore sunt necesare pentru a programa cele 6 lect¸ii f˘ar˘a suprapuneri? Situat¸ia poate fi reprezentat˘ a printrun graf (figura 3.25), ale c˘arui vˆ arfuri sunt cele ¸sase lect¸ii ¸si ˆın care muchiile
{
}
113
CAPITOLUL 3. TEORIA GRAFURILOR
reprezint˘ a posibilele suprapuneri. Un orar posibil care s˘ a evite suprapunerile este: Ora 1 Ora 2 Ora 3 Ora 4 v1 ¸si v3 v2 ¸si v 4 v5 v6 Din punct de vedere matematic, construim o partit¸ie a mult¸imii V ˆın patru p˘art¸i, astfel ˆıncˆ at nici o parte s˘a nu cont¸in˘a perechi de vˆarfuri adiacente ale grafului. De fapt, definim o funct¸ie c : v1, v2 , v3 , v4 , v5 , v6
{
} → {1, 2, 3, 4},
care asociaz˘ a fiec˘ arui vˆarf (lect¸ie) ora programat˘ a pentru ea. De obicei vorbim despre culori asociate vˆarfurilor ¸si ceea ce este important este c˘ a vˆarfurile care sunt adiacente ˆın graf tebuie s˘a aib˘ a culori diferite.
Definit¸ia 3.40 O colorare a vˆ arfurilor unui graf G = (V, E ) este o funct ¸ie c : V N cu proprietatea
→
c(x) = c(y) dac˘ a xy
∈ E.
̸
Num˘ arul cromatic al lui G, notat χ(G), este definit ca ¸si cel mai mic num˘ ar natural k pentru care exist˘ a o colorare a vˆ arfurilor lui G folosind k culori. Revenind la figura 3.25, orarul nostru este echivalent cu o colorare a vˆarfurilor folosind patru culori. Dar num˘ arul cromatic al grafului este trei, ˆıntucˆ at exist˘a colorarea Culoare 1 v1
Culoare 2 Culoare 3 v2 ¸si v5 v3 , v4 ¸si v6
Mai mult, nu exist˘a nici o colorare cu doar dou˘ a culori deoarece v 1 , v2 , v6 sunt mutual adiacente, deci ele trebuie s˘ a aib˘a culori diferite. In concluzie, num˘arul cromatic al grafului este 3. In general g˘ asirea lui χ(G) este o problem˘ a dificil˘a ¸si nu exist˘a nici un algoritm rapid (executabil ˆın timp polinomial) care sa realizeze o asemenea colorare. O metod˘ a pentru colorarea vˆ arfurilor cu un num˘ ar rezonabil de culori este de a asocia culori vˆarfurilor ˆın ordine, ˆın a¸sa fel ˆıncˆat fiecare vˆ arf s˘a primeasc˘ a prima culoare care nu a fost asociat˘ a niciunuia din vecinii s˘ai. Astfel, se face cea mai bun˘a alegere la fiecare pas, f˘ ar˘a a privi ˆınainte pentru a vedea dac˘ a acea alegere nu va crea probleme mai tˆ arziu. Cu alte cuvinte se aplic˘a un algoritm de tip greedy.
Algoritm 12 (Algoritm greedy pentru colorarea vˆarfurilor) Intrare: un graf G = (V, E ) cu V = n Ie¸sire: o colorare a vˆ arfurilor lui G a culoarea 1 vˆ arfului v1 asociaz˘ pentru i = 2, . . . , n - fie S o mult ¸ime vid˘ a de culori - pentru j = 1, . . . , i 1 dac˘ a v j ¸si vi sunt adiacente, atunci se adaug˘ a ˆın S culoarea lui v j -k=1 - cˆ at timp culoarea k este ˆın S , execut˘ a k = k + 1 - se atribuie culoarea k vˆ arfului vi arf din V retur o culoare pentru fiecare vˆ
| |
−
CAPITOLUL 3. TEORIA GRAFURILOR
114
Figura 3.26: A 3-partite graf (left) ¸si a 3-partite complete graf (right). In final vom da un rezultat privind num˘ arul cromatic al unei clase particulare de grafuri.
Definit¸ia 3.41 Un graf se nume¸ste planar dac˘ a el poate fi desenat ˆın plan f˘ ar˘ a ca muchiile sale s˘ a se intersecteze. a plan˘ a Teorema 3.36 (Teorema celor patru culori) Orice hart˘ poate fi colorat˘ a folosind patru culori, astfel ˆıncˆ at acele regiuni care au ˆın comun o frontier˘ a diferit˘ a de un punct s˘ a nu aib˘ a aceea¸si culoare. Acest rezultat a fost pentru prima oar˘a formulat ca ¸si conjectur˘ a18 ˆın 1853 de c˘ atre Guthrie. La acea vreme nu a fost dificil s˘a se arate c˘ a sunt suficiente cinci culori. Teorema celor patru culori este prima teorem˘a important˘ a care a fost demonstrat˘ a cu a jutorul calculatorului. Deoarece a fost formulat˘ a ca ¸si conjectur˘a, au existat multe ˆıncerc˘ ari de a o demonstra, fiecare demonstrat¸ie dovedindu-se dup˘ a ani incorect˘ a. In final, ea a fost demonstrat˘ a ˆın 1976 de c˘atre Appel ¸si Haken, folosind un algoritm al lui Koch. Demonstrat¸ia lor a redus infinitatea de h˘ art¸i posible la 1936 configurat¸ii (mai tˆarziu reduse la 1476), verificate una cˆ ate una de c˘atre calculator. Mai tˆ arziu, ˆın 1996, s-a demonstrat c˘ a exist˘a de fapt doar 633 configurat¸ii posibile.
3.7
Grafuri bipartite
Definit¸ia 3.42 Fie r N, r 2. Un graf G = (V, E ) se nume¸ste r-partit dac˘ a V admite o partit ¸ie ˆın r clase astfel ˆıncˆ at fiecare muchie are extremit˘ at ¸ile ˆın clase diferite (sau, echivalent, vˆ arfurile din aceea¸si clas˘ a nu trebuie s˘ a fie adiacente).
∈
≥
Observat¸ia 3.15 Un graf 2-partit este numit bipartit ¸si se noteaz˘ a G = (V 1 V 2 , E ), unde V 1 ¸si V 2 sunt cele dou˘ a clase ale partit ¸iei. O proprietate imediat˘ a a unui graf bipartit este
∪
�
v∈V 1
deg(v) =
�
deg(v).
v∈V 2
In continuare vom da o caracterizare important˘ a a grafurilor bipartite. 18
In matematic˘ a, o conjectur˘a este o afirmat¸ie care pare a fi adev˘arat˘a, dar acest lucru nu a fost ˆınc˘a demonstrat. De ˆındat˘a ce o conjectur˘a a fost demonstrat˘ a, este ridicat˘a la rangul de teorem˘a si ¸ poate fi folosit˘a ulterior f˘ar˘ a riscuri ˆın alte demonstrat¸ii matematice. Pˆ an˘a ˆın acel moment, matematicienii pot folosi conjectura, dar orice rezultat dedus din aceasta este unul conjectural pˆ an˘a cˆand conjectura respectiv˘a este clarificat˘a.
115
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.27: Graful din exemplul 3.17.
Teorema 3.37 ( de caracterizare a grafurilor bipartite) Un graf este bipartit dac˘ a ¸si numai dac˘ a nu cont ¸ine cicluri de lungime impar˘ a. Demonstrat¸ie.
⇒
Fie G = (V 1 V 2 , E ) graf bipartit. Atunci sau G nu cont¸ine cicluri, sau, dac˘a exist˘a un ciclu, el are vˆarfurile succesiv ˆın V 1 ¸si V 2 , cu ultimul vˆarf ˆın aceea¸si clas˘ a cu primul. Un asemenea ciclu are un num˘ ar par de muchii.
⇐
Fie G = (V, E ) un graf f˘ar˘a cicluri impare (G are prin urmare niciun ciclu sau cicluri pare). Fie G 0 = (V 0 , E 0 ) o component˘ a conex˘a a lui G ¸si not˘am T 0 arborele de acoperire obt¸inut prin algoritmul BFS, pornind dintr-un vˆarf oarecare s V 0 . Consider˘am mult¸imile
∪
∈ V = {s} ∪ {x ∈ V, d(x, s) = par}, V = {x ∈ V, d(x, s) = impar}. Atunci orice muchie e ∈ T are o extremitate ˆın V ¸si cealalt˘a ˆın V . 1 2
0
0
1
2
Fie e = xy o muchie care nu apart¸ine arborelui de acoperire. Atunci d(x, s) ¸si d(y, s) sunt fie egale, fie difer˘a prin 1 (vezi propozit¸ia 3.25). Dac˘a ar fi egale, e ar ˆınchide un ciclu de lungime impar˘ a, fapt care ar contrazice ipoteza. In consecint¸a˘
|d(x, s) − d(y, s)| = 1, care implic˘a faptul c˘ a unul din vˆarfurile x, y este ˆın V 1 ¸si cel˘alalt este ˆın V 2 .
O aplicat¸ie a grafurilor bipartite este atribiurea de locuri de munc˘ a (job assignment). Dac˘ a X este o mult¸ime de persoane ¸si Y o mult¸ime de locuri de munc˘ a, astfel ˆıncˆ at fiecare persoan˘ a din X este calificat˘a pentru anumite locuri de munc˘ a din Y , atunci ˆıntrebarea care se pune ˆın mod firesc este: cum se pot atribui persoanelor locuri de munc˘ a, astfel ˆıncˆ at un num˘ar maxim de persoane s˘ a primeasc˘ a locuri munc˘ a pentru care sunt calificate? In limbajul grafurilor, consider˘am graful bipartit G = (X Y, E ), unde xy E dac˘a ¸si numai dac˘a x este calificat pentru locul de munc˘a y. O asemenea atribuire se va numi cuplaj ˆın G.
∪
∈
3.7.1
Cuplaje
Definit¸ia 3.43 Fie G = (V, E ) un graf.
116
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.28: CuplajeleM 1 ¸si M 2 . O mult ¸ime M E se nume¸ste cuplaj ˆın G dac˘ a, oricum am alege dou˘a muchii din M , ele nu sunt adiacente ˆın G.
⊆
Spunem c˘ a un cuplaj M satureaz˘ arful v V , ¸si c˘a v este saturat de a vˆ M , dac˘ a exist˘ a o muchie din M care este incident˘ a ˆın v; ˆın caz contrar spunem c˘ a v este nesaturat de M .
∈
Un cuplaj perfect este un cuplaj M ˆın care orice vˆ arf al lui G este saturat de M . Dac˘ a e = xy M, spunem c˘ a M cupleaz˘ a pe x cu y (sau x este cuplat cu y de c˘atre M ).
∈
Un cuplaj maxim este un cuplaj cu num˘ ar maxim de muchii (nu exist˘ a niciun alt cuplaj care s˘ a aib˘a mai multe muchii). Un cuplaj maximal este un cuplaj care nu este o submult ¸ime proprie a unui alt cuplaj din G.
Exemplul 3.17 In graful din figura 3.27,
{b}, {c}, {d}, {e} sunt cuplaje care nu sunt maximale . {b, d}, {c, e} sunt cuplaje maxime , {a} este cuplaj maximal, dar nu cuplaj maxim . Cel mai des ˆıntˆalnite aplicat¸ii ale cuplajelor sunt programarea utilajelor ¸si atribuirea locurilor de munc˘ a.
3.7.2
Cuplaje in grafuri bipartite
Consider˘am graful bipartit din figura 3.28. Mult¸imea M 1 = x1 y3 , x4 y4 nu este un cuplaj maxim, dar M 2 = x1y2 , x3 y3 , x4 y4 este un cuplaj maxim, deoarece nu exist˘ a un alt cuplaj cu mai mult de trei muchii. Intr-adev˘ ar, dac˘a se consider˘ a c˘a X este o mult¸ime de persoane ¸si Y este o mult¸ime de locuri de munc˘ a, atunci este imposibil s˘a g˘asim pentru toate cele patru persoane locuri de munc˘a pentru care acestea s˘ a fie calificate. Din cauz˘ a c˘a persoanele x1 , x2 , x3 sunt colectiv calificate doar pentru dou˘ a locuri de munc˘a y2 ¸si y3 , una din ele nu poate primi loc de munc˘ a, cu toate c˘a exist˘a pretendent¸i pentru toate locurile de munc˘ a. In multe aplicat¸ii se dore¸ste, dac˘a e posibil, g˘ asirea unui cuplaj al lui G care s˘ a satureze toate vˆ arfurile din X .
{
{
}
}
{
}
117
CAPITOLUL 3. TEORIA GRAFURILOR
Definit¸ia 3.44 Dac˘ a M = X (toate persoanele primesc locuri de munc˘ a), spunem c˘ a M este un cuplaj complet .
| | | |
Desigur, M 1 ¸si M 2 nu sunt cuplaje complete. Primul pas ˆın studierea cuplajelor este s˘ a decidem dac˘a este posibil˘ a g˘asirea unui cuplaj complet. Am v˘azut ˆın exemplul anterior c˘ a dac˘ a exist˘a trei persoane ¸si dou˘ a locuri de munc˘ a, nu poate exista un cuplaj complet. Apoi, suntem interesat ¸i de g˘asirea de condit¸ii necesare ¸si suficiente pentru existent¸a unui astfel de cuplaj. Fie G = (X Y, E ) un graf bipartit ¸si S X . Definim mult¸imea tuturor vˆarfurilor adiacente vˆ arfurilor din S ,
∪
⊆
J (S ) = y
{ ∈ Y, pentru care exist˘a x ∈ S a.ˆı.
xy
∈ E },
cu alte cuvinte mult¸imea de locuri de munc˘ a pentru care persoanele din S sunt colectiv calificate.
Observat¸ia 3.16 Dac˘ a J (S ) < S , atunci cineva din S nu va primi loc de munc˘ a. Deci, dac˘ a J este un cuplaj complet, atunci
|
| | |
|J (S )| ≥ |S |, pentru orice S ⊆ X.
(3.10)
Condit¸ia dat˘ a ˆın (3.10) este cunoscut˘ a sub numele de condit¸ia lui Hall19 . a un Teorema 3.38 (Hall, 1935) In graful bipartit G = (X Y, E ) exist˘ cuplaj complet dac˘ a ¸si numai dac˘ a este satisf˘ acut˘ a condit ¸ia lui Hall (3.10).
∪
Demonstrat¸ie.
⇒
Fie M un cuplaj complet ¸si fie S X . Vˆarfurile din Y cuplate de M cu cele din S formeaz˘ a o submult¸ime a lui J (S ) de m˘asur˘ a S . Astfel, J (S ) S .
⊆
|
⇐
| |
|≥| |
Presupunem c˘ a J (S ) S pentru orice S X. Dat fiind un cuplaj M pentru care M < X , vom ar˘ata cum se poate construi un cuplaj M ′ cu M ′ = M + 1 (un astfel de cuplaj M ′ va exista ˆıntotdeauna !).
| | ≥ | | | | | | | | | |
⊆
Fie x0 orice vˆarf necuplat de c˘ atre M . Atunci
|J ({x })| ≥ | {x }| = 1, 0
0
deci exist˘a cel put¸in o muchie e = x 0 y1 ˆın M . Dac˘a y1 este necuplat, atunci M ′ = M e . Dac˘a y1 este cuplat de c˘atre M , s˘a spunem cu x1 , atunci
∪ { }
|J ({x , x })| ≥ | {x , x }| = 2, deci exist˘a y , y̸ = y , adiacent la x sau x . 0
2
2
1
1
0
1
0
1
Dac˘a y2 este necuplat, stop. Dac˘a y2 este cuplat, s˘ a spunem cu x2 , repet˘ am rat¸ionamentul, deci exist˘a y3 , diferit de y1 ¸si y2 , adiacent la cel put¸in unul din vˆarfurile x0 , x1 , x2 . ... Continuˆand ˆın acest fel, trebuie ˆın cele din urm˘a s˘ a ne oprim la un vˆ arf necuplat yr (deoarece G este finit).
19
Philip Hall (1904-1982), matematician englez.
118
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.29: Cuplajele M ¸si M ′ din demonstrat¸ia teoremei lui Hall. Muchia x1 y1 din M este ˆınl˘aturat˘ a ¸si muchiile x0 y1 , x1 y2 care nu sunt ˆın M sunt ad˘augate. Fiecare yi , i Nr , este adiacent cel put¸in unuia din vˆarfurile x0 , x1 , . . . , xi−1 , prin urmare avem un lant¸
∈
p = yr , xr−1 , yr−1 , . . . , x1 , y1, x0 ,
⟨
⟩
ˆın care xi yi
∈ M.
Construim cuplajul M ′ astfel ˆıncˆ at muchia xi yi a lant¸ului p s˘a nu apart¸in˘a lui M ′ , dar muchia alternant˘ a s˘a apart¸in˘a lui M ′ (figura 3.29). Intrucˆ at muchiile terminale yr xr−1 ¸si y1 x0 sunt ambele ˆın M ′ , avem M ′ = M + 1 (num˘ arul muchiilor ad˘augate este egal cu unu plus num˘arul muchiilor ˆınl˘aturate).
| | | |
Pe scurt, ideea demonstrat ¸iei este construct¸ia unui lant¸ ale c˘arui muchii sunt alternativ ˆın M ¸si ˆın E M . In general, pentru un graf G = (V, E ) ¸si pentru un cuplaj M din G, spunem c˘ a un lant¸ este lant¸ alternant pentru M dac˘a muchiile sale sunt alternativ ˆın E M ¸si M . Un lant¸ cresc˘ ator pentru M este an lant¸ alternant pentru M cu primul ¸si ultimul vˆarf nesaturate de M . De exemplu, un lant¸ cresc˘ ator pentru cuplajul M din figura 3.29 este x0 , y1 , x1 , y2 . S˘a observ˘ am c˘a, ˆıntrucˆat prima ¸si ultima muchie a unui lant¸ cresc˘ ator nu apart¸in lui M , lant¸ul are cu o muchie mai put¸in ˆın M decˆ at ˆın E M . Din demonstrat¸ia teoremei putem de asemenea deduce c˘ a, ˆın cazul ˆın care condit¸ia lui Hall este satisf˘acut˘a ¸si M nu este complet, atunci exist˘a un lant¸ cresc˘ator pentru M . Ideea demonstrat¸iei constituie de asemenea un instrument practic pentru construct¸ia cuplajelor complete, furnizˆ and de fapt un algoritm pentru aceast˘a construct¸ie.
\
\
⟨
⟩
\
a ¸si sub numele de teoObservat¸ia 3.17 Teorema lui Hall este cunoscut˘ a urm˘ atoarei interpret˘ ari: X este o mult ¸ime de rema mariajului , datorit˘ b˘ arbat ¸i ¸si Y este o mult ¸ime de femei, unii dintre ei cunoscˆ andu-se reciproc. Se cere condit ¸ia ca fiecare b˘arbat s˘ a se ˆınsoare cu una din femeile pe care o cunoa¸ste. In teorema lui Hall, J (S ) reprezint˘ a mult ¸imea de femei cunoscute de b˘ arbat ¸ii din S . Un cuplaj este o mult ¸ime de perechi care se c˘ as˘ atoresc.
119
CAPITOLUL 3. TEORIA GRAFURILOR
3.7.3
Cuplaj maxim
In general, un graf bipartit nu va avea un cuplaj complet, deci problemele care se ridic˘a ˆın acest caz sunt: cum se poate g˘asi m˘ asura maxim˘a a unui cuplaj ¸si cum se poate face o atribuire din care s˘a rezulte c˘ a cel mai mare num˘ar posibil de persoane primesc locuri de munc˘ a. Solut¸ia se poate deduce teorema lui Hall. Mai ˆıntˆai s˘a observ˘ am c˘a, dac˘a S > J (S ) , atunci anumite persoane nu vor primi locuri de munc˘ a, de fapt exist˘a cel put¸in S J (S ) persoane care nu vor primi locuri de munc˘ a. Aceast˘ a observat¸ie ne sugereaz˘ a urm˘atoarea definit¸ie.
| | |
|
| | −|
|
Definit¸ia 3.45 Deficient ¸a d a unui graf bipartit G = (X finit˘ a ca ¸si d = max S J (S ) , S X .
∪ Y, E ) este de-
{| | − | | ⊆ } Observat¸ia 3.18 Pentru S = ∅ avem |S | = |J (S )| = 0, deci d ≥ 0. Atunci,
folosind deficient ¸a, teorema lui Hall poate fi reformulat˘ a astfel: Exist˘ a un cuplaj complet dac˘ a ¸si numai dac˘ a d = 0. In urm˘atoarea teorem˘ a vom da un rezultat privind m˘asura unui cuplaj maxim ˆın cazul general.
Teorema 3.39 M˘ asura unui cuplaj maxim M ˆıntr-un graf bipartit G = (X Y, E ) este M = X d,
∪
| | | |−
unde d este deficient ¸a grafului G.
a exist˘a S 0 Demonstrat¸ie. Din definit¸ia 3.45 deducem c˘
⊆ X astfel ˆıncˆat
|S | − |J (S )| = d. 0
0
In orice cuplaj, cel put¸in d elemente din S 0 r˘amˆan necuplate, deci
|M | ≤ |X | − d. R˘amˆane s˘a ar˘at˘am c˘a exist˘a un cuplaj cu m˘axsura egal˘a cu X d. Fie D o nou˘ a mult¸ ime, cu m˘asura D = d. Construim graful G∗ = (X ∗ Y ∗ , E ∗), cu
| |
∪
| | −
X ∗ = X, Y ∗ = Y D, E ∗ = E K,
∪ ∪
unde K este mult¸imea tuturor muchiilor posibile care leag˘ a X ¸si D. Atunci, ∗ ∗ pentru graful G avem J (S ) = D J (S ), de unde
∪
∗
|J (S )| − |S | = d + |J (S )| − |S | ≥ 0. Astfel, G ∗ satisface condit¸ia lui Hall ¸si prin urmare G ∗ are un cuplaj complet M ∗ . Eliminˆand din M ∗ acele d muchii care au un vˆarf ˆın D, obt¸inem cuplajul cerut ˆın G.
120
CAPITOLUL 3. TEORIA GRAFURILOR
Observat¸ia 3.19 Teorema 3.39 nu este prea eficient˘ a pentru g˘ asirea m˘ asurii unui cuplaj maxim, din cauz˘ a c˘ a pentru a calcula d trebuie examinate mai ˆıntˆ ai toate cele 2|X | submult ¸imi ale lui X . O abordare mai eficient˘ a se bazeaz˘ a pe faptul c˘ a, dac˘a avem un lant¸ alternant pentru un cuplaj M , atunci putem construi un cuplaj mai bun M ′ . Pentru a putea folosi aceast˘ a idee, avem nevoie de urm˘atorul rezultat, cunoscut sub numele de teorema lui Berge.
Teorema 3.40 (Berge,20 1957) Cuplajul M dintr-un graf G este un cuplaj maxim dac˘ a ¸si numai dac˘ a G nu cont ¸ine niciun lant ¸ cresc˘ ator pentru M . Demonstrat¸ie.
⇒ Fie M este un cuplaj maxim.
Vom demonstra c˘ a G nu cont¸ine niciun lant¸ cresc˘ ator pentru M . Presupunem contrariul, anume c˘ a G cont¸ine un lant¸ cresc˘ ator ˆın M , notat P = e1 , e2 , . . . , e2s+1 . Intrucˆat e 1 / M, deducem c˘ a
⟨
⟩
e1 , e3 , . . . , e2s+1 / M ¸si e2, e4 , . . . , e2s
∈
∈
∈ M.
Definim mult¸imea M 1 E obt¸inut˘a din M prin ˆındep˘artarea muchiilor e2 , e4, . . . , e2s ¸si ad˘augarea muchiilor e1, e3 , . . . , e2s+1. Atunci M 1 este un cuplaj ˆın G care cont¸ine cu o muchie mai mult decˆat ˆın M , fapt ce contrazice maximalitatea lui M .
⊆
⇐ Ar˘at˘am c˘a, dac˘a G nu cont¸ine niciun lant¸ alternant pentru M , atunci M este maxim. Presupunem c˘a M nu este maxim ¸si fie M un cuplaj maxim. Atunci |M | > |M |. ∗
∗
Fie F mult¸imea de muchii din M ∆M ∗ = (M
∗
∗
∗
∗
∪ M ) \ (M ∩ M ) = (M \ M ) ∪ (M \ M ).
Cu muchiile din F form˘am un graf H , ˆın care orice vˆ arf va avea gradul unu sau doi, deoarece el poate fi incident cel mult unei muchii din M ¸si unei muchii din M ∗ . Deci, componentele lui H sunt fie lant¸uri elementare, fie cicluri elementare. In fiecare din aceste lant¸uri/cicluri, muchiile din M alterneaz˘a cu muchii care nu sunt ˆın M . Astfel, ˆın orice ciclu, num˘arul de muchii din M (din M M ∗ ) este egal cu num˘arul de muchii care nu sunt ˆın M (sunt ˆın M ∗ M ). Dar,
\ \ |M | > |M | ⇒ |M \ M | > |M \ M |, ∗
∗
∗
deci este imposibil ca ˆın F s˘a existe numai cicluri. In concluzie, exist˘a cel put¸in o component˘ a care este un lant¸ cu un num˘ ar impar de muchii, ¸si acesta este un lant¸ cresc˘ ator pentru M . Aceasta este o contradict¸ie. Din demonstrat¸ia teoremei lui Berge, putem deduce urm˘atorul algoritm pentru g˘ asirea unui cuplaj maxim: 20
Claude Berge (1926-2002), matematician francez.
121
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.30: O hart˘a a ora¸selor ¸si str˘ azile care fac leg˘atura ˆıntre ele.
Algoritm 13 (pentru g˘ asirea unui cuplaj maxim) Intrare: un graf G Ie¸sire: un cuplaj maxim ˆın G se init ¸ializeaz˘ a M cu orice muchie se caut˘ a un lant ¸ cresc˘ ator pentru M Dac˘ a se g˘ ase¸ste un lant ¸ cresc˘ ator, se construie¸ste un ′ cuplaj mai bun M ˆın modul descris ˆın demonstrat ¸ia ′ teoremei, ¸si se revine la , cu M ˆınlocuind pe M Dac˘ a nu poate fi g˘ asit niciun lant ¸ cresc˘ ator, STOP: M este cuplaj maxim. C˘autarea unui lant¸ cresc˘ ator se poate face printr-o procedur˘ a BFS modificat˘a. Se alege un vˆarf necuplat x0 ¸si se construie¸ste un arbore de lant¸uri alternante part¸iale , pornind din x0 , astfel: ≪
≫
1. La nivelul 1, inser˘ am toate vˆarfurile y 1 , y2 , . . . , yk adiacente lui x 0 ˆın G. Dac˘a oricare din aceste vˆarfuri y i este necuplat, STOP: x0 , yi este un lant¸ cresc˘ ator. 2. Dac˘a toate vˆarfurile de la nivelul 1 sunt cuplate, se insereaz˘ a la nivelul 2 vˆarfurile x 1 , x2 , . . . , xk cu care acestea sunt cuplate. 3. La nivelul 3, se insereaz˘ a toate vˆarfurile noi adiacente vˆ arfurilor de la nivelul 2. Dac˘ a oricare din ele este necuplat, STOP: lant¸ul care ne conduce la acest vˆ arf x0 este un lant¸ cresc˘ ator. 4. Dac˘a toate vˆarfurile de la nivelul 3 sunt cuplate, inser˘am vˆarfurile cu care acestea sunt cuplate la nivelul 4, ¸si a¸sa mai departe.
⟨
⟩
Construct¸ ia se poate opri din cauz˘ a ca nu mai exist˘a vˆarfuri noi de inserat la un nivel impar. Cˆ and se ˆıntˆampl˘a acest lucru, nu exist˘a niciun lant¸ cresc˘ator din vˆarful ales x0 . Trebuie, totu¸si, s˘ a repet˘ am procedura pentru orice vˆarf necuplat din X ˆınainte s˘a fim siguri c˘a nu putem g˘ asi ˆın G niciun lant¸ alternant G.
3.8
Grafuri hamiltoniene ¸si euleriene
Pentru ˆınceput s˘ a ment¸ion˘ a m c˘a toate rezultatele date ˆın aceast˘ a sect¸iune pentru grafuri sunt de asemenea valabile ¸si pentru multigrafuri, ˆın afar˘ a de cazul ˆın care specific˘am contrariul. Consider˘am harta din figura 3.30, a ¸sase ora¸se ˆımpreun˘ a cu str˘azile dintre ele. Un inginer constructor de autostr˘ azi (E) dore¸ste s˘a inspecteze toate
122
CAPITOLUL 3. TEORIA GRAFURILOR
str˘azile, indiferent de direct¸ie, fiind preg˘ atit s˘a ˆınceap˘ a ¸si s˘a termine ˆın locuri diferite. Prietenul s˘ au, inspectorul (H), dore¸ste s˘a ia masa la restaurant ˆın fiecare ora¸s. Fiecare din ei dore¸ste s˘ a-¸si realizeze scopul ˆın mod cˆ a t mai eficient cu putint¸a˘. Deci, scopul lui (E) se poate formula astfel: Doresc, dac˘a este posibil, s˘a vizitez fiecare strad˘ a o singur˘a dat˘a , ˆın timp ce (H) spune Doresc, dac˘ a este posibil, s˘a vizitez fiecare ora¸s o singur˘a dat˘ a ¸si s˘a m˘a ˆıntorc ˆın punctul de plecare. Intrebarea este: Se pot g˘asi trasee convenabile pentru fiecare dintre ei? Pentru inspectorul (H), o posibilitate este lant¸ul ˆınchis ≪
≫
≪
ω = p, q, t, s, u, r, p .
⟨
⟩
Pentru inginerul (E), fie x vˆarful de plecare ¸si y vˆarful final, ¸si presupunem pentru moment c˘ a x = y. El folose¸ste o muchie incident˘ a ˆın x atunci cˆ and pleac˘a ¸si apoi, de fiecare dat˘a cˆ and se ˆıntoarce ˆın x trebuie s˘ a soseasc˘ a ¸si s˘a plece folosind muchii diferite. In acest mod, el folose¸ste un num˘ ar impar de muchii ˆın x, ¸si astfel gradul lui x ar trebui s˘ a fie un num˘ar impar (x ar trebui s˘a fie un vˆ arf impar). Analog, gradul lui y ar trebui s˘ a fie ¸si el num˘ar impar. Toate vˆarfurile r˘amase ar trebui s˘a fie pare, deoarece de fiecare dat˘a cˆand ajunge la un vˆarf intermediar trebuie s˘ a ¸si plece din el, ¸si prin urmare folose¸ste dou˘ a muchii diferite. In concluzie, un traseu pentru pentru (E), pornind ¸si terminˆ and ˆın vˆarfuri distincte x ¸si y este posibil dac˘ a ¸si numai dac˘ a x ¸si y sunt vˆarfuri impare ¸si restul vˆarfurilor sunt pare. In cazul nostru, gradele sunt
̸
v p δ (v) 4
q 4
r 5
s 5
t u , 5 3
deci nu exist˘a niciun traseu pentru (E). Dac˘a x = y, din nou nu exist˘a nicio solut¸ie, ˆıntrucˆa t toate vˆarfurile ar trebui s˘a fie pare.
3.8.1
Grafuri hamiltoniene
In general, traseul lui (H) este un ciclu elementar care cont¸ine toate vˆ arfurile unui graf dat. Asemenea cicluri au fost studiate pentru prima oar˘ a de c˘atre Hamilton,21 deci un ciclu cu aceast˘ a proprietate se nume¸ste ciclu hamiltonian. Un graf care este conex ¸si cont¸ine un ciclu hamiltonian se nume¸ste ¸ia ca vˆarful init¸ial graf hamiltonian. In cazul ˆın care nu impunem restrict s˘a coincid˘a cu vˆarful final, un asemenea lant¸ elementar care viziteaz˘ a fiecare vˆarf exact o dat˘ a se nume¸ste lant¸ hamiltonian. In general, nu este u¸sor s˘a decidem dac˘ a un graf este hamiltonian sau nu. Cˆ ateva rezultate care dau condit¸ii suficiente pentru existent¸a unui lant¸ hamiltonian sunt urm˘ atoarele:
Teorema 3.41 (Dirac,22 1952) Un graf conex cu n > 2 vˆ arfuri este hamiltonian dac˘ a fiecare vˆ arf al s˘ au are gradul n/2. Aceast˘ a teorem˘ a este valabil˘ a doar pentru grafuri, nu ¸si pentru multigrafuri.
≥
21 22
William Rowan Hamilton (1805-1865), matematician, fizician ¸si astronom irlandez. Gabriel Andrew Dirac (1925-1984), matematician britanic.
123
CAPITOLUL 3. TEORIA GRAFURILOR
Teorema 3.42 (Ore,23 1960) Un graf conex cu n > 2 vˆ arfuri este hamiltonian dac˘ a suma gradelor oric˘aror vˆ arfuri neadiacente este n. O consecint ¸˘ a immediat˘ a este c˘ a toate grafurile complete sunt hamiltoniene.
≥
Cea mai bun˘ a caracterizare a grafurilor hamiltoniene, care generalizeaz˘ a rezultatele precedente obt¸inute de Ore ¸si Dirac, a fost dat˘ a ˆın 1972 de c˘ atre 24 25 Bondy ¸si Cv´atal. Inainte de a da teorema trebuie s˘ a d˘am urm˘atoarea definit¸ie. arfuri, definim ˆınchiderea lui Definit¸ia 3.46 Dat fiind un graf G cu n vˆ G ca fiind graful construit ˆın mod unic din G prin ad˘ augarea, pentru orice pereche de vˆ arfuri neadiacente x, y cu δ (x) + δ (y) n, muchia xy.
≥
Teorema 3.43 (Bondy-Chv´ atal, 1972) Un graf este hamiltonian dac˘ a ¸si numai dac˘ a ˆınchiderea sa este graf hamiltonian. O consecint¸a˘ a acestei teoreme este c˘ a toate poliedrele regulate (tetraedru, cub, octaedru, dodecaedru, icosaedru), considerate ca ¸si grafuri, sunt hamiltoniene. Printre algoritmii folosit¸i pentru construct¸ia unui ciclu hamiltonian ment¸ion˘ am algoritmul lui Ham.
3.8.2
Grafuri euleriene
Problema g˘ asirii unui traseu pentru (E) a fost rezolvat˘ a rapid: r˘aspunsul a fost nu . Aceast˘a problem˘ a a fost discutat˘a pentru prima oar˘ a ˆın 1736 de c˘atre Euler, ˆın timp ce rezolva faimoasa problem˘ a a celor ¸sapte poduri din K¨ onigsberg . a renuProblema celor ¸sapte poduri din K¨ onigsberg este o problem˘ mit˘a de matematic˘ a, inspirat˘ a dintr-un fapt real. Ora¸sul prusian K¨ onigsberg (acum Kaliningrad, Rusia) era a¸sezat pe rˆ aul Pregel, ¸si includea dou˘ a insule mari care erau conectate ˆıntre ele ¸si cu ora¸sul principal prin ¸sapte poduri (figura 3.31). Intrebarea pe care ¸si-o puneau locuitorii era dac˘ a este posibil˘a construirea unui traseu care s˘ a traverseze fiecare pod exact o dat˘a. In 1736, Leonhard Euler a demonstrat c˘ a acest lucru nu este posibil. In demonstrat¸ia lui, Euler a formulat problema ˆın limbajul teoriei grafurilor, abstractizˆ and problema astfel: mai ˆıntˆ ai a eliminat toate elementele cu except¸ia buc˘ a¸tilor de p˘amˆant ¸si a podurilor care le conecteaz˘ a, ¸si apoi a ˆınlocuit fiecare bucat˘ a de p˘amˆant cu un punct (vˆarf), ¸si fiecare pod cu o linie (muchie), ca ˆın figura 3.32. Astfel, el avea s˘a introduc˘ a o nou˘ a structur˘ a matematic˘ a – graful. Dac˘a se calculeaz˘ a gradele vˆ arfurilor din graful problemei celor ¸sapte poduri (figura 3.32), se poate observa c˘ a cerint¸a ca toate cele ¸sapte vˆarfuri s˘a aib˘a grad par nu este satisf˘ acut˘a. ≪
≫
Definit¸ia 3.47 Un lant ¸ simplu care parcurge fiecare muchie a grafului exact o dat˘ a se nume¸ste lant ¸ eulerian . Un lant ¸ eulerian care este ˆınchis se nume¸ste ciclu eulerian . Un graf se nume¸ste eulerian dac˘ a el cont ¸ine un ciclu eulerian. 23
Øystein Ore (1899-1968), matematician norvegian. John Adrian Bondy, matematician american. 25 Vaˇsek Chv´atal (n. 1946), matematician ceh. 24
CAPITOLUL 3. TEORIA GRAFURILOR
124
Figura 3.31: O hart˘a a ora¸sului K¨onigsberg ¸si a renumitelor sale poduri.
Figura 3.32: Graful K¨onigsberg. A¸sa cum am ment¸ionat deja, Euler a observat c˘ a o condit¸ie necesar˘ a pentru existent¸a ciclurilor euleriene este ca toate vˆarfurile grafului s˘ a aib˘a grad par; aceasta ˆınseamn˘a c˘a graful K¨onigsberg nu este eulerian. In ceea ce prive¸ste existent¸a unui lant¸ eulerian, fie toate vˆ arfurile, fie toate cu except¸ia a dou˘a dintre ele ar trebui s˘ a aib˘a gradul par. Intrebarea care se pune ˆın mod natural este dac˘ a aceste condit¸ii neceasare sunt ¸si suficiente. Carl Hierholzer a publicat ˆın 1873 prima caracterizare complet˘ a a grafurilor euleriene, demonstrˆ and c˘ a de fapt grafurile euleriene sunt exact grafurile care sunt conexe ¸si ˆın care orice vˆ arf are gradul par.
Teorema 3.44 (Hierholzer, 1873) Fie G = (V, E ) un graf conex. Atunci urm˘ atoarele afirmat ¸ii sunt echivalente: a) G este eulerian, b) Orice vˆ arf al lui G are grad par, c) G este reuniune de cicluri care nu au muchii comune.
Demonstrat¸ie.
⇒ b) Aceast˘a implicat¸ie a fost deja discutat˘a. b) ⇒ c) Deoarece fiecare vˆ arf are grad par, G nu poate fi arbore, prin urmare a)
G cont¸ine un ciclu, notatC 1 .
Dac˘a C 1 = G, atunci concluzia este demonstrat˘ a. Dac˘a nu, consider˘am graful G 1 = G C 1 . Deoarece muchiile ˆınl˘ aturate din G formeaz˘ a un ciclu, gradul ˆın G 1 al fiec˘arui vˆarf din C 1 este redus cu 2, ¸si prin urmare fiecare vˆ arf al lui G1 este par. Astfel, G1 nu este arbore, prin urmare cont¸ine un ciclu C 2 .
−
125
CAPITOLUL 3. TEORIA GRAFURILOR
Dac˘a G = C 1
∪ C , concluzia este demonstrat˘a. 2
Dac˘a nu, continu˘am ˆın acela¸si mod ¸si ne vom opri ˆın momentul ˆın care vom obtine faptul c˘ a G = C 1 C 2 . . . C n.
∪ ∪ ∪
c)
∗
⇒ a) Fie T
un lant¸ simplu ˆınchis ˆın G de lungime maxim˘a . Conform propozit¸iei 3.6, T ∗ este reuniune de cicluri f˘ ar˘a muchii ˆın comun. Dac˘a T ∗ include toate muchiile din G, atunci concluzia este demonstrat˘a.
Dac˘a nu, atunci exist˘a un ciclu, notat C , care nu face parte din T ∗ . Deoarece G este conex, exist˘ a un vˆarf v C ∗ C ¸si un lant¸ elementar ˆınchis obt¸inut ˆın felul urm˘ator:
∈ ∩
- traversˆand T ∗ pˆan˘a cˆand v este ˆıntˆ anit pentru prima oar˘ a - ˆıntorcˆ andu-ne ˆın jurul lui C ˆınapoi ˆın v ≪
≫
- traversˆand apoi port¸iunea r˘ amas˘a din T ∗ Construind acest lant¸ simplu, obt¸inem o contradict¸ie cu maximalitatea lui T ∗. In concluzie, existent¸a lui C care nu face parte din T ∗ este fals˘a, ¸si prin urmare T ∗ include toate muchiile din G.
Construct¸ia lant¸urilor ¸si ciclurilor euleriene Fiind dat un graf conex cu cel mult dou˘a vˆa rfuri de grad impar, putem construi un lant¸ eulerian sau un ciclu eulerian ˆın acest graf cu ajutorul algoritmului lui Fleury, care dateaz˘ a din 1883. ˆIncepem cu un vˆ arf de grad impar (dac˘ a graful nu are nici unul, atunci ˆıncepem cu orice vˆ a rf). La fiecare pas alegem o muchie, care s˘ a nu fie muchie t˘ aietur˘a decˆ at ˆın cazul ˆın care nu avem alt˘a posibilitate. Muchia aleas˘ a este apoi ¸stears˘ a . La sfˆ ar¸situl algoritmului nu mai exist˘a muchii r˘amase, iar succesiunea de muchii alese formeaz˘ a un ciclu eulerian dac˘ a graful nu are vˆarfuri de grad impar, sau un lant¸ eulerian dac˘a graful are dou˘ a vˆarfuri de grad impar.
Algoritm 14 (Fleury, 1883) Intrare: - un graf conex G = (V, E ), ale c˘ arui vˆ arfuri (a) au grade pare; (b) exact dou˘ a vˆ arfuri x, y au grade impare - un vˆ arf de pornire v0 Ie¸sire: (a) un ciclu eulerian; (b) un lant ¸ eulerian ˆıntre x ¸si y a lant ¸ul curent ca vid, vˆarful curent ca ¸si v0 ¸si A = E se seteaz˘ cˆ at timp A = - se selecteaz˘ a o muchie e incident˘ a vˆ arfului curent, dar alegˆ and o muchie t˘ aietur˘ a numai dac˘ a nu avem alt˘ a alternativ˘ a - se adaug˘ a e la lant ¸ul curent - se seteaz˘ a vˆ arful curent ca ¸si cealalt˘ a extremitate muchiei e - A = A e - se ¸sterg toate vˆ arfurile izolate retur un ciclu eulerian ˆın cazul (a) ¸ si un lant ¸ eulerian ˆıntre x ¸si y ˆın cazul (b)
̸∅
\{ }
CAPITOLUL 3. TEORIA GRAFURILOR
126
Figura 3.33: Pa¸sii din exemplul 3.18.
Exemplul 3.18 Consider˘ am graful din figura 3.33 (stˆ anga sus). Vom lua vˆ arful A ca ¸si vˆarf de pornire. Primele muchii considerate ˆın ciclul eulerian vor fi AB, BC, CD. In acest moment, graful r˘ amas este desenat ˆın figura 3.33 (dreapta sus) ¸si vˆ arful curent este D. Muchia DA devine muchie t˘ aietur˘ a, deci vom lua ˆın muchiile DB, BE , EF , F G, graful r˘ amas fiind cel din figura 3.33 (stˆ anga jos). Acum GK este o muchie t˘aietur˘ a, prin urmare vom alege GE , EH , HG, GK , KI . Apoi, ID este muchie t˘ aietur˘ a, deci alegem IJ , JK , KL, LI , ID, DA.
C
C
Ca ¸si aplicat¸ii ale grafurilor euleriene s˘a ment¸ion˘ am colectarea resturilor menajere, m˘ aturarea str˘ azilor, cur˘a¸t area z˘ apezii, efectuarea marcajelor rutiere, ˆımp˘ art¸irea corespondent ¸ei.
3.8.3
Problema po¸sta¸sului
In 1962, matematicianul chinez Meigu Guan a introdus problema g˘ asirii celui mai scurt ciclu care s˘a traverseze fiecare muchie a unui graf cel put¸in o dat˘ a. El avea ˆın vedere un po¸sta¸s care vrea s˘ a ˆımpart˘ a corespondent¸a ˆıntr-o ret¸ea de str˘ azi ¸si s˘a se ˆıntoarc˘ a la oficiul po¸stal cˆat mai repede cu putint ¸˘ a. J. Edmonds a poreclit aceast˘ a problem˘ a problema po¸sta¸sului chinez .
Definit¸ia 3.48 Intr-un graf cu ponderi, un ciclu optimal este un ciclu care parcurge fiecare muchie a lui G cel put ¸in o dat˘ a ¸si a c˘ arui pondere total˘ a este minim˘ a. Desigur, dac˘a fiecare vˆ arf al grafului are grad par, un ciclu eulerian este un ciclu optimal. In caz contrar, anumite muchii trebuie parcurse de mai multe ori. Deci, scopul este s˘ a g˘a sim un ciclu ale c˘ arui muchii repetate s˘ a aib˘a pondere minim˘ a. Acesta corespunde, de fapt, unui ciclu eulerian ˆın graful ∗ G , format din G prin ad˘augarea unui num˘ ar de muchii egal cu num˘arul de ori ˆın care se re-parcurge o muchie. In 1973, Edmonds ¸si Johnson au rezolvat problema po¸sta¸sului chinez folosind urm˘atorul algoritm:
127
CAPITOLUL 3. TEORIA GRAFURILOR
Algoritm 15 (Construct¸ia unui ciclu optimal) Intrare: un graf conex cu ponderi G Ie¸sire: un ciclu optimal W ase¸ste mult ¸imea S de vˆarfuri impare din G se g˘ pentru fiecare pereche de vˆ arfuri impare u, v S , se g˘ ase¸ste d(u, v)= distant ¸a dintre u ¸si v se formez˘ a un graf complet K cu vˆ arfurile lui S ¸si in K se asociaz˘ a ponderea d(u, v) fiec˘ arei muchii uv se g˘ ase¸ste un cuplaj perfect M ˆın K a c˘ arui pondere total˘ a este minim˘a pentru fiecare muchie e din M - fie p lant ¸ul corespunz˘ ator cel mai scurt ˆın G ˆıntre extremit˘ at ¸ile muchiei e - pentru fiecare muchie f a lant ¸ului p, se adaug˘ a la graful G o dublur˘ a a muchiei f , incluzˆ and ponderea acesteia ∗ augarea la graful G a Fie G graful eulerian format prin ad˘ muchiilor dublate din pasul anterior se construie¸ste un ciclu eulerian W ˆın G∗ . Acest ciclu va corespunde ciclului optimal din graful original G.
∈
Observat¸ia 3.20 Optimalitatea ciclului rezult˘ a din faptul c˘ a am ales un cuplaj perfect de pondere minim˘ a, format din acele muchii care corespund celui mai scurt lant ¸ ˆın G.
Figura 3.34: Graful cu ponderi G din exemplul 3.19.
Figura 3.35: Graful complet K ¸si graful eulerian G∗.
Exemplul 3.19 Consider˘ am graful cu ponderi G din figura 3.34. Vˆ arfurile de grad impar sunt b,d,f,h. Ele vor forma graful complet K din figura 3.35 (stˆ anga). Un cuplaj perfect ˆın K cu pondere minim˘ a este M = bd,fh . Fiecare muchie din M reprezint˘ a un drum ˆın G: pentru muchia bd de pondere 8 avem drumul ˆın G b,e,d (de lungime 8), ˆın timp ce pentru muchia f h
{
⟨
⟩
}
128
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.36: Graful asociat proiectului din exemplul 3.20. de lungime 9 avem drumul f,i,h . Graful G ∗ este reprezentat ˆın figura 3.35 (dreapta). In final, pentru a construi un ciclu Eulerian aplic˘ am algoritmul lui Fleury ¸si obt ¸inem
⟨
⟩
W = a,b,c,f,e,b,e,d,e,h,i,f,i,h,g,d,a .
⟨
3.9 3.9.1
⟩
Ret¸ele Drumuri critice
FieD = (V, A) un graf orientat ¸si w : A N o funct ¸ie pondere reprezentˆ and costuri, distant¸e sau timpi. Acest graf orientat poate fi folosit ˆın planificarea unui proiect, atunci cˆ and proiectul poate fi ˆımp˘ art¸it ˆın activit˘a¸t i mai mici legate ˆıntre ele. De exemplu, proiectul de construct ¸ie a unei case poate fi ˆımp˘art¸it ˆın mai multe activit˘a¸t i mici, cum ar fi turnarea fundat¸iei, ridicarea zidurilor, montarea acoperi¸sului, instalarea ret¸elei electrice, etc. Aceste activit˘a¸t i sunt desigur legate, ˆın sensul c˘ a anumite activit˘a¸ti nu pot ˆıncepe pˆ an˘a cˆand altele nu au fost realizate. Graful orientat asociat unui asemenea tip de proiect se construie¸ste astfel:
→
- arcele reprezint˘ a activit˘a¸t i, - vˆarfurile reprezint˘ a evenimente (un eveniment este ˆındeplinirea unor activit˘a¸ti), - ponderea unui arc este timpul necesar activit˘a¸t ii reprezentate de arcul respectiv. Exemplul 3.20 Vrem s˘ a planific˘ am activit˘ at ¸ile α1 , . . . , α8 astfel ˆıncˆ at timpul total necesar pentru proiect s˘ a fie minim, cunoscˆ and condit ¸iile de ˆıncepere pentru fiecare din activit˘ at ¸ile αi : Activitate α1 Timp necesar (zile) 4 Condit¸ii de ˆıncepere –
α2 3 –
α3 7 α1
α4 4 α1
α5 6 α2
α6 5 α4 α5
α7 2 α3 α6
α7 5 α4 α5
De exemplu, activitatea α6 nu poate ˆıncepe pˆ an˘a cˆand activit˘a¸tile α4 ¸si α5 nu sunt ˆındeplinite. Suntem interesat¸i de g˘asirea num˘ arului minim de zile necesare pentru realizarea ˆıntregului proiect. Graful asociat proiectului este cel din figura 3.36. In acest graf, vˆarful s reprezint˘ a evenimentul ˆınceperea proiectului , t reprezint˘ a evenimentul proiectul este ˆındeplinit , iar un ≪
≫
≪
≫
129
CAPITOLUL 3. TEORIA GRAFURILOR
vˆarf intermediar, de exemplu q , reprezint˘ a evenimentul activit˘a¸tile α 4 ¸si α 5 sunt ˆındeplinite . Pentru v V not˘am cu E (v) momentul cel mai devreme la care poate ˆıncepe activitatea corespunz˘ atoare lui v. Astfel, avem ≪
≫
∈
E (s) = 0, E ( p) = 3, E (r) = 4. Apoi, pentru q , ambele activit˘a¸t i α 4 ¸si α 5 trebuie s˘ a fie ˆındeplinite, deci E (q ) = max E (r) + w(r, q ), E ( p) + w( p, q ) = max 4 + 4, 3 + 6 = 9.
{
}
{
}
In general, pentru calculul momentelor E (v) avem formulele
�
E (s) = 0, E (v) = max
u∈A− (v)
{E (u) + w(u, v)} ,
unde A − (v) este mult¸imea extremit˘ a¸t ilor init¸iale ale arcelor cu extremitatea final˘a ˆın v. Pentru restul vˆarfurilor avem E (z ) = max E (q ) + w(q, z ), E (r) + w(r, z ) = 14, E (t) = max E (z ) + w(z, t), E (q ) + w(q, t) = 16.
{ {
} }
Prin urmare, cel mai devreme moment pentru ˆındeplinirea lui t este E (t) = 16, ˆınsemnˆand c˘ a num˘arul minim de zile necesare proiectului este 16. De fapt, acest num˘ ar reprezint˘ a lungimea celui mai lung drum de la s la t, ¸si se poate g˘ asi ¸si prin aplicarea algoritmului BFS grafului orientat D. Medoda descris˘ a anterior este o parte a unei tehnici numit˘ a analiza drumului critic . Restul tehnicii este ˆın felul urm˘ator: pentru fiecare v V , se calculeaz˘a numerele L(v), reprezentˆ and cele mai tˆ arzii momente pˆ an˘a la care trebuie ˆıncepute activit˘ a¸t ile (v, x), astfel ˆıncˆat proiectul s˘a fie terminat la timp. Formulele pentru L(v) sunt:
∈
�
L(t) = E (t), L(v) = min +
x∈A (v)
{L(x) − w(v, x)} ,
unde A+ (v) este mult¸imea extremit˘ a¸t ilor finale ale arcelor cu extremitatea init¸ial˘ a ˆın v. Astfel, despre o activitate (y, z ) ¸stim c˘a: - nu poate ˆıncepe ˆınainte de momentul E (y), cel mai devreme; - trebuie s˘a fie finalizat˘a pˆan˘a ˆın momentul L(z ), cel mai tˆarziu; - timpul de realizare este w(y, z ).
Definit¸ia 3.49 Pentru o activitate (y, z ), timpul de lansare F (y, z ) este definit prin F (y, z ) = L(z ) E (y) w(y, z ).
−
−
Astfel, (y, z ) poate ˆıncepe ˆın orice moment dup˘ a E (y) ¸si ˆınainte de E (y) + F (y, z ), f˘ar˘a a ˆıntˆarzia proiectul.
Definit¸ia 3.50 O activitate (y, z ) pentru care timpul de lansare F (y, z ) este zero se nume¸ste critic˘ a .
130
CAPITOLUL 3. TEORIA GRAFURILOR
O activitate critic˘ a trebuie ˆınceput˘a la cel mai devreme moment posibil E (y), dac˘a vrem ca proiectul s˘a fie terminat la timp. In graful orientat asociat proiectului va exista cel put¸in un drum elementar de la s la t care const˘a ˆın ˆıntregime din activit˘ a¸t i critice, ¸si acest drum se nume¸ste drum critic. Acest drum elementar este de fapt unicul drum ˆın arborele de acoperire BFS asociat digrafului, unde prioritatea considerat˘ a este cea mai mare pondere. In exemplul nostru, numerele L sunt: L(t) = 16, L(q ) = min L(t) w(q, t), L(z ) L( p) = L(q ) w( p, q ) = 3, L(r) = min L(z ) w(r, z ), L(q ) L(s) = min L(r) w(s, r), L( p)
{
{ {
−
−
− w(q, z )} = 9,
− −
− w(r, q )} = 5, − w(s, p)} = 0.
Timpii de lansare vor fi: F (s, r) = L(r) E (s) w(r, s) = 5 F (s, p) = L( p) E (s) w( p, s) = 3 F ( p, q ) = L(q ) E ( p) w( p, q ) = 9 F (r, q ) = L(q ) E (r) w(r, q ) = 9 F (r, z ) = L(z ) E (r) w(r, z ) = 14 F (z, t) = L(t) E (z ) w(t, z ) = 16 F (q, z ) = L(z ) E (q ) w(q, z ) = 14 F (q, t) = L(t) E (q ) w(q, t) = 16
− − − − − − − −
− − − − − − − −
− 0 − 4 = 1, − 0 − 3 = 0, − 3 − 6 = 0, − 4 − 4 = 1, − 4 − 7 = 3, − 14 − 2 = 0, − 9 − 5 = 0, − 9 − 5 = 2.
Prin urmare, activit˘ a¸t ile (s, p) = α2, ( p, q ) = α5 , (q, z ) = α6 , (z, t) = α7 , sunt activit˘a¸t i critice. Despre activit˘ a¸t ile care nu sunt critice putem spune urm˘atoarele: (s, r) = α1 poate ˆıncepe dup˘a momentul E (s) E (s) + 1 = 1, (r, z ) = α3 poate ˆıncepe dup˘a momentul E (r) E (r) + 3 = 7, (r, q ) = α4 poate ˆıncepe dup˘a momentul E (r) E (r) + 1 = 5, (q, t) = α8 poate ˆıncepe dup˘a momentul E (r) E (r) + 2 = 11. Se poate construi cu u¸surint¸a˘ un drum critic:
= 0 ¸si ˆınainte de momentul = 4 ¸si ˆınainte de momentul = 4 ¸si ˆınainte de momentul = 9 ¸si ˆınainte de momentul
⟨s,p,q,z,t⟩. 3.9.2
Flux ¸si t˘ aietur˘ a
Intr-un graf orientat, mult¸imea arcelor poate fi privit˘ a ca ¸si o ret¸ea de conducte prin care se transport˘ a fluide, ponderea unui arc reprezentˆ and ˆın acest caz capacitatea conductei. Intr-un asemenea graf, exist˘ a dou˘a vˆarfuri, s (sursa) ¸si t (scurgerea, destinat¸ia), avˆand un rol special: - toate arcele care cont¸in s sunt orientate dinspre s; - toate arcele care cont¸in t sunt orientate spre t.
131
CAPITOLUL 3. TEORIA GRAFURILOR
Figura 3.37: Ret¸eaua din exemplul 3.21. Deci, avem de-a face cu un graf conex orientat D = (V, A), o funct¸ie de capacitate c : A a s ¸si o destinat¸ie t. Un asemenea graf se R+ , o surs˘ va numi ret¸ea de transport , sau pe scurt ret¸ea. Presupunem c˘ a de-a lungul arcelor curge un fluid ¸si fie f (x, y) cantitatea de fluid care curge prin arcul (x, y). Cantitatea de fluid care ajunge la un vˆarf v ar trebui sa fie egal˘a cu cantitatea care iese din v, exceptˆ and vˆarfurile s ¸si t. Dac˘a definim
→
f + (v) =
� �
f (x, v),
(x,v)∈A
f − (v) =
f (v, y),
(v,y)∈A
aceast˘a cerint¸a˘ se poate scrie f + (v) = f − (v), pentru v = s, t. Trebuie cerut de asemenea ca nici un arc s˘ a nu transporte mai mult decˆ at capacitatea sa. In concluzie, putem da urm˘ atoarea definit¸ie:
̸
¸ia t ˆıntr-o ret ¸ea de transport Definit¸ia 3.51 Un flux de la sursa s la destinat este o funct ¸ie care atribuie arcului (x, y) un num˘ ar nenegativ f (x, y), astfel ˆıncˆ at: a) f + (v) = f − (v), pentru v = s, t (legea conserv˘ arii);
̸
b) f (x, y)
≤ c(x, y), pentru orice (x, y) ∈ A (legea fezabilit˘ at ¸ii).
Desigur, nu este permis˘ a acumularea de fluid ˆın vˆ arfurile intermediare ¸si aceasta ˆınseamn˘ a f − (s) = f +(t). Valoarea comun˘ a se va numi valoarea fluxului f ¸si va fi notat˘a cu val(f ). am ret ¸eaua dat˘ a ˆın figura 3.37. Funct ¸ia f definit˘a Exemplul 3.21 Consider˘ ˆın tabelul urm˘ ator este un flux ˆın aceast˘ a ret ¸ea de transport ¸si are valoarea val(f ) = 8. (x,y) f(x,y)
(s,a) 3
(s,b) 2
(s,c) 3
(a,d) 1
(b,d) 2
(c,t) (a,t) 1 2
(c,t) 2
(d,t) 4
In continuare vom calcula valoarea maxim˘ a a unui flux pentru ret¸eaua dat˘a ˆın figura 3.37. Primul pas este g˘ asirea unei margini superioare pentru aceast˘ a valoare, ˆın funct¸ie de capacit˘ a¸t i. Intrucˆat din s se poate transporta cantitatea 5+4+3 =
132
CAPITOLUL 3. TEORIA GRAFURILOR
≤
12, fluxul ar trebui s˘ a fie 12. Ideea este s˘ a partit¸ion˘ am mult¸imea vˆarfurilor ˆın dou˘a p˘art¸i, S cont¸inˆand s ¸si T cont¸inˆand t. Astfel, fluxul de la S la T va fi egal cu fluxul de la s la t ¸si aceast˘ a valoare comun˘ a va fi val(f ). Valoarea val(f ) poate fi scris˘ a ca ¸si
�
val(f ) =
f (x, y)
x∈S, y∈T
−
�
f (u, v),
u∈T, v∈S
unde prima sum˘a reprezint˘ a fluxul total de la S la T ¸si a doua sum˘ a reprezint˘a fluxul total ˆın direct¸ie invers˘a. In exemplul nostru, dac˘a S = s,a,b,c ¸si T = d, t , atunci ˆıntr-adev˘ar
{
{ }
}
val(f ) = f (a, d) + f (a, t) + f (b, d) + f (c, d) + f (c, t)
− 0 = 8. Desigur, aceea¸si valoare se obt¸ine pentru partit¸ia {S, T } cu S = {s, b}, T = {a,c,d,t}: val(f ) = f (s, a) + f (s, c) + f (b, d) − 0 = 8. De asemenea, s˘a ment¸ion˘ am c˘a, pentru ultima partit¸ie val(f )
≤ c(s, a) + c(s, c) + c(b, d) = 10.
(3.11)
In acest moment este necesar s˘ a d˘am urm˘atoarea definit¸ie.
Definit¸ia 3.52 Intr-o ret ¸ea D = (V, A), cu sursa s, destinat ¸ia t ¸si funct ¸ia de capacitate c : A R+ , perechea (S, T ) se nume¸ ste t˘ a S, T aietur˘ a dac˘ este o partit ¸ie a lui V astfel ˆıncˆ at s S ¸si t T . Capacitatea t˘ aieturii este definit˘ a ca ¸si cap (S, T ) = c(x, y).
→
∈
�
∈
{
}
x∈S, y∈T
Putem deduce imediat urm˘ atorul rezultat:
Teorema 3.45 Fie s sursa ¸si t destinat ¸ia unei ret ¸ele de transport. Dac˘ a f : A R+ este un flux arbitrar de la s la t ¸ si (S, T ) este o t˘ aietur˘ a, atunci
→
val(f )
3.9.3
≤ cap (S, T ).
Flux maxim, t˘ aietur˘ a minim˘ a
O consecint¸a˘ imediat˘a a teoremei anterioare este urm˘ atoarea: dac˘ a f 0 este un flux cu valoare maxim˘ a ¸si (S 0 , T 0 ) este o t˘ aietur˘a cu capacitate minim˘ a, atunci val(f 0 ) cap (S 0 , T 0 )
≤
≤
ˆınsemnˆand c˘ a flux maxim t˘aietur˘a minim˘a. De fapt, cele dou˘a valori sunt egale, acest lucru fiind demonstrat mai tˆ arziu ˆın teorema 3.46. Ideea folosit˘ a pentru construct¸ia unui flux maxim este de a ˆımbun˘ at˘a¸t i valoarea unui flux dat, dac˘ a acesta nu are cea mai mare valoare posibil˘ a. Vom ilustra aceast˘a idee pentru ret¸eaua din figura 3.37 ¸si pentru fluxul din exemplul 3.21. Exist˘a dou˘a tipuri de ˆımbun˘at˘a¸t iri:
133
CAPITOLUL 3. TEORIA GRAFURILOR
Tipul 1: Consider˘am drumul elementar s,a,t . Nici (s, a), nici (a, t) nu transport˘ a fluid la capacitatea lor maxim˘a, deci putem m˘ ari fluxul pe ambele arce, pˆ an˘a cˆand este atins˘ a capacitatea unuia dintre ele. Dac˘ a definim
⟨
⟩
f 1 (s, a) = 4, f 1 (a, t) = 3, atunci arcul (a, t) este saturat. Mai departe, deoarece fluxurile pe ambele arce au fost m˘arite cu aceea¸si cantitate, datorit˘ a legii conserv˘ arii pentru vˆarful a avem f 1 (x, y) = f (x, y) pe arcele r˘amase. Prin urmare, am obt¸inut un nou flux f 1 cu val(f 1 ) = val(f ) + 1 = 9. Tipul 2: Consider˘am lant¸ul s,a,d,c,t ˆın graful suport.
⟨
⟩
Acest lant¸ nu este un drum ˆın ret¸ea din cauz˘a c˘ a (d, c) nu este arc. Arcul (c, d) are direct¸ie opus˘a drumului de la s la t, prin urmare putem reduce cu 1 fluxul pe (c, d) ¸si putem m˘ari cu 1 fluxurile pe celelalte arce ale lant¸ului, f˘ar˘a s˘a viol˘am legea conserv˘ arii. Astfel, putem defini un nou flux f 2 ca ¸si
¸si f 2 = f 1 pentru restul arcelor. Arcul (s, a) este astfel saturat ¸si fluxul pe (c, d) nu poate fi negativ, deci nu putem face o schimbare mai bun˘ a ˆın acest lant¸. Valoarea noului flux f 2 va fi val(f 2 ) = val(f 1 ) + 1 = 10, ¸si reprezint˘ a valoarea maxim˘a, a¸sa cum s-a constatat ˆın (3.11). Prin urmare, f 2 este un flux maxim. Lant¸urile s,a,t ¸si s,a,d,c,t folosite pentru cre¸sterea fluxurilor f ¸si f 1 sunt lant ¸uri cresc˘ atoare ale fluxurilor respective.
⟨
⟩ ⟨
⟩
Definit¸ia 3.53 Dat fiind fluxul f ˆıntr-o ret ¸ea, un lant ¸ p = s = x 1, x2, . . . , xk−1 , xk = t
⟨
⟩
ˆın graful suport se nume¸ste lant a ¸ cresc˘ ator pentru f dac˘ f (xi , xi+1 ) < c(xi , xi+1 ) ¸si (xi , xi+1 ) A sau f (xi+1 , xi ) > 0 ¸si (xi+1, xi ) A,
∈
pentru 1
∈
(3.12) (3.13)
≤ i ≤ k − 1.
De fapt, (3.12) ˆınseamn˘ a c˘a arcele orientate direct nu sunt folosite la ˆıntreaga lor capacitate, ˆın timp ce (3.13) ˆınseamn˘ a c˘a arcele ˆın sens invers transport˘a contra-fluid . De fapt, un lant¸ cresc˘ ator pentru f este un lant¸ care poate fi ˆımbun˘at˘a¸t it . Dat fiind un asemenea lant¸, putem m˘ari fluxul pe arcele ≪
≫
≪
≫
134
CAPITOLUL 3. TEORIA GRAFURILOR
directe ¸si mic¸sora fluxul pe arcele contrare cu aceea¸si cantitate, f˘ ar˘a a viola legea conserv˘ arii. Cea mai mare schimbare (f˘ar˘a a supraˆınc˘arca arcele directe ¸si f˘ ar˘a a face negativ fluxul prin arcele contrare) este minimul, pentru 1 i k 1, al cantit˘ a¸t ilor
≤ ≤ −
α(i) =
{
c(xi , xi+1 ) f (xi , xi+1 ), dac˘a (xi , xi+1) f (xi+1 , xi ), dac˘a (xi+1 , xi )
−
∈ A, ∈ A.
Acest minim va fi notat cu α ¸si va fi numit capacitate rezidual˘ a a lant¸ului p. Dac˘a adun˘am α la fluxul prin arcele directe ¸si sc˘ adem α din fluxul prin arcele contrare, obt¸inem fluxul f ∗ cu val(f ∗ ) = val(f ) + α > val(f ), prin urmare f a fost m˘arit. In concluzie, existent¸a unui lant¸ cresc˘ ator de la s la t ne permite g˘ asirea ∗ ∗ unui nou flux f cu valoarea val(f ) > val(f ). Aceast˘ a idee va fi folosit˘a pentru a demonstra teorema urm˘ a toare. In demonstrat¸ie avem nevoiede urm˘atoarea definit¸ie. ¸ cresc˘ ator incomplet pentru f este un lant ¸ care Definit¸ia 3.54 Un lant satisface condit ¸iile (3.12) – (3.13) de lant ¸ cresc˘ ator pentru f , cu except ¸ia faptului c˘ a vˆ arful final nu este t.
Teorema 3.46 (Teorema flux maxim t˘ aietur˘ a minim˘a) Valoarea maxim˘ a a unui flux de la s la t ˆıntr-o ret ¸ea de transport este egal˘ a cu minimul capacit˘ at ¸ii unei t˘ aieturi care separ˘ a s ¸si t: flux maxim = t˘ aietur˘ a minim˘ a.
Demonstrat¸ie. Fie f un flux maxim. Definim mult¸imile de vˆarfuri ator incomplet pentru f, de la s la x , S = x V, exist˘a lant¸ cresc˘ T = V S.
{ ∈ } \ Atunci t ∈ T , altfel ar exista un lant¸ cresc˘ ator pentru f , de la s la t ¸si f ar putea fi m˘ arit, contrar ipotezei c˘ a f este un flux maxim. Prin urmare (S, T ) este o t˘aietur˘a. Trebuie s˘ a demonstr˘ am c˘a cap (S, T ) = val(f ). Fie (x, y) un arc cu x S, y T. Din definit¸ia lui S deducem c˘ a exist˘a un lant¸ cresc˘ ator incomplet pentru f , de la s la x. Dac˘a f (x, y) < c(x, y), atunci am putea extinde acest lant¸ la y, contradict¸ie cu y T. In concluzie,
∈
∈
∈
f (x, y) = c(x, y). (u, v) un arc cu u T, v S. Atunci exist˘a un lant¸ cresc˘ ator incomplet pentru f , de la s la v. Dac˘a f (u, v) > 0, am putea extinde lant¸ul incomplet la u, contradict¸ie cu u T. Astfel, Fie
∈
∈
∈
f (u, v) = 0.
135
CAPITOLUL 3. TEORIA GRAFURILOR
In concluzie, val(f ) =
�
f (x, y)
x∈S, y∈T
� −
f (u, v) =
u∈T, v∈S
�
c(x, y) = cap (S, T ).
x∈S, y∈T
Dac˘a (S ′ , T ′ ) este o alt˘a t˘ aietur˘a, atunci cap (S ′ , T ′ )
≥ val(f ) = cap (S, T ),
de unde rezult˘a c˘ a t˘aietura (S, T ) are capacitate minim˘ a. In consecint¸a˘ teo rema este demonstrat˘ a.
3.9.4
Algoritmi pentru g˘ asirea unui flux maxim cu valori ˆıntregi
Pe parcursul acestui paragraf vom considera ret¸eaua D = (V, A) cu sursa s, destinat¸ia t ¸si funct¸ia de capacitate c : A R+ . Primul algoritm, construit de Ford ¸si Fulkerson, se bazeaz˘a pe ideea folosit˘a ˆın demonstrat¸ia teoremei 3.46: dat fiind un flux f , c˘aut˘a m un lant¸ cresc˘ator pentru f ¸si vom costrui un nou flux f ∗ , cum s-a descris la pagina 134. Pentru al doilea algoritm, construit de Edmonds ¸si Karp, avem nevoie de urm˘atoarea definit¸ie.
→
¸ea D = (V, A), un Definit¸ia 3.55 Pentru un flux f ¸si un arbore T ˆıntr-o ret arc (x, y) se nume¸ste arc frontier˘ a: a util pentru f dac˘ x sau
∈ T , y ∈/ T ¸si f (x, y) < c(x, y) x∈ / T, y ∈ T ¸si f (x, y) > 0.
Vom da ˆın continuare algoritmul pentru construct¸ia unui arbore T , folosind arce frontier˘ a utile.
Algoritm 16 (Edmonds, Karp) Intrare: o ret ¸ea D = (V, A) cu sursa s, destinat ¸ia t, funct ¸ia de capacitate c : A N ¸ si un flux f : A N Ie¸sire: un arbore T se init ¸ializeaz˘ a T = s arful s se scrie eticheta 0 pe vˆ i=1 cˆ at timp T nu cont ¸ine vˆ arful t ¸si mai exist˘ a arce frontier˘ a utile pentu T - se actualizeaz˘ a mult ¸imea arcelor fontier˘ a utile - fie a = (x, y) arcul frontier˘ a util cu vˆ arful etichetat avˆ and cea mai mic˘ a valoare posibil˘ a - se adaug˘ a la arborele T arcul a ¸si extremitatea neetichetat˘ a a arcului a - se ata¸seaz˘ a eticheta i vˆ arfului neetichetat al lui a - i=i+1 retur arbore T
→
→ {}
Leg˘atura dintre arborele T ¸si fluxul maxim este dat˘a ˆın urm˘atoarea teorem˘a.
CAPITOLUL 3. TEORIA GRAFURILOR
136
Teorema 3.47 Fie D = (V, A) o ret ¸ea cu sursa s, destinat ¸ia t, funct ¸ia de capacitate c : A N ¸ si fie f : A N un flux. Dac˘ a arborele T rezultat prin aplicarea algoritmului 16 cont ¸ine destinat ¸ia t, atunci unicul lant ¸ ˆın T de la s la t este un lant ¸ cresc˘ ator pentru f . Dac˘ a T nu cont ¸ine t, atunci f este un flux maxim.
→
→
Demonstrat¸ia acestei teoreme poate fi g˘ asit˘a de exemplu ˆın [13], iar faptul c˘a fluxul ia valori ˆıntregi este o condit¸ie esent¸ial˘a.
Anexa A: Relat¸ii binare Produsul cartezian a dou˘a mult¸imi A ¸si B este mult¸imea A
× B = {(x, y), x ∈ A, y ∈ B}.
a este un triplet (A,B,R), unde A, B sunt mult¸imi O relat¸ie binar˘ arbitrare ¸si R A B.
⊆ ×
Dac˘a (x, y) R, atunci spunem c˘ a x este ˆın relat¸ie cu y (prin R). Acest lucru se noteaz˘ a deseori cu x R y.
∈
Relat¸ia (A,A,R), R
⊆ A × A se nume¸ste relat¸ie binar˘a pe mult¸imea A.
O relat¸ie binar˘a pe A se nume¸ste: reflexiv˘ a dac˘a
x R x pentru orice x
tranzitiv˘ a dac˘a simetric˘ a dac˘a
x R y ¸si y R z implic˘a x R z x R y implic˘a y R x
antisimetric˘ a dac˘a
A.1
∈A
x R y ¸si y R x implic˘a x = y
Relat¸ii de echivalent¸˘ a
¸ie R A A este o relat a Definit¸ia .1 O relat ¸ie de echivalent ¸˘ a pe A dac˘ R este reflexiv˘ a, tranzitiv˘ a ¸si simetric˘ a.
⊆ ×
Exemplul .1 Fie R
{
unde 3Z = 3k,
⊆ Z × Z, dat˘ a prin xRy ⇐⇒ x − y ∈ 3Z, k ∈ Z}. Atunci R este o relat ¸ie de echivalent ¸˘ a pe Z.
Definit¸ia .2 Fie R o relat ¸ie de echivalent ¸˘ a pe o mult ¸ime A ¸si fie x a x sau R x , este mult ¸imea Clasa de echivalent ¸˘ a a lui x, notat˘
x = y
⟨⟩
∈ A.
{ ∈ A , x R y }.
Mult ¸imea tuturor claselor de echivalent ¸˘ a, notat˘ a A/R, se nume¸ste mult ¸ime cˆ at : A/R = x, x A .
{
∈ }
¸ia de echivalent ¸˘ a definit˘ a ˆın exemplul .1, Exemplul .2 Pentru relat 0 = 3k, k Z , 1 = 3k + 1, k Z , 2 = 3k + 2, k Z .
{ { {
∈ } ∈ } ∈ }
Observ˘ am c˘ a clasele de echivalent ¸˘ a sunt dou˘ a cˆ ate dou˘ a disjuncte ¸si orice num˘ ar ˆıntreg apart ¸ine uneia din aceste clase. 137
138
Definit¸ia .3 O colect ¸ie de submult ¸imi S 1 , S 2 , . . . , Sn ale unei mult ¸imi A ¸ie a lui A dac˘ se nume¸ste partit a satisface urm˘ atoarele dou˘ a condit ¸ii:
{
S i
∪
}
∩ S = ∅, pentru orice 1 ≤ i < j ≤ n, j
n
S i = A.
i=1
Propozit¸ia .48 Fie R o relat ¸ie de echivalent ¸˘ a pe o mult ¸ime A ¸si fie x, y Atunci urm˘ atoarele afirmat ¸ii sunt echivalente:
∈ A.
1. x R y, 2. x = y , 3. x y = .
∩ ̸ ∅
¸ie de echivalent ¸˘ a pe o mult ¸ime A. Atunci clasele Corolarul .49 Fie R o relat de echivalent ¸˘ a formeaz˘ a o partit ¸ie a lui A: x, x
∈ A} este o partit ¸ie. Reciproc, dat˘ a fiind o partit ¸ie {S , S . . . , S } a unei mult ¸imi A, exist˘a o
{
1
2
n
relat ¸ie de echivalent ¸˘ a pe A. Aceasta este definit˘ a astfel: xRy
⇐⇒ ∃ i ∈ N
n
astfel ˆıncˆ at x, y
∈ S . i
∪ ∪ ∩ ∅ ∩ ∅ ∩ { }
¸˘ a 0, 1, 2 din exemplul .2 formeaz˘ a o partit ¸ie Exemplul .3 Clasele de echivalent a lui Z. Intr-adev˘ ar, 0
1
1= , 0
2 = Z ¸si 0
2= , 1
2= .
∅
ˆ In acest caz, mult ¸imea cˆ at este Z/R =
A.2
0, 1, 2 = Z3 .
Relat¸ii de ordine
¸ime ¸si R Definit¸ia .4 Fie A o mult
⊆ A × A.
R este o relat a R este reflexiv˘ a, tranzitiv˘ a ¸ie de ordine part ¸ial˘ a pe A dac˘ ˆ acest caz, perechea (A, R) se nume¸ste mult ¸si antisimetric˘ a. In ¸ime ordonat˘ a part ¸ial , sau simplu mult ¸ime ordonat˘ a . R este relat a este o relat ¸ie de ordine part ¸ial˘ a ¸si ¸ie de ordine total˘ a dac˘ pentru orice x, y A avem x R y sau y R x (adic˘ a oricare dou˘ a elemente ˆ sunt comparabile prin relat ¸ia de ordine). In acest caz, perechea (A, R) se nume¸ste mult ¸ime total ordonat˘ a .
∈
¸ime total ordonat˘ a, dar ( (R), ) este doar Exemplul .4 (R, ) este o mult o mult ¸ime part ¸ial ordonat˘ a. Aici (R) = S, S R .
≤
P
{
⊆ }
P ⊆
139
Elemente speciale ˆIn mult¸imile part¸ial ordonate pot exista anumite elemente care joac˘ a un rol special.
≤
¸ime part ¸ial ordonat˘ a. Definit¸ia .5 Fie (A, ) o mult Elementul x
∈ A se nume¸ste cel mai mic element al lui A dac˘ a x ≤ y, pentru orice y ∈ A.
∈ A se nume¸ste cel mai mare element al lui A dac˘ a y ≤ z, pentru orice y ∈ A.
Elementul z
Elementul m
∈ A se nume¸ste element minimal pentru A dac˘ a x ≤ m pentru un anumit x ∈ A =⇒ x = m. ∈ A se nume¸ste element maximal pentru A dac˘ a M ≤ x pentru un anumit x ∈ A =⇒ x = M.
Elementul M
Ceea ce este important de ment¸ionat despre un element maximal este faptul c˘a nu este ˆın general cel mai mare element, adic˘ a el nu este ˆıntotdeauna mai mare decˆ at toate celelalte elemente. Intr-adev˘ ar, consider˘ am (A, ), cu
⊆
A =
{{n}, n ∈ N}.
Ea const˘ a doar din elemente maximale, dar nu are un cel mai mare element. Mai mult, toate elementele lui A sunt minimale. Acest exemplu ne arat˘ a de asemenea c˘a elementul maximal poate s˘ a nu fie unic, ¸si c˘a se poate ˆıntˆ ampla ca un element s˘a fie maximal ¸si minimal ˆın acela¸si timp. Dac˘a o mult¸ ime are un cel mai mare element, atunci acesta este unicul element maximal. Reciproc, chiar dac˘ a o mult¸ime are doar un element maximal, acesta nu este ˆın mod necesar cel mai mare element. ˆIntr-o mult¸ime total ordonat˘ a, termenii element maximal ¸si cel mai mare element coincid.