Sunteți pe pagina 1din 4

5.3.

Conţinutul unităţii de învăţare

5.3.1. Algoritmul SIMPLEX pentru probleme care nu au soluţia iniţială cu AX  B, B  0

• Restricţiile pot fi puse (sau sunt) sub forma AX  B, B  0, X  0


indiferent dacă problema este de „max” sau de „min”.
• Deoarece în cazul inegalităţii       0 astfel încât
 +  =  vom adăuga la fiecare inegalitate a problemei câte o variabilă y pozitivă astfel
încât sistemul de inegalităţi al problemei devine sistem de egalităţi.
Fixând x1 = x2 = ... = xn = 0 avem soluţia y1 = b1, ... ym = bm posibilă prin construcţie.
În funcţia obiectiv variabilele y sunt introduse şi numite variabile de compensare sau de
egalizare sau variabile ecart vor figura cu coeficient „0”
Pentru problema modificată în acest fel şi adusă, deci la forma standard se aplică algoritmul
simplex ca în cazul precedent.

 max  f  CX  max  f  CX  0  Y
 
 AX  B, B  0   AX  I m Y  B
X  0 X  0, Y  0
 

 max  f  CX  0  Y

a11 x1  a12 x2  ...  a1n xn  y1  b1
a x  a x  ...  a x  y  b
 21 1 22 2 2n n 2 2
 

am1 x1  am 2 x2  ...  amn xn  ym  bm

 xi  0, i  1, n, y j  0, j  1, m

OBSERVAŢII
• La determinarea algoritmului SIMPLEX soluţia optimă poate cuprinde variabile X cât şi
variabile Y
 x0 
0
X  
 y0 
 

• În cazul în care există componente y în soluţia optimă, interpretarea lor economică poate
fi aceea de economie de resurse în sensul că pentru componenta optimă yk de exemplu, diferită de
zero, atunci resursa bk  0, nu a fost transformată în întregime.

Exemplu:
 max  f  2 x1  4 x2  x3  5 x4
 2 x1  x2  x3  x4  12
 
 x1  2 x2  x3  3 x4  15
xi  0, i  1,4
 max  f  2 x1  4 x2  x5  5 x4  0 y1  0 y2
 2 x1  x2  x3  x4  y1  12
 
 x1  x2  x3  3 x4  y2  15
xi  0, i  1,4, y1  0, y 2  0

Rezolvare:

Matricea corespunzătoare va fi:


 2 1 1 1 1 0
1 1 1 3 0 1
 
B = {y1, y2}
Întocmim tabloul simplex:
Cj: 2 4 -1 5 0 0
CB B XB a1 a2 a3 a4 y1 y2
0 y1 12 2 1 1 1 1 0  12 15 
min  ,  
1 3
0 y2
15 1 2 1 3 0 1 15
   3 PIVOT
3
zj 0 0 0 0 0 0
j = Cj – Zj 2 4 -1 5 0 0 soluţia nu este
optimă
(j  0)
0 y1 7 5/3 1/3 2/3 0 1 -1/3  7 5 
min  , 
 1/ 3 2 / 3 
5 a4 5 1/3 2/3 1/3 1 0 1/3 5
  2/ 3PIVOT
2/3
zj 25 5/3 10/3 5/3 5 0 5/3
j = Cj – Zj 1/3 2/3 -8/3 0 0 -5/3 soluţia nu este
optimă
(j  0)
0 y1 9/2 3/2 0 1/2 -1/2 1 -1/2
4 a2 15/2 1/2 1 1/2 3/2 0 1/2
zj 30 2 4 2 6 0 2
j = Cj – Zj 0 0 -3 -1 0 -2 soluţia este optimă
(j  0)

Soluţia este x1 = x3 = x4 = 0, x2 = 15/2


y1 = 9/2, y2 = 0
fmax = 30.

5.3.2. Algoritmul SIMPLEX pentru probleme care nu au soluţia iniţială cu AX  B, B  0

5.3.2.1. Metoda transformărilor elementare

Această problemă constă în transformări elementare aplicate sistemului AX  B ,


