Sunteți pe pagina 1din 10

1

Cursul 6

Seciunea : ANALIZA DRUMULUI CRITIC
Tema : Alocarea resurselor

Executarea activitilor unui proiect implic utilizarea unor mijloace, denumite generic resurse,
cum ar fi:
- fora de munc cu diferite calificri i
- utilajele specializate.
n general, aceste resurse sunt disponibile, la un moment sau altul, n cantiti limitate, astfel
c planificarea activitilor trebuie s in seama nu numai de condiionrile dintre ele i de duratele
lor, dar i de necesitatea ncadrrii necesarului de resurse n disponibil, pe tot parcursul derulrii
proiectului.
Aceasta este n esen problema alocrii resurselor.

1. Introducere

Ipoteze simplificatoare:

- Disponibilul oricrei resurse este constant pe tot parcursul execuiei proiectului (n vederea
ridicrii unui imobil, constructorul are la dispoziie 6 fierari- betoniti, 10 zidari, 8 tmplari, 15
muncitori necalificai, un escavator...)
- Necesarul dintr-o resurs n vederea executrii unei activiti este constant pe toat durata
activitii (n proiectul ridicrii unui imobil, activitatea cofraje i armturi cu durata de 3 zile are
nevoie n fiecare zi de 6 fierari betoniti, 4 tmplari i 8 muncitori necalificai).

Notaii:
H mulimea resurselor considerate;

h
b disponibilul din resursa H he asigurat i constant pe toat durata de realizare a
proiectului;

ih
r necesarul din resursa H he pentru activitatea i presupus constant pe toat durata
executrii activitii.
n mod firesc vom presupune c
h ih
b r s pentru orice resurs h i orice activitate i.







2




Exemplu. n tabelul 12.7 este dat lista de activiti a unui proiect de reorganizare a unui flux
tehnologic.


Activitatea
Activiti direct
precedente
Durata
(zile)
Necesar resurse
R
1
R
2
A

1 2 2
B

3 2 3
C B 5 1 3
D A 4 1 2
E A 5 1 1
F C , D , E 3 2 3
G C 1 1 2

Tabelul 12.7
La realizarea proiectului se utilizeaz dou categorii de for de munc R
1
i R
2
. De exemplu, pentru
executarea activitii F sunt necesari n fiecare din cele trei zile ale duratei sale 2 muncitori R
1
i 3
muncitori R
2
. Zilnic sunt disponibili 3 muncitori R
1
i 5 muncitori R
2
.

n acest caz, alocarea resurselor nseamn stabilirea duratei minime de execuie a proiectului
i planificarea n timp a activitilor astfel nct:

- s fie respectate duratele activitilor i precedenele dintre ele;
- necesarul de resurse s se ncadreze n disponibilele limitate date.

Elaborm o prim planificare a lucrrii fr a ine seama de resurse; este posibil ca rezultatul s
satisfac i condiia ncadrrii necesarului de resurse n disponibile. Reeaua coordonatoare AoA este
dat n figura 12.4


Figura 12.4
5
8
8
B C G
F
E
D A
3 5
1
3 4
5
1
1
3
3
3
8
8
0
0
0
4
6
8
6
11
11
2
1
3

3


Dac am avea resurse suficiente ntreaga lucrare s-ar termina n 11 zile. Disponibilele 3
1
= b i 5
2
= b
permit acest lucru?
Pentru rspuns, vom trasa profilul necesarului din fiecare resurs i l vom compara cu profilul
disponibilului din resura respectiv, considernd c toate activitile ncep la termenul timpuriu
rezultat din analiza reelei coordonatoare vezi figurile 12.5.1 i 12.5.2
Termenele timpurii/minime de ncepere (EST) sunt date n tabelul 12.8


Activitatea A B C D E F G
EST 0 0 3 1 1 8 8

Tabelul 12.8

Constatm c disponibilul resursei R
1
este depit n primele trei zile(figura 12.5.1); disponibilul din R
2

