You are on page 1of 8

Teoria

Matematyczny model decyzyjny to sformalizowane ujcie sytuacji decyzyjnej. Decyzje te podejmowane


s gwnie przez ekonomistw, ktrzy w dziaalnoci gospodarczej kieruj si zasad racjonalnego
gospodarowania tj. podejmuj takie decyzje, by przy posiadanych, ograniczonych zasobach osign
maksymaln realizacj postawionego celu.
Decyzja uwzgldniajca warunki ograniczajce (ograniczono zasobw) to decyzja dopuszczalna. Decyzji
dopuszczalnych jest wiele, ale jednostka podejmujca decyzj stawia przed sob cel, ktry chce osign w
sposb moliwie najlepszy. Decyzja dopuszczalna realizujca ten cel to decyzja optymalna.
Problem wyboru optymalnej decyzji za pomoc modelu matematycznego polega na wyznaczeniu takiego
punktu X1, X2, ... Xn ze zbioru decyzji dopuszczalnych D, w ktrym funkcja celu przyjmuje warto
ekstremaln ( miniumum w przypadku minimalizacji kosztw lub maksimum w przypadku maksymalizacji
zysku).
Jeli wszystkie warunki ograniczajce dan decyzj oraz kryterium opacalnoci przyjmuj posta liniow,
to moemy wwczas mwi o problemach programowania liniowego.Oglnie rzecz biorc zadanie
programowania liniowego polega na tym, eby ze zbioru rozwiza ukadu m rwna (m - warunkw
ograniczajcych),

wyznaczy takie rozwizanie, przy ktrym funkcja celu:

osignie warto ekstremaln.


Istniej dwie metody rozwizywania programw liniowych: metoda graficzna (geometryczna) oraz metoda
Simplex. Jednake rozwizywanie ukadw programowania linowego w praktycznych problemach
skadajcych si z wikszej liczby zmiennych decyzyjnych i iloci ogranicze rzdu kilkudziesiciu metod
graficzn staje si bardzo utrudnione. Rozwiza programu liniowego naley bowiem poszukiwa wrd
wierzchokw wielocianu okrelonego przez ograniczenia i warunki brzegowe.
Istota metody Simplex polega na badaniu rozwiza bazowych programu kanonicznego w taki sposb, e
znajdujemy wyjciowe rozwizanie bazowe programu liniowego. Majc rozwizanie bazowe sprawdzamy
czy jest ono optymalne czy nie. Jeli dane rozwizanie bazowe nie jest optymalne budujemy nastpne
rozwizanie bazowe lepsze lub przynajmniej nie gorsze od poprzedniego, z ktrym to rozwizaniem
postpujemy tak samo jak z rozwizaniem wyjciowym bazowych. A do momentu znalezienia rozwizania
optymalnego.
Problemy decyzyjne, dla ktrych mona zbudowa model programowania liniowego najczciej dotycz
nastpujcych przejaww dziaalnoci gospodarczej:
a) wybr asortymentu produkcji w zakadzie produkcyjnym - polega to na okreleniu, ktre wyroby i w
jakich ilociach powinno przedsibiorstwo produkowa, aby nie przekraczajc dostpnych zasobw
produkcji oraz speniajc ewentualnie pewne dodatkowe ograniczenia, zmaksymalizowa zysk ze sprzeday
b) problem diety (mieszanek) - podejmujcy decyzje pragnie okreli jakie iloci produktw

ywnociowych naley zakupi, aby przy racjonalnym zaspkojeniu potrzeb organizmw obniy do
minimum koszty wyywienia
c) wybr procesw technologicznych - np. cicie belek w tartaku tak, by zminimalizowa czny odpad
surowcw

