Badania operacyjne Dr Michał Kulej. Pokój 509, budynek B4 michal.kulej@pwr.wroc.pl Materiały do zajęć będa dostępne na stronie: www.ioz.pwr.wroc.pl/pracownicy/kasperski Forma zaliczenia wykładu: egzamin pisemny.
Literatura 1 H. Wagner. Badania operacyjne. PWE, Warszawa 1980. 2 T. Trzaskalik. Wprowadzenie do badań operacyjnych z komputerem. PWE, 2008 3 H. A. Taha. Operations Research. An Introduction. Pearson Prentice Hall, New Jersey 2007. 4 F. S. Hillier, G.J. Liberman: Introduction to Operations Research. Mc Graw Hill, 2001. 5 W. L. Winston. Operations Research: Applications and Algorithms, PWS-KENT Publishing Company, Boston, 1987. 6 H.P. Williams. Model Building in Mathematical Programming. Wiley, New York,1990.
Badania operacyjne Badania operacyjne sa dyscyplina naukowa zajmujac a się zastosowaniem metod matematycznych do wspomagania podejmowania decyzji. Nazwa jest tłumaczeniem z języka angielskiego terminu Operations Research. Dyscyplina ta została zapoczatkowana podczas II Wojny Światowej.
Metodologia badań operacyjnych Rzeczywisty świat Opis problemu Opisz problem słownie. Jakie są cele? Jakie ograniczenia muszą być spełnione? Budowa modelu Zbuduj model matematyczny dla problemu. Określ zmienne decyzyjne, funkcję celu, ograniczenia oraz dane wejściowe. Rozwiązanie modelu Zastosuj odpowiedni algorytm aby rozwiązać model. Analiza rozwiązania Zinterpretuj rozwiązanie, dokonaj jego dalszej analizy. Implementacja Zastosuj otrzymane rozwiązanie w praktyce
Przykład [Taha 2007] - opis problemu Przedsiębiorstwo Reddy Mikks produkuje dwa wyroby A i B z dwóch materiałów M1 i M2. W poniższej tabeli znajduja się dane na temat procesu produkcji: Zapotrzebowanie w t. na 1 t. Dostępny zapas A B (w t.) Materiał M1 6 4 24 Materiał M2 1 2 6 Zysk ($1000/t.) 5 4 Z badań marketingowych wynika, że popyt na wyrób B jest nie większy niż 2 tony i będzie można sprzedać co najwyżej o jedna tonę więcej wyrobu B niż A. Celem Reddy Mikks jest wyznaczenie wielkości produkcji wyrobów A i B, która maksymalizuje całkowity zysk przedsiębiorstwa.
Budowa modelu 1 Zmienne decyzyjne: x 1 - Liczba produkowanych ton wyrobu A x 2 - Liczba produkowanych ton wyrobu B 2 Funkcja celu: max z = 5x 1 + 4x 2 [Całkowity zysk] 3 Ograniczenia 6x 1 + 4x 2 24 [Zużycie M1] x 1 + 2x 2 6 [Zużycie M2] x 2 x 1 1 [Popyt] x 2 2 [Popyt] x 1 0 [Produkcja nieujemna] x 2 0 [Produkcja nieujemna]
Rozwiazanie modelu
Rozwiazanie modelu Reddy Mikks powinno produkować 3 tony wyrobu A i 1.5 tony wyrobu B, co daje maksymalny zysk w wysokości $21 000. Jest to jedyne optumalne rozwiazanie problemu.
Rozwiazanie modelu (AMPL) var x1 >=0; var x2 >=0; maximize zysk: 5*x1+4*x2; M1: 6*x1+4*x2<=24; M2: x1+2*x2<=6; Popyt1: x2-x1<=1; Popyt2: x2<=2; solve; display x1,x2; end;
Zadanie programowania liniowego W zadaniu programowania liniowego: 1 funkcja celu jest liniowa; 2 wszystkie ograniczenia maja postać nierówności lub równań liniowych; 3 wszystkie zmienne decyzyjne moga przyjmować wartości rzeczywiste. Wiele praktycznych problemów można sformułować w postaci zadania programowania liniowego. Ponadto zadanie programowania liniowego można efektywnie rozwiazać.
Zadanie programowania liniowego max (min) z = c 1 x 1 + c 2 x 2 + +c nx n [Funkcja celu] a 11 x 1 + a 12 x 2 + +a 1n x n (,=)b 1 [Ograniczenie 1] a 21 x 1 + a 22 x 2 + +a 2n x n (,=)b 2 [Ograniczenie 2]...... a m1 x 1 + a m2 x 2 + +a mnx n (,=)b m [Ograniczenie m] x i 0, i I [Nieujemność] x 1,...,x n nazywamy zmiennymi decyzyjnymi. Współczynniki c i, b j i a ij nazywamy parametrami (danymi wejściowymi, stałymi). I {1,...,n} określa podzbiór zmiennych, które musza przyjać wartości nieujemne.
Zadanie programowania liniowego Rozwiazanie (x 1,...,x n ), które spełnia wszystkie ograniczenia nazywamy rozwiazaniem dopuszczalnym. Rozwiazanie dopuszczalne(x1,...,x n) dla którego wartość funkcji celu jest największa (najmniejsza) nazywamy rozwiazaniem optymalnym.
Problem diety Dieta ma być zestawiona z czterech produktów: chleba, mleka, sera i jogurtu. Koszty jednostkowe oraz zawartości składników odżywczych w jednostce produktu podane sa w poniższej tabeli: Chleb Mleko Ser Jogurt Koszt jedn. 1.0 2.5 3.0 4.0 Cukier, g./jedn. 0.5 1 0.2 4 Tłuszcz, g./jedn. 0 5.0 9.0 7.0 Białko, g./jedn. 4.0 11.7 10.0 17.0 Kalorie, cal./jedn. 90 120 106 110 Celem jest ustalenie najtańszej diety zawierajaej co najmniej 300 kalorii, 10 g. cukru, 6 g. tłuszczu i 30 g. białka.
Problem diety 1 Zmienne decyzyjne: x 1,...,x 4 - liczba jednostek chleba, mleka, sera i jogurtu w diecie. 2 Funkcja celu: 3 Ograniczenia: min z = Całkowity koszt= x 1 + 2.5x 2 + 3x 3 + 4x 4 90x 1 + 120x 2 + 106x 3 + 110x 4 300 [Kalorie] 0.5x 1 + x 2 + 0.2x 3 + 4x 4 10 [Cukier] 5x 2 + 9x 3 + 7x 4 6 [Tłuszcz] 4x 1 + 11.7x 2 + 10x 3 + 17x 4 30 [Białko] x 1, x 2, x 3, x 4 0 Optymalna dieta składa się z 0.33 jednostek chleba i 2.46 jednostek jogurtu. Jej koszt wynosi 10.16
Modelowanie procesów produkcyjnych Korporacja Rylon produkuje cztery rodzaje perfum: Brute, Super Brute, Chanelle and Super Chanelle. Zyski jednostkowe z tych perfum wynosza odpowienio 7, 14, 6 i 10 dolarów. Z jednostki materiału wejściowego, którego cena wynosi 3 dolary za jednostę, można w ciagu 1 godziny wyprodukować 3 jednostki Brute i 4 jednostki Chanelle. Następnie w ciagu 3 godzin, jednostka Brute może być ulepszona do jednostki Super Brute a w ciagu 2 godzin jednostka Chanelle może być ulepszona do jednostki Super Chanelle. Korporacja może zakupić do 4000 jednostek materiału wejściowego i wykorzystać do 6000 godzin w procesie produkcji. Wyznacz optymalny plan produkcji.
Modelowanie procesów produkcyjnych 1 Zmienne decyzyjne: x 1,...,x 4 - liczba wytwarzanych jednostek Brute, Super Brute, Chanelle i Super Chanelle y - liczba jednostek zużytego materiału wejściowego 2 Funkcja celu: 3 Ograniczenia: max z = Całkowity zysk= 7x 1 + 14x 2 + 6x 3 + 10x 4 3y x 1 + x 2 3y [Brute i Super Brute] x 3 + x 4 4y [Chanelle i Super Chanelle] y 4000 [Dostępność materiału] y + 3x 2 + 2x 4 6000 [Dostępność godzin] x 1, x 2, x 3, x 4, y 0
Modelowanie procesów produkcyjnych Firma powinna zakupić 4000 jednostek materiału i wyprodukować 11333.3 jednostek Brute, 666.7 jednostek Super Brute i 16000 jednostek Chanelle. Nie powinna produkować Super Chanelle. Daje to łaczny zysk w wysokości 172 666.9$.
Wieloetapowy model produkcji i zapasów Fabryka wytwarza pewien wyrób w ciagu kolejnych czterech kwartałów. Zdolność produkcyjna w każdym kwartale wynosi 60 jednostek. Popyt na wyrób jest inny w każdym kwartale i musi być w całości zaspokojony. Wszystkie dane znajduja się w poniższej tabeli. Fabryka chce zminimalizować całkowity koszt. I II III IV Popyt 30 60 70 25 Koszt produkcji ($/jedn.) 55 50 50 55 Koszt magazynowania ($/jedn.) 2 2 3 -
Wieloetapowy model produkcji i zapasów 1 Zmienne decyzyjne: x 1, x 2, x 3, x 4 - wielkość produkcji w kwartałach 1,2,3,4; m 1, m 2, m 3 - stan magazynu na koniec kwartałów 1,2,3. 2 Funkcja celu: min z = Całkowity koszt = 55x 1 + 50x 2 + 50x 3 + 55x 4 + 2m 1 + 2m 2 + 3m 3 3 Ograniczenia: x 1 = 30+m 1 [Bilans w kwartale 1] m 1 + x 2 = 60+m 2 [Bilans w kwartale 2] m 2 + x 3 = 70+m 3 [Bilans w kwartale 3] m 3 + x 4 = 25 [Bilans w kwartale 4] x i 60, i = 1,...,4 [Zdolność produkcyjna] x 1, x 2, x 3, x 4, m 1, m 2, m 3 0
Wieloetapowy model produkcji i zapasów Optymalny plan produkcji/magazynowania: Minimalny koszt wynosi 9 615.
Model inwestycyjny Finco Invest. Corp. chce określić optymalna strategię inwestowania w ciagu najbliższych trzech lat. Obecnie dysponuje gotówka w wysokości 100 000$. Dostępne sa inwestycje A, B, C, D i E. Przepływy pieniężne z każdego zainwestowanego dolara w każda inwestycję sa podane w poniższej tabeli: 0 1 2 3 A -1$ +0.5$ +1$ - B - -1$ +0.5$ 1$ C -1$ +1.2$ - - D -1$ - - +1.9$ E - - -1$ +1.5$ Aby zapewnić dywersyfikację portfela, Finco chce aby co nawyżej 75 000$ było zainwestowane w każda inwestycję. Finco może trzymać niezainwestowana gotówkę w banku na rocznych lokatach oprocentowanych w wysokości 8%.
Model inwestycyjny 1 Zmienne decyzyjne: x A, x B, x C, x D, x E - gotówka zainwestowana w A,B,C,D, i E; y 0, y 1, y 2 - gotówka ulokowana na lokacie bankowej w chwilach 0, 1 and 2. 2 Funkcja celu: 3 Ograniczenia: max z = Gotówka w chwili 3= x B +1.9x D +1.5x E +1.08y 2 x A + x C + x D + y 0 = 100000 [Bilans w chwili 0] 0.5x A + 1.2x C + 1.08y 0 x B y 1 = 0 [Bilans w chwili 1] x A + 0.5x B + 1.08y 1 x E y 2 = 0 [Bilans w chwili 2] x A, x B, x C, x D, x E 75000 [Limit inwestycyjny] x A, x B, x C, x D, x E, y 0, y 1, y 2 0
Model inwestycyjny Optymalne przepływy pieniężne (firma nie powinna trzymać żadnych pieniędzy w banku): 0 1 2 3 A -60 000$ +30 000$ +60 000$ - B - -30 000$ +15 0000$ +30 000$ C 0$ +0$ - - D -40 000$ - - +76 000$ E - - -75 000$ +112 500$ Gotówka na końcu wynosi 218 500$.