este depit din ziua 2 pn n ziua 5 (figura 12.5.2).
n concluzie, cu resursele existente proiectul nu poate fi terminat n 11 zile!
O depire a disponibilului dintr-o resurs sau alta se va numi conflict de resurse. n exemplul de
fa avem un conflict de resurse n primele cinci zile de la nceperea execuiei proiectului.



Figura 12.5.1 Figura 12.5.2


2. Rezolvarea unui conflict de resurse

n cazul n care, la un moment dat, apare o depire a necesarului fa de disponibil la una sau
mai multe resurse, singura cale de rezolvare a conflictului const n amnarea unei activiti sau a
mai multora care pot ncepe la momentul respectiv.
B
A
C
F
E
D
E
G
timp
R
1
Profilul necesarului din R
1
Profilul disponibilului din R
1

2

3

4

3

8

11

B
A
C
F
E
D
G
timp
R
2
Profilul necesarului din R
2
Profilul disponibilului din R
2

3

4

3

8

11

5

6


4

Operaia de amnare este delicat din mai multe motive:

- amnarea unor activiti poate antrena amnarea altor activiti care depind direct sau
indirect de primele;
- rezolvarea unui conflict de resurse la un anumit moment poate modifica conflictele
ulterioare n sensul acutizrii sau diminurii lor sau poate determina apariia altora noi!

Cutarea soluiei optime a problemei alocrii devine un proces complicat i greu de controlat chiar i
pentru proiecte de mici dimensiuni. n aceast situaie, ne vom mulumi cu determinarea unei soluii,
nu neaprat optime, dar care:

- este satisfctoare, acceptabil;
- se obine relativ uor i n timp util.
Un procedeu care conduce la o asemenea soluie se numete euristic. n esen, o euristic pentru
rezolvarea unei probleme de optimizare (P) este un procedeu iterativ care, n cutarea unei soluii a
problemei (P), ncearc s fac, la fiecare pas, cea mai bun alegere. n general, optimizarea local
nu conduce dect n anumite cazuri ctre soluia optim, astfel c rezultatul aplicrii unei euristici este
de regul o soluie suboptimal, destul de apropiat de soluia optim cutat.

3. O euristic de alocare a resurselor

Caracteristic euristicilor de alocare a resurselor este faptul c, n rezolvarea unui conflict de resurse nu
se examineaz toate alternativele de amnare ci numai una dintre ele, construit pe baza unui
criteriu de prioritate la amnare cum ar fi:

- se amn cu prioritate activitatea cu cea mai mare rezerv actualizat sau activitatea cu
durata cea mai mic (rezerva actualizat la un anumit moment - a unei activiti este diferena dintre
rezerva total i numrul unitilor de timp cu care activitatea a fost amnat n momentele anterioare);
- activitile amnate se aleg n aa fel nct cele rmase s asigure o utilizare ct mai bun a
resurselor.
n practic, aceste criterii se utilizeaz fie separat fie n combinaie.

Notaii i termeni:
- fiecare activitate va avea ataat un termen potenial de ncepere(abreviat TPI) care se poate
modifica pe parcurs. La start, TPI se iniializeaz cu termenul timpuriu de ncepere al activitii.
- pe parcursul derulrii algoritmului, activitile proiectului se mpart n:
- activiti programate (cu resursele necesare asigurate);
- activiti (inc) neprogramate.
n momentul n care o activitate este declarat programat, termenul ei potenial de ncepere devine
termen definitiv de ncepere i nu va mai putea fi modificat n etapele ulterioare ale algoritmului.
La start, toate activitile proiectului sunt neprogramate.
- programarea activitilor, cu luarea n considerare i a asigurrii resurselor necesare, se face la
anumite momente de timp. Momentul curent, notat t, este minimul termenelor poteniale de ncepere
ale activitilor (nc) neprogramate. La start t = 0.

5

- n raport cu momentul curent de programare t activitile programate pot fi
- terminate termenul definitiv de terminare s t;
sau
- n curs de desfurare termenul definitiv de terminare > t.