Zadanie nr 1
Przedsibiorstwo produkcyjne wytwarza dwa wyroby: x1 i x2. Do ich produkcji wykorzystywane s dwie
maszyny: m1 i m2. Liczba godzin pracy maszyny m1 potrzebnych do wytworzenia jednej jednostki wyrobu
x1 wynosi 2 godziny, za wyrobu x2 1 godzin, za maszyny m2 odpowiednio 2 i 2 godziny. Przy czym ze
wzgldw technologicznych maszyna m1 moe pracowa maksymalnie przez 12 godzin dziennie, za
maszyna m220 godzin. Naley ustali plan produkcji zapewniajcy maksymalny czny przychd z ich
sprzeday wiedzc, i, cena wyrobu x1 wynosi 50 z, za wyrobu x2 75z. W powyszym zagadnieniu naley
uwzgldni rwnie fakt, e wielko produkcji x1 musi by, co najmniej 2,5 razy wiksza ni wielko
produkcji x2.
Posta standardowa ukadu
Funkcja celu:
max z(x) = 50 x1 + 75 x2
Warunki ograniczajce:
2 x1 + x2 <= 12
2 x1 + 2 x2 <= 20
x1 - 2,5 x2 >= 0
Warunki nieujemnoci:
x1 >= 0
x2 >= 0
Posta kanoniczna ukadu
By sprowadzi ukad do postaci kanonicznej naley zlikwidowa wszelkie nierwnoci w warunkach
ograniczajcych, jeli takowe wystpuj. Jeli warunek wystpuje w postaci mniejszociowej dodajemy
zmienn swobodn (x3, x4), jeli w postaci wikszociowej odejmujemy zmienn swobodn (x5). Dodane w
ten sposb zmienne swobodne nie wpywaj na zmian kryterium opacalnoci, bowiem do funkcji celu
zmienne te s dodawane ze wspczynnkiem rwnym zeru.
Funkcja celu:
max z(x) = 50 x1 + 75 x2 + 0 x3 + 0 x4 + 0 x5
Warunki ograniczajce:
2 x1 + x2 + x3 = 12
2 x1 + 2 x2 + x4 = 20
x1 - 2,5 x2 - x5 = 0
Warunki nieujemnoci:
x1 >= 0
x2 >= 0
x3 >= 0
x4 >= 0
x5 >= 0
Bazowa posta kanoniczna ukadu
Majc ukad 3 rwna liniowych naley wrd wektorw tworzcych kolumny warunkw ograniczajcych
znale 3 wektory liniowo niezalene. W naszym zadaniu wystpuj dwa wektory jednostkowe w kolumnie
3 i 4, brak natomiast wektora jednostkowego odpowiadajcemu rwnaniu trzeciemu. Naley do ukadu
wprowadzi now zmienn tzw. zmienn sztuczn S1. Pozwala ona utworzy brakujcy wektor
jednostkowy. Poniewa zmienne sztuczne nie powinny wystpowa wrd zmiennych bazowych w
rozwizaniu optymalnym zadania naley przypisa im takie wartoci wspczynnikw (m - gigantyczna
liczba) w funkcji celu, aby pogarszay one jej warto (w zadaniu na maksymalizacj zmienna m ma znak
ujemny, za w zadaniu na minimalizacje ma znak dodatni). W ten sposb nie jest opacalne pozostawienie
zmiennych sztucznych w kolejnych rozwizaniach bazowych.
Funkcja celu:
max z(x) = 50 x1 + 75 x2 + 0 x3 + 0 x4 + 0 x5 - mS1
Warunki ograniczajce:
2 x1 + x2 + x3 = 12
2 x1 + 2 x2 + x4 = 20

