Wprowadzenie do badań operacyjnych Hanna Furmańczyk 10 października 2008
Badania operacyjne (ang. operations research) - dyscyplina naukowa związana z teorią decyzji pozwalająca wyznaczyć metodę i rozwiązanie określonych problemów związanych z podjęciem optymalnych decyzji. 1
Literatura 1. E. Ignasiuk ed., Badania operacyjne, Polskie Wydawnictwo Ekonomiczne, Warszawa 2001. 2. D. Kopańska-Bródka ed., Metody badań operacyjnych w zadaniach. Problemy liniowe, Wyd. Akademii Ekon. w Katowicach, 2006. 3. J. Błażewicz, W.Cellary, R.Słowiński, J.Węglarz, Badania operacyjne dla informatyków, WNT 1983. 2
Przykład Rolnik [1] Rolnik posiada 20ha ziemi. Może on hodować tuczniki, uprawiać ziemniaki i jęczmień. Jeden tucznik w okresie tuczu zjada 6q (1q=100kg) ziemniaków, 5q jęczmienia i wymaga 10h obsługi. Uprawa 1ha ziemniaków - 100h, plon 200q. 1h jęczmienia - 20h, plon 40q. Jęczmień przeznacza rolnik tylko na cele paszowe, ziemniaki - pasza i na sprzedaż. Cena sprzedaży: 1 tucznik - 250zł, 1q ziemniaków - 10zł. Może nająć siłę roboczą: 3zł/h. Własny zasób robocizny: 1800h. Należy ustalić plan dający maksymalny dochód. 3
Modelowanie problemów decyzyjnych - sytuacje decyzyjne, - decydent - osoba podejmująca decyzję, - decyzje dopuszczalne, - decyzja optymalna, - kryterium wyboru (oceny) 4
Przykład 2. [1] Możemy podjąć jedną z trzech decyzji inwestycyjnych. Nakłady inwestycyjne oraz oczekiwany roczny zysk osiągnięty z tych decyzji przedstawiono poniżej. Która decyzja jest optymalna? Decyzje A B C Nakłady inwestycyjne w mln zł 40 50 30 Zysk w mln zł 8 4 6 5
Przykład 2. [1] Możemy podjąć jedną z trzech decyzji inwestycyjnych. Nakłady inwestycyjne oraz oczekiwany roczny zysk osiągnięty z tych decyzji przedstawiono poniżej. Która decyzja jest optymalna? Decyzje A B C Nakłady inwestycyjne w mln zł 40 50 30 Zysk w mln zł 8 4 6 Brak kryterium oceny! - minimalizacja nakładów - maksymalizacja zysku 6
Formułowanie modelu matematycznego - warunki ograniczające - układy równań lub nierówności - wielkości dane - parametry - wielkości do ustalenia - zmienne decyzyjne - warunki dotyczące zmiennych: znak zmiennych, typ zmiennych - decyzja dopuszczalna - układ wartości zmiennych, które spełniają wszystkie warunki - kryterium wyboru: funkcja zmiennych decyzyjnych mierząca cel, który chce osiągnąć decydent (f-cja celu) - decyzja optymalna: taka decyzja dopuszczalna, dla której funckcja celu przyjmuje najkorzystniejszą wartość (min, max) 7
Przykład Rolnik [1] Rolnik posiada 20ha ziemi. Może on hodować tuczniki, uprawiać ziemniaki i jęczmień. Jeden tucznik w okresie tuczu zjada 6q (1q=100kg) ziemniaków, 5q jęczmienia i wymaga 10h obsługi. Uprawa 1ha ziemniaków - 100h, plon 200q. 1h jęczmienia - 20h, plon 40q. Jęczmień przeznacza rolnik tylko na cele paszowe, ziemniaki - pasza i na sprzedaż. Cena sprzedaży: 1 tucznik - 250zł, 1q ziemniaków - 10zł. Może nająć siłę roboczą: 3zł/h. Własny zasób robocizny: 1800h. Należy ustalić plan dający maksymalny dochód. Zmienne decyzyjne: x 1 - liczba wyhodowanych (sprzedanych) tuczników, x 2 - obszar uprawy ziemniaków (ha), x 3 - obszar uprawy jęczmienia (ha), x 4 - ilość wynajętej robocizny (h), x 5 - ilość sprzedanych ziemniaków (q) 8
Przykład Rolnik [1] Rolnik posiada 20ha ziemi. Może on hodować tuczniki, uprawiać ziemniaki i jęczmień. Jeden tucznik w okresie tuczu zjada 6q (1q=100kg) ziemniaków, 5q jęczmienia i wymaga 10h obsługi. Uprawa 1ha ziemniaków - 100h, plon 200q. 1h jęczmienia - 20h, plon 40q. Jęczmień przeznacza rolnik tylko na cele paszowe, ziemniaki - pasza i na sprzedaż. Cena sprzedaży: 1 tucznik - 250zł, 1q ziemniaków - 10zł. Może nająć siłę roboczą: 3zł/h. Własny zasób robocizny: 1800h. Należy ustalić plan dający maksymalny dochód. Zmienne decyzyjne: x 1 - liczba wyhodowanych (sprzedanych) tuczników, x 2 - obszar uprawy ziemniaków (ha), x 3 - obszar uprawy jęczmienia (ha), x 4 - ilość wynajętej robocizny (h), x 5 - ilość sprzedanych ziemniaków (q) 9
x 2 + x 3 20 (1) 6x 1 + x 5 200x 2 (2) 5x 1 40x 3 (3) 10x 1 + 100x 2 + 20x 3 x 4 1800 (4) x 1, x 2, x 3, x 4, x 5 0 (5) x 1 całkowite (6) 250x 1 + 0x 2 + 0x 3 3x 4 + 10x 5 max (7) 10
Przykład Dieta dla studenta, w stołówce [1] n różnych produktów spożywczych P 1, P 2,..., P n, którymi można żywić studentów. Wymaga się, aby dzienna dawka żywności dostarczała określoną ilość takich składników odżywczych, jak białko, węglowodany, itp. (m składników: S 1, S 2,..., S m ). Zakładamy, że student powinien otrzymać co najmniej b 1 jednostek składnika S 1, b 2 jednostek składnika S 2, itd. Nadmiar szkodzi, więc możemy każdego składnika S i spożyć co najwyżej d i jednostek. a ij - ilość i-tego składnika w produkcie P j. P 1 P 2 P n S 1 a 11 a 12 a 1n S 2. a 21. a 22. a 2n. S m a m1 a m2 a mn 11
c j - cena jednostkowa j-tego produktu g j - minimalna ilość j-tego produktu w diecie (wpływ na urozmaicenie diety) h j - maksymalna ilość j-tego produktu w diecie Minimalizujemy koszt diety.
Zmienne decyzyjne: x j - ilość jednostkowa produktu P j w diecie Ile dostarczamy składnika S i? a 11 x 1 + a 12 x 2 + + a 1n x n b 1 a 1j x j d 1 b i a ij x j d i (i = 1, 2..., m) g j x j h j (j = 1, 2,..., n) c j x j min 12
Programowanie liniowe (PL) - wszystkie ograniczenia muszą być liniowe - wszystkie zmienne muszą być ciągłe c j x j max (min) a ij x j b i (i = 1, 2,..., m) a ij x j b i (i = m + 1,..., p) a ij x j = b i (i = p + 1,..., r) x j 0 (j + 1, 2,..., n 1 ), n 1 n 13
Postać standardowa oraz kanoniczna PL Postać standardowa PL(max) PL(min): c j x j max a ij x j b i (i = 1, 2,..., m) c j x j min a ij x j b i (i = 1, 2,..., m) x j 0 (j = 1, 2,..., n) x j 0 (j = 1, 2,..., n) Postać kanoniczna (wersja macierzowa): cx max(min) ax = b, x 0 14