Grafuri Drum Critic

Preview:

Citation preview

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.

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ă.

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.

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.

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.

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.

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.

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

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

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

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

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

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 =∀= +

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

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ă.

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.

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

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

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.

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

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

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

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

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

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 =

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 ==

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

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 σσ

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 ≤

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

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.

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

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

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>σ

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