x1 - 2,5 x2 - x5 + S1 = 0
Warunki nieujemnoci:
x1 >= 0
x2 >= 0
x3 >= 0
x4 >= 0
x5 >= 0
Budowanie pierwszej tabeli Simplexowej
W pierwszym wierszu tabeli umieszczamy wspczynniki funkcji celu (wektor Cj). Pod nim za w wierszu
drugim znajduj si nazwy wszystkich zmiennych wystpujcych w ukadzie (Xj). W kolejnych 3 wierszach
(ilo warunkw ograniczajcych) umieszczamy kolejno: wspczynnik funkcji celu dla zmiennej bazowej z
tego rwnania (Ci), nazwa zmiennej bazowej z tego rwnania (Xi), wspczynniki macierzy A
odpowiadajce danemu rwnaniu (Aij), wyraz wolny odpowiadajcy danemu rwnaniu (Bi).
Ponadto w tablicy umieszczamy dwa dodatkowe wiersze. W pierwszym z nich wystpuje wektor Zj
obliczany jako iloczyny skalarne kolumny Ci oraz odpowiedniej kolumny macierzy A. Ostatnim elementem
w tym wierszu jest iloczyn skalarny wektorw Ci oraz wyrazw wolnych Bi. Element ten jest rwny
wartoci funkcji celu dla biecego rozwizania bazowego. Rnice wspczynnikw funkcji celu i
wskanikw Zj (Cj Zj) umieszczamy w ostatnim wierszu tabeli simplexowej. S to tzw. kryteria Simplex
lub wskaniki optymalnoci.
Kryteria Simplex odgrywaj w algorytmie Simplex najistotniejsz rol, to dziki nim jestemy w stanie
okreli czy dane rozwizanie bazowe jest optymalne, czy istnieje jedno lub wicej rozwiza optymalnych
oraz ktr zmienn niebazow opaca si wprowadzi do bazy w nastpnym rozwizaniu bazowym.
Kryterium Simplex mwi, i dane rozwizanie jest optymalne jeli dla maksymalizacji funkcji celu
wszystkie kryteria Simplex s niedodatnie, za w przypadku minimalizacji funkcji celu, gdy wszystkie
kryteria Simplex s nieujemne.
Jeli dana tabela simplexowa nie daje rozwizania optymalnego, wwczas jedna zmienna bazowa musi
opuci baz. W jej miejsce wejdzie nowa zmienna bazowa. Ustalona ona zostaje przez tzw. kryterium
wejcia informuje ono, ktr ze zmiennych niebazowych naley wprowadzi do nastpnego rozwizania
bazowego. W przypadku maksymalizacji funkcji celu jest ni zmienna z najwiksz wartoci wskanika
optymalnoci (Cj Zj), za w przypadku minimalizacji funkcji celu zmienna z najmniejsz wartoci
wskanika optymalnoci. O zmiennej, ktra opuci baz decyduje tzw. kryterium wyjcia jest to
zmienna, dla ktrej iloraz elementu z wektora wyrazw wolnych przez wspczynnik z kolumny zmiennej
wchodzcej do bazy ma najmniejsz warto (Bi / Aik). Bierzemy pod uwag tylko te ilorazy, ktre s
nieujemne.
W naszym zadaniu dotychczasowa zmienna bazowa S1 zostanie zastpiona przez zmienn x1.

Budowanie kolejnych tabel Simplexowych


Majc now baz musimy skonstruowa dla niej now tabel Simplexow. Pierwsze dwa wiersze kadej
tabeli Simplexowej nie ulegaj zmianie. Musimy za to zastpi nazw starej zmiennej bazowej (Xi) oraz jej
warto (Ci) na nazw i warto nowej zmiennej bazowej. W naszym przykadzie zamieniamy S1 na x1.
Nastpnie nasze obliczenia rozpoczynamy od wiersza, w ktrym wymienilimy zmienn bazow (w
powyszym zadaniu wiersz pity). Kady wspczynnik dla tego wiersza dzielimy przez warto, ktra
wystpowaa na przeciciu zmiennej wychodzcej i wchodzcej do bazy w poprzedniej tabeli Simplexowej:
dla kolumny z x1: 1 : 1 = 1
dla kolumny z x2: -2,5 : 1 = -2,5
dla kolumny z x3: 0 : 1 = 0
dla kolumny z x4: 0 : 1 = 0
dla kolumny z x5: -1 : 1 = -1
dla kolumny z S1: 1 : 1 = 1
dla kolumny z Bi: 0 : 1 = 0
Chcc wyliczy pozostae wiersze postpujemy wg zasady: warto w danym wierszu dla danej kolumny to
rnica wartoci dla tego wiersza i tej kolumny w poprzedniej tabeli Simplexowej oraz iloczynu wartoci w
wierszu, w ktrym zamienilimy zmienn bazow w nowej tabeli Simplexowej dla danej kolumny i wartoci
z poprzedniej tabeli Simplexowej odpowiadajcej danemu wierszowi i kolumnie, z ktrej wprowadzilimy
now zmienn bazow. W naszym przypadku dla wiersza trzeciego mamy:
dla kolumny z x1: 2 - 1 * 2 = 0
dla kolumny z x2: 1 + 2,5 * 2 = 6
dla kolumny z x3: 1 - 0 * 2 = 1
dla kolumny z x4: 0 - 0 * 2 = 0
dla kolumny z x5: 0 + 1 * 2 = 2
dla kolumny z S1: 0 - 1 * 2 = -2
dla kolumny z Bi: 12 - 0 * 2 = 12
Za dla wiersza czwartego:
dla kolumny z x1: 2 - 1 * 2 = 0
dla kolumny z x2: 2 + 2,5 * 2 = 7
dla kolumny z x3: 0 - 0 * 2 = 0
dla kolumny z x4: 1 - 0 * 2 = 1
dla kolumny z x5: 0 + 1 * 2 = 2
dla kolumny z S1: 0 - 1 * 2 = -2
dla kolumny z Bi: 20 - 0 * 2 = 20

