You are on page 1of 33

Programowanie liniowe

Sformuowanie zadania programowania liniowego


Niech dana bdzie funkcja liniowa n zmiennych (zwana
funkcj celu):
z(x
1
, . . . , x
n
) = c
1
x
1
+ c
2
x
2
+ ... + c
n
x
n
(1)
Okreli minimum (lub maksimum) tej funkcji pod wa-
runkiem, e nieujemne zmienne x
1
, . . . , x
n
, (zwane zmien-
nymi decyzyjnymi) speniaj ukad ogranicze liniowych,
danych za pomoc rwna lub nierwnoci liniowych.
Wprowadzajc, (w razie potrzeby), nieujemne zmien-
ne pomocnicze mona ukad ogranicze liniowych zapisa
w postaci kanonicznej:
x
j
0, j = 1, 2, ..., n (2)
_

_
a
11
x
1
+a
12
x
2
+ +a
1n
x
n
= b
1
a
21
x
1
+a
22
x
2
+ +a
2n
x
n
= b
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
x
1
+a
m2
x
2
+ +a
mn
x
n
= b
m
(3)
W przypadku, gdy ukad ogranicze jest sprzeczny lub
ma tylko jedno rozwizanie zadanie programowania linio-
wego trywializuje si. W dalszej czci bdziemy zakada,
e ukad (3) ma nieskoczenie wiele rozwiza. Moemy
wwczas zakada, e m < n oraz rzd macierzy gwnej
oraz rozszerzonej ukadu (3) rwne s m, co oznacza e
ukad (3) ma nieskoczenie wiele rozwiza zalenych od
n m parametrw.
Wasnoci rozwizania zadania PL
Rozwizaniem dopuszczalnym zagadnienia PL nazywa-
my kady wektor x = [x
1
, ..., x
n
]
T
speniajcy ukad
ogranicze (tzn. warunki (2) i (3)).
Rozwizaniem bazowym dopuszczalnym nazywamy roz-
wizanie bazowe nieujemne ukadu ogranicze.
Rozwizaniem optymalnym nazywamy rozwizanie do-
puszczalne, ktre minimalizuje (lub maksymalizuje) funk-
cj celu.
Twierdzenie. 1 Jeli zagadnienie programowania li-
niowego, ma rozwizanie optymalne to jest ono osiaga-
ne dla co najmniej jednego rozwizania bazowego do-
puszczalnego.
Zbir rozwiza ukadu ogranicze jest pewnym wielo-
cianem wypukym w E
n
. Rozwizania bazowe dopusz-
czalne odpowiadaj wierzchokom wielocianu. Jeli funk-
cja celu przyjmuje warto optymaln w wicej ni jednym
punkcie wierzchokowym, to t sam warto przyjmuje
dla kadej kombinacji wypukej tych punktw.
Wniosek. 1 Aby znale rozwizanie optymalne zada-
nia PL wystarczy wyznaczy wszystkie rozwizania ba-
zowe dopuszczalne, obliczy warto funkcji celu i wy-
bra warto optymaln (najmniejsz lub najwiksz).
Interpretacja graczna zadania programowa-
nia liniowego
Niech
z(x
1
, x
2
) = c
1
x
1
+ c
2
x
2
bdzie funkcj celu. Wykresem jest pewna paszczyzna.
Rozwamy poziomic z
1
(z
0
) tzn. zbir tych argumen-
tw, dla ktrych funkcja celu przyjmuje ustalon warto
z
0
. Jest ona prost o rwnaniu:
c
1
x
1
+ c
2
x
2
= z
0
(4)
zwan izokwant. Zauwamy, izokwanty tworz rodzin
prostych rwnolegych, przy czym wektor c = [c
1
, c
2
]
T
jest wektorem prostopadym do kadej izokwanty. Ponad-
to przesuwajc izokwant rwnolegle w kierunku wekto-
ra c (c) otrzymujemy izokwant o wikszej (mniejszej)
wartoci funkcji celu.
Aby znale rozwizanie optymalne znajdujemy izokwan-
t przechodzc przez pewien wierzchoek zbioru rozwi-
za dopuszczalnych i przesuwamy j rwnolegle w kierun-
ku wzrostu (spadku) wartoci funkcji celu.
Jesli istnieje punkt optymalny, (np. jeli zbir rozwi-
za dopuszczalnych jest ograniczony), to mona doj do
takiego jej pooenia, e ma ona ze zbiorem rozwiza do-
puszczalnych przynajmniej jeden punkt wsplny, nie prze-
chodzi przez jego wntrze oraz dalsze przesuwanie w kie-
runku wzrostu (spadku w przypadku minimalizacji)prowadzi
do urozcznienia ze zbiorem rozwiza dopuszczalnych.
Zbir punktw wsplnych jest wwczas zbiorem rozwiza
optymalnych.
Koncepcja metody sympleks
Zamy, e zbir rozwiza dopuszczalnych jest ograni-
czony.
Wtedy jest on wielocianem wypukym, ktrego wierz-
choki odpowiadj rozwizaniom bazowym dopuszczalnym.
Wierzchoki nazywamy ssiednimi jeli odpowiadaj ba-
zom rnicym si tylko jednym wektorem bazowym.
Istot metody sympleks jest spostrzeenie e jeli dane
rozwizanie bazowe dopuszczalne nie jest optymalne,
to istnieje wierzchoek ssiedni o lepszej (wikszej -
w przypadku maksymalizacji i odpowiednio mniejszej -
w przypadku minimalizacji) wartoci funkcji celu.
Oznacza to, e moemy znale rozwizanie optymal-
ne przechodzc od wybranego wierzchoka do kolejnych
wierzchokw ssiednich o lepszej wartoci funkcji celu.
Dziki temu postpowanie moe si zakoczy po zbada-
niu stosunkowo niewielkiej liczby rozwiza bazowych do-
puszczalnych.
Wprowadzimy nastpujce oznaczenia. Wybierzmy z ma-
cierzy A nieosobliw podmacierz A
B
o wymiarze mm
zwan macierz bazow. Niech x
B
oznacza odpowiada-
jcy jej wektor zmiennych bazowych. Niech x
N
oznacza
wektor zmiennych niebazowych, za za A
N
o wymiarze
m(n m) bdzie podmacierz A, ktrej kolumny od-
powiadaj zmiennym niebazowym (tzw. macierz nieba-
zow).
Wektor zmiennych zapiszemy umownie, (niezalenie od
waciwej kolejnoci zmiennych), jako x = [x
N
x
B
], a ma-
cierz A przyjmuje posta A = [A
N
A
B
].
Wwczas rwnanie Ax = b mona zapisa
A
N
x
N
+ A
B
x
B
= b (5)
Std
x
B
= (A
B
)
1
(b A
N
x
N
) =
=

