Sunteți pe pagina 1din 50

An universitar 2016 - 2017, Master AAT, Anul I

METODE DE OPTIMIZARE A PROCESELOR


DECIZIONALE

Prof. Univ. Dr. Cristinca FULGA

Academia de Studii Economice


Bucuresti, Romania
Probleme de transport

Metode de Optimizare a Proceselor Decizionale

1 Probleme de transport
Probleme de transport

Probleme de transport

Presupunem ca un anumit produs se gaseste in m centre furnizoare


(origini O1 ; O2 ; :::; Om ) in cantitati respective egale cu s1 ; s2 ; :::; sm
(s = supply).

Acest produs urmeaza a transportat la n bene ciari (destinatii


D1 ; D2 ; :::; Dn ) unde necesarul este de d1 ; d2 ; :::; dn (d = demand).

Costurile unitare de transport de la ecare furnizor Oi la ecare


bene ciar Dj sunt cunoscute cij , pentru toti indicii i = 1; m si j = 1; n:
iar costul oricarei cantitati din produsul respectiv ce urmeaza a
transportata de la orice furnizor la orice bene ciar depinde liniar de
costul unitar de transport corespunzator.

Se pune problema determinarii unui plan de transport care sa


minimizeze cheltuielile totale de transport.
Probleme de transport

Probleme de transport
Probleme de transport

Probleme de transport

Variabilele modelului: xij = cantitatea transportata de la furnizorul i


(originea Oi ) la bene ciarul j (destinatia Dj ); 8i = 1; m si j = 1; n;
iar X = (xij )i=1;m; j=1;n :
8 m X n
> X
>
> min f (X) = cij xij
>
>
>
> i=1 j=1
>
> n
>
> X
< xij = si ; i = 1; m
Modelul : (PT)
> j=1
>
> m
>
> X
>
> xij = dj ; j = 1; n
>
>
>
> i=1
:
xij 0; 8i = 1; m; j = 1; n:
Probleme de transport

Probleme de transport

DEFINITIE O problema de transport se numeste echilibrata daca


m
X n
X
si = dj :
i=1 j=1

DEFINITIE O solutie de baza care are exact n + m 1 componente


nenule se numeste nedegenerata.
Probleme de transport

Probleme de transport

Example
Se considera o problema de transport cu trei furnizori F1 ; F2 ; F3 si
patru bene ciari B1 ; B2 ; B3 ; B4 . Furnizorii dispun de 30, 60, respectiv
50 de unitati de produs (u.p.), iar cererea bene ciarului de 20, 40, 50
si respectiv 30 u.p. Costurile unitare de transport sunt date in matricea
costurilor 0 1
5 6 4 5
C = @ 3 4 3 2 A:
2 7 6 8
Sa se scrie modelul pentru problema de transport.
Probleme de transport

Probleme de transport
Probleme de transport

Probleme de transport

OBSERVATIE Fiind probleme de programare liniara, problemele de


transport pot rezolvate cu algoritmul Simplex, dar
exista inconvenientul dimensiunilor mari ale
problemelor.

Datorita importantei practice deosebite a acestui tip de


probleme, au fost construiti algoritmi speci ci bazati pe
Algoritmul Simplex mult simpli cat.
Mai precis, Algoritmul Simplex este aplicat fara insa a
mai necesara exprimarea vectorilor coloana ai
matricei problemei in functie de vectorii bazelor ce apar
in iteratiile algoritmului.
Probleme de transport

Probleme de transport

Metoda costului minim pentru determinarea


unei solutii initiale de baza.
Cazul problemelor echilibrate

1 Fie ckl = min cij :


i=1;m; j=1;n

2 Pt (k; l) determinati, xkl = min fsk ; dl g :


3 Se inlocuieste sk cu sk xkl si dl cu dl xkl :
4 Daca sk xkl = 0, atunci se suprima linia k:
Daca dl xkl = 0, atunci se suprima coloana l.
5 Se reia de la Pasul 1 pana cand solutie initiala de
baza a fost determinata.
Probleme de transport

