Analiza wrażliwości Rozwiązanie programu liniowego jest dopiero początkiem analizy. Z punktu widzenia decydenta (menadżera) jest istotne, żeby wiedzieć jak na rozwiązanie optymalne wpływają zmiany parametrów modelu. Można się tego dowiedzieć z analizy wrażliwości rozwiązania optymalnego na zmiany niektórych paramentów modelu. Analiza wrażliwości dotyczy: 1. Współczynników funkcji celu (np. cen wyrobów). Analiza wrażliwości umożliwia znalezienie odpowiedzi na pytanie, w jakich granicach mogą się zmienić współczynniki funkcji celu (np. ceny wyrobów), żeby dotychczasowe rozwiązanie było optymalne. Nie zmienią się optymalne wielkości X * n, natomiast zmieni się (zwiększy lub zmniejszy) wartość funkcji celu. 2. Wyrazów wolnych w warunkach ograniczających (np. zasobów surowca, norm ilości danego składnika żywienia). Analiza wrażliwości pozwala określić w jakich granicach mogą się zmieniać wyrazy wolne, żeby w rozwiązaniu optymalnym pozostały dotychczasowe zmienne bazowe. Nie zmieni się baza optymalna, natomiast zmienią się optymalne wartości zmiennych bazowych oraz wartość funkcji celu. 3. Współczynników występujących po lewej stronie układu warunków ograniczających. 4. Nowych warunków ograniczających. ZADANIE 1 Przedsiębiorstwo produkuje dwa wyroby: W 1 oraz W 2. Ograniczeniem w procesie produkcji są zapasy trzech surowców: S 1, S 2 oraz S 3. W tablicy 1 podano jednostkowe nakłady surowców na produkcję wyrobów, zapasy surowców oraz ceny wyrobów. Surowce Zużycie surowca (w kg) na 1 szt. wyrobu Zapasy surowca (w kg) W 1 W 2 S 1 2 1 1000 S 2 3 3 2400 S 3 1,5-600 Cena (zł) 30 20 Artur Piątkowski WZ UW Strona 1
Rozwiązać model z wykorzystaniem dodatku Solver, który znajduje się w arkuszu kalkulacyjnym MS Excel 2010. (1) Określić rozmiary produkcji wyrobów W 1 oraz W 2, które gwarantują maksymalny przychód ze sprzedaży. Pierwszym etapem jest zapisanie powyższego problemu decyzyjnego za pomocą programu liniowego: Zmienne decyzyjne: ść ść Warunki ograniczające: Funkcja celu: Następnie należy zaimplementować powyższy program do arkusza kalkulacyjnego MS Excel 2010. Przenosimy do arkusza poszczególne części programu: zmienne decyzyjne, warunki ograniczające oraz funkcję celu. Artur Piątkowski WZ UW Strona 2
Po zaimplementowaniu modelu (programu) do arkusza kalkulacyjnego, należy go rozwiązać z wykorzystaniem dodatku Solver. Odp1.: Optymalne rozmiary produkcji wynoszą: 200 jednostek wyrobu W 1 oraz 600 jednostek wyrobu W 2 (X * 1 =200, X * 2 =600). Taka kombinacja produkcji wyrobów gwarantuje maksymalny przychód ze sprzedaży, który wynosi 18 000 zł. (2) Jak może zmieniać się cena wyrobu pierwszego W 1 (w jakich granicach), aby rozwiązanie optymalne nie uległo zmianie? Do odpowiedzi na drugie pytanie będzie potrzebny raport wrażliwości, który można wygenerować za pomocą dodatku Solver. Artur Piątkowski WZ UW Strona 3
Żeby znaleźć odpowiedź na powyższe pytanie, należy przeanalizować raport wrażliwości komórek zmiennych. Informuje on w jakich granicach mogą zmienić się wartości współczynników znajdujących się w funkcji celu, żeby rozwiązanie optymalne (wartości X * 1 i X * 2 ) pozostało bez zmian. Należy pamiętać, że nie można zmieniać poszczególnych współczynników RÓWNOCZEŚNIE! Jeżeli jeden współczynnik (cena) zmienia się w określonych granicach, to pozostałe współczynniki (ceny) muszą pozostać niezmienione! Pierwszy współczynnik funkcji celu (cena wyrobu pierwszego) wynosi 30. Może on wzrosnąć o 10, lub zmniejszyć się o 10, żeby rozwiązanie optymalne pozostało bez zmian. Należy pamiętać o tym, że jest to przedział obustronnie domknięty. Odp2.: Obecne rozwiązanie optymalne nie ulegnie zmianie, jeżeli cena wyrobu pierwszego W 1 będzie przyjmować wartości z przedziału <20; 40>. (3) Jak może zmieniać się cena wyrobu drugiego W 2 (w jakich granicach), aby rozwiązanie optymalne nie uległo zmianie? Drugi współczynnik funkcji celu (cena wyrobu drugiego) wynosi 20. Może on wzrosnąć o 10, lub zmniejszyć się o 5, żeby rozwiązanie optymalne pozostało bez zmian. Odp3.: Obecne rozwiązanie optymalne nie ulegnie zmianie, jeżeli cena wyrobu drugiego W 2 będzie przyjmować wartości z przedziału <15; 30>. Artur Piątkowski WZ UW Strona 4
(4) Ile jest co najwyżej rozwiązań bazowych powyższego modelu? Zapisujemy warunki ograniczające w postaci kanonicznej: Tworzymy macierz A, która jest macierzą współczynników stojących po lewej równań: [ ] Powstała macierz o trzech rzędach m=3 oraz pięciu kolumnach n=5. Jeżeli n>m (5>3), to układ ma nieskończenie wiele rozwiązań, ale skończoną liczbę rozwiązań bazowych. Wykorzystując symbol Newtona, który jest funkcją dwóch argumentów całkowitych nieujemnych, można określić wszystkie kombinacje trzyelementowe (m=3) ze zbioru pięcioelementowego (n=5). W takim wypadku mamy co najwyżej: Odp4.: Jest co najwyżej 10 rozwiązań bazowych powyższego modelu. (5) Wymienić zmienne bazowe oraz niebazowe. Artur Piątkowski WZ UW Strona 5
Zmienne bazowe są to takie zmienne, które są większe od zera. Zmienne niebazowe to takie zmienne, które równają się zero. X 1 * oraz X 2 * to zmienne decyzyjne, które są bazowe, ponieważ ich wartość wynosi odpowiednio 200 i 600 (są większe od zera). X 3 *, X 4 * oraz X 5 * to zmienne swobodne (uzupełniające, dodatkowe). Informują one o różnicy pomiędzy prawą i lewą stroną nierówności (mierzą niewykorzystaną wielkość wyrazów wolnych warunków ograniczających). X 3 *, X 4 * oraz X * 5 informują ile jest niewykorzystanych zapasów surowców S 1, S 2, S 3. X 3 *, X 4 * informują, że zasób surowców S 1 oraz S 2 jest w pełni wykorzystany. X* 5 informuje, że jest jeszcze 300 kg niewykorzystanego zapasu surowca S 3 (zasób nie jest w pełni wykorzystany). Zmienne bazowe X 1 *, X 2 *, X 5 * tworzą bazę optymalną modelu! Odp5.: Występują trzy zmienne bazowe: X * 1 =200, X * 2 =600,X * 5 =300 (baza optymalna) oraz dwie zmienne niebazowe: X * 3 =0, X * 4 =0. (6) Czy i jak rozwiązanie optymalne ulegnie zmianie, jeżeli zasób surowca S 1 wzrośnie do 1100 kg? Czy zmieni się baza optymalna? Żeby znaleźć odpowiedź na powyższe pytanie, należy przeanalizować raport wrażliwości ograniczeń. Informuje on w jakich granicach mogą zmienić się prawe strony ograniczeń (wyrazy wolne), żeby baza optymalna pozostała bez zmian. Zmianie ulegną optymalne wartości zmiennych bazowych oraz wartość funkcji celu. Artur Piątkowski WZ UW Strona 6
Wyraz wolny pierwszego ograniczenia (zasób surowca S 1 ) wynosi 1000. Może on wzrosnąć o 200 lub zmniejszyć się o 200, żeby baza optymalna pozostała bez zmian. Baza optymalna nie zmieni się, jeżeli zasób surowca S 1 będzie się zmieniać w granicach <800;1200>. Natomiast zmienią się optymalne wielości rozwiązania optymalnego oraz wartość funkcji celu. Z raportu wrażliwości ograniczeń można odczytać wartości cen dualnych: Cena dualna informuje nas, o ile się zmieni wartość funkcji celu, jeżeli zwiększymy wyraz wolny (zasób surowca) ograniczenia o jednostkę. Nową wartość funkcji celu można obliczyć wykorzystując cenę dualną. Jeżeli zwiększymy zasób surowca o 100 kg, to funkcja celu zmieni się w następujący sposób: 18 000 +10*100=19 000 W celu określenia wartości nowego rozwiązania optymalnego należy zmienić prawą stronę pierwszego ograniczenia w arkuszu kalkulacyjnym Excel i ponownie rozwiązać model z wykorzystaniem dodatku Solver. Artur Piątkowski WZ UW Strona 7
Zmienne bazowe X 1 *, X 2 *, X 5 * nadal tworzą bazę optymalną modelu. Zmieniła się tylko ich wartość. Nowe wartości zmiennych bazowych wynoszą: Odp6.: Wzrost zasobu surowca S 1 do 1100 (o 100 jednostek) spowoduje zmianę rozwiązania optymalnego. Nowe optymalne rozmiary produkcji wynoszą: 300 jednostek wyrobu W 1 oraz 500 jednostek wyrobu W 2 (X * 1 =300, X * 2 =500). Taka kombinacja produkcji wyrobów gwarantuje nowy maksymalny przychód ze sprzedaży, który wynosi 19 000 zł. Baza optymalna nie zmieni się, jeżeli zasób surowca S 1 będzie zmieniać się w granicach <800; 1200>. (7) Czy zwiększenie zapasów surowca S 1 jest korzystne z ekonomicznego punktu widzenia, jeżeli koszt jednorazowego sprowadzenia 100 kg surowca S 1 wynosi 2000 zł? Jeżeli nie, to jaka cena za kilogram jest opłacalna? Należy zmniejszyć funkcję celu o koszt sprowadzenia 100 kg surowca S 1 oraz porównać wynik z poziomem funkcji celu sprzed zwiększenia zasobu: Artur Piątkowski WZ UW Strona 8
Opłacalne jest sprowadzenie surowca S 1, jeżeli jego cena za kilogram będzie niższa niż cena dualna y 1 *=10. Odp7.: Zwiększenie zapasów surowca S 1 nie jest korzystne z ekonomicznego punktu widzenia, ponieważ koszty sprowadzenia 100 kg surowca przewyższają przychód ze sprzedaży nowych wyrobów. Każda cena, która będzie niższa niż 10 zł za kilogram, będzie opłacalna. (8) Czy i jak rozwiązanie optymalne ulegnie zmianie, jeżeli zasób surowca S 2 zmniejszy się do 2100 kg? Czy zmieni się baza optymalna? Wyraz wolny drugiego ograniczenia (zasób surowca S 2 ) wynosi 2400. Może on wzrosnąć o 600 lub zmniejszyć się o 600, żeby baza optymalna pozostała bez zmian. Baza optymalna nie zmieni się, jeżeli zasób surowca S 2 będzie się zmieniać w granicach <1800;3000>. Natomiast zmienią się optymalne wielości rozwiązania optymalnego oraz wartość funkcji celu. Nową wartość funkcji celu można obliczyć wykorzystując cenę dualną. Cena dualna informuje nas, o ile się zmieni wartość funkcji celu, jeżeli zwiększymy wyraz wolny (zasób surowca) ograniczenia o jednostkę. Jeżeli zmniejszymy zasób surowca o 300 kg, to funkcja celu zmieni się w następujący sposób: Artur Piątkowski WZ UW Strona 9
W celu określenia wartości nowego rozwiązania optymalnego należy zmienić prawą stronę drugiego ograniczenia w arkuszu kalkulacyjnym Excel i ponownie rozwiązać model z wykorzystaniem dodatku Solver. Zmienne bazowe X 1 *, X 2 *, X 5 * nadal tworzą bazę optymalną modelu. Zmieniła się tylko ich wartość. Nowe wartości zmiennych bazowych wynoszą: Odp8.: Zmniejszenie zasobu surowca S 1 do 2100 kg spowoduje zmianę rozwiązania optymalnego. Nowe optymalne rozmiary produkcji wynoszą: 300 jednostek wyrobu W 1 oraz 400 jednostek wyrobu W 2 (X * 1 =300, X * 2 =400). Taka kombinacja produkcji wyrobów gwarantuje nowy maksymalny przychód ze sprzedaży, który wynosi 17 000 zł. Baza optymalna nie zmieni się, jeżeli zasób surowca S 2 będzie zmieniać się w granicach <1800; 3000>. (9) Czy opłaca się zwiększyć zasób surowca S 3 do 2000 kg? W jakich granicach można zmieniać poziom surowca S 3, żeby baza optymalna nie zmieniła się? Artur Piątkowski WZ UW Strona 10
Wyraz wolny trzeciego ograniczenia (zasób surowca S 3 ) wynosi 600. Może on wzrastać do nieskończoności lub zmniejszyć się o 300, żeby baza optymalna pozostała bez zmian. ) ) Baza optymalna nie zmieni się, jeżeli zasób surowca S 3 będzie się zmieniać w granicach <300; ). Nie opłaca się zwiększać zasobu surowca S 3, ponieważ wzrost zapasu surowca o jednostkę nie zmieni wielkości funkcji celu. Wzrost zasobu surowca S 3 nie wpłynie na przychód ze sprzedaży wyrobów, ponieważ cena dualna wynosi zero. Odp9.: Nie opłaca się zwiększać zasobu surowca S 3, ponieważ cena dualna (wzrost zasobu surowca S 3 nie wpłynie na przychód ze sprzedaży wyrobów). Baza optymalna nie zmieni się, jeżeli poziom surowca S 3 będzie zmieniać się w przedziale ) (10) Zbudować zadanie dualne do zadania prymalnego oraz rozwiązać je z wykorzystaniem dodatku Solver, który znajduje się w arkuszu kalkulacyjnym MS Excel 2010. ZADANIE PRYMALNE Zmienne decyzyjne: ść ść Artur Piątkowski WZ UW Strona 11
Warunki ograniczające: Funkcja celu: ZADANIE DUALNE Nowe zmienne decyzyjne (zmienne dualne, ceny dualne): prymalnego: Transpozycja macierzy współczynników warunków ograniczających zadania [ ] * + Warunki ograniczające: Funkcja celu: Następnie należy zaimplementować model (program) do arkusza kalkulacyjnego oraz rozwiązać go z wykorzystaniem dodatku Solver: Artur Piątkowski WZ UW Strona 12
Nowe zmienne decyzyjne (zmienne dualne) osiągnęły wartość optymalną na poziomie:. Funkcja celu dla wartości optymalnych osiągnęła wartość 18 000 zł. Funkcja celu zadania dualnego ( jak funkcja celu zadania prymalnego ( ) gdzie: ) osiągnęła taką samą wartość ł Odp10.: Rozwiązaniem optymalnym zadania dualnego jest:. Przy takim rozwiązaniu optymalnym funkcja celu osiąga wartość równą ł. (11) Ile jest co najwyżej rozwiązań bazowych programu dualnego? Zapisujemy warunki ograniczające w postaci kanonicznej: Tworzymy macierz A, która jest macierzą współczynników stojących po lewej równań: * + Powstała macierz o dwóch rzędach m=2 oraz pięciu kolumnach n=5. Jeżeli n>m (5>3), to układ ma nieskończenie wiele rozwiązań, ale skończoną liczbę rozwiązań bazowych. Wykorzystując symbol Newtona, który jest funkcją dwóch argumentów całkowitych Artur Piątkowski WZ UW Strona 13
nieujemnych, można określić wszystkie kombinacje dwuelementowe (m=2) ze zbioru pięcioelementowego (n=5). W takim wypadku mamy co najwyżej: Odp11.: Program dualny posiada co najwyżej 10 rozwiązań bazowych. (12) Wymień zmienne bazowe oraz niebazowe programu dualnego. y 1 * oraz y 2 * to zmienne decyzyjne, które są bazowe, ponieważ ich wartość wynosi odpowiednio 10 i (są większe od zera). y 3 *, y 4 * oraz y 5 * to zmienne niebazowe, ponieważ przyjmują wartość równą zero. Zmienne bazowe y 1 *oraz y 2 * tworzą bazę optymalną programu dualnego! Odp12.: Program dualny posiada dwie zmienne bazowe: y 1 * =10, y 2 * = (baza optymalna) oraz trzy zmienne niebazowe: y 3 * =0, y 4 * =0, y 5 * =0. Artur Piątkowski WZ UW Strona 14
Literatura 1. Guzik B. (2009). Wstęp do badań operacyjnych. Wydawnictwo Uniwersytetu Ekonomicznego, Poznań. 2. Kukuła K. (1999). Badania operacyjne w przykładach i zadaniach. PWN, Warszawa. 3. Lipiec-Zajchowska M. Wspomaganie procesów decyzyjnych. Tom III. Badania Operacyjne, Wyd. C.H. Beck, Warszawa 2003. 4. Radzikowski W. (1994). Badania operacyjne w zarządzaniu. Wydawnictwa Uniwersytetu Warszawskiego, Warszawa. 5. Sikora W. (2008). Badania operacyjne. PWE, Warszawa. Artur Piątkowski WZ UW Strona 15