b (A
B
)
1
A
N
x
N
=

b

A
N
x
N
gdzie

b = (A
B
)
1
b oraz

A
N
= (A
B
)
1
A
N
.
Jak ju wspomniano zmienne niebazowe w danym wierz-
choku przyjmuj wartoci zerowe. Zatem punkt wierz-
chokowy odpowiadajcy wybranej bazie ma nastpujce
wartoci wspczynnikw
x
k
=
_

_
x
N
x
B
_

_
k
=
_

_
0

b
_

_
k
Zapisujemy warto funkcji celu za pomoc zmiennych
niebazowych:
f(x) = c
T
x = c
T
B
x
B
+ c
T
N
x
N
=
= c
T
B
_
_
b

A
N
x
N
_
_
+ c
T
N
x
N
=
= c
T
B

b c
T
B

A
N
x
N
+ c
T
N
x
N
=
=

f +
_
_
c
T
N
c
T
B

A
N
_
_
x
N
=

f +c
T
N
x
N
(6)
Mamy wic
f(x) =

f +c
T
N
x
N
gdzie
c
N
= c
T
N
c
T
B

A
N
= c
T
N
c
T
B
(A
B
)
1
A
N
nazywany jest tzw. wektorem wspczynnikw optymal-
noci w bazowym rozwizaniu dopuszczalnym,
natomiast

f = c
T
B

b
oznacza warto funkcji celu w bazowym rozwizaniu do-
puszczalnym.
Funkcj celu wyraon za pomoc zmiennych niebazo-
wych
f(x
N
) =