Metody liczenia wierszy Zj i Cj Zj (okrelenie optymalnoci rozwizania i kryterium wejcia) oraz


kolumny Bi/Aik (kryterium wyjcia) s w kadej tabeli Simplexowej takie same.

Powyszy algorytm postpowania stosujemy rekurencyjnie a do momentu znalezienia rozwizania


optymalnego. Operacje przy przejciu do tabeli trzeciej dla wiersza trzeciego:
dla kolumny z x1: 0 : 6 = 0
dla kolumny z x2: 6 : 6 = 1
dla kolumny z x3: 1 : 6 = 0,1(6)
dla kolumny z x4: 0 : 6 = 0
dla kolumny z x5: 2 : 6 = 0,(3)
dla kolumny z S1: -2 : 6 = -0,(3)
dla kolumny z Bi: 12 : 6 = 2
Dla wiersza czwartego mamy:
dla kolumny z x1: 0 - 0 * 7 = 0
dla kolumny z x2: 7 - 1 * 7 = 0
dla kolumny z x3: 0 - 0,1(6) * 7 = -1,1(6)
dla kolumny z x4: 1 - 0 * 7 = 1
dla kolumny z x5: 2 - 0,(3) * 7 = -0,(3)
dla kolumny z S1: -2 + 0,(3) * 7 = 0,(3)
dla kolumny z Bi: 20 - 2 * 7 = 6
Za dla wiersza pitego:
dla kolumny z x1: 1 - 0 * (-2,5) = 1
dla kolumny z x2: -2,5 - 1 * (-2,5) = 0
dla kolumny z x3: 0 - 0,1(6) * (-2,5) = 0,41(6)
dla kolumny z x4: 0 - 0 * (-2,5) = 0
dla kolumny z x5: -1 - 0,(3) * (-2,5) = -0,1(6)
dla kolumny z S1: 1 + 0,(3) * (-2,5) = 0,1(6)
dla kolumny z Bi: 0 - 2 * (-2,5) = 5
Metody liczenia wierszy Zj i Cj Zj (okrelenie optymalnoci rozwizania i kryterium wejcia) oraz
kolumny Bi/Aik (kryterium wyjcia) s w kadej tabeli Simplexowej takie same.

Z ostatniej tabeli Simplexowej moemy wyczyta rozwizanie optymalne danego programu liniowego.
Wykonujemy to w ten sposb, e zmiennym bazowych z ostatniej tabeli przypisujemy odpowiadajce im
wartoci z kolumny Bi. Pozostae zmienne, tj. bdce zmiennymi niebazowymi w ostatniej tabeli
Simplexowej, przyjmuj warto rwn zeru. W naszym zadaniu otrzymujemy wic nastpujce
rozwizanie:

x1 = 5
x2 = 2
x3 = 0
x4 = 6
x5 = 0
Za z(x) = 400

You might also like