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 10 Client 1
1 1
Ionescu
15
9
9
2 18 Client 1
1 2
Popescu
5

6 14

3 3 Client
1 1
Georgescu 3

Figura 15.1 – Graful de re\ea ata=at problemei


Modelarea deciziilor utilizând 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 iˆ1,2,3 =i jˆ1,2,3.
Utiliz`nd aceste nota\ii:
Timpul necesar pentru finalizarea proiectelor de c[tre Ionescu este 10x11‡15x12‡9x13
(doar una din variabilele de decizie poate lua valoarea 0).
Timpul necesar pentru finalizarea proiectelor de c[tre Popescu este 9x21‡18x22‡5x23
(doar una din variabilele de decizie poate lua valoarea 0).
Timpul necesar pentru finalizarea proiectelor de c[tre Georgescu este 6x31‡14x32‡3x33
(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 (10x11‡15x12‡9x13‡9x21‡18x22‡5x23‡6x31‡14x32‡3x33)

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 (10x11‡15x12‡9x13‡9x21‡18x22‡5x23‡6x31‡14x32‡3x33)
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 B C D E F G
1 Firma ABC
2
3 Client
4 Lider de proiect 1 2 3
5 Ionescu 10 15 9
6 Popescu 9 18 5
7 Georgescu 6 14 3
8
9
10 Model
11
Timp de realizare a
26
12 proiectului
13
14 Client
15 Lider de proiect 1 2 3 Total
16 Ionescu 0 1 0 1 <= 1
17 Popescu 0 0 1 1 <= 1
18 Georgescu 1 0 0 1 <= 1
19 Total 1 1 1
20 = = =
21 1 1 1

Figura 15.2 – Foaia de calcul ata=ata problemei

Datele problemei sunt introduse ]n domeniul A1:D7.

Variabilele de Celulele D16:D18 sunt rezervate variabilelor de decizie. Ini\ial


decizie toate variabilele de decizie au valoarea 0.

Func\ia Formula ˆSUMPRODUCT(B5:D7,B16:D18) a fost plasat[ ]n


obiectiv celula C12 pentru a calcula num[rul necesar de zile pentru a
termina toate proiectele.
Partea st`ng[ a Celulele E16:E18 con\in partea st`ng[ a restric\iilor referitoare la
restric\iilor 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.
Partea dreapt[ Celulele G16:G18 con\in partea dreapt[ a restric\iilor pentru lideri,
a restric\iilor iar celulele B21:D21 con\in partea dreapt[ a restric\iilor pentru
clien\i. Toate valorile sunt egale cu 1.
Modelarea deciziilor utilizând 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. Variaţii 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

m n
Min ∑∑c
i =1 j =1
ij x ij


j =1
x ij ≤ 1 i = 1, 2 ,..., m Agenti
m


i =1
x ij = 1 j = 1, 2 ,..., n Activitati
x ij ≥ 0 pentru toti i si j