Probleme de transport

Algoritm pentru rezolvarea problemelor de transport

1 Veri c daca problema este echilibrata. Daca nu, introduc un


furnizor/bene ciar ctiv astfel incat sa devina echilibrata.
Costurile de transport asociate acestui furnizor/bene ciar ctiv
sunt nule.
2 Determin solutia initiala de baza X prin Metoda costurilor
minime.
3 Studiez daca solutia de baza X gasita este optima.
(i) Rezolv sistemul ui + vj = cij ; pentru (i; j) bazici (la inceput xez
valoarea uneia dintre variabilele sistemului, de obicei se ia
u1 = 0).
(ii) Intocmesc tabel cu ui + vj pentru (i; j) nebazici, apoi tabel cu
ij = cij (ui + vj ) pentru (i; j) nebazici.
Probleme de transport

Probleme de transport

Daca exista cel putin un ij < 0 pentru o pereche de indici


nebazici, atunci solutia nu este optima si trebuie imbunatatita. Se
alege (k; l) a.i. kl = min ij : In tabelul continand solutia X de la
ij <0
aceasta iteratie, pe aceasta pozitie (k; l) se pune x si se formeaza
un ciclu care conduce la o solutie noua de baza, mai buna decat
cea anterioara.
Daca pentru toti indicii (i; j) nebazici ij > 0 atunci problema are
solutie optima unica.
Daca pentru toti indicii (i; j) nebazici ij 0 dar exista cel putin
o pereche (k; l) de indici nebazici pentru care kl = 0; atunci
problema are solutie optima multipla.
Probleme de transport

Probleme de transport

Example
Sa se rezolve urmatoarea problema de transport:
Disponibil si
4 2 5 25
3 6 3 60
1 4 1 45
Necesar dj 40 40 50
Probleme de transport

Probleme de transport

Pasul 1 Veri c daca problema este echilibrata.


3
X
Total disponibil: si = 25 + 60 + 45 = 130
i=1
3
X
Total necesar: dj = 40 + 40 + 50 = 130:
j=1
Probleme de transport

Probleme de transport

Pasul 2 Determin solutia initiala de baza X1 prin


Metoda costurilor minime.

- 25 - 25; 0
- 15 45 60; 45; 0
X1 :
40 - 5 45; 5; 0
40; 0 40; 15; 0 50; 45; 0

Observatie: Solutia initiala de baza gasita este nedegenerata pentru


ca are exact n + m 1 = 3 + 3 1 = 5 componente nenule.
Probleme de transport

Probleme de transport

Pasul 3 Studiez daca solutia initiala de baza gasita este optima.


(i) Rezolv sistemul

ui + vj = cij ; pentru (i; j) bazici

xand de exemplu u1 = 0:

De exemplu, pentru perechea (1; 2) de indici bazici:


u1 + v2 = c12 , 0 + v2 = 2 , v2 = 2:
Se obtine:

v1 = 1 v2 = 2 v3 = 1
u1 = 0 -1 2 -1
u2 = 4 3 6 3
u3 = 2 1 4 1
Probleme de transport

Probleme de transport

(ii) Pentru indicii nebazici (i; j) ; calculez

ij = cij (ui + vj ) :

De exemplu, pentru perechea (1; 1) de indici nebazici, avem:

11 = c11 (u1 + v1 ) = 4 (0 + ( 1)) = 5:

Tabelul continand ij pentru perechile de indici nebazici:

5 6
0
0

Pentru toti indicii nebazici (i; j) ; ij 0 ) solutia este optima.


Probleme de transport

Probleme de transport

Exista cel putin o pereche (k; l) de indici nebazici pentru care kl =0


) problema are solutie optima multipla.

In cazul nostru, exista doua perechi de indici nebazici pentru care

21 =0
32 =0

Asta inseamna ca, in afara de solutia optima de baza X1 gasita, mai


exista inca doua solutii optime de baza.
Probleme de transport

