Exercitii Simplex Rezolvate
Exercitii Simplex Rezolvate
Exercitii Simplex Rezolvate
ALGORITMUL SIMPLEX 3
c1 c2 cj cn
B CB XB ··· ···
a1 a2 aj an
a1 c1 b1 a11 a12 ··· a1j ··· a1n
a2 c2 b2 a21 a22 ··· a2j ··· a2n
.. .. .. .. .. .. .. ..
. . . . . . . .
am cm bm am1 am2 ··· amj ··· amn
1 2 ··· j ··· n
bi bl
✓0 = min{ }= ,
aik alk
Observaţie 1
1) Prima fază se consideră ı̂ncheiată ı̂n momentul ı̂n care vectorii
artificiali au fost eliminaţi din bază.
2) Dacă ı̂n problema iniţială matricea A conţine câţiva vectori uni-
tari, atunci se vor adăuga atâtea variabile artificiale cât este ne-
cesar pentru completarea bazei, iar ı̂n prima fază se minimizează
doar aceste variabile artificiale.
2) Metoda penalizării:
Se consideră problema de programare liniară:
min[Z = C T X]
AX = b (1.3)
X 0,
min[Z = C T X + M X a ]
AX + IX a = b (1.4)
X, X a 0,
min[Z = x1 + 2x2 x3 ]
ştiind că 8
< x1 + 2x3 + x4 + 3x5 = 3
x2 + 3x3 x4 + 2x5 = 4
:
x1 , x2 , x3 , x4 , x5 0.
Rezolvare.
Matricea sistemului de restricţii este:
✓ ◆
1 0 2 1 3
A=
0 1 3 1 2
Baza este:
B = {a1 , a2 }.
Pentru determinarea soluţiei iniţiale de bază X B , ı̂n sistemul de condiţii se
fac toate variabilele ne bazice, adică x3 , x4 , x5 , egale cu zero.
Rezultă X B = (3, 4, 0, 0, 0).
8 CAPITOLUL 1. ...
c1 = 1 c2 = 2 c3 = 1 c4 = 0 c5 = 0
B CB XB ✓
a1 a2 a3 a4 a5
3
a1 1 3 1 0 2 1 3 ✓1 = 2
4
a2 2 4 0 1 3 1 2 ✓2 = 3
j = zj cj 0 0 9 1 7
j = zj cj 0 3 0 2 1
c1 = 1 c2 = 2 c3 = 1 c4 = 0 c5 = 0
B CB XB ✓
a1 a2 a3 a4 a5
1 3 2 3
a4 0 5 5 5 0 1 1 ✓1 = 2
7 1 1
a3 1 5 5 5 1 0 1
6 11
j = zj cj 5 5 0 0 1
ştiind că 8
< 2x1 + x2 8
x1 + 2x2 7
:
x1 , x2 0.
Rezolvare.
Se aduce problema la forma standard adăugând ecarturile xe3 , xe4 0:
Baza este:
B = {a3 , a4 }.
Pentru determinarea soluţiei iniţiale de bază X B , ı̂n sistemul de condiţii se
fac toate variabilele ne bazice, adică x1 , x2 , egale cu zero.
Rezultă X B = (0, 0, 8, 7).
c1 = 5 c2 = 3 c3 = 0 c4 = 0
B CB XB ✓
a1 a2 a3 a4
8
a3 0 8 2 1 1 0 ✓1 = 2
7
a4 0 7 1 2 0 1 ✓2 = 1
j = cj zj 5 3 0 0
10 CAPITOLUL 1. ...
xB
i
✓i = , i = 1, 2; k = 1
aik
corespunzătoare coloanei a1 , adică: ✓1 = 82 , ✓2 = 71 şi se alege dintre ele
cea mai mică valoare: ✓1 . Aşadar vectorul a3 va părăsi baza. Pivotul este
elementul 2 din coloana lui a1 . În noul tabel, c-ul corespunzător vectorului
a3 din bază se va ı̂nlocui cu c-ul corespunzător vectorului a1 care intră ı̂n
bază, adică c1 = 5. Linia pivotului, ı̂n noul tabel, se va trece ı̂mpărţită la
pivot. Coloana pivotului, ı̂n noul tabel, se va completa cu zerouri. Restul
elementelor se calculează cu regula “dreptunghiului”.
Tabelul se continuă astfel:
c1 = 5 c2 = 3 c3 = 0 c4 = 0
B CB XB ✓
a1 a2 a3 a4
1 1 4
a1 5 4 1 2 2 0 ✓1 = 1
2
3 1 3
a4 0 3 0 2 2 1 ✓2 = 3
2
1 5
j = cj zj 0 2 2 0
xB
i
✓i = , i = 1, 2; k = 2
aik
4 3
corespunzătoare coloanei a2 , adică: ✓1 = 1 , ✓2 = 3 şi se alege dintre ele
2 2
4
cea mai mică valoare: ✓2 . Aşadar vectorul a va părăsi baza. Pivotul este
elementul 32 din coloana lui a2 . În noul tabel c-ul corespunzător vectorului
a4 din bază se va ı̂nlocui cu c-ul corespunzător vectorului a2 care intră ı̂n
bază, adică c2 = 3. Linia pivotului, ı̂n noul tabel, se va trece ı̂mpărţită la
pivot. Coloana pivotului, ı̂n noul tabel, se va completa cu zerouri. Restul
elementelor se calculează cu regula “dreptunghiului”.
Tabelul se continuă astfel:
c1 = 5 c2 = 3 c3 = 0 c4 = 0
B CB XB ✓
a1 a2 a3 a4
2 1
a1 5 3 1 0 3 3
1 2
a2 3 2 0 1 3 3
7 1
j = cj zj 0 0 3 3
1.2. PROBLEME REZOLVATE 11
j = cj zj 7 9 11 0 0 0
c1 = 7 c2 = 9 c3 = 11 c4 = 0 c5 = 0 c6 = 0
B CB XB ✓
a1 a2 a3 a4 a5 a6
2650
2650 8 4 9
a4 0 7 7 7 0 1 7 0 ✓1 = 7
8
7
250
250 3 5 1
a3 11 7 7 7 1 0 7 0 ✓2 = 7
3
7
27350 40 15 25
a6 0 7 7 7 0 0 7 1
16 8 11
j = cj zj 7 7 0 0 7 0
2650 250
2650 250
corespunzătoare coloanei a1 , adică: ✓1 = 7
8 = 8
, ✓2 = 7
3 = 3
şi se
7 7
3
alege dintre ele cea mai mică valoare: ✓2 . Aşadar vectorul a va părăsi baza.
Pivotul este elementul 37 din coloana lui a1 . În noul tabel c-ul corespunzător
vectorului a3 din bază se va ı̂nlocui cu c-ul corespunzător vectorului a1 care
intră ı̂n bază, adică c2 = 7. Linia pivotului, ı̂n noul tabel, se va trece
ı̂mpărţită la pivot. Coloana pivotului, ı̂n noul tabel, se va completa cu
zerouri. Restul elementelor se calculează cu regula “dreptunghiului”.
Tabelul se continuă astfel:
c1 = 7 c2 = 9 c3 = 11 c4 = 0 c5 = 0 c6 = 0
B CB XB ✓
a1 a2 a3 a4 a5 a6
2650
850 4 8 5
a4 0 3 0 3 3 1 3 0 ✓1 = 7
8
7
250
250 5 7 1
a1 7 3 1 3 3 0 3 0 ✓2 = 7
3
7
13150 35 40 5
a6 0 3 0 3 3 0 3 1
8 16 7
j = cj zj 0 3 3 0 3 0
ştiind că 8
< 2x1 + x2 + x3 3
x1 + 3x2 + 4x3 = 2
:
x1 , x2 , x3 0.
Rezolvare.
Se aduce problema la forma standard adăugând ecartul xe4 0:
Baza este:
B = {a5 , a6 }.
Pentru determinarea soluţiei iniţiale de bază X B , ı̂n sistemul de condiţii se
fac toate variabilele ne bazice, adică x1 , x2 , x3 , x4 , egale cu zero.
Rezultă X B = (0, 0, 0, 0, 3, 2).
c1 = 1 c2 = 3 c3 = 2 c4 = 0 c5 = M c6 = M
B CB XB ✓
a1 a2 a3 a4 a5 a6
3
a5 M 3 2 1 1 1 1 0 ✓5 = 1
2
a6 M 2 1 3 4 0 0 1 ✓6 = 4
j = cj zj 1+M 3 + 4M 2 + 5M M 0 0
1.2. PROBLEME REZOLVATE 15
xB
i
✓i = , i = 5, 6; k = 3
aik
corespunzătoare coloanei a3 , adică: ✓5 = 31 , ✓6 = 24 şi se alege dintre ele
cea mai mică valoare: ✓6 . Aşadar vectorul a6 va părăsi baza. Pivotul este
elementul 4 din coloana lui a3 . În noul tabel, c-ul corespunzător vectorului
a6 din bază se va ı̂nlocui cu c-ul corespunzător vectorului a3 care intră ı̂n
bază, adică c3 = 2. Linia pivotului, ı̂n noul tabel, se va trece ı̂mpărţită la
pivot. Coloana pivotului, ı̂n noul tabel, se va completa cu zerouri. Restul
elementelor se calculează cu regula “dreptunghiului”.
xB
i
✓i = , i = 1, 3; k = 2
aik
10 13
corespunzătoare coloanei a2 , adică: ✓1 = 9
1 , ✓3 = 18
7 şi se alege dintre ele
9 9
3
cea mai mică valoare: ✓3 . Aşadar vectorul a va părăsi baza. Pivotul este
16 CAPITOLUL 1. ...
c1 = 1 c2 = 3 c3 = 2 c4 = 0
B CB XB ✓
a1 a2 a3 a4
10
20 1 4
a1 1 18 1 9 0 9 ✓1 = 9
1
9
13
13 7 1
a3 2 18 0 9 1 9 ✓3 = 18
7
9
40 2
j = cj zj 0 9 0 9
elementul 79 din coloana lui a3 . În noul tabel c-ul corespunzător vectorului
a3 din bază se va ı̂nlocui cu c-ul corespunzător vectorului a2 care intră ı̂n
bază, adică c2 = 3. Linia pivotului, ı̂n noul tabel, se va trece ı̂mpărţită la
pivot. Coloana pivotului, ı̂n noul tabel, se va completa cu zerouri. Restul
elementelor se calculează cu regula “dreptunghiului”.
Tabelul se continuă astfel:
c1 = 1 c2 = 3 c3 = 2 c4 = 0
B CB XB ✓
a1 a2 a3 a4
10
127 1 3
a1 1 126 1 0 7 7 ✓1 = 9
1
9
13
13 9 1
a2 3 14 0 1 7 7 ✓3 = 18
7
9
40 6
j = cj zj 0 0 7 7
ştiind că 8
< x1 + 2x2 4
3x1 + 4x2 24
:
x1 , x2 0.
Rezolvare.
Se aduce problema la forma standard adăugând ecarturile xe3 , xe4 0:
0
şi observăm că ea nu admite bază unitară (lipseşte vectorul ).
1
Se rezolvă problema folosind metoda penalităţii. Asociem problema
Baza este:
B = {a3 , a5 }.
Pentru determinarea soluţiei iniţiale de bază X B , ı̂n sistemul de condiţii se
fac toate variabilele ne bazice, adică x1 , x2 , x4 , egale cu zero.
Rezultă X B = (0, 0, 4, 0, 24).
c1 = 2 c2 = 3 c3 = 0 c4 = 0 c5 = M
B CB XB ✓
a1 a2 a3 a4 a5
a3 0 4 1 2 1 0 0 ✓3 = 42
a5 M 24 3 4 0 1 1 ✓5 = 24
4
j = zj cj 3M + 2 4M 3 0 M 0
xB
i
✓i = , i = 3, 5; k = 2
aik
xB
i
✓i = , i = 2, 5; k = 1
aik
2 M
corespunzătoare coloanei a1 , adică: ✓2 = 1 , ✓5 = 1
şi se alege dintre ele
2
cea mai mică valoare: ✓2 . Aşadar vectorul a2 va părăsi baza. Pivotul este
elementul 12 din coloana lui a1 . În noul tabel c-ul corespunzător vectorului
a2 din bază se va ı̂nlocui cu c-ul corespunzător vectorului a1 care intră ı̂n
bază, adică c1 = 2. Linia pivotului, ı̂n noul tabel, se va trece ı̂mpărţită la
pivot. Coloana pivotului, ı̂n noul tabel, se va completa cu zerouri. Restul
elementelor se calculează cu regula “dreptunghiului”.
Tabelul se continuă astfel:
c1 = 2 c2 = 3 c3 = 0 c4 = 0 c5 = M
B CB XB ✓
a1 a2 a3 a4 a5
2
a1 2 4 1 2 1 0 0 ✓2 = 1
2
M
a5 M 12 0 2 3 1 1 ✓5 = 1
j = zj cj 0 2M 7 3M 2 M 0
min[Z = x1 + x2 x3 ]
ştiind că 8
< x1 + 2x2 x3 5
x1 + x2 + x3 3
:
x1 , x2 , x3 0.