f +c
T
N
x
N
nazywamy funkcj zredukowan.
Posta bazowa kanoniczna
Jeli macierz wspczynnikw przy zmiennych bazowych
A
B
jest macierz jednostkow
A
B
= I,
to mwimy, e ukad jest w postaci kanonicznej odpowia-
dajcej bazie x
B
.
Wwczas wartoci zmiennych bazowych w wierzchoku
odpowiadajcym tej bazie moemy odczyta w kolumnie
wyrazw wolnych,
wspczynniki optymalnoci wyraaj si wzorem:
c
N
= c
N
c
T
B
A
N
,
a warto funkcji w bazowym rozwizaniu dopuszczalnym
jest rwna

f = c
T
B
b
Przykad. 1 Znajd maximum funkcji celu
z = 3x
1
+ x
2
+ 2x
3
przy ograniczeniach
_

_
x
1
+ 2x
2
+ x
3
4
2x
1
+ x
2
+ x
3
3
x
1
x
2
+ 4x
3
2
(7)
x
i
0, i = 1, ..., n (8)
Wprowadzajc zmienne osabiajce x
4
, x
5
, x
6
zapisuje-
my zadanie programowania liniowego w postaci kanonicz-
nej:
z = 3x
1
+ x
2
+ 2x
3
+ 0 x
4
+ 0 x
5
+ 0 x
6
(9)
_

_
x
1
+ 2x
2
+ x
3
+ x
4
= 4
2x
1
+ x
2
+ x
3
+ x
5
= 3
x
1
x
2
+ 4x
3
+ x
6
= 2
(10)
x
i
0, i = 1, ..., 6 (11)
Ukad ogranicze moemy zapisa w postaci
Ax = b x 0
gdzie
A =
_

_
1 2 1 1 0 0
2 1 1 0 1 0
1 1 4 0 0 1
_

_
, x =
_

_
x
1
x
2
x
3
x
4
x
5
x
6
_

_
, b =
_

_
4
3
2
_

_
.
Moemy przyj x
4
, x
5
, x
6
za zmienne bazowe, tzn. x
B
=
_
x
4
x
5
x
6
_
T
, x
N
=
_
x
1
x
2
x
3
_
T
.
Odpowiadajce tej bazie rozwizanie bazowe otrzymamy
przyjmujc x
1
= x
2
= x
3
= 0
Ukad jest w postaci kanonicznej odpowiadajcej tej ba-
zie wic wartoci zmiennych bazowych w tym wierzchoku
odczytamy z kolumny wyrazw wolnych: x
4
= 4, x
5
= 3,
x
6
= 2. Jest to rozwizanie bazowe nieujemne, a za-
tem jest rozwizaniem bazowym dopuszczalnym. Mamy,
w tym punkcie wierzchokowym, z(0, 0, 0, 4, 3, 2) = 0.
Zapisujemy zmienne bazowe za pomoc zmiennych nie-
bazowych:
_

_
x
4
= 4 x
1
2x
2
x
3
x
5
= 3 2x
1
x
2
x
3
x
6
= 2 x
1
+ x
2
4x
3
(12)
Zapisujemy zredukowan funkcj celu (t.j. funkcj celu
jako funkcj zmiennych niebazowych):
z(x
1
, x
2
, x
3
) = 3x
1
+ x
2
+ 2x
3
Wymaga si aby zmienne x
1
, x
2
, x
3
byu nieujemne. Po-
niewa wspczynniki przy tych zmiennych s dodatnie,
to zwikszanie ktrejkolwiek z tych zmiennych powoduje
wzrost wartoci funkcji celu. Najwikszy wpyw na war-
to funkcji celu ma ta zmienna przy ktrej wspczynnik
jest najwikszy. W naszym przypadku tak zmienn jest
zmienna x
1
przy ktrej wspczynnik jest rwny 3. Zatem
zmienn t wprowadzimy do bazy jako pierwsz.
Wprowadzenie nowej zmiennej do bazy wymaga wy-
czenia z bazy innej zmiennej. Okrelmy t zmienn tak,
aby nie naruszy dania nieujemnoci zmiennych w no-
wym punkcie wierzchokowym. Z warunku nieujemnoci
zmiennych x
4
, x
5
, x
6
przy zaoeniu, e x
2
= x
3
= 0
otrzymujemy
() x
4
0 x
4
= 4 x
1
0, x
1
4
() x
5
0 x
5
= 3 2x
1
0, x
1

3
2
( ) x
6
0 x
6
= 2 x
1
0, x
1
2
Jeli x
1

