Sunteți pe pagina 1din 1

Algoritmul simplex

Se
Pasul 0: se scrie matricea A si se identifica baza unitara (presupunand
ca exista).
n sistemul de restrictii X R = 0.
determina solutia initiala de baza X B , impunand
Deoarece n baza unitara aB
te tabelul:
ij = aij se ntocmes
B

CB

XB

c1
a1
ak1
1

c2
a2
ak2
2

....
...

cn
an
akn
n

Pasul 1: Pentru fiecare j JR = {m + 1, m + 2, ..., n} se calculeaza diferentele j :



zj cj
n cazul problemei de minim
j =
cj zj n cazul problemei de maxim ,
unde zj =

m
P

ci aij , m + 1 j n. Diferentele j cu 1 j m (cele corespunzatoare

i=1

vectorilor bazei) sunt egale cu zero.

1. Daca j 0, j JR , STOP; X B este conform criteriului de optim, solutia optima.


2. Daca exista indici j JR pentru care j > 0 se aplica criteriul de intrare n baza

alegandu-se
diferenta k = max j care indica vectorul ak ce intra n noua baza.
jJR

3. Daca toate componentele vectorului ak sunt mai mici sau egale cu zero, STOP,
problema are optim infinit.
Daca vectorul ak are si componente pozitive, pentru acestea se calculeaza rapoartele
xB
i
si se alege
aik
xB
xB
0 = min{ i } = l ;
aik
alk
vectorul al par
ases
te baza fiind nlocuit cu ak .
conform criteriului de iesire din baza,
Elementul de la intersectia liniei l cu coloana k se numeste
Se obtine o noua baza.
pivot.
Pasul 2: Se reface tabelul simplex:

a. se scrie noua baza;

b. se completeaza coloana c corespunzatoare;

ita la pivot;
cu coloana lui X B , linia l a pivotului se scrie mpart
c. ncepand
d. se completeaza vectorii unitari ai noii baze;
e. celelalte elemente ale tabelului se calculeaza conform formulelor de schimbare a
bazei cu regula dreptunghiului;
f. se calculeaza diferentele j si se reia Pasul 1 si 2.

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