Sunteți pe pagina 1din 5

Rezolvarea problemelor de alocare

CAPITOLUL 15 REZOLVAREA PROBLEMELOR DE ALOCARE 15.1. Probleme de alocare


Problemele de alocare pot ap[rea ]n diverse situa\ii de luare a deciziilor. Problemele tipice sunt: alocarea lucr[rilor pe ma=ini, repartizarea personalului ]n diverse centre teritoriale, repartizarea agen\ilor care s[ efectueze anumite activit[\i. O caracteristic[ distinct[ este c[ unui agent ]i este asignat[ o singur[ activitate =i se ]ncearc[ optimizarea unui obiectiv, cum ar fi minimizarea costurilor, minimizarea timpului, maximizarea profitului, etc. Pentru a ilustra modul de rezolvare a problemelor de alocare vom considera urm[torul exemplu: Firma ABC, specializat[ ]n studii de marketing are trei clien\i noi. Fiec[rui proiect ]i trebuie alocat un lider de proiect. Timpul necesar pentru realizarea proiectului depinde de experien\a =i abilitatea liderului de proiect. }n prezent sunt disponibile doar trei persoane, proiectele au aproximativ aceea=i prioritate =i nu pot fi realizate ]n acela=i timp. Conducerea firmei trebuie s[ stabileasc[ ce lider de proiect va coordona fiecare studiu astfel ]nc`t cele trei studii s[ se termine ]n timpul total cel mai scurt. Unui lider i se poate aloca doar un proiect. Cu trei clien\i =i trei studii sunt posibile 9 alternative. Timpii estima\i pentru finalizarea fiec[rui proiect sunt prezenta\i ]n tabelul 15.1. Client Lider de proiect 1 2 3 Ionescu 10 15 9 Popescu 9 18 5 Georgescu 6 14 3 Tabelul 15.1 Timpii estima\i pentru terminarea fiec[rui proiect Figura 15.1 prezint[ graful de re\ea pentru problema analizat[.

1 Ionescu 15 9 9 2 Popescu 18 5

10

Client 1

Client 2

6 1 3 Georgescu

14 3 Client 3 1

Figura 15.1 Graful de re\ea ata=at problemei

Modelarea deciziilor utiliznd foile de calcul

Nodurile corespund liderilor de proiect =i clien\ilor, iar arcurile reprezint[ repartiz[rile posibile ale liderilor de proiect clien\ilor. Oferta ]n fiecare nod origine este 1 =i cererea ]n fiecare nod destina\ie este 1. Costul repartiz[rii unui lider de proiect la un client este timpul necesar pentru realizarea studiului. Observa\i asem[narea dintre problemele de alocare =i cele de transport, problemele de alocare fiind un caz special de probleme de transport ]n care toate ofertele =i cererile au valoarea 1, iar cantitatea transportat[ pe fiecare arc este 0 sau 1. Problema poate fi rezolvat[ folosind metoda program[rii liniare. Avem nevoie de o variabil[ pentru fiecare arc =i o restric\ie pentru fiecare nod. Vom utiliza variabile de decizie cu doi indici xij - repartizarea liderului i la proiectul j. Deci vom avea 9 variabile de decizie: 1, daca liderul i este repartizat clientului j xij = 0, in celelalte cazuri unde i1,2,3 =i j1,2,3. Utiliz`nd aceste nota\ii: Timpul necesar pentru finalizarea proiectelor de c[tre Ionescu este 10x1115x129x13 (doar una din variabilele de decizie poate lua valoarea 0). Timpul necesar pentru finalizarea proiectelor de c[tre Popescu este 9x2118x225x23 (doar una din variabilele de decizie poate lua valoarea 0). Timpul necesar pentru finalizarea proiectelor de c[tre Georgescu este 6x3114x323x33 (doar una din variabilele de decizie poate lua valoarea 0). Suma acestor timpi furnizeaz[ num[rul total de zile pentru a finaliza cele trei studii de pia\[. Astfel, func\ia obiectiv este: Min (10x1115x129x139x2118x225x236x3114x323x33) Restric\iile reflect[ faptul c[ fiecare lider poate fi repartizat cel mult unui client =i fiecare client trebuie s[ aib[ repartizat un lider. Aceste restric\ii sunt: x11 + x12 + x13 1 repartizarea lui Ionescu x21 + x22 + x23 1 repartizarea lui Popescu x31 + x32 + x33 1 repartizarea lui Georgescu x11 + x21 + x31 = 1 clientul 1 x12 + x22 + x32 = 1 clientul 2 x13 + x23 + x33 = 1 clientul 3 Combin`nd func\ia obiectiv cu restric\iile ob\inem urm[torul model: Min (10x1115x129x139x2118x225x236x3114x323x33) x11 + x12 + x13 1 repartizarea lui Ionescu x21 + x22 + x23 1 repartizarea lui Popescu x31 + x32 + x33 1 repartizarea lui Georgescu x11 + x21 + x31 = 1 clientul 1 x12 + x22 + x32 = 1 clientul 2 x13 + x23 + x33 = 1 clientul 3 xij 0 pentru i = 1,2,3; j = 1,2,3

Rezolvarea problemelor de alocare Foaia de calcul folosit[ pentru rezolvarea problemei este prezentat[ ]n figura 15.2.
A 1 2 3 B C D E F G

Firma ABC
Client 2 10 9 6 15 18 14

Lider de proiect 5 Ionescu 6 Popescu 7 Georgescu


4 8 9 10 11 12 13 14 15 16 17 18 19 20 21

3 9 5 3

Model
Timp de realizare a proiectului 26 Client 2 0 0 1 1 = 1 = 1 1 0 0 1 = 1

Lider de proiect Ionescu Popescu Georgescu Total

3 0 1 0 1

Total 1 1 1 <= <= <= 1 1 1

Figura 15.2 Foaia de calcul ata=ata problemei Datele problemei sunt introduse ]n domeniul A1:D7. Variabilele de decizie Func\ia obiectiv Partea st`ng[ a restric\iilor Celulele D16:D18 sunt rezervate variabilelor de decizie. Ini\ial toate variabilele de decizie au valoarea 0. Formula SUMPRODUCT(B5:D7,B16:D18) a fost plasat[ ]n celula C12 pentru a calcula num[rul necesar de zile pentru a termina toate proiectele. Celulele E16:E18 con\in partea st`ng[ a restric\iilor referitoare la num[rul de clien\i la care poate fi repartizat un lider. Celulele B19:D19 con\in partea st`ng[ a restric\iilor conform c[rora unui proiect trebuie s[-i fie repartizat un lider de proiect. Formulele utilizate sunt: Celula E16: SUM(B16:D16). Se copieaz[ E16 ]n E17:E18. Celula B19: SUM(B16:B18). Se copieaz[ B19 ]n C19:D19. Celulele G16:G18 con\in partea dreapt[ a restric\iilor pentru lideri, iar celulele B21:D21 con\in partea dreapt[ a restric\iilor pentru clien\i. Toate valorile sunt egale cu 1.

Partea dreapt[ a restric\iilor

Modelarea deciziilor utiliznd foile de calcul Se rezolv[ problema utiliz`nd Solver-ul. Caseta de dialog Solver Parameters se completeaz[ ca ]n figura 15.3. Op\iunile selectate sunt Assume Linear Model =i Assume Non-Negative.

Figura 15.3 Caseta Solver Parameters Solu\ia optim[ a problemei este: Ionescu este repartizat clientului 2, Popescu clientului 3 =i Georgescu clientului 1. Timpul de finalizare a celor trei proiecte este de 26 de zile.

15.2. Variaii ale problemei


Deoarece problemele de alocare pot fi tratate ca fiind cazuri speciale de probleme de transport, varia\iile care pot ap[rea la problemele de alocare sunt acelea=i ca =i la problemele de transport. Num[rul total de agen\i (oferta) este diferit de num[rul total de activit[\i (cererea) Dac[ num[rul de agen\i dep[=e=te num[rul de activit[\i, agen\ii suplimentari vor r[m`ne nealoca\i ]n modelul de programare liniar[. Dac[ num[rul de activit[\i este mai mare dec`t num[rul de agen\i, modelul de programare liniar[ nu va avea o solu\ie fezabil[. }n aceast[ situa\ie este suficient s[ ad[ug[m un num[r suficient de agen\i fal=i pentru ca num[rul de agen\i s[ fie egal cu num[rul de activit[\i. }n func\ia obiectiv coeficien\ii pentru agen\ii fal=i vor fi zero. Dac[ problemele de alocare sunt evaluate ]n termeni de venit sau profit vom avea de rezolvat o problem[ de maximizare ]n loc de una de minimizare. }n plus, dac[ una sau mai multe aloc[ri nu pot fi acceptate, variabilele de decizie corespunz[toare vor fi eliminate din modelul de programare liniar[. Pentru exemplul prezentat acest lucru poate ap[rea dac[ la un agent nu are experien\a necesar[ s[ lucreze la un proiect. Pentru a nu face modific[ri ]n foaia de calcul, cea mai simpl[ solu\ie ar fi ata=area unor costuri foarte mari pentru variabilele de decizie ce corespund aloc[rilor ce nu pot fi acceptate. Modelul general pentru problemele de alocare este:

Rezolvarea problemelor de alocare

Min

c
i =1 j =1 n

ij

x ij i = 1, 2 ,..., m j = 1, 2 ,..., n pentru toti i si j Agenti Activitati

j =1 m

x ij 1 x ij = 1 x ij 0

i =1