3
2
to spenione s wszystkie warunki (*), (**)
i (***). Po wyprowadzeniu zmiennej x
5
z bazy i zast-
pieniu jej zmienn x
1
, kolejne rozwizanie bazowe bdzie
nieujemne, (przyjmujc bowiem nowe zmienne niebazowe
za rwne zero, x
2
= x
3
= x
5
= 0, otrzymamy x
1
=
3
2
,
co oznacza spenienie warunkw x
4
, x
5
, x
6
0), a zatem
bdzie rozwizaniem bazowym dopuszczalnym.
Krok drugi
Zmienne bazowe: x
B
=
_
x
4
x
1
x
6
_
T
,
Zmienne niebazowe x
N
=
_
x
5
x
2
x
3
_
T
Zapisujemy zmienne bazowe za pomoc zmiennych nie-
bazowych. W tym celu z drugiego rwnania (12) wyzna-
czamy x
1
:
x
1
=
3
2

x
2
2

x
3
2

x
5
2
i podstawiamy do pozostaych rwna (12),
x
4
= 4
_
_
_
_
_
3
2

x
2
2

x
3
2

x
5
2
_
_
_
_
_
2x
2
x
3
x
6
= 2
_
_
_
_
_
3
2

x
2
2

x
3
2

x
5
2
_
_
_
_
_
+ x
2
4x
3
Skd:
_

_
x
4
=
5
2

3x
2
2

x
3
2
+
x
5
2
x
1
=
3
2

x
2
2

x
3
2

x
5
2
x
6
=
1
2
+
3x
2
2

7x
3
2
+
x
5
2
(13)
Wyznaczamy zredukowan funkcj celu:
z = 3
_
_
_
_
_
3
2

x
2
2

x
3
2

x
5
2
_
_
_
_
_
+x
2
+2x
3
+0 x
4
+0 x
5
+0x
6
Czyli:
z(x
2
, x
3
, x
5
) =
9
2

x
2
2
+
x
3
2

3x
5
2
(14)
Poniewa max
_
_

1
2
,
1
2
,
3
2
_
_
=
1
2
zatem zmienna x
3
wcho-
dzi do bazy.
Posta kanoniczna ukadu ogranicze odpowiadajca ba-
zie x
B
=
_
x
4
x
1
x
6
_
:
_

_
3x
2
2
+
x
3
2

x
5
2
+ x
4
=
5
2
x
2
2
+
x
3
2
+
x
5
2
+ x
1
=
3
2

3x
2
2
+
7x
3
2

x
5
2
+ x
6
=
1
2
Kryterium wyjcia z bazy: min
_
_
b
k
a
k3
_
_
= min
_
_
_
_
_
_
_
5
2
1
2
,
3
2
1
2
,
1
2
7
2
_
_
_
_
_
_
_
=
min
_
_
5, 3,
1
7
_
_
=
1
7
zatem zmienna x
6
opuszcza baz.
Krok 3
Zmienne niebazowe:x
N
=
_
x
5
x
2
x
6
_
T
,
zmienne bazowe x
B
=
_
x
4
x
1
x
3
_
T
Zapisujemy zmienne bazowe za pomoc zmiennych nie-
bazowych. W tym celu z trzeciego rwnania (13) wyzna-
czamy x
3
x
3
=
1
7
+
3x
2
7
+
x
5
7

2
7
x
6
i podstawiamy do pozostaych rwna (13)
x
4
=
5
2

3x
2
2

1
2
_
_
1
7
+
3x
2
7
+
x
5
7

2
7
x
6
_
_
+
x
5
2
=
=
17
7

12x
2
7
+
3x
5
7
+
1x
6
7
x
1
=
3
2

x
2
2

1
2
_
_
1
7
+
3x
2
7
+
x
5
7

2
7
x
6
_
_

x
5
2
=
=
10
7

5
7
x
2

4
7
x
5
+
1
7
x
6
_

_
x
4
=
17
7

12
7
x
2
+
3
7
x
5
+
1
7
x
6
x
1
=
10
7

5
7
x
2

4
7
x
5
+
1
7
x
6
x
3
=
1
7
+
3
7
x
2
+
1
7
x
5

2
7
x
6
(15)
Wyznaczamy zredukowan funkcj celu:
z =
9
2

1
2
x
2
+
1
2
x
3

3
2
x
5
=
=
9
2

