Programowanie liniowe
F(x) = c1x1+c2x2 + ... + cnxn (MAX) - funkcja celu
a11x1 + a12x2 + .... + a1nxn ≤ b1,
a21x1 + a22x2 + .... + a2nxn ≤ b2,
...............................................
am1x1 + am2x2 + ....+ amnxn ≤ bm,
x1 , x2 , … , xn ≥ 0
F(x) = cTx (max)
Ograniczenia: Ax ≤ b, x ≥ 0
a11x1 + a12x2 + .... + a1nxn +z1 = b1,
a21x1 + a22x2 + .... + a2nxn + z2 = b2,
...............................................
am1x1 + am2x2 + ....+ amnxn + zm = bm,
x1 , x2 , … , xn ≥ 0
z1 , z2 , … , zm ≥ 0
I =(na przekątnej 1 a zera pozostałe elementy)
o wymiarze m x m
[A|I]
= b
Rozwiązania bazowe to rozwiązania, w których zmienne swobodne są przyjęte jako 0.
Tych rozwiązań jest maksymalnie
(n+m)!/[(r!(m+n-r)!],
gdzie r = rząd [A|I]=m.
Wśród rozwiązań bazowych wybieramy dopuszczalne (≥ 0),
i dla nich analizujemy wartość funkcji celu aby znaleźć rozwiązanie zapewniające jej wartość maksymalną
Jedno z nich zapewnia optymalną wartość funkcji celu.
Może się zdarzyć, że więcej niż jedno rozwiązanie zapewnia optymalną wartość funkcji celu.
Na przykład n=3, m=2, r=2, liczba rozw.=10.
x1+2x3+3z1-z2 = 10
x2 +3x3+z1+2z2 =5
(10,5,0,0,0)
(0,25,0,0,-10) -niedopuszczalne
ROZWIĄZANIE UKŁADU RÓWNAŃ
METODĄ NAJMNIEJSZYCH KWADRATÓW
Ax = b
Ax - b = 0
Ax - b = MIN ?
|| Ax - b|| = MI N
Minimalizacja długości wektora
ATAx = ATb
ATA=B, c=ATb
Bx = c