Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Programowanie liniowo-dyskretne Modele liniowe z zmiennymi rzeczywistoliczbowymi należą do najprostszych i najbardziej popularnych modeli stosowanych w podejmowaniu decyzji Jeżeli zmienne decyzyjne lub inne zmienne pojawiające się w modelu (zmienne pomocnicze, pośrednie) maja dziedzinę ograniczoną do przestrzeni dyskretnych Minusy - Komplikacja struktury modeli, mniej efektywne metody rozwiązywania Plusy – silne narzędzie modelowania złożonych zależności, w szczególności warunków logicznych, istotnych w problemach decyzyjnych Modele problemów decyzyjnych – przykłady
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 2 Zastosowanie zmiennych dyskretnych Zmienne dyskretne: zmienne całkowitoliczbowe (wartości: liczby całkowite), zmienne binarne (wartości: 0, 1) 1. Do wyrażenia ilości pewnych niepodzielnych jednostek. Na przykład: liczba samolotów, samochodów, ludzi,.... Przykład W pewnej niedużej miejscowości A znajduje się szkoła gminna. 72 uczniów uczęszczających do tej szkoły mieszka poza miejscowością A i organizuje się dla nich dowóz do szkoły. Na obszarze dojazdu znajdują się dwa podstawowe przystanki w punktach B i C. Miejsca zamieszkania uczniów dojeżdżających znajdują się: 42 przy przystanku C, 6 pomiędzy przystankiem C i B, 20 przy przystanku B i 4 pomiędzy przystankiem B i A.
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 3 Firma transportowa dysponuje dwoma rodzajami autobusów: na 35 i na 50 miejsc. Ustaliła ona następujące ceny kursów dla każdego z odcinków trasy dojazdu do szkoły: BA 39j.p. (35miejsc) 50.50j.p. (50miejsc) CA 54j.p. (35miejsc) 68.00j.p.) (50miejsc) CB 45j.p. (35miejsc) 57.50j.p. (50miejsc) Określić strategię wynajęcia autobusów (jaki typ na jaki odcinek) minimalizującą koszty wynajęcia 3km 5km A B C
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 4 Opcje decyzyjne: Liczba autobusów dla transportu na poszczególnych odcinkach Liczba autobusów 35 miejsc 50 miejsc Odcinek BA BA 35 BA 50 Odcinek CA CA 35 CA 50 Odcinek CB CB 35 CB 50 3km 5km A B C
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 5 Przewóz na odcinku BA: 3km 5km A B C Przewóz na odcinku CB: Warunek wartości całkowitoliczbowych:
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 6 2. Do wskazania, która z możliwych opcji powinna być wybrana. Zwykle tego rodzaju zastosowanie dotyczy zmiennych binarnych. Na przykład: δ = 1 wskazuje, że magazyn powinien być zbudowany, a δ = 0, że nie powinien. Możliwe jest też takie zastosowanie zmiennych całkowitoliczbowych. Na przykład: γ = 0 wskazuje, że magazyn nie powinien być budowany, γ = 1 wskazuje, że magazyn typu A powinien być zbudowany, γ = 2, że magazyn typu B powinien być zbudowany.
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 7 3. Do wskazania, że pewna zmienna ciągła (rzeczywistoliczbowa) modelu przyjęła określoną wartość. Na przykład, załóżmy, że x wyraża ilość składnika jaka ma być użyta w mieszaninie. Możemy chcieć użyć zmiennej wskaźnikowej δ dwuwartościowej (binarnej) dla rozróżnienia pomiędzy stanem, kiedy x=0 i stanem, kiedy x> 0. Przypadek 1: Chcemy, aby niezerowa wartość zmiennej decyzyjnej x>0 pociągała za sobą ustawienie wartości 1 zmiennej wskaźnikowej (flagi) (2) Chcemy, żeby zachodziła implikacja (1)(1) Realizuje to układ warunków algebraicznych M oznacza stałą (stały współczynnik, parametr) wyrażający znaną górną granicę dla zmiennej x
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 8 Częściej niż warunek (3) wyrażający w istocie stwierdzenie; jeżeli δ = 1 składnik wyrażany przez x występuje w mieszaninie, interesuje nas stwierdzenie jeżeli δ = 1 składnik wyrażany przez x występuje w mieszaninie w ilości większej niż m, czyli Nierówności (2) nie wymuszają implikacji odwrotnej (3) Czyli (2) nie jest równoważne warunkowi tożsamości (4) Implikację (4) można wyrazić algebraicznie (5) m oznacza stałą (stały współczynnik, parametr) wyrażający znaną dolną granicę dla zmiennej x
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 9 Zmienna δ – flaga dodatniości zmiennej x Zastosowania: a) Modelowanie wymagań progowych wartości dodatnich pewnych zmiennych – typowe: ograniczenie na minimalny poziom aktywności, jeżeli dany proces jest aktywny Przykłady: (i) w zagadnieniach transportowych – wymaganie minimalnej wielkości ładunku dla uruchomienia połączenia, (ii) w zagadnieniach zarządzania finansowego – wymaganie minimalnej wartości lokaty dla jej uruchomienia Próg uruchomienia lokaty Np.
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 10 b) Modelowanie kosztów stałych Przykłady: (i) zagadnienie transportowe z kosztami stałymi: koszt transportu towaru od dostawcy i do odbiorcy j składa się z kosztu stałego d ij uruchamiania tego połączenia oraz kosztu zmiennego proporcjonalnego do ilości towaru z kosztem jednostkowym c ij K x ij
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 11 Kryterium oceny opcji z występowaniem w ograniczeniach
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 12 (ii) zagadnienie mieszanki x A – udział składnika A w mieszance x B – udział składnika B w mieszance Poza zwykłymi warunkami dla tych i innych zmiennych zapewniającymi odpowiednią jakość mieszanki wymagane jest spełnienie warunku: jeżeli składnik A jest użyty w mieszance wówczas również składnik B musi być użyty Warunek Nierówność
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 13 Wymagane spełnienie warunku Musimy ustalić pewien poziom m, poniżej którego będziemy uważali, że składnik B nie występuje w mieszance, np. m=0.001 Wówczas jest równoważny ostatniej implikacji
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania Do wskazania, że pewne ograniczenie jest spełnione Chcemy kontrolować, czy ograniczenie jest spełnione, czy nie? a) Implikacja może być wyrażona algebraicznie gdziegórnym ograniczeniem dla wyrażenia (6) (7)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 15 b) Implikacja Możemy go zapisać równoważnie czyli i takie same trudności jak dla wyrażenia x > 0 (8) (8a)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 16 Przechodzimy na zapis jako ε – mała liczba Wówczas (8a) może być zapisane Równoważna nierówność W (9) m oznacza stałą (stały współczynnik, parametr) wyrażający znaną dolną granicę dla wyrażenia (9)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 17 Chcemy kontrolować, czy ograniczenie jest spełnione, czy nie? Odpowiednie nierówności można uzyskać przez transformację powyższej nierówności do nierówności Odpowiedniki (7) i (9) mają postać (10)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 18 (11)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 19 Chcemy kontrolować, czy ograniczenie jest spełnione, czy nie? Spełnienie warunku uzyskiwane przez jednoczesne spełnienie warunków
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 20 a zatem postawienie nierówności (7) i (10) jednocześnie
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 21 Spełnienie warunku inaczej oznacza, przy δ = 0 nierówność lub jest niespełniona Można to wyrazić przez warunki (9) i (11) z dwoma zmiennymi δ oraz δ (11a) (9a) z warunkiem (12)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 22 Warunki logiczne i zmienne binarne Pokazaliśmy możliwość wprowadzenia zmiennych binarnych jako zmiennych decyzyjnych lub zmiennych wskaźnikowych (flagowych) Idea: wykorzystać te zmienne do przedstawienia warunków logicznych wiążących różne decyzje lub stany za pomocą ograniczeń liniowych z tymi zmiennymi Algebraiczne modele prostych warunków logicznych: Warunek logiczny Model algebraiczny
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 23 Przykład Jeżeli produkty A lub B (lub obydwa) są produkowane, wówczas co najmniej jeden z produktów C, D lub E też musi być produkowany Niech P i oznacza stwierdzenie Produkt i jest produkowany (i jest A, B, C, D lub E) Chcemy spełnienia Wprowadzamy dwie zmienne wskaźnikowe jeżeli produkt i jest wytwarzany jeżeli stwierdzenie jest prawdziwe
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 24 Stwierdzenie możemy przedstawić Stwierdzenie możemy przedstawić Wymagamy po pierwsze Korzystając z przedstawionych wcześniej wyników, zapisujemy to algebraicznie (a)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 25 Wymagamy po drugie Korzystając z przedstawionych wcześniej wyników, zapisujemy to algebraicznie Ścieżka postępowania wprowadzić zmienne binarne δ A, δ B,.... oraz związać je z zmiennymi rozważanego problemu dodać dodatkowe ograniczenia do pierwotnego problemu (b)
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 26 Specjalne zbiory uporządkowane Dwa rodzaje SOS1 (special ordered set of type 1) – specjalny zbiór uporządkowany typu 1 SOS2 (special ordered set of type 2) – specjalny zbiór uporządkowany typu 2 SOS1 – uporządkowany zbiór zmiennych (ciągłych lub dyskretnych) w którym jednocześnie tylko jedna zmienna może przyjmować wartość niezerową SOS2 uporządkowany zbiór zmiennych (ciągłych lub dyskretnych) w którym jednocześnie tylko co najwyżej dwie sąsiednie zmienne mogą że przyjmować wartości niezerowe
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 27 Zastosowania: 1. wybór tylko jednej opcji (np. lokalizacja inwestycji) 2. aproksymacja wieloodcinkowa
Komputerowe Wspomaganie Decyzji 2007/2008 Modele problemów decyzyjnych – przykłady II Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 28 f0f0 f1f1 f2f2 f3f3 f4f4 f5f5 f6f6 Warunki na dodatkowe zmienne λ