x
2
2
+
1
2
_
_
_
_
_
1
7
+
3x
2
7
+
x
5
7

2x
6
7
_
_
_
_
_

3x
5
2
czyli:
z(x
5
, x
2
, x
6
) =
32
7

10x
5
7

2x
2
7

x
6
7
Poniewa wspczynniki zredukowanej funkcji celu s
ujemne rozwizanie bazowe dopuszczalne odpowiadajce
tej bazie jest optymalne. Przyjmujc w ukadzie (15) war-
toci zmiennych niebazowych (parametrw) rwne zeru
otrzymujemy
_
x
4
x
1
x
3
_
T
=
_
17
7
10
7
1
7
_
T
. Zatem
z
max
= z(
10
7
, 0,
1
7
,
17
7
, 0, 0) =
32
7
Kryterium optymalnoci Jeli wszystkie wspczyn-
niki w zredukowanej funkcji celu (wskaniki optymalnoci)
s wiksze lub rwne zeru (mniejsze lub rwne zeru), to
rozwizanie bazowe dopuszczalne odpowiadajce tej bazie
jest rozwizaniem minimalnym (maksymalnym).
Kryterium wejcia do bazy Do bazy wchodzi ta
zmienna niebazowa, ktra ma najmniejsz - w przypad-
ku minimalizacji i odpowiednio najwiksz - w przypadku
maksymalizacji warto wskanika optymalnoci.
Kryterium wyjcia z bazy Zapisujemy ukad ogra-
nicze w postaci kanonicznej. Obliczamy ilorazy wyrazw
wolnych przez elementy kolumny zmiennej wchodzcej do
bazy. Baz opuszcza ta zmienna, dla ktrej obliczony ilo-
raz jest najmniejszy. Jeeli najmniejsza warto ilorazu
wystpuje dla wicej ni jednej zmiennej, to jako zmienn
opuszczajc baz mona wybra dowoln tak zmienn.
Bierzemy pod uwag tylko dodatnie ilorazy (jeli wszystkie
s ujemne, to zbir rozwiza dopuszczalnych jest nieogra-
niczony, a funkcja nie przyjmuje wartoci optymalnej).
1. Wybieramy pierwsz baz odpowiadajc pewnemu roz-
wizaniu bazowemu dopuszczalnemu.
2. Sprawdzamy, czy rozwizanie bazowe dopuszczalne jest
rozwizaniem optymalnym: zapisujemy ukad ograni-
cze w postaci kanonicznej wyznaczamy wektor wska-
nikw optymalnoci i wykorzystujemy kryterium opty-
malnoci.
3. Jeli rozwizanie bazowe dopuszczalne nie jest optymal-
ne to zgodnie z kryterium wejcia do bazy wybieramy
zmienn majc wej do nowej bazy, a na podstawie
kryterium wyjcia z bazy okrelamy zmienn opuszcza-
jc baz : wyznaczamy w tym celu wartoci nieujem-
nych ilorazw wyrazw wolnych przez elementy kolum-
ny zmiennej niebazowej wchodzcej do bazy.
4. Postpowanie kontynuujemy dopki istniej ujemne -
w przypadku minimalizacji i odpowiednio dodatnie -
w przypadku maksymalizacji wartoci wspczynnikw opty-
malnoci.
Tablicowa posta metody sympleks
Budujemy tablic sympleks. W pierwszym wierszu wpi-
sujemy wspczynniki przy wszystkich szeciu zmiennych
wystpujcych w funkcji celu:
W drugiej kolumnie wpisujemy wspczynniki przy zmien-
nych bazowych wystpujcych w funkcji celu:
6 5 4 3 2 1
0 0 0 2 3 x x x x x x z + + + + + =



3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0
x
5
0
x
6
0
z
c-z

W kolumnach od trzeciej do smej wpisujemy wsp-
czynniki przy zmiennych w kolejnych ograniczeniach. W
kolumnie dziewitej oznaczonej jako b wpisujemy wsp-
rzdne wektora wyrazw wolnych.
4 0 0 1 1 2
6 5 4 3 2
= + + + + + x x x x x x
1




3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
5
0
x
6
0
z
c-z

3 0 1 0 1 1 2
6 5 4 3 2
= + + + + + x x x x x x
1




3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
5
0 2 1 1 0 1 0 3
x
6
0
z
c-z

