35
4. Elemente de teoria grafurilor si analiza drumului critic 1 ELEMENTE DE TEORIA GRAFURILOR ŞI ANALIZA DRUMULUI CRITIC Concepte fundamentale.Modelarea prin grafuri a proceselor economice. Drumuri de valoare optimă. Arbori minimali. Analiza drumului critic. graful coordonator asociat unei acţiuni complexe; reprezentarea şi calculul termenelor activităţilor; alocarea şi nivelarea resurselor.

Grafuri Drum Critic

Embed Size (px)

Citation preview

Page 1: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

1

ELEMENTE DE TEORIA GRAFURILOR ŞI ANALIZA DRUMULUI CRITIC

• Concepte fundamentale.Modelarea prin grafuri a proceselor economice.

• Drumuri de valoare optimă.• Arbori minimali.• Analiza drumului critic.

– graful coordonator asociat unei acţiuni complexe; – reprezentarea şi calculul termenelor activităţilor;– alocarea şi nivelarea resurselor.

Page 2: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

2

Elemente de teoria grafurilor- concepte fundamentale

• Un graf este un cuplu G=(V,M) format dintr-o mulţime nevidă V de vârfuri (noduri) şi o mulţime M de muchii (arce) cu proprietatea că fiecărui element m∈M îi sunt asociate două vârfuri x,y ∈V numite extremitătile muchiei m.

• O muchie în care x=y (are o singură extremitate) se numeşte buclă.

Page 3: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

3

Elemente de teoria grafurilor- concepte fundamentale

• Un graf G se numeşte simplu dacă oricare două noduri ale sale sunt extremităţi pentru cel mult o muchie.

• Un graf G este finit dacă V şi M sunt finite.

Page 4: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

4

Elemente de teoria grafurilor- concepte fundamentale

• Fie m={x,y} o muchie în graful G=(V,M) poate fi:– orientată (x,y) cu x vârf iniţial şi y vârf final, caz în

care arcul (y,x) este blocat;– orientată (y,x) cu y vârf iniţial şi x vârf final, caz în

care arcul (x,z) este blocat;– neorientată {x,y}.

• Un graf G=(V,M) în funcţie de tipul muchiilor sale poate fi:– orientat;– parţial orientat;– neorientat.

Page 5: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

5

Elemente de teoria grafurilor- concepte fundamentale

• Un lanţ în graful G=(V,M) este o succesiune de noduri λ=(x0, x1, … ,xp-1, xp) cu proprietatea că {x0,x1},{x1,x2},...{xp-1, xp}, sunt muchii în G. Nodurile x0şi xp sunt extremităţile lanţului λ.

• Lanţul λ se numeşte simplu dacă nu trece de două ori prin acelaşi nod.

• Lungimea lanţului λ. este dată de numărul muchiilor sale componente.

• Un ciclu este un lanţ ale cărui extremităţi coincid.

Page 6: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

6

Elemente de teoria grafurilor- concepte fundamentale

• Un drum în graful G=(V,M) este o succesiune de noduri δ=(x0, x1, … ,xp-1, xp) cu proprietatea că {x0,x1},{x1,x2},...{xp-1, xp}, sunt arce permise în G. Nodurile x0 şi xp sunt extremităţile drumului δ.

• Un graf G=(V,M) se numeşte conex dacă oricare două noduri ale sale sunt extremităţile unui lanţ.

• Un graf G=(V,M) se numeşte bipartit dacă mulţimea nodurilor sale poate fi descompusă în două submulţimi nevide şi disjuncte S şi D astfel încât orice muchie din G are o extremitate în S şi calaltă în D.

Page 7: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

7

Drumuri de valoare optimă

• Fie graful G=(X,Γ ). O rută orientată u=(i,j) este un arc (i,j)∈G. Ruta se numeşte permisă dacă orientarea saeste în concordanţă cu orientarea muchieicorespunzătoare din graful G.

• Fiecărei rute u=(i,j) cu i,j∈ X i se asociază o valoarenumerică c(u) cu semnificaţia de cost, distanţă, timpetc.

Page 8: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

8

Drumuri de valoare optimă

• Dacă s şi f sunt două noduri fixe din G problemaconstă în determinarea unui drum de la s la f de valoare optimă (minimă), adică:

