ania matematycznego liniowe zagadnienia decyzyjne 1. wstęp · przez g. b. dantzig'a metody...
TRANSCRIPT
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 1
Notatki do tematu
Metody poszukiwania rozwiązań jednokryterialnych problemów decyzyjnych –
metody dla zagadnień liniowego programowania matematycznego
Liniowe zagadnienia decyzyjne – część I
Formułowanie, graficzne rozwiązywanie i graficzna analiza wrażliwości
1. Wstęp
Programowanie liniowe należy do jednych z nowszych dziedzin matematyki. Stanowi
ono dział szerszej dziedziny nazywanej programowaniem matematycznym.
Programowanie matematyczne zajmuje się metodami poszukiwania rozwiązań
zadań, które w sposób ogólny można sformułować następująco:
xfzimalizowacminzlubzowacZmaksymali (1.1)
Dxwarunkuprzy (1.2)
Symbol x może oznaczać nieznaną liczbę rzeczywistą, nieznany wektor, którego
składowymi są liczby rzeczywiste, nieznaną funkcję, nieznany wektor,
którego składowymi są funkcje itd. W przypadku programowania liniowego
x jest wektorem, którego składowymi są liczby rzeczywiste, tzn. jeżeli
składowych tych jest n , to jest on elementem przestrzeni n-wymiarowej n
i oznaczamy go zwykle symbolem x .
Symbol f oznacza daną funkcję, której wartość poszukiwany x powinien
maksymalizować (lub minimalizować). Funkcję tę nazywany funkcją celu
lub funkcją kryterialną. W przypadku programowania liniowego ma ona
postać: nnjj11 xc...xc...xcz , gdzie c j są liczbami rzeczywistymi,
czyli jest ona funkcją liniową.
Symbol D oznacza dany zbiór, z którego można wybierać x . Zbiór ten może być
określony układem warunków, które mogą być sformułowane np. w postaci
równań i nierówności. Warunki te nazywamy warunkami ograniczającymi.
W przypadku programowania liniowego mogą one mieć postać:
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 2
ininjij11i bxa...xa...xa , lub ininjij11i bxa...xa...xa , lub
ininjij11i bxa...xa...xa , oraz 0x j , gdzie ija są liczbami
rzeczywistymi, czyli są one równaniami lub nierównościami liniowymi.
Rozwiązaniem dopuszczalnym zadania programowania matematycznego nazywamy
każdy element x zbioru D .
Rozwiązaniem optymalnym zadania programowania matematycznego nazywamy
element x zbioru D maksymalizujący (lub minimalizujący) wartość funkcji )x(f .
W przypadku maksymalizacji jest to więc taki element x zbioru D , że:
xfxfmaxx D
Chociaż pierwsze opracowania na temat programowania liniowego pojawiły się
w latach trzydziestych ubiegłego stulecia, to jednak zasadniczy rozwój tej dziedziny
przypada na jego lata pięćdziesiąte. Rozwój ten związany był z zaproponowaniem
przez G. B. Dantzig'a metody rozwiązywania zadań programowania liniowego
nazwanej metodą simpleksową oraz opracowaniem programów komputerowych
w których zastosowano tę metodę do ich rozwiązywania. Miało to miejsce w latach
1951-54. Obecnie istnieją również inne metody rozwiązywania zagadnień
programowania liniowego, które zostaną przedstawione w innym opracowaniu.
Programowanie liniowe znalazło bardzo wszechstronne zastosowanie
w rozwiązywaniu zagadnień optymalizacji statycznej. Wynika to przede wszystkim
z prostoty formułowania zadań programowania liniowego oraz dużej efektywności
obliczeniowej metody simpleksowa. Metody programowania liniowego znalazły
najwcześniej zastosowanie głównie w trzech dziedzinach: w zagadnieniach
wojskowych, w zagadnieniach ekonomii gałęzi przemysłu oraz w zagadnieniach tzw.
gier dwuosobowych. Później główny ciężar zastosowań programowania liniowego
przesunął się na dziedzinę zastosowań przemysłowych. Można tutaj wymienić
następujące:
Przemysł chemiczny. Zastosowania w przemyśle chemicznym związane były głównie
z zagadnieniami sterowania (planowania) produkcji i zapasów.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 3
Przemysł węglowy. W tej gałęzi przemysłu zastosowania programowania liniowego
związane były z zagadnieniami rozplanowania dostaw węgla z składnic do miejsc
zapotrzebowania.
Cywilne linie lotnicze. Prace w tej dziedzinie związane były z planowaniem lotów
i eksploatacją linii lotniczych.
Łączność. Główne prace dotyczyły optymalnego projektowania i wykorzystania sieci
telekomunikacyjnych.
Hutnictwo. W tej dziedzinie sformułowano szereg modeli odnoszących się do
planowania produkcji.
Przemysł papierniczy. Zastosowania w tej dziedzinie dotyczyły alokacji zamówień
w kilku zakładach, planowania transportu i asortymentu papierów.
Przemysł rafineryjny i petrochemiczny. Ta dziedzina przemysłu dostarczyła wielu
różnorodnych i interesujących zastosowań programowania liniowego. Najważniejsze
wśród nich dotyczyły komponowania różnych gatunków benzyn, optymalizacji dostaw
surowców do kilku rafinerii oraz optymalnego planowania produkcji i zapasów.
Kolejnictwo. Model programowania liniowego został tu zastosowany do optymalnego
planowania przebiegu pociągów towarowych na głównych trasach kolejowych.
Poza zastosowaniami przemysłowymi rozwijały się również zastosowania w innych
dziedzinach. Można tutaj wymienić zastosowania w agrotechnice, w analizach
ekonomicznych, w analizie ruchu drogowego.
2. Charakterystyka zadań programowania liniowego
2.1. Formułowanie zadań programowania liniowego
Załóżmy, że badamy system, istniejący rzeczywiście lub dopiero projektowany, na
którego działanie, to znaczy na to, jakie działalności będą przez niego realizowane,
jakie będą rozmiary tych działalności, ma wpływ szereg różnorakich czynników, jak
na przykład ludzie, surowce, wyposażenie technologiczne, pieniądze itp. Załóżmy
także, że dla systemu tego jesteśmy w stanie wskazać określony cel działania.
Podejście od strony programowania liniowego do takiego systemu polega na tym, iż
traktuje się system jako rozkładalny w tym sensie, że można w nim wyróżnić pewne
elementarne funkcje zwane działalnościami. Przykładem działalności może być
proces przerobu surowca na określonej instalacji technologicznej, proces
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 4
magazynowania surowca, półproduktu lub produktu, proces sprzedaży produktu lub
półproduktu itd. Każda, w taki sposób wyróżniona, działalność może być rozumiana
jako "magiczna skrzynka" do której wpływają pewne czynniki, które będziemy
nazywali wsadami, takie jak np. surowce, półprodukty, a z której wypływają inne
czynniki, które będziemy nazywali uzyskami, takie jak np. półprodukty, produkty.
Szczegóły tego co dzieje się wewnątrz skrzynki interesują jedynie technologa lub
konstruktora. Formułującego zadanie programowania liniowego interesują jedynie
strumienie wsadów i uzysków oraz ich rozmiary. Różne postacie wsadów i uzysków
stanowią składniki działalności. Po określeniu zbioru działalności składających się
na badany system należy wybrać dla każdej z nich, spośród jej składników, takie
wielkości, które w sposób jednoznaczny określają jej intensywność. Wielkością taką
może być np. jeden z wsadów. Wielkości te nazywa się zwykle zmiennymi
decyzyjnymi lub wielkościami decyzyjnymi. W zadaniach programowania liniowe-
go dla tak określonych działalności spełnione są następujące założenia:
Założenie 1: PROPORCJONALNOŚĆ
Wartości wsadów i uzysków różnych składników działalności są zawsze
proporcjonalne do jej intensywności. Jeżeli chcemy realizować jakąś działalność
z podwójną intensywnością, to musimy się liczyć z dwukrotnym zwiększeniem
wielkości wsadów i uzysków.
Założenie 2: NIEUJEMNOŚĆ
Wartości wybranej wielkości charakteryzującej intensywność określonej działalności
muszą być nieujemne.
Założenie 3: ADDYTYWNOŚĆ
Poszczególne składniki zdefiniowanych działalności systemu, wsady i uzyski,
powiązane są ze sobą szeregiem zależności. System jest również zwykle połączony
z otoczeniem np. przez działalności zakupu surowców, sprzedaży produktów itd.
W zadaniu programowania liniowego wszystkie te zależności muszą być wyrażone
za pomocą zależności liniowych.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 5
Założenie 4: LINIOWOŚĆ FUNKCJI CELU
Miara efektywności osiągania celu systemu musi być funkcją liniową intensywności
działalności zdefiniowanych w systemie.
REASUMUJĄC: w procesie formułowania zadania programowania liniowego należy
uwzględnić następujące podstawowe etapy:
(1) Rozłożyć badany system na pewne elementarne funkcje zwane działalnościami;
dla każdej z nich określić wsady i uzyski
(2) Dla każdej działalności określić zbiór wielkości decyzyjnych określających
jednoznacznie rozmiary ilościowe działalności
(3) Zbudować układ algebraicznych zależności liniowych opisujących system i jego
powiązania z otoczeniem.
(4) Utworzyć liniową funkcję celu systemu.
2.2. Postać matematyczna zadań programowania liniowego
Na podstawie przedstawionego przykładu widać, że w ogólnej postaci sformułowania
zadania programowania liniowego wystąpią następujące składniki:
(1) funkcja celu postaci:
nnjj11 xc...xc...xczimalizowacminzlubzowacZmaksymali (2.7)
(2) zasadnicze warunki ograniczające o jednej z następujących postaci:
a x a x a x b i k i Ni ij j in n i1 1 11 ... ... , , , (2.8)
a x a x a x b i k k i Ni ij j in n i1 1 1 21 ... ... , , , (2.9)
a x a x a x b i k m i Ni ij j in n i1 1 2 1 ... ... , , , (2.10)
(3) warunki nieujemności postaci:
ns,s,1j,0x j (2.11)
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 6
Warunki nieujemności nie muszą dotyczyć wszystkich zmiennych. Jeżeli ns , to
warunki nieujemności nazywamy pełnymi.
Przedstawiona powyżej postać sformułowania zadania programowania liniowego
nazywana jest postacią mieszaną.
Metoda simpleksowa wykorzystuje postać zapisu zadania programowania liniowego
zwaną postacią standardową. Postać ta charakteryzuje się tym, że:
(1) zasadnicze warunki ograniczające są dane w postaci równań;
(2) elementy prawej strony ograniczeń bi są liczbami nieujemnymi;
(3) warunki nieujemności są pełne.
Zatem zadanie programowania liniowego w postaci standardowej ma postać:
Zapis I standardowej postaci zadania programowania liniowego:
nnjj11 xc...xc...xcz
:celufunkcjeliniowaimalizowacminzlubzowacZmaksymali
(2.12)
przy ograniczeniach:
0b,bxa...xa...xa
....................................................
0b,bxa...xa...xa
....................................................
0b,bxa...xa...xa
mmnmnjmj11m
iininjij11i
11nn1jj1111
(2.12)
n,1j,0x j (2.13)
Przy rozwiązywaniu zadań programowania liniowego
metodą simpleks, należy je zapisać w postaci standardowej
Jeżeli sformułowane przez nas zadanie programowania liniowego ma postać
mieszaną musimy przed przystąpieniem do jego rozwiązania sprowadzić go do
postaci standardowej. Można to zrobić korzystając z następujących zasad:
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 7
Zasada 1.
Jeżeli 0bi , to i-te ograniczenie należy pomnożyć przez -1
Zasada 2.
Jeżeli zmienna jx ma być ujemna, dokonujemy podstawienia:
x x xj j j 0 (2.14)
Zasada 3.
Jeżeli zmienna jx nie ma ograniczenia na znak, dokonujemy podstawienia:
0x,0x,xxx jjjjj (2.15)
Zasada 4.
Każda nierówność:
ininjij11i bxa...xa...xa (2.17)
jest równoważna układowi warunków:
a x a x a x x b xi ij j in n n i i n i1 1 0 ... ... , (2.18)
Zasada 5.
Każda nierówność:
a x a x a x bi ij j in n i1 1 ... ... (2.19)
jest równoważna układowi warunków:
a x a x a x x b xi ij j in n n i i n i1 1 0 ... ... , (2.20)
Zmienną xn i , którą dodajemy lub odejmujemy od lewej strony nierówności, aby tę
nierówność zamienić na równoważne równanie, nazywamy zmienną swobodną lub
uzupełniającą. Zmienną dodawaną do lewej strony nierówności nazywamy zmienną
niedoboru, zaś zmienną odejmowaną od lewej strony nierówności nazywamy
zmienną nadmiaru. Wprowadzone zmienne uzupełniające wchodzą do funkcji celu
ze współczynnikami równymi zeru.
W zadaniach programowania liniowego możemy, jak to zaznaczono wyżej, rozważać
dwa rodzaje optymalizacji funkcji celu: maksymalizację lub minimalizację. Z punktu
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 8
widzenia postępowania obliczeniowego wygodnie jest ograniczyć się do
rozpatrywania zadań o jednym rodzaju optymalizacji np. maksymalizacji. Nie
zmniejsza to ogólności rozważań ponieważ zawsze można zastąpić jeden rodzaj
optymalizacji rodzajem przeciwnym. Rozważać będziemy zadania maksymalizacji.
Twierdzenie 2.1:
Zadanie programowania liniowego z funkcją celu:
nnjj11 xc...xc...xczwacMinimalizo (2.21)
jest równoważne zadaniu programowania liniowego z funkcją celu:
nnjj11 xc...xc...xczowacMaksymaliz (2.22)
Jest przy tym spełniona zależność:
zminzmax
Słuszne jest również następujące twierdzenie:
Twierdzenie 2.2:
Jeżeli w zadaniu programowania liniowego zastąpimy funkcję celu postaci:
z c x c x c xj j n n 1 1 ... ... (2.23)
funkcją celu postaci:
0p,dxc...xc...xcpz nnjj11 (2.24)
to rozwiązanie optymalne, o ile ono istnieje, dla obu zadań będzie identyczne.
Dla standardowej postaci zadania programowania liniowego stosuje się różne jej
zapisy. Poza zapisem I przedstawionym powyżej można najczęściej spotkać
następujące:
Zapis II:
n
1j
jj xczzowacZmaksymali (2.25)
n
1j
iijij m,1i,0b,bxaiachograniczenprzy (2.26)
n,1j,0x j (2.27)
Zapis III:
xcTzzowacZmaksymali (2.28)
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 9
0bbxA ,iachograniczenprzy (2.29)
x 0 (2.30)
gdzie:
m
i
1
n
j
1
n
j
1
mnmj1m
inij1i
n1j111
b
b
b
,
c
c
c
,
x
x
x
,
aaa
aaa
aaa
bcxA
Zapis IV:
n
1j
jj xczzowacZmaksymali (2.31)
0bba
,xiachograniczenprzyn
1j
jj (2.32)
n,1j,0x j (2.33)
gdzie:
m
i
1
mj
ij
j1
j
b
b
b
,
a
a
a
ba
2.3. Graficzne rozwiązywanie zadań programowania liniowego - studium
przypadków
Powyżej podany był przykład pokazujący w jaki sposób można formułować zadania
programowania liniowego. Pokażemy w jaki sposób można graficznie rozwiązywać
zadania programowania liniowego. W sposób graficzny można rozwiązywać zadania
z dwiema zmiennymi decyzyjnymi. W praktyce zadań o takim rozmiarze raczej się
nie spotyka, jednakże na takich przykładach można dobrze zilustrować pewne
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 10
podstawowe pojęcia wykorzystywane przy rozwiązywaniu i analizie zadań
programowania liniowego o dużych rozmiarach.
Przykład 1.
Pewna firma produkuje dwa rodzaje farb: dla prac wewnętrznych (I) i zewnętrznych
(E). Wyprodukowane farby kierowane są do sprzedaży hurtowej. Do produkcji farb
stosuje się dwa surowce A i B. Maksymalne dostępne dziennie ilości tych surowców
wynoszą odpowiednio 6 i 8 t. Zużycie surowców A i B na jedną tonę odpowiedniej
farby podaje tabela.
Surowiec Zużycie surowca w tonach Maksymalna
na tonę farby dostępna dziennie
Farba E Farba I ilość surowca
A 1 2 6
B 2 1 8
Badanie rynku pokazało, że dzienny popyt na farbę I nigdy nie przewyższa popytu na
farbę E o więcej niż 1 tonę. Poza tym ustalono, że popyt na farbę I nigdy nie
przekracza 2 ton na dobę. Ceny hurtowe jednej tony farb są równe: 3j.p. dla farby E, i
2j.p. dla farby I.
Jakie ilości farby E i I powinna produkować firma, aby dochód z produkcji był
maksymalny?
Rozwiązując to zadanie można wyróżnić dwie działalności: produkcja farby E i
produkcja farby I. Jako zmienne decyzyjne dla tych działalności dogodnie jest
przyjąć:
1x - dzienna produkcja farby E w tonach;
2x - dzienna produkcja farby I w tonach.
Funkcja celu:
Zmaksymalizować z x x 3 21 2
Ograniczenia:
Zasoby dzienne surowca A 6x2x 21
Zasoby dzienne surowca B 2 81 2x x
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 11
Różnica popytu na farbę I i E x x1 2 1
Popyt na farbę I x2 2
Warunki nieujemności x x1 20 0 ,
Pierwszy krok przy graficznym rozwiązywaniu zadania programowania liniowego -
graficzne przedstawienie obszaru rozwiązań dopuszczalnych. Obszar ten dla
przykładu przedstawiony jest jako zacieniowany wielokąt ABCDEF na rys. 2.7.
W każdym punkcie tego obszaru spełnione są wszystkie ograniczenia zadania.
Rys.2.7. Przykład 1. Obszar rozwiązań dopuszczalnych i linia stałej wartości funkcji
celu
Drugi krok to wrysowanie lini stałej wartości funkcji celu i zaznaczenie kierunku jej
wzrostu. Na rys. 2.7 jest to prosta przechodząca przez początek układu
współrzędnych.
Aby znaleźć rozwiązanie optymalne przemieszczamy prostą stałej wartości funkcji
celu w kierunku jej wzrostu (rozwiązujemy zagadnienie maksymalizacji) dopóty,
dopóki nie znajdzie się ona na granicy obszaru rozwiązań dopuszczalnych (rys.2.8).
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 12
W naszym przykładzie nastąpi to w punkcie C. Punkt C jest punktem przecięcia
prostych ograniczeń (1) i (2); wartości zmiennych 1x i 2x w tym punkcie można
zatem otrzymać jako rozwiązanie układu równań:
8xx2
6x2x
21
21
Rozwiązanie to wynosi: x x11
3 21
33 1 , , a odpowiadająca temu rozwiązaniu wartość
funkcji celu wynosi z 12 23 .
Rys. 2.8. Przykład 1. Znajdowanie rozwiązania optymalnego
Zwróćmy uwagę, że rozwiązanie optymalne związane jest z punktem
wierzchołkowym obszaru rozwiązań dopuszczalnych. Jest to cecha
charakterystyczna rozwiązań optymalnych zadań programowania liniowego.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 13
Zwróćmy uwagę na jeszcze jeden fakt. Zasadnicze ograniczenia naszego zadania
sprowadzone do postaci standardowej mają postać (układ równań liniowych):
2xx
1xxx
8xxx2
6xx2x
62
521
421
321
Mamy zatem 6n , 4m . Ustaliliśmy już, że w punkcie optymalnym
x x11
3 21
33 1 , . W punkcie tym oczywiście x x3 4 0 . Nietrudno policzyć, że
x x5 62
33 , . Rozwiązanie optymalne naszego zadania, sformułowanego w postaci
standardowej wynosi zatem:
32
31
31
3
0
0
1
3
x
Widać, że w rozwiązaniu tym liczba niezerowych składowych wynosi 4 (pozostałe
składowe są równe zeru) i jest równa liczbie zasadniczych ograniczeń naszego
zadania. Rozwiązanie o takich właściwościach nosi nazwę rozwiązania bazowego.
Można, postępując podobnie jak powyżej, pokazać, że rozwiązania związane z
wszystkimi punktami wierzchołkowymi obszaru rozwiązań dopuszczalnych są
rozwiązaniami bazowymi tzn. mają co najwyżej m składowych niezerowych.
Pokażemy teraz, wykorzystując możliwości metody graficznej rozwiązywania zadań
programowania liniowego, w jaki sposób można analizować wrażliwość otrzymanego
rozwiązania optymalnego na zmiany parametrów modelu. Później pokażemy, w jaki
sposób analizy takie można uzyskać korzystając z danych obliczeniowych metody
simpleks.
Pierwsze zadanie analizy wrażliwości
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 14
Po znalezieniu rozwiązania optymalnego w pełni uzasadnione jest pytanie o to, jak
mogą wpłynąć na to rozwiązanie zmiany zasobów odpowiednich składników
procesów. Interesujące są dwa następujące aspekty:
(1) O ile można zwiększyć zasób określonego składnika dla poprawienia wartości
funkcji celu z ?
(2) O ile można zmniejszyć zasób określonego składnika przy zachowaniu
otrzymanej wartości funkcji celu z .
Ponieważ zasoby każdego ze składników określone są przez prawe strony
ograniczeń, ten rodzaj analizy wrażliwości zwykle nazywa się analizą wrażliwości
na zmiany prawej strony ograniczeń.
Zanim odpowiemy na te pytania dokonamy pewnej klasyfikacji ograniczeń modelu
liniowego. Dla otrzymanego rozwiązania optymalnego możemy ograniczenia
modelu podzielić na: aktywne i nieaktywne. Jeżeli ograniczenie odpowiadające
danemu składnikowi przechodzi przez punkt rozwiązania optymalnego, to
ograniczenie takie nazywamy aktywnym; w przeciwnym przypadku nazywamy je
nieaktywnym. W naszym przykładzie dla otrzymanego rozwiązania ograniczeniami
aktywnymi są ograniczenia (1) i (2), nieaktywnymi (3) i (4). Jeżeli jakieś ograniczenie
jest aktywne to odpowiadający mu składnik nazywamy deficytowym, ponieważ jest
on wykorzystywany w całości. Składnik z którym związane jest ograniczenie
nieaktywne nazywamy niedeficytowym tzn. posiadanym w pewnym nadmiarze.
W analizie wrażliwości na zmiany prawej strony określa się:
(1) największe dopuszczalne zwiększenie zasobu składnika deficytowego,
pozwalające zwiększyć wartość funkcji celu z;
(2) największe dopuszczalne zmniejszenie zasobu składnika niedeficytowego, nie
zmieniające otrzymanej wartości funkcji celu z.
W naszym przykładzie deficytowymi składnikami są zasoby surowców A i B. Na rys.
2.9 przedstawiono sposób określenia granicy do jakiej można by zwiększyć zasób
składnika A, aby poprawić wartość funkcji celu z . W punkcie K ograniczeniami
aktywnymi są ograniczenia (2) i (4), a obszarem rozwiązań dopuszczalnych staje się
wielokąt ABKEF. W punkcie tym ograniczenie (1) (na zasób surowca A) staje się
ograniczeniem zbędnym, ponieważ jakikolwiek dalszy wzrost zasobu surowca A nie
wpływa na obszar rozwiązań dopuszczalnych. Zatem, ilość zasobu surowca A nie
należy zwiększać ponad wartość, przy której odpowiadające mu ograniczenie stanie
się zbędnym tj. prosta (1) przejdzie przez nowy punkt optymalny K. Nietrudno
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 15
policzyć współrzędne tego punktu: x x1 23 2 , i odpowiadający mu zasób surowca
A wynoszący 7t.
Rys. 2.9. Przykład 1. Analiza wrażliwości rozwiązania na zmianę prawej strony –
ograniczenia aktywne
Na rys. 2.9 przedstawione jest też zobrazowanie analogicznej analizy dla zasobów
surowca B.
Rozważymy teraz zagadnienie zmniejszania elementów prawej strony dla ograniczeń
nieaktywnych. Zilustrowanie tej analizy przedstawione zostało na rys. 2.10.
Ograniczenie (4) określa graniczny poziom popytu na farbę I. Z rysunku wynika, że,
nie zmieniając optymalnego rozwiązania, można prostą (4) obniżyć aż do przecięcia
się jej z punktem optymalnym: x x11
3 21
33 1 , - obniżenie popytu na farbę I do
poziomu x21
31 nie wpłynie na rozwiązanie optymalne. Podobną analizę można
przeprowadzić dla ograniczenia (3) - różnicy popytu. Nie zmieniając optymalnego
rozwiązania można prostą (3) przesunąć aż do przecięcia się jej z punktem optymal-
nym. W punkcie tym prawa strona ograniczenia (3) przyjmie wartość -2. Zatem -
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 16
rozwiązanie optymalne nie zmieni się, jeżeli popyt na farbę E przewyższy popyt na
farbę I o nie więcej niż 2t. Wyniki przeprowadzonej analizy można zawrzeć w tabeli.
Maksymalna Maksymalna
Zasób Rodzaj zasobu zmiana ilości zmiana dochodu
zasobu przy zmianie
1 Deficytowy + 1 + 1/3
2 Deficytowy + 4 + 5 1/3
3 Niedeficytowy - 3 0
4 Niedeficytowy - 2/3 0
Rys. 2.10. Przykład 1. Analiza wrażliwości rozwiązania na zmianę prawej strony –
ograniczenia nieaktywne
Drugie zadanie analizy wrażliwości
W pierwszym zadaniu analizy wrażliwości badaliśmy wpływ na rozwiązanie
optymalne zasobów deficytowych składników. Przy ograniczeniach na nakłady,
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 17
związane z pozyskaniem większej ilości zasobów istotne może być pytanie: który z
zasobów należy powiększać w pierwszej kolejności? W tym celu wprowadzimy
charakterystykę cenności każdej dodatkowej jednostki zasobu składnika
deficytowego:
zasobu iy przyrostlnay dopuszczlnMaksyma
lu zfunkcji ce wartosci y przyrostlnMaksymai
Korzystając z danych uzyskanych w poprzednim zadaniu możemy określić cenności
każdego z zasobów. Wyniki zestawione są w tabeli.
Zasób Rodzaj zasobu Wartość i
j.p./t
1 Deficytowy 3
11
2 Deficytowy 3
42
3 Niedeficytowy 03
4 Niedeficytowy 04
Uzyskane wyniki wskazują, że dodatkowe nakłady w pierwszej kolejności należy
skierować na pozyskanie dodatkowych ilości składnika B, a potem składnika A.
Trzecie zadanie analizy wrażliwości
W trzecim zadaniu analizy wrażliwości próbujemy odpowiedzieć na pytanie: jak na
otrzymane rozwiązanie optymalne wpływają zmiany współczynników funkcji celu?
Zmiana współczynników funkcji celu wpływa na nachylenie prostej stałej wartości
funkcji celu. Można zauważyć, że wybór tego lub innego punktu wierzchołkowego
jako punktu rozwiązania optymalnego zależy, przy określonym zbiorze rozwiązań
dopuszczalnych, właśnie od nachylenia prostej stałej wartości funkcji celu. Oznacza
to, że zmiana współczynników funkcji celu może prowadzić do zmiany punktu
rozwiązania optymalnego i związanej z tym zmiany zbioru ograniczeń aktywnych i
statusu tego lub innego składnika (tzn. składnik deficytowy może stać się
niedeficytowy i na odwrót). Można zatem rozważać następujące zagadnienia:
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 18
(1) Jaki jest przedział zmian (zmniejszenia lub zwiększenia) tego lub innego
współczynnika funkcji celu, dla którego nie dochodzi do zmiany rozwiązania
optymalnego?
(2) O ile należy zmienić ten lub inny współczynnik funkcji celu, aby uczynić
określony składnik niedeficytowy deficytowym i na odwrót?
Rozważymy najpierw pierwsze zagadnienie dla naszego przykładu. Postać funkcji
celu w przykładzie jest następująca:
2211 xcxcz
Dla przykładu spróbujmy określić przedział zmian const2 przy cc 21 , a potem
c c const2 1 3 przy . Zilustrowanie takiej analizy przedstawione jest na rys. 2.11. Jej
wynik jest następujący:
przy
przy 32
c const c
c const c
2 1
1 2
2 1 4
3 6
Dla każdej z tych sytuacji, jeżeli wartości współczynników funkcji celu wyjdą poza
wskazany przedział, otrzymamy albo alternatywne rozwiązania optymalne (punkty C
i D lub C i B) albo nowe rozwiązanie optymalne (punkt D lub B).
Dla pierwszej analizowanej sytuacji, kiedy tylko cena c1 1 , składnik 2 staje się
niedeficytowym, a składnik 4 deficytowym. Oznacza to że, jeżeli cena farby E stanie
się mniejsza niż 1 j.p. należy zmienić plan produkcji - produkować maksymalnie
dopuszczalną ilość farby I i ograniczyć produkcję farby E. Podobne analizy można
przeprowadzić dla pozostałych możliwych sytuacji.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 19
Rys. 2.11. Przykład 1. Analiza wrażliwości na zmiany współczynników funkcji celu
Przykład 2.
21 xx3zzowacZmaksymali
przy ograniczeniach:
x x
x x
x x
x x
x x
1 2
1 2
1 2
1 2
1 2
4
4 3 12
1
6
0 0
,
Ilustracja graficzna przykładu przedstawiona jest na rys. 2.12. Jest to przykład
zawierający ograniczenia zbędne. Rozwiązanie optymalne osiągane w punkcie B
wynosi 043.2029.429.229.1T x i zawiera 4 = m składowych niezerowych.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 20
Rys. 2.12. Przykład 2. Zbędne ograniczenia
Przykład 3.
21 x9x3zzowacZmaksymali
przy ograniczeniach:
x x
x x
x x
1 2
1 2
1 2
4 8
2 4
0 0
,
Ilustracja graficzna przykładu przedstawiona jest na rys. 2.13. Jest to przykład
zawierający ograniczenie zbędne, przechodzące przez punkt rozwiązania
optymalnego. Rozwiązanie optymalne osiągane w punkcie C wynosi
0020T x zawiera 1 < m = 2 składową niezerową. Rozwiązanie takie
nazywamy rozwiązaniem zdegenerowanym. Punkty rozwiązań zdegenerowanych
mogą wystąpić w zadaniu również jako rozwiązania nieoptymalne.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 21
Rys. 2.13. Przykład 3. Rozwiązanie optymalne zdegenerowane
Przykład 4.
21 x2x3zzowacZmaksymali
przy ograniczeniach:
x x
x x
x x
x x
1 2
1 2
1 2
1 2
2 4
3 2 14
3
0 0,
Ilustracja graficzna przykładu przedstawiona jest na rys. 2.14. Jest to przykład
ilustrujący możliwość wystąpienia rozwiązań optymalnych wielokrotnych.
Punktami wierzchołkowymi rozwiązań optymalnych są punkty C
( 00614T x ) oraz D ( 75.3005.35.2T x ). W obydwu tych
punktach wartość funkcji celu wynosi 14z . Taką samą wartość funkcji celu daje
oczywiście każdy punkt leżący na prostej (2). Współrzędne tych punktów można
obliczyć w następujący sposób:
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 22
xxx )1(
To ostatnie wyrażenie mówi, że punkt x jest wypukłą kombinacją liniową punktów
xx i .
Rys. 2.14. Przykład 4. Rozwiązania optymalne wielokrotne
Przykład 5.
21 xxzzowacZmaksymali
przy ograniczeniach:
5 0
2 4
2 0
0 0
1 2
1 2
1 2
1 2
x x
x x
x x
x x,
Ilustracja graficzna przykładu przedstawiona jest na rys. 2.15. Jest to przykład
ilustrujący możliwość wystąpienia rozwiązań dających nieskończoną wartość funkcji
celu czyli tzw. rozwiązań nieograniczonych. Przypadek ten jak widać może
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 23
wystąpić (chociaż nie musi - patrz przykład 6), jeżeli obszar rozwiązań
dopuszczalnych jest nieograniczony.
Rys. 2.15. Przykład 5. Rozwiązania nieograniczone
Przykład 6.
21 x2x6zzowacZmaksymali
przy ograniczeniach:
4
x1
2 2
0 0
1 2
1
2
x x
x
x
,
Ilustracja graficzna przykładu przedstawiona jest na rys. 2.16. Jest to przykład
ilustrujący istnienie skończonych rozwiązań optymalnych przy nieograniczonym
obszarze rozwiązań dopuszczalnych.
Komputerowe wspomaganie decyzji 2008/2009 Liniowe zagadnienia decyzyjne
Kazimierz Duzinkiewicz 24
Rys. 2.16. Przykład 6. Skończone rozwiązanie optymalne przy nieograniczonym
obszarze rozwiązań dopuszczalnych
Przykład 7.
21 xxzzowacZmaksymali
0,x0 x
5xx5
10xx2
2xx5.0
4xx2 iczeniach:przy ogran
21
21
21
21
21
Ilustracja graficzna przykładu przedstawiona jest na rys. 2.17. Jest to przykład
ilustrujący możliwość braku rozwiązań dopuszczalnych.