2 1 0 0 4 1 1
6 5 4 3 2
= + + + + x x x x x x
1




3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
5
0 2 1 1 0 1 0 3
x
6
0 1 -1 4 0 0 1 2
z
c-z

W trzeciej kolumnie szstego wiersza wpisujemy sum
iloczynw wspczynnikw przy zmiennych bazowych po-
mnoonych przez wspczynniki przy zmiennej x
1
. W czwar-
tej kolumnie szstego wiersza wpisujemy sum iloczynw wsp-
czynnikw przy zmiennych bazowych pomnoonych przez wsp-
czynniki przy zmiennej x
2
. Analogiczne obliczenia wyko-
nujemy dla wszystkich zmiennych niebazowych.



3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
5
0 2 1 1 0 1 0 3
x
6
0 1 -1 4 0 0 1 2
z 0
.
1+
0
.
2+
0
.
1=0

c-z



3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
5
0 2 1 1 0 1 0 3
x
6
0 1 -1 4 0 0 1 2
z 0
.
1+
0
.
2+
0
.
1=0
0
.
2+
0
.
1+
0
.
(-1)
=0
0
.
1+
0
.
1+
0
.
0
=0

c-z

W ostatnim wierszu obliczamy rnic c z odejmujc
obliczone w poprzednim kroku iloczyny od wspczynni-
kw przy zmiennych niebazowych w funkcji celu:


3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
5
0 2 1 1 0 1 0 3
x
6
0 1 -1 4 0 0 1 2
z 0 0 0
c-z 3-0=3 1-0=1 2-0=2

Kryterium optymalnoci mwi nam, e funkcja celu osi-
ga maksimum w punkcie x gdy wszystkie wyrazy c z
s mniejsze lub rwne zero. Zatem nie jest to rozwizanie
optymalne.
Naley przej do nastpnego wierzchoka (bazy). Dla
zadania maksymalizacji danej funkcji z kryterium wejcia
mwi, e ta zmienna niebazow wchodzi do bazy dla ktrej
rnica cz jest najwiksza. Poniewa max (3, 1, 2,) = 3,
to w naszym przypadku zmienn wchodzc do bazy jest
zmienna x
1
. Oznaczmy jako q kolumn, w ktrej wyst-
puje ta zmienna (zaznaczona na niebiesko).
Nastpnie naley okreli, ktra zmienna wyjdzie z bazy.
Dla dowolnego zadania zarwno maksymalizacji jak i mi-
nimalizacji danej funkcji z kryterium wyjcia z bazy mwi,
e ta zmienna wychodzi z bazy dla ktrej (dodatni) iloraz
b
i
/a
iq
jest najmniejszy. Wspczynniki a
iq
s wspczyn-
nikami przy zmiennej wchodzcej do bazy w poszczegl-
nych ograniczeniach.


3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b b
i
/a
i3

x
4
0 1 2 1 1 0 0 4 4/1=4
x
5
0 2 1 1 0 1 0 3 3/2=1.5
x
6
0 1 -1 4 0 0 1 2 2/1=2
z 0 0 0
c-z 3-0=3 1-0=1 0-0=2

min
_
_
_
_
_
_
b
i
a
iq
_
_
_
_
_
_
= min
_
_
_
_
_
b
1
a
11
,
b
2
a
21
,
b
3
a
31
_
_
_
_
_
= min
_
_
_
_
_
4
1
,
3
2
,
2
1
_
_
_
_
_
=
3
2
Zatem zmienn opuszczajc baz jest zmienna x
5
(za-
znaczona granatowo).
Krok 2. Nowymi zmienne bazowe s x
B
= [x
4
, x
1
, x
6
]
T
,
niebazowe: x
N
= [x
2
, x
3
, x
5
]
T
.
Naley teraz sprowadzi ukad ogranicze do postaci ka-
nonicznej dla nowej bazy.
Sprowadzanie do postaci kanonicznej odpo-
wiadajcej danej bazie z wykorzystaniem ma-
cierzy odwrotnej do macierzy bazowej


3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b
x
4
0 1 2 1 1 0 0 4
x
1
3 2 1 1 0 1 0 3
x
6
0 1 -1 4 0 0 1 2
z
c-z

=
1 1 0
0 2 0
0 1 1
B
A

=
0 4 1
1 1 1
0 1 2
N
A