• unde este mulţimea drumurilor dintre s şi f cu s,f∈G.

)( min)( * µµ ccD(s,f)µ∈

=

),( tsM

Page 9: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

9

Drumuri de valoare optimă

• Algoritmul Bellman-Kalaba– este un algoritm general prin care se determină

drumurile de valoare minimă dintre un nod final şitoate celelalte vârfuri (noduri) ale grafului;

– fie G=(X, Γ ) graful problemei;• fiecărei muchii orientate u=(i,j) cu i,j∈ X i se

asociază o valoare numerică c(u)=cij

• fiecărei muchii neorientate u={i,j} cu i,j∈ X i se asociază valoarile numerice cij = cji = c(u) corespunzător celor două arce (i,j) şi (j,i).

),( tsM

Page 10: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

10

Drumuri de valoare optimă -algoritmul Bellman-Kalaba

START

Pasul 0: se asociază grafului G o matricea V construităpornind de la valorile vij ale arcelor grafului

Este îndeplinită condiţiade oprire a algoritmului?

Pasul k: se adaugă la matricea Vliniile V(k+1) şi succ(k+1)

Se extrag din V rutele de costminim spre nodul xf

NU

DA

STOP

Page 11: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

11

Drumuri de valoare optimă -algoritmul Bellman-Kalaba

Pasul 0:• se asociază grafulul G matricea unde n

este numărul nidurilor grafului astfel:

• se adaugă la matricea V linia unde:

{ }njiijvV

,1, ==

⎪⎩

⎪⎨

∞==∃

=rest.in

; daca 0; daca

j i(i,j) mc

vij

{ } niivV ,1)0()0(

==

⎩⎨⎧

=≠

=. daca 0; daca )0(

fifiV

V ifi

Page 12: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

12

Drumuri de valoare optimă -algoritmul Bellman-Kalaba

Pasul k (k=1,2,3,….):• se determină şi se adaugă matricei V existente la etapa

k-1 două linii:– linia cu:

– linia unde reprezintă nodul spre care, din nodul i, există arce de lungime minimă

{ } nik

ik vV ,1

)()(==

⎩⎨⎧

=≠+

=−

; daca 0; daca )min( )1(

)(

fifivv

v ijk

iki

⎩⎨⎧

∞=Φ≠=∀+=

=−

. daca ; ,1 | )1()(

)(ki

ijk

ik

iki v

finjvvvjsucc

nik

ik succsucc

,1)()( }{

== )(ksucc

Page 13: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

13

Drumuri de valoare optimă -algoritmul Bellman-Kalaba

Condiţia de oprire a algoritmului

• algoritmul se încheie în momentul în care prin trecerea de la un pas (k) la pasul următor (k+1) valorile drumurilor minime rămân nemodoficate:

.,1 )1()( nivv ki

ki =∀= +

Page 14: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

14

Drumuri de valoare optimă -algoritmul Bellman-Kalaba

Extragerea rutelor de cost minim• Fiind îndeplinită condiţia

– valorile minime ale rutelor se deduc din linia

– rutele de valoare minimă de la fiecare nod spre nodul f se deduc din linia

.,1 )1()( nivv ki

ki =∀= +

sau )1()( +kk VV

)1()( sau +kk succsucc

Page 15: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

15

Arbori minimali

• Un arbore este un graf conex neorientat şi fără cicluri.

• Un arbore are următoarele proprietăţi:– orice arbore cu p noduri are p-1 muchii.– între oricare două noduri ale unui arbore există un

unic lanţ de muchii.– dacă între două noduri ale unui arbore adăugăm o

muchie se obţine un ciclu.– dacă dintr-un arbore scoatem o muchie, graful se

disconectează.

Page 16: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

16

Arbori minimali

• Fie graful G=(X,Γ ) un graf neorientat fint şi conexconţinând n noduri.

• Un arbore conţinut în graful G este un subgraf al luiG cu n-1muchii.

• Dacă muchiilor unui arbore i se asociază valorinumerice (reprezentând costuri, profituri, distanţeetc.) atunci suma acestora constituie valoareaarborelui respectiv.

• Determinarea arborilor minimali dintr-un graf G constă în identificarea arborelui (arborilor) de valoare minimă conţinuţi în G.

Page 17: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

17

Arbori minimali - algoritmul lui Kruskal

START

Pasul 1: se alege din mulţimea Γ a lui G muchea u1 de valoare minimă;muchea u1 constitue primul element al mulţimii muchiilor alese.

S-au ales n-1 muchii?

Pasul k+1:din mulţimea muchiilornealese se alege o nouă muchie uk+1 devaloare minimă şi care nu formeazăciclu cu muchiile deja alese; se adaugăuk+1 la mulţimea muchiilor alese;Graful parţial obţinut constituie

un arbore minimal în G

NU

DA

STOP

Page 18: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

18

Arbori minimali - variantă a algoritmului lui Kruskal

START

Pasul 1: se selectează din mulţimea X a lui G un nod oarecare xi(1≤i ≤n unden este numărul nodurilor lui G)

S-au conectattoate nodurile?

Pasul k+1:se selectează din mulţimeanodurilor neconectate nodul cel maiapropiat de unul din nodurileconectate şi se conectează la acesta; se adaugă nodul respectiv la mulţimea nodurilor alese;

Graful parţial obţinut constituieun arbore minimal în G

NU

DA

STOP

Page 19: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

19

Analiza drumului critic.

• Principalele metode utilizate în managementul proiectelor (Project Management) sunt:– metoda CPM (Critical Path Method)– metoda MPM (Metra Poential Method)– metoda PERT (Program Evaluation and Review

Tehnique).

• Aceste metode permit identificarea drumului critic şi a activităţilor care îl compun dintre evenimentul începerii proiectului şi evenimentul finalizării lui.

Page 20: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

20

Analiza drumului critic. Metoda CPM

Fie un proiect (proces) P compus din n activităţi:

• O activitate Ak de durată dij =d(Ak ) este reprezentată prin perechea (i,j) unde:– i reprezintă evenimentul începerii activităţii;– j reprezintă evenimentul terminării activităţii;

• Grafic, activitatea Ak se reprezintă astfel:

{ } nkAP k ,1 ==

**jjii tttt

kAi jijd

Page 21: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

21

Analiza drumului critic. Metoda CPM

Fiecărei activităţi i se asociază:• termenul minim de începere - reprezintă

termenul cel mai devreme posibil de terminare a tuturor activităţilor incidente în nodul i:

• termenul minim de terminare

⎩⎨⎧

Γ∈+= −1),( unde ))(max

inceput de nod este daca 0)(

iqiqim

kim iqdA(t

iAt

)()()( kkimk

tm AdAtAt +=

)( kim At

)( ktm At

kA

Page 22: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

22

Analiza drumului critic. Metoda CPM

• termenul maxim de terminare - reprezintă termenul cel mai târziu posibil de începere a tuturor activităţilor incidente dinspre nodul j spre nodurile:

• termenul maxim de incepere⎩⎨⎧

Γ∈−=

jjpptM

nk

tM pjdA(t

jtAt

),( unde ))(min terminalnod este daca

)(

)()()( kktMk

iM AdAtAt −=

)( ktM At

)( kiM At

Page 23: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

23

Analiza drumului critic. Metoda CPM

• rezerva totală - reprezintă intrvalul maxim cu care poate fi amânată o anumită activitate fără a afecta termenul final al proiectului:

Dacă activitatea se numeşte critică.• rezerva liberă - reprezintă intrvalul maxim cu

care poate fi amânată o anumită activitate fără a consuma din rezerva activităţilor care o succed

)()()()( kkimk

tmkl AdAtAtAR −−=

)( kt AR

)()()()( kkimk

tMkt AdAtAtAR −−=

)( kl AR0)( =kt AR

Page 24: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

24

Analiza drumului critic. Metoda MPM

Fie un proiect (proces) P compus din n activităţi:

• Fiecărei activitaţi Ak i se asociază un tabel de forma:

{ } nkAP k ,1 ==

imt

iMt

tmt

tMt

kA

)( kAd

Page 25: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

25

Analiza drumului critic. Metoda MPM

• Activităţile critice sunt activităţile cu rezerva totală egală cu 0:

• Totalitatea activităţilor critice alcătuiesc drumul critic în proiectul P.

)()( kimk

iM AtAt =

)()( ktmk

tM AtAt =

Page 26: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

26

Analiza drumului critic. Metoda PERT

• Metoda PERT permite planificarea activităţilor şi determinarea probabilităţii de realizare a duratei planificate pentru un anumit proiect atunci când duratele activităţilor nu se cunosc cu certitudine.

• Fie un proiect (proces) P compus din n activităţi:

• Atât durata fiecărei activitaţi d(Ak ) cât ăi durata totală a proiectului sunt considerate variabile aleatoare.

{ } nkAP k ,1 ==

Page 27: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

27

Analiza drumului critic. Metoda PERT

• Dutata unei activităţi este o variabilă aleatoare de distribuţia BETA cu:– durata mediie de execuţie a acivităţii

– dispersia

6)()(4)(

)( 0 kpkmkk

AdAdAdAd

++=

)( kAd

)(2kAσ

22

6)()(

)( ⎟⎟⎠

⎞⎜⎜⎝

⎛ −= kokp

k

AdAdAσ

kA

Page 28: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

28

Analiza drumului critic. Metoda PERT

• Dutata totală de execuţie a proiectului P este variabilă aleatoare cu distribuţie normală. Dacă este mulţimea actvităţilor neparalele de pe drumul critic atunci avem:– durata totală medie a proiectului

– dispersia

∑∈

=ck DA

kn Adt )(

cD

2nσ

∑∈

=ck DA

kn A )(22 σσ

Page 29: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

29

Analiza drumului critic. Metoda PERT

• Probabilitatea de realizare a duratei planificate a proiectului se determină astfel:– se determină factorul de probabilitate z:

– se deduce, utilizândtabelul funcţiei Laplace probabilitatea

2n

np tTz

σ

−=

np tT >

)( pn Ttp ≤

Page 30: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

30

Analiza drumului critic. Metoda PERT

• Valorile probabilităţii de realizare a duratei planificate a proiectului au următoarele semnificaţii:– risc foarte mare de nerealizare în

termen a proiectului;– există şanse de realizare a

proiectului în termenul stabilit;– programarea activităţilor

proiectului este justă;– sunt şanse foarte mari de

realizare în timp a proiectului.

25,0)( ≤≤ pn Ttp

)5,0;25,0()( ∈≤ pn Ttp

)8,0;5,0[)( ∈≤ pn Ttp

8,0)( ≥≤ pn Ttp

Page 31: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

31

Analiza drumului critic. Alocarea resurselor

• Algoritmul de alocarea resurselor (Project Scheduling under multiple Resurce Contraints) permite alocarea resurselor pe activităţi astfel încât durata de execuţie a proiectului să fie minimă.

• Rezlvarea problemelor de alocare a resurselor presupune ca primă etapă determinarea drumului critic fără restricţii de resurse aplicând una din metodele CPM sau MPM.

Page 32: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

32

Analiza drumului critic. Alocarea resurselor

• Fie un proiect (proces) P compus din n activităţi:

• Pentru realizarea activităţilor proiectului sunt necesare m resurse disponibile în cantităţile:

• Vestorul intensităţii utilizării resurselor pentru actvitatea este:

{ } nkAP k ,1 ==

))(),...,(),(()( 21 kmkkk ArArArAr =

kA

mDDD ,...,, 21

Page 33: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

33

Analiza drumului critic. Alocarea resurselor

Pentru soluţionarea problemei se definesc mulţimii:• mulţimea activităţilor candidate la momentul t:

• mulţimea activităţilor programate la momentul :

⎩⎨⎧

≥≤≤=

=final

finalkikt tt

tt tAtAC

daca 0 daca })(|{

φ

⎪⎭

⎪⎬⎫

⎪⎩

⎪⎨⎧

⎟⎟⎠

⎞⎜⎜⎝

⎛≥−=∆∧∈=

=∪∈∑

mjPEAkjjtkkt

ttk

ArDjCAAP,1

0)(|

0≥t

Page 34: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

34

Analiza drumului critic. Alocarea resurselor

• mulţimea activităţilor amânate la un alt momentul de timp :

• mulţimea activităţilor în execuţie la momentul

))()((min

\

kkimPEA

tt

AdAt

PCA

ttk

+=

=

∪∈σσ

tE

t>σ

Page 35: Grafuri Drum Critic

4. Elemente de teoria grafurilor si analiza drumului critic

35

Analiza drumului critic. Alocarea resurselor

START

Se determinăEt şi Ct

Ct=φşiEt= φ

Se determină Pt, σ şi Aσ

NU

DA

STOP Aσ = φ?NU

Se determină implicaţiileasupra duratei proiectului

t = σ

DA