Printre activitile (nc) neprogramate vom distinge activitile candidate la programare: este vorba
de activitile al cror termen potenial de ncepere este egal cu t.
Vom nota cu A mulimea de activiti n curs de desfurare sau candidate la programare la momentul t
- la fiecare moment de programare t vom compara disponibilul de resurse cu necesarul
pentru susinerea activitilor din A.
Diferena:

= A
eA i
ih h h
r b se numete indicator de amnare. Dac H h
h
e > A ) ( , 0 exist
suficiente resurse pentru susinerea simultan a tuturor activitilor din A. n caz contrar unele activiti
din A , evident dintre cele candidate, vor fi amnate. Modul n care se aleg activitile ce vor fi amnate
a cror mulime se va nota cu D - depinde de criteriul de prioritate la amnare adoptat. n ceeace
privete noul termen potenial de ncepere al activitilor amnate, acesta se va fixa cel mai devreme cu
putin dar, n aa fel, nct s nu afecteze susinerea cu resurse a activitilor programate!

Schema general a euristicilor de alocare a resurselor

START
- trasm reeaua coordonatoare (AoA sau AoN dup dorin) i calculm termenele timpurii de
ncepere ale activitilor lund n considerare numai duratele i condiionrile dintre activiti..
- trasm profilul necesarului din fiecare resurs considernd c toate activitile ncep la
termenele timpurii.
- dac pentru fiecare resurs profilul necesarului nu depete profilul disponibilului STOP:
prin programarea fcut sunt asigurate i resursele necesare susinerii tuturor activitilor din proiect. n
caz contrar:
- pentru fiecare activitate iniializm:
Termenul potenial de ncepere TPI = termenul timpuriu de ncepere, calculat mai nainte
- toate activitile proiectului se declar neprogramate
- se fixeaz criteriul de prioritate care va fi folosit n rezolvarea conflictelor de resurse.

Coninutul unei iteraii

Pasul 1 Dac toate activitile proiectului au fost declarate programate, STOP. n caz contrar:
Se determin:
- momentul curent de programare t = minimul termenelor poteniale de ncepere ale activitilor
neprogramate.
- se formeaz mulimea A compus din:
- activitile n curs de desfurare la momentul t;
- activitile candidate la programare la momentul t.

- se calculeaz indicatorii de amnare:

6


H h r b
i
ih h h
e

= A
e
,
A


Pasul 2 Dac H h
h
e > A , 0 se pune A '= A , D = C i se trece la pasul 4. Dac pentru cel puin o
resurs avem 0 < A
h
se trece la pasul 3.

Pasul 3 Se formeaz mulimea D, compus din activitile candidate din A ce urmeaz a fi amnate pe
baza criteriilor de prioritate la amnare avute n vedere. Se pune A ' = A D.
Not: Este de dorit ca D s fie ct mai mic deoarece activitile candidate din A i neincluse n
D vor putea fi programate!

Pasul 4 Se programeaz activitile candidate din A ' - n caz c sunt - s nceap, definitiv, la
momentul t. Aceste activiti se declar programate.
Dac D = C se revine la pasul 1. Dac D = C se trece la pasul 5

Pasul 5 Tuturor activitilor din D li se fixeaz un nou TPI egal cu minimul termenelor definitive de
terminare ale activitilor din A '. Dac este cazul se vor modifica i TPI ale activitilor care
depind direct sau indirect de activitile amnate!
Se revine la pasul 1 n cadrul unei noi iteraii.

Exemplul 12.4 Euristica descris va fi aplicat proiectului din exemplul 12.3. n operaiile de amnare
se va folosi criteriul rezervei actualizate combinat cu criteriul utilizrii eficiente a resurselor.

Reamintim c rezerva actualizat a unei activiti candidate la programare la momentul t este rezerva
total iniial diminuat cu numrul unitilor de timp cu care activitatea a fost amnat la momentele
de programare anterioare lui t. Obinem imediat formula:

R
act
= Termenul maxim de terminare t curent durata activitii

Atenie: o rezerv actualizat negativ indic depirea duratei de execuie a proiectului stabilit
iniial, fr a ine seama de resurse!
Rezultatele aplicrii procedurii au fost nscrise progresiv n tabelul 12.9

* * *
Start Etapele premergtoare au fost parcurse n exemplul 12.3 de unde a rezultat necesitatea aplicrii
euristicii de alocare a resurselor!
Termenele timpurii de ncepere ale activitilor au fost nscrise n coloana start a tabelului 12.9 ca
termene poteniale de ncepere.

Iteraia 1
Pasul 1 t = 0
A = {A , B}

7

0 ) 3 2 ( 5 0 ) 2 2 ( 3
2 1
= + = A < + = A

Pasul 2 Resursa R
1
nu este suficient pentru susinerea simultan a activitilor A i B.

Pasul 3 Se observ uor c pentru rezolvarea conflictului de resurse aprut la momentul 0 este
suficient amnarea uneia dintre activitile A , B.Conform celor convenite din start, are prioritate
activitatea cu rezerva mai mare:

R(A) = 3 0 1 = 2 R(B) = 3 0 3 = 0 se amn A.
n notaiile generale: D = {A} , A' ' = A D = {B}
Pasul 4 Se programeaz B s nceap, definitiv, la momentul 0. Trecem acest termen n coloana
termene definitive de ncepere a tabelului 12.9 dup care notm i termenul definitiv de terminare. n
coloana Iteraia 1 trecem un - n dreptul activitii B, semn c aceasta a fost declarat programat.

Pasul 5 Pentru activitatea amnat A fixm un nou TPI egal cu termenul definitiv de terminare
al activitii programate B: TPI(A) = 3, Trecem acest termen n coloana Iteraia 1
Reeaua coordonatoare (figura 12.4) arat c activitile D i E nu pot ncepe acum mai devreme de
temenul 3 + 1 = 4. Completm coloana Iteraia 1 cu TPI(D) = 4 , TPI(E) = 4.
Amnarea activitii E implic i amnarea nceperii activitii F la termenul TPI(F) = 4 + 5 = 9.
Activitile C i G i menin TPI, nefiind condiionate de activitile amnate.
Coloana Iteraia 1 este acum complet. Se poate trece la:

Iteraia 2
Pasul 1 t = 3
A = {A , C}
0 ) 3 2 ( 5 0 ) 1 2 ( 3
2 1
= + = A = + = A
Pasul 2 Resursele sunt suficiente pentru susinerea simultan a activitilor A i C
Pasul 4 Se programeaz A i C s nceap, definitiv, la momentul 3. Celelalte activiti i
menin termenele poteniale de ncepere curente. (vezi coloana Iteraia 2 din tabelul 12.9!)

Iteraia 3







0 ) 3 1 2 ( 5 0 ) 1 1 1 ( 3
2 1
< + + = A = + + = A

Va trebui s amnm una dintre activitile candidate D sau E.

- dup criteriul rezervei, actualizate la momentul t = 4:

A = { D , E ; C}
Activitate n curs de desfurare
Activiti neprogramate, candidate
t = 4

8

R
act
(D) = 8 4 4 = 0 R
act
(E) = 8 4 5 = 1 ar trebui amnat D.

- dup criteriul utilizrii eficiente a resurselor ar trebui s amnm activitatea E, deoarece, n
acest fel s-ar asigura utilizarea integral a resursei R
2
.

Deoarece urmrim s terminm proiectul ct mai repede preferm s amnm activitatea D (dei, nu
tim dac aceasta este alternativa corect!!)
Deci:
D = {D} , A' ' = A D = {E , C}

Programm E s nceap la momentul 4. Pentru D fixm un nou TPI egal cu minimul termenelor
(definitive) de terminare ale activitilor programate E i C: TPI(D) = min {8,9} = 8
n mod necesar, F se amn la termenul 8 + 4 = 12.

Iteraia 4







0 ) 1 2 2 ( 5 0 ) 1 1 1 ( 3
2 1
= + + = A = + + = A
Declarm D i G activiti programate cu termenul definitiv de ncepere 8.

Iteraia 5
Activitatea F se programeaz s nceap la momentul t = 12.


Activitatea Durata
Termen definitiv
de ncepere
Termen definitiv
de terminare
Termene poteniale de ncepere
Start Iteraia 1 Iteraia 2 Iteraia 3 Iteraia 4 Iteraia 5
A 1 3 4 0 3
- - - -
B 3 0 3 0
- - - - -
C 5 3 8 3 3
- - - -
D 4 8 12 1 4 4 8
- -
E 5 4 9 1 4 4
- - -
F 3 12 15 8 9 9 12 12
-
G 1 8 9 8 8 8 8
- -

Tabelul 12.9

A = { D , G ; E}
Activitate n curs de desfurare
Activiti neprogramate, candidate
t = 8

9


Figura 12.6.1


Figura 12.6.2

Concluzii: Euristica descris a condus la o programare a activitilor proiectului pe o durat de 15 zile
cu patru mai mult dect durata minim stabilit fr a ine seama de resurse. Figurile 12.6.1 i 12.6.2
arat clar ncadrarea necesarului de resurse n disponibilele date.

Tema. S analizeze cum ar fi continuat programarea dac la iteraia 3 se amna activitatea E n locul
activitii D.

Probleme propuse

1. Pentru realizarea proiectului dat n tabelul 12.12 s-au prevzut 6 muncitori necalificai.n ultima
coloan a tabelului este indicat numrul de muncitori necesari zilnic fiecrei activiti.

B
A
C
F
E
D
G
timp
R
1
Profilul disponibilului din R
1

2

3

15

3

8

4

9

12

Profilul necesarului din R
1
B
G
C
F
E
D
timp
R
2
Profilul necesarului din R
2
Profilul disponibilului din R
2

3

4

3

8

12

5

A
E
E
4

15

9


10

Codul
activitii
Activiti direct
precedente
Durata
(zile)
Necesar munc
Necalificat (persoane/zi)
A 2 1
B 3 2
C 5 3
D 4 2
E A 2 2
F E 6 1
G B 6 1

Tabelul 12.12
i) Trasai reeaua coordonatoare AoA. Determinai durata minim de execuie a proiectului
lund n considerare numai duratele activitilor i precedenele dintre ele. Desenai profilul necesarului
de for de munc necalificat corespunztor planificrii rezultate.
ii) Aplicai algoritmul de alocare pentru a obine o durat de execuie ct mai mic cu
respectarea ncadrrii necesarului de for de munc n disponibilul dat.