=
2
3
4
b
Wyznaczamy macierz odwrotn do macierzy bazowej
A
B
: gdzie x
B
= [x
4
, x
1
, x
6
]
T
,
A
1
B
=
_

_
1 0.5 0
0 0.5 0
0 0.5 1
_

_
Sprowadzanie do postaci bazowej metod pi-
vot
Pivot jest to ten wyraz ktry znajduje si na przeciciu
kolumny odpowiadajcej zmiennej wprowadzanej do bazy
i wiersza odpowiadajcego zmiennej wychodzcej z bazy.
Wiersz w ktrym znajduje si element pivot bdziemy na-
zywali p-tym wierszem pivot, za kolumn - q-t kolumn
pivot.


3 1 2 0 0 0
c
T
B
x x
1
x
2
x
3
x
4
x
5
x
6
b b
i
/a
i1

x
4
0 1 2 1 1 0 0 4 4/1=4
x
5
0 2 1 1 0 1 0 3 3/2=1.5
x
6
0 1 -1 4 0 0 1 2 2/1=2
z 0 0 0
c-z 3-0=3 1-0=1 0-0=2


q kolumna pivot a
pq
element pivot p wiersz
pivot
Zmiennej opuszaczajcej baz odpowiada w ukadzie ogra-
nicze kolumna macierzy jednostkowej majca 1 na p-tej
pozycji Metoda pivot polega na tym, aby stosujc prze-
ksztacenia elementarne na wierszach macierzy rozszerzo-
nej przeksztaci kolumn pivot w kolumn macierzy jed-
nostkowej, majc 1 na p-tej pozycji.
Sprowadzanie ukadu do postaci kanonicznej przy uy-
ciu elementu pivot odbywa si w dwch etapach. Naj-
pierw dzielimy wiersz pivot przez element pivot (aby uzy-
ska 1 na pozycji pivot), a nastpnie, (dla i = 1, . . . m,
i = p), wiersz pivot mnoymy przez (a
iq
) i dodajemy
do wiersza i, aby uzyska 0 w kolumnie pivot oraz i-tym
wierszu.
a

pj
=
a
pj
a
pq
b

p
=
b
p
a
pq
dla j = 1, ..., n (16)
a

ij
= a
ij

a
pj
a
pq
a
iq
b

i
= b
i

b
p
a
pq
a
iq
dla i = 1, ...m, i = p, j = 1, ..., n
(17)
W naszym przypadki element pivot ley na przeciciu
2 wiersza, ktry oznaczamy jako p = 2 i pierwszej ko-
lumny q = 1. Zatem elementem pivot jest wspczynnik
a
pq
= a
21
= 2. Ponadto a
11
= a
31
= 1 Naley zatem
podzieli drugi wiersz przez 2, a nastpnie pomnozy ele-
menty drugiego wiersza przez 1 i doda do odpowiednich
elementw pierwszego i trzeciego wiersza:

_
1 2 1 1 0 0 4
2 1 1 0 1 0 3
1 1 4 0 0 1 2
_

_
:2
_

_
1 2 1 1 0 0 4
1
1
2
1
2
0
1
2
0
3
2
1 1 4 0 0 1 2
_

_
6
(1)
?
(1)

_
0
3
2
1
2
1
1
2
0
5
2
1
1
2
1
2
0
1
2
0
3
2
0
3
2
7
2
0
1
2
1
1
2
_

_
Otrzymane wielkoci s takie same jak uprzednio
Na podstawie kryterium wejcia max(0.5, 0.5, 1.5) =
0.5 zmienn wchodzc do bazy jest zmienna x
3
. Na pod-
stawie kryterium wyjcia min
_
_
_
b
i
a
iq
_
_
_
= min
_
_
5, 3,
1
7
_
_
=
1
7
zmienn wychodzc z bazy jest zmienna x
6
.
Wszystkie wskaniki optymalnoci
_
_

2
7
;
10
7
;
1
7
_
_
dla zmien-
nych niebazowych sa mniejsze od zera. Na podstawie kry-
terium optymalnoci stwierdzamy, e rozwizanie bazo-
we dopuszczalne odpowiadajce tej bazie jest optymalne.
Ostatecznie:
z
max
= z(10/7, 0, 1/7, 17/7, 0, 0) = 3
10
7
+ 2
1
7
=
32
7

You might also like