Probleme de transport

25
Pentru 21 : x 15 45 x :
40 x 5+x

Lui x i se atribuie valoarea:

x = min f40; 45g = 40:

25
A doua solutie optima de baza X2 este: 40 15 5
45
Probleme de transport

Probleme de transport

25
Pentru 32 : 15 x 45 + x :
40 x 5 x

Lui x i se atribuie valoarea:

x = min f15; 5g = 5:

25
A treia solutie optima de baza X3 este: 10 50
40 5
Probleme de transport

Probleme de transport

Solutia optima generala: Xgen = 1 X1 + 2 X2 + 3 X3 ;

1; 2; 3 0
unde
1 + 2 + 3 = 1:

0 25 0
Xgen : 40 2 15 1 + 15 2 + 10 3 45 1 + 5 2 + 50 3
40 1 + 40 3 5 3 5 1 + 45 2

Costul transportului corespunzator lui Xgen este minim si este egal cu


costul corespunzator lui X1 sau X2 sau X3 .
Probleme de transport

Probleme de transport

Enuntul anterior completat cu cerinte suplimentare


Sa se determine planul optim de transport pentru care sunt satisfacute
in plus urmatoarele cerinte:

se transporta maxim posibil de la furnizorul F3 la bene ciarul B3


si

de la furnizorul F2 la bene ciarul B3 nu se transporta mai mult


de 9 unitati de produs.

Formalizat, asta inseamna ca se cere sa se determine acea


max x33
solutie optima obtinuta din Xgen pentru care
x23 9:
Probleme de transport

Probleme de transport

Rezolvare:

Se rezolva problema de programare liniara


8
>
> max f ( ) = 5 1 + 45 2
<
45 1 + 5 2 + 50 3 9
>
> 1+ 2+ 3 =1
:
1; 2; 3 0:
0 1 8
0 < 1 =0
Se gaseste solutia optima ca ind = @ 1 A ; i.e. 2 =1
:
0 3 =0
Dupa inlocuirea in formula lui Xgen ; se obtine ca solutia optima a
problemei de transport cu aceste restrictii suplimentare este chiar X2 :
Probleme de transport

Probleme de transport

Cazul problemelor neechilibrate

Example
Sa se determine planul optim de transport pentru cazul urmator:
Disponibil si
5 4 2 90
2 - - 70
3 1 6 140
Necesar dj 50 60 40
OBSERVATIE Pozitiile (i; j) pe care nu apar costuri de transport
corespund unor rute impracticabile (din diverse motive practice,
respectivelor rute de transport li se asociaza costuri excesiv de mari
M > 0; se poate considera chiar M ! 1).
Probleme de transport

Probleme de transport
3
X 3
X
Pasul 1. Problema este neechilibrata si > dj . Adaug un
i=1 j=1
bene ciar ctiv B4 a carui cerere d4 o calculez in asa fel incat
problema rezultata sa e echilibrata. Costurile asociate bene ciarului
ctiv se iau ci4 = 0; 8i = 1; 3:

B4 Disponibil si
5 4 2 0 90
2 M M 0 70
3 1 6 0 140
Necesar dj 50 60 40 150

3
X 4
X
Problema este echilibrata: si = dj = 300:
i=1 j=1
| {z } | {z }
Total Disponibil Total Necesar
Probleme de transport

Probleme de transport

Pasul 2. Determin solutia initiala de baza prin Metoda costurilor


minime.
Reguli generale:

Incep prin a satura furnizorul pe linia caruia exista


costuri foarte mari M:
Evit sa saturez simultan si un bene ciar si un
furnizor (procedand astfel, este posibil sa evit
degenerarea solutiei).

Recomandare: La costuri de transport egale, aleg sa


transport pe ruta cu disponibil/necesar mai mare (daca
nu este incalcata vreuna dintre regulile anterioare).
Probleme de transport

Probleme de transport

Pasul 3. Studiez daca solutia initiala de baza gasita este optima.


Dupa o iteratie, se gaseste solutia optima (unica)