2 S se determine o durat ct mai mic de execuie a proiectului dat prin lista de activiti din tabelul
12.13 n cazul n care sunt utilizate dou resurse R
1
i R
2
fr a depi disponibilele b
1
= 6 i respectiv
b
2
= 8.

i) Trasai reeaua coordonatoare (AoA sau AoN dup dorin) i stabilii durata minim de
realizare a proiectului fr a ine seama de resurse;
ii) Pentru fiecare resurs desenai profilul necesarului i comparai-l cu disponibilul;
iii) Aplicai euristica de alocare, lund drept criteriu de prioritate la amnare, criteriul rezervei
actualizate (n exclusivitate!);
iv) Reluai aplicarea euristicii de alocare n situaia n care, n rezolvarea conflictelor de resurse,
se va avea n vedere n primul rnd criteriul utilizrii ct mai bune a celor dou resurse i
numai dac este cazul se va apela i la criteriul rezervei actualizate;
v) Comparai rezultatele obinute la iii) i iv).



Activitatea
Act. direct
precedente
Durata
(zile)
Necesar resurse
R
1
R
2
A - 2 4 6
B A 1 2 4
C A 5 4 2
D A 3 4 6
E B 1 2 2
F B 4 2 2
G C 8 3 4
H D 2 2 4
I E 3 2 4
J F , G , H 8 2 2
K I , J 2 2 6

Tabelul 12.13