presupunând că A  M mn , m  n, rang A  m , sau direct matricei  A, B  , aducând sistemul la
forma
I m X B  SX S  D .
Dacă D  0 , atunci X B  D şi X S  0 reprezintă o soluţie de bază iniţială. Dificultatea
acestei metode constă în incertitudinea pozitivităţii termenului liber, condiţie impusă de forma
standard a unei probleme de programare liniară.
Demonstraţia se face analog problemei de programare liniară cu soluţie iniţială.

Exemplu
Să se rezolve problema
 max  f  3 x1  2 x2  x3  5 x4  2 x5
 x1  2 x2  x3  3 x4  x5  15
 
 2 x1  x2  x3  x4  3 x5  6
xi  0, i  1,5
Rezolvare
 1 2 1 3 1 15   1/ 3 2 / 3 1/ 3 1 1/ 3 5 
  
 2 1 1 1 3 6   5 / 3 1/ 3 2/ 3 0 8 / 3 1 
 1/ 8 5 / 8 1/ 4 1 0 39 / 8 
 
  5 / 8 1/ 8 1/ 4 0 1 3 / 8 

Astfel că problema dată are forma echivalentă

 max  f  3 x1  2 x2  x3  5 x4  2 x5
1 5 1 39
 8 x1  8 x2  4 x3  x4  8

5 x  1 x  1 x  x  3
 8 1 8 2 4 3 5 8
xi  0, i  1,5

Pentru care tabelul simplex are forma următoare

Cj: 3 2 1 5 2
CB B XB a1 a2 a3 a4 a5
5 a4 39/8 1/8 5/8 1/4 1 0
2 a5 3/8 5/8 1/8 1/4 0 1
Zj 201/8 15/8 27/8 7/4 5 2
j = Cj – Zj 9/8 -11/8 -3/4 0 0
2 a4 192/40 0 3/5 1/5 1 -1/5
2 a1 3/5 1 1/5 2/5 0 8/5
Zj 1032/40 3 18/5 11/5 5 19/5
j = Cj – Zj 0 -8/5 -6/5 0 -9/5

Din tabel rezultă că problema are optim finit unic, cu soluţia optimă.
Soluţia este x2 = x3 = x5=0, x1 = 3/5, x4  192 / 40
fmax = 1032/40.
5.3.2.2. Metoda bazei artificiale
Aceasta metoda constă în introducerea unui număr de m variabile artificiale ui, ui  0 câte
una la fiecare restricţie astfel încât restricţiile modificate devin:
 AX  I m u  B

 X  0, u  0
iar funcţia obiectiv
[max]f = CX – Mu
sau
[min]f = CX + Mu, unde M  0 foarte mare în raport cu cifrele ce apar în calcule.
Scopul introducerii variabilelor artificiale este acela de a avea pentru început o soluţie de
bază, constatând că aceasta este dată chiar de variabilele artificiale.
La terminarea algoritmului SIMPLEX pentru o astfel de problemă putem avea următoarele
situaţii:
1. soluţia optimă nu conţine variabile artificiale, caz în care avem deja o bază formată din
coloanele lui A şi se continuă algoritmul SIMPLEX prezentat la probleme de programare liniară
care conţin soluţie de bază iniţială.
2. soluţia optimă conţine variabile artificiale, dar de valoare zero. În acest caz problema are
soluţie optimă degenerată si algoritmul se termina.
3. soluţia optimă conţine variabile artificiale nenule. În acest caz problema nu are soluţie,
pentru că nu a fost corect formulată.

OBSERVAŢII
►Din punct de vedere economic prezenţa variabilelor artificiale în funcţia obiectiv
înseamnă o diminuare a valorii maxime sau o creştere a valorii minime ceea ce este echivalent cu
o penalizare. Din aceasta cauza se poate ca această metodă să apară şi cu denumirea de metoda
penalizării.

► Pentru o problemă ce nu are soluţie iniţială procedăm astfel:


1. restricţiile de forma    devin egalităţi introducând variabilele de compensare;
2. pentru restricţiile  =  introducem variabilele artificiale;
3. pentru restricţiile    introducem variabilele de compensare şi artificiale.

Formal putem scrie:


•+=
•=+u=
•–+u=

În funcţia obiectiv sunt introduse variabilele de compensare ca în cazul 1 şi variabilele artificiale


ca în cazul 2.

S-ar putea să vă placă și