40 50
X : 50 20
60 80

pentru care costul (minim) de transport asociat este de 240 u.m.


X3 X3
OBSERVATIE Cum in problema initiala si > dj cu
i=1 j=1
3
X 3
X
si dj = 150, era clar din start ca vor ramane 150 u.p. in
i=1 j=1
depozitele furnizorilor.
Probleme de transport

Probleme de transport

Example
Se considera problema de transport:
B3 B4 B5 Disponibil si
4 5 2 3 7 100
4 3 5 2 3 200
9 4 7 5 4 150
Necesar dj 80 300 120 !
!

Particularitate: Nu se cunoaste necesarul ecaruia dintre bene ciarii


B3 ; B4 si B5 ; se cunoaste doar necesarul cumulat al acestora.
Probleme de transport

Probleme de transport

Bene ciarii B3 ; B4 si B5 sunt inlocuiti cu un bene ciar ctiv B6


ale carui costuri de transport sunt determinate astfel:
8
< c16 = min f2; 3; 7g = 2 (= c13 )
c26 = min f5; 2; 3g = 2 (= c24 )
:
c36 = min f7; 5; 4g = 4 (= c35 ) :

3
X 5
X 5
X 3
X
Cum in problema initiala si < dj cu dj si = 50,
i=1 j=1 j=1 i=1
se adauga un furnizor ctiv F4 care sa aiba in depozit un
disponibil de s4 = 50, costurile de transport corespunzatoare
acestuia ind nule: c4j = 0; 8j:
Probleme de transport

Probleme de transport

Modelul asociat problemei initiale in care au fost operate toate


transformarile:
4 5 2 100
4 3 2 200
9 4 4 150
0 0 0 50
80 300 120
Probleme de transport

Probleme de transport
Modelul are solutie optima multipla:
8
>
> 30 70
>
>
>
> 150 50
>
> X1 :
>
> 150
>
>
>
< 50
>
>
>
> 100
>
>
>
> 30 150 20
>
> X2 :
>
>
> 150
: 50

1; 2 0
Solutia optima generala: Xgen = 1 X1 + 2 X2 ; unde
1 + 2 = 1:
Probleme de transport

Probleme de transport

Rescriu solutiile optime tinand cont de faptul ca bene ciarul B6 este


ctiv:

30 70 100
150 50 30 150 20
X1 : si X2 :
150 150
50 50

S-a tinut cont de faptul ca c16 corespundea lui c13 ; iar c26 lui c24 :
Probleme de transport

Probleme de transport

OBSERVATIE Cum in problema initiala avem


3
X 5
X 5
X 3
X
si < dj cu dj si = 50;
i=1 j=1 j=1 i=1

era clar din start ca nu li se vor putea onora comenzile tuturor


furnizorilor. In cazul acesta, bene ciarului B1 i-au fost livrate
doar 30 u.p., in loc de 80 cate comandase.
Probleme de transport

Degenerarea in problemele de transport


Cazul I. O solutie degenerata poate aparea cand, dupa determinarea
lui x, modi carile ce se fac asupra vechii solutii duc la anularea a mai
mult de o componenta a acestei solutii. In acest caz, nu vom lasa
necompletata decat una dintre casutele ale caror componente s-au
anulat, toate celelalte completandu-se cu 0. Acestea se numesc
zerouri esentiale si sunt componente bazice ale solutiei.
Cazul II. O solutie degenerata poate aparea ca solutie initiala de baza.
Atunci se reia aplicarea metodei pe problema modi cata astfel:
ecarei cantitati disponibile si cu i 2 f1; :::; mg i se adauga o cantitate
foarte mica notata " > 0, iar ultimei cantitati necesare dn i se adauga
m " pentru echilibrare. Aceasta problema va avea o solutie initiala
nedegenerata. Cum problema data initial se deduce din problema
modi cata pentru " = 0, se face aceasta inlocuire (" = 0) in solutia
initiala obtinuta, determinandu-se astfel 0-urile esentiale care trebuie
pastrate pentru ca solutia intiala sa e nedegenerata.
Probleme de transport

Probleme de transport

Problem
Datorita experientei diferite, abilitatilor speci ce, vechimii in
domeniu,... lucratorii unui hotel apartinand unui lant hotelier de lux
sunt impartiti in patru categorii de salarizare care corespund la 8, 11,
13, respectiv 16 u.m. pe ora. In cele patru categorii de salarizare sunt
incadrati 10, 20, 15 si 15 lucratori. Exista trei ture: de zi, de
dupa-amiaza si de noapte. Ca sa e asigurata continuitatea in
deservire, este necesar ca in ecare tura sa lucreze cate 20 de
lucratori. Lucratorii sunt platiti in functie de incadrarea ecaruia:
a) pe tura de zi cu salariul de baza,
b) pe tura de dupa-amiaza, fata de salariul de baza, li se acorda si un
spor in valoare de 20% din acesta,
c) pe tura de noapte sporul este de 50%.
Sa se determine repartizarea optima a lucratorilor pe ture astfel incat
sa se minimizeze costul total.
Probleme de transport

Probleme de transport

INDICATII:
Se noteaza cu xij = numarul de lucratori din categoria de
salarizare i ce urmeaza sa lucreze in schimbul j, unde i = 1; 4,
j = 1; 3:
Se calculeaza matricea costurilor C = (cij )i=1;4; j=1;3
0 1
8:00 9:60 12:00
B 11:00 13:20 16:50 C
C=B C
@ 13:00 15:60 19:50 A
16:00 19:20 24:00

Datorita structurii speci ce ale acestei probleme de repartizare


optima, se organizeaza datele si se rezolva ca o problema de
transport.
Probleme de transport

Probleme de transport

Problem
Sa se determine planul optim de transport pentru cazul urmator:

Disponibil si
2 4 5 200
3 5 6 90
5 6 4 90
Necesar dj 200 100 80
Probleme de transport

Probleme de transport

Se gaseste solutia initiala degenerata:

200
X0 : 90
10 80

Este degenerata pentru ca:


m+n 1 = 5;
numar de componente nenule: 4 < 5.
Probleme de transport

Probleme de transport

Enunt modi cat:


Disponibil si
2 4 5 200 +"
3 5 6 90 +"
5 6 4 90 +"
Necesar dj 200 100 80 +3"
Probleme de transport

Probleme de transport

200 "
Se gaseste solutia initiala de baza: 90 +"
10 2" 80 +3"

in care se face " = 0: Astfel, se obtine solutia initiala de baza a


problemei date (nemodi cate):

200 0
X0 : 90
10 80

OBSERVATIE: S-a obtinut o solutie nedegenerata prin evidentierea


pozitiei zeroului esential.
OBSERVATIE: S-ar putut evita degenerarea prin ignorarea faptului
ca 2 este costul minim din matrice.
Probleme de transport

Probleme de transport

Problem
Sa se determine planul optim de transport pentru cazul urmator:

Disponibil si
1 2 3 4 6
4 3 2 0 8
0 2 2 1 10
Necesar dj 4 6 8 6
Probleme de transport

Probleme de transport
Indicatii:
Se gaseste solutia initiala degenerata.
Se modi ca problema prin alterarea necesarului si a
disponibilului cu ".
Se gaseste solutie optima multipla:

6 0 0 6
1 2
X : 2 6 si X : 2 6
4 6 4 6

Se observa ca
Xgen = X 1 = X 2
pentru ca cele doua solutii optime de baza difera numai prin
pozitia 0 ului esential.
Probleme de transport

Probleme de transport

Problema de transport cu posibilitatea reexpedierii

In problemele de transport se lucreaza cu ipoteza implicita ca


transportul se poate efectua intr-un singur sens: de la furnizori (origini
O1 ; O2 ; :::; Om ) la bene ciari (destinatii D1 ; D2 ; :::; Dn ).

Relaxarea acestei ipoteze duce la formularea problemelor de transport


cu posibilitatea reexpedierii. Transferurile permit marfurilor sa e
transportate n ambele sensuri ntre furnizori si bene ciari astfel nct
sa se evite utilizarea de conexiuni directe costisitoare.
Probleme de transport

Probleme de transport

Variabilele modelului: xij = cantitatea transportata intre furnizorul i


(originea Oi ) si bene ciarul j (destinatia Dj ); 8i = 1; m si j = 1; n;
cu precizarea: xij < 0 inseama ca transportul se efectueaza de fapt de
la destinatia Dj la originea Oi :
8 m X n
> X
>
> min f (X) = cij jxij j
>
>
>
> i=1 j=1
>
> n
>
> X
< xij = si ; i = 1; m
Modelul : (PTR)
> j=1
>
> m
>
> X
>
> xij = dj ; j = 1; n
>
>
>
> i=1
:
xij 2 R; 8i = 1; m; j = 1; n:
Probleme de transport

Probleme de transport

Pentru rezolvarea problemei se incepe prin a se rescrie modelul initial


(scris in functie de variabilele nerestrictionate ca semn xij ) cu ajutorul
noilor variabile dij+ si dij 0:
Relatiile intre acestea si xij sunt:
(
x +jx j
dij+ = ij 2 ij dij+ = max fxij ; 0g
jx j x sau
dij = ij 2 ij dij = min fxij ; 0g

adica
xij = dij+ dij
jxij j = dij+ + dij :
Probleme de transport

Probleme de transport

Modelul devine:
8 m X n
> X
>
> min f (X) = cij dij+ + dij
>
>
>
> i=1 j=1
>
> n
>
> X
< dij+ dij = si ; i = 1; m
(PTR) j=1
>
>
>
> X m
>
>
>
> dij+ dij = dj ; j = 1; n
>
>
>
: i=1
dij+ ; dij 0; 8i = 1; m; j = 1; n:
Probleme de transport

Probleme de transport

Problema de atribuire (repartizare) - caz particular al problemei


de transport

Se considera n angajati ai unei rme ce trebuie sa execute n sarcini de


serviciu. Toti angajatii au la dispozitie aceeasi durata de timp pentru
executia lucrarii (de exemplu o ora, o zi, sau o masura similara).
Fiecare sarcina necesita intreaga perioada de timp pe care angajatul o
are la dispozitie (sau echivalentul a mai multi angajati). Costul
repartizarii unui lucrator la o sarcina este costul cursurilor de
cali care pe care angajatorul le plateste pentru a se asigura ca sarcina
este executata corect.
Scopul angajatorului este sa determine planul optim de executie a
sarcinilor pentru care costul total al cursurilor de cali care sa e
minim.
Probleme de transport

Probleme de transport

Notatii:
xij = proportia (fractie, procent) din timpul lucratorului i care
este alocat executarii sarcinii j, unde i; j = 1; n:
cij = costul cursurilor de cali care ale lucratorului i pentru
pregatirea acestuia pentru executarea sarcinii j, unde i; j = 1; n:

Datorita speci cului problemei avem

si = 1; 8i = 1; n
dj = 1; 8j = 1; n:
Probleme de transport

Probleme de transport

8 n X n
> X
>
> min f (X) = cij xij
>
>
>
> i=1 j=1
>
> n
>
> X
< x = 1; i = 1; n
ij
Modelul : (PA)
> j=1
>
> m
>
> X
>
> xij = 1; j = 1; n
>
>
>
> i=1
:
xij 0; 8i = 1; n; j = 1; n:
Modelul se rezolva ca o problema de transport.
Probleme de transport

Probleme de transport

TEMA

Sa se determine planul optim de transport pentru ecare caz:


Disponibil si
1 5 3 100
1) 9 2 8 45
2 10 6 55
Necesar dj 80 70 50
Disponibil si
4 6 5 2 35
2) 3 2 7 8 30
2 10 5 6 50
Necesar dj 20 25 45 25