1 / 40

DMBO

DMBO. Programowanie liniowe 2. Rozwiązywanie problemów liniowych – ogólny przypadek. Dotychczas – forma standardowa Maksymalizacja Ograniczenia postaci ≤ Prawa strona ograniczeń ≥ 0 Wszystkie zmienne ≥ 0

solada
Télécharger la présentation

DMBO

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DMBO Programowanie liniowe 2

  2. Rozwiązywanie problemów liniowych – ogólny przypadek • Dotychczas – forma standardowa • Maksymalizacja • Ograniczenia postaci ≤ • Prawa strona ograniczeń ≥ 0 • Wszystkie zmienne ≥ 0 • Punkt (0,0,…,0) zawsze jest dopuszczalnym rozwiązaniem wierzchołkowym przy formie standardowej • A co jeśli zadanie nie jest w formie standardowej?

  3. Minimalizacja • Przekształć w maksymalizację: • min Z = 12x1 + 5x2 – 7x3 • max (–Z) = –12x1 – 5x2 + 7x3 • Dla przypomnienia wstaw -1 w kolumnie Z tabelki simplex • Po rozwiązaniu programu liniowego w postaci max: • Pomnóż funkcję celu przez -1 • Wartości zmiennych wzięte z tabelki są właściwym rozwiązaniem • Drugi sposób – mniej popularny – rozwiązuj simplex w postaci minimalizacji ze zmienionymi regułami

  4. Ograniczenia w postaci równości • W problemie firmy Rowerek: • Wprowadzamy sztuczną zmienną a1[artificialvariable] • Sztuczna zmienna różni się od zmiennej luzu – musimy ją zmusić, aby się wyzerowała, ponieważ punkt (x1,x2,s1,s2,a1) = (0,0,2,3,4) nie jest dopuszczalny.

  5. Simplex dwufazowy • Do tego służy 2-fazowy algorytm simplex • Faza 1: minimalizuj wartości wszystkich sztucznych zmiennych (u nas tylko a1); jeśli minimum wynosi 0, wówczas mamy dopuszczalne rozwiązanie wierzchołkowe … • Faza 2: … z którego zaczynamy szukać rozwiązania problemu właściwego tak jak wcześniej

  6. Faza 1 • Przekształcamy • min W = a1 + a2 + a3 + … • max –W + a1 + a2 + a3 + … = 0 • Właściwa funkcja celu również jest zapisywana w tabelce obok powyższej • Pierwsza tabelka simplex fazy 1 nie jest nigdy w formie właściwej, ponieważ sztuczne zmienne, które są na początku zmiennymi bazowymi, pojawiają się dwa razy w kolumnie • Potrzebna jest wstępna obróbka

  7. Faza 1 • Przekształcamy w formę właściwą • 4 jednostki naruszenia ograniczenia • d

  8. Faza 1 • Rozwiązując również pamiętamy o oryginalnej funkcji celu • Zakończyliśmy fazę 1. Musimy kontynuować fazę 2, ponieważ jest ujemny współczynnik w funkcji celu ph2

  9. Faza 2 • Rozwiązanie: (x1,x2,s1,s2) = (2,2,0,1); Z=50

  10. Co się wydarzyło? • Zaczynamy w wierzchołku, który jest niedopuszczalny dla fazy 2, ale jest dopuszczalny dla fazy 1 • Fazę 1 kończymy w wierzchołku, który jest dopuszczalny zarówno w fazie 1, jak i w fazie 2

  11. Zadanie sprzeczne • Jeśli faza 1 kończy się i nadal wartość W jest dodatnia – zadanie jest sprzeczne • Jak sprawdzić dlaczego: • IIS – irreducibleinfeasible set – zazwyczaj bardzo mały podzbiór wszystkich ograniczeń, które łącznie są sprzeczne, ale • Wyrzucenie jednego lub więcej ograniczeń z tego zbioru skutkuje zadaniem niesprzecznym

  12. Ograniczenia typu ≥ z dodatnią prawą stroną • Ograniczenia tego typu powodują, że początek układu współrzędnych jest niedopuszczalny • Nie możemy po prostu pomnożyć przez -1, bo wtedy prawa strona będzie ujemna • Rozwiązanie: wprowadzamy zmienną nadmiaru [surplusvariable] 3x1 + 5x2 ≥ 20 ⇒ 3x1 + 5x2 − s1 = 20. • Zmienna nadmiaru nie może być użyta jako zmienna bazowa ograniczenia, w którym występuje, ponieważ jest -1 zamiast +1 • Ale ograniczenie jest teraz w postaci równości, więc możemy je traktować tak, jak inne ograniczenia w tej postaci 3x1 + 5x2 − s1 + a1 = 20

  13. Ujemna prawa strona nierówności • Problem – zmienna bazowa dla tego ograniczenia musiałaby przyjąć ujemną wartość, a nie może • Rozwiązanie: pomnóż przez -1 i powstałe ograniczenie typu ≥, =, ≤ odpowiednio potraktuj

  14. Przykładowa konwersja min Z = 15x1 + 10x2 ← minimalizacja zamiast maksymalizacji x1 ≤ 2 x2 = 3 ← równość zamiast ≤ x1 + x2 ≥ 4 ← ≥ zamiast ≤ max (-W) + a1 + a2 = 0 [funkcja celu fazy 1] max (-Z) + 15x1 + 10x2 =0 [funkcja celu fazy 2] x1 + s1 = 2 x2 + a1 = 3 x1 + x2 – s2 + a2 = 4

  15. Zmienne, które mogą być ujemne • Dwie możliwości: • Ograniczenie dolne na ujemne wartości • Na przykład poziom produkcji nie może spaść o więcej niż Lj od aktualnego poziomu xj ≥ Lj • Rozwiązanie – zmiana zmiennych xj = xj′ + Lj • Zmienna bez ograniczeń – na następnej stronie

  16. Zmienna bez ograniczeń • Zmienna nieograniczona xjjest zastąpiona różnicą dwóch zmiennych nieujemnych xj = xj+ – xj- • Simplex automatycznie przyporządkuje tylko jednej z tych zmiennych niezerową wartość • Kolumny dla tych zmiennych są swoim lustrzanym odbiciem (w jednej -1 w drugiej +1), więc obie zmienne nie mogą być jednocześnie bazowe • Jeśli xj+ > 0 to xj= xj+ • Jeśli xj- > 0 to xj = - xj-, • Jeśli xj+=xj- = 0 to xj = 0. • Jeśli mamy wiele zmiennych nieograniczonych, używamy dla każdej tej samej zmiennej xj-. W rozwiązaniu xj- jest wartością bezwględną najbardziej ujemnej zmiennej. Wówczas zmienne xj+ mówią, jak bardzo dana zmienna przewyższa tą najbardziej ujemną wartość

  17. Tropikalnebłyszczyki do ust– Jessica Simpson i Urban Chic Boutique • Dear Students of DMBO class at WSE, My name is Jessica Simpson. I have been going through some tough times recently and am having a real problem with one of my cosmetic lines. The info for the line is on the next page. Recently though costs are changing based on market demand in addition to highly fluctuating resource costs. My problem is this we currently have an LP that we solve to find the optimal amount to produce of each product. However, every time a parameter changes, I am always forced to resolve the LP and this takes too long. I was hoping you guys could find a better way. Lately I have just been out of it. For example, Nick and I decided to split our Hummer in half, and now I need to buy a new one. Oh yeah, about the LP it seems to have been misplaced when I was moving out of my Malibu house. Please Help! -Jessica http://www.urbanchic-boutique.com/dhop/jessica-simpson-dessert-treats/jessica-simpson-tropical-treats-kissable-lip-shine/prod_89.html

  18. Dane do problemu • Jessica sprzedaje 4 rodzajebłyszczyka do ust. • Dokładnie 950 sztukwszystkichmusibyćwyprodukowane • Kliencidomagająsięprzynajmniej 400 sztukbłyszczyka Mango • Dostępnymateriał ≤ 4600 • Dostępnapraca≤ 5000

  19. ZadanieprogramowaniaLiniowego • Ilośćwyprodukowanegobłyszczyka: • X1: brzoskwiniowy • X2: ananasowy • X3: pomarańczowy • X4: mango max

  20. Rezultat • Co możesięzmienićw modelu?: • Cenyproduktów • Kosztymateriałów • Ilośćdostępnychmateriałów • Mogązostaćwprowadzonenoweprodukty • Pytanie: Jakmogęstwierdzić, czymojerozwiązanie jest ciągleoptymalnepozmianie?

  21. Raportwrażliwości • Czypowinienwyglądaćtak?

  22. Głównebłędy • Brakzaznaczenia “model liniowy” (lub “Simplex LP”) • Brakzaznaczenia “przyjmijnieujemne” • Zakładamynarazie, żeniemamy do czynieniazezdegenerowanymrozwiązaniem

  23. Właściwyraportwrażliwości

  24. Problem 1: zmianawspółczynnikafunkcjiceluprzyzmiennejbazowej • “Hi guys I was at the market and noticed the price of ananaswent up by 50 cents. That means if I raise the price of the ananaslip shine by 50 cents I will make more money. Right?” Jessica • Rozwiązanie: • Sprawdź, czyzmianawspółczynnikafunkcjicelu jest w zakresiedopuszczalnejzmiany • W naszymprzykładziemieścisię: 50 c < 66.66 c (allowable increase) • Jeślitak, to optymalnerozwiązaniebazowe(optimal basic feasible solution) sięniezmieni. Obliczzmianęzysku. • W naszymprzykładziezmianazysku to 0.5*$400 = $200 • Ćwiczenie: Przypuśćmy, żecenabrzoskwniniwzrosła o 60 c. Jakie jest nowerozwiązanie i zmianazysku?

  25. Problem 2: Zmianawspółczynnikafunkcjiceluprzyzmiennejniebazowej • “Hello Class, I went to the store to buy some of my peach gloss and found out none of it was being produced because it wasn’t profitable. What should I charge to make them in the optimal mix?”, Jessica • Musimyspojrzećna “reduced cost”: • Jeśli “reduced cost” przyzmiennej xiwynosi –ri, znaczy to, żezwiększenie “kosztu” przytejzmiennej o ridoprowadzi do optymalnejbazy, którabędziezawierać xi. • W naszymprzykładziemusimyzwiększyćcenęprzynajmniej o $1 (do $5) zanim x1znajdziesię w optymalnejbazie

  26. Problem 2 – pytaniakontrolne • Co sięstaniejeślipodniesiemycenębrzoskwiniowegobłyszczyka do $5? • Bedziemyobojętnipomiędzywłączeniemtegobłyszczyka do bazy – będziewięcwielerozwiązańoptymalnych • Co to jest “reduced cost” zmiennejbazowej? • Dlaproblemówmaksymalizacjikosztytesąniedodatnie. Mówiąnam, jakmocnotrzebapodnieśćcenęproduktu, abysięopłacało go produkować. • Poniżej jest tabelka simplex optymalnegorozwiązania. Jaki jest “reduced cost” zmiennej c? • “Reduced cost” przyzmiennej c wynosi -2.

  27. Problem 3: Zmianawspółczynnikaprawejstronyograniczenia • “Uggh! You won’t believe this. After seeing me on Newlyweds, MTV decided it would be profitable to make a reality show where instead of having 4600 of raw materials, I have only 4499 .What should I do (that is, what happens to the optimal solution)?”, Jessica z pomocądoradcy • Rozwiązanie: • Sprawdź, czyzmianawspółczynnikaprawejstronyograniczeń jest w zakresiedopuszczalnejzmiany • W naszymprzykładzie 101<150, więcsięmieści • Jeślitak, optymalnabazasięniezmieni, ale wartościzmiennychbazowychsięzmienią. Możemywykorzystać “shadow price” ograniczenia, abypoliczyćzmianęoptymlanejwartościfunkcjicelu • “Shadow price” przyograniczeniumateriałowymwynosi 1. Zatemzmianaoptymalnejwartościfunkcjiceluwynosi -101*1=-101

  28. Pytaniakontrolne • Jaka jest zmianaoptymalnejwartościfunkcjicelujeślidostępnailośćgodzinpracywynosi 4800? • Mieścisię w dopuszczalnymzakresiezmiany, bazapozostajeniezmieniona. “Shadow price” wynosi 0, zatemzmianawartościfunkcjiceluwynosi 0 • Co możnapowiedzieć o “shadow price” ograniczenia “≥”? A co o ograniczeniutypu “=”? • Ograniczenie “≥” zawsze ma niedodatnią “shadow price”. Intuicyjnie, podniesienieprawejstrony, bardziejograniczazbiórdopuszczalny. O ograniczeniu “=” nicniemożnapowiedzieć. “Shadow price” możebyćdodatnia, ujemnalub zero.

  29. Problem 4: Zakupnowychzasobów • “Guys, My sister Ashleejust lost her recording contract. I know, it’s shocking. Anyway, she needs a job; she is willing to work for 1 hour. She also said she could convert her unit of talent into a unit of raw material, whatever that means. What is the most I should pay for the unit of raw materials and for her?”, Jessica • Rozwiązanie: Obie możliwezmianysą w zakresiedopuszczalnychzmian • “Shadow price” ograniczeniamateriałowegowynosi 1, zatemzyskwzrósłby o $1, gdybyśmysięzgodzili • “Shadow price” ograniczeniapracywynosi 0, więczatrudnienie Ashley nicnie da.

  30. Problem 5: wprowadzenienowegoproduktu • “Hey Yall, I just got the best idea for a new flavor of Lip Gloss called Limonette. To make some, 8 units of raw material are needed and 7 hours of labor are needed. If I sell it for $7, will any be produced?”, Jessica • Rozwiązanie: • Sprawdź, czyzmianaprawejstrony jest w zakresiedopuszczalnejzmiany. • Oblicz “reduced cost” wgwzoru: • Jeślijest nieujemny, wtedyprodukujemy • W naszymprzykładzie: 7-(3)(1)+(2)(0)-(1)(8)-(0)(7)=-4 • Problem kontrolny: Jakamusiałabybyćcena, abysięopłacałoprodukować? Odpowiedź: 11

  31. Bo mango niechodzinam o mango “reduced cost”: 7 - [ 3 * 1 – 2 * 0 + 1 * 8 + 0 * 7 ] = -4 Bo chcemydodatkowąjednostkęłącznie

  32. Problem 6: Parametry • “Guys, what would a graph of the optimal objective value look like that used the amount of available raw materials as aparameter?” Na pewnonie Jessica Simpson • Rozwiązanie: W zakresiedopuszczalnejzmiany, tj. w przedziale(4450,4850) zysk jest funkcjąliniowązasobówmateriałowych z nachyleniemrównymwysokości “shadow price”, czyli 1 • Następnienależyobliczyćponownie problem dlazasobówmateriałowychrównychnp. 4449, dopuszczalnyspadekwynosiwówczas 549, a “shadow price” wynosi 2. • Następnieobliczamyproblem dlazasobówmateriałowychrównychnp. 3899. Nie ma rozwiązaniadopuszczalnego. • I nakoniecliczymydla 4851. Dopuszczalnywzrostwynosi 399 a “shadow price” wynosi 0. • W poszczególnychprzedziałachfunkcja jest liniowa, wgogólnejregułybędzie to funkcjawklęsła

  33. Funkcjazysku w zależności od zasobówmateriałowych

  34. Problem zdegenerowany • 3 dziwnezachowaniamogąsięzdarzyć, gdybazowerozwiązaniedopuszczalne (BFS) jest zdegenerowane: • W zakresie, w którymbaza jest niezmiennaprzynajmniejjednooraniczeniebędziemiałozerowydopuszczalnywzrostlubspadek(allowable increase/decrease) To znaczy, żeprzynajmniejdlajednegoograniczenia, “shadow price” możenampowiedzieć o nowejwartościalbodlawzrostualbodlaspadku, ale niedlaobu • Dlaniebazowejzmiennej, abystałasiębazowa (dodatnia), współczynnikfunkcjiceluprzytejzmiennejniebazowejmożemusibyćpodniesiony o więcejniżjej “reduced cost” • Podniesieniewspółczynnikafunkcjicelu o więcejniżjegodopuszczalnywzrostlubspadekmożeniezmienićoptymalnegorozwiązania • Zapamiętaj, abyzawszenajpierwsprawdzić, czyaktualnerozwiązanie jest zdegenerowane

  35. Przydatnetechniki • Minimax i maximin, np. min max(y1, y2,…, yM) Wprowadzamynowązmienną z, zmieniamyfunkcjęceluna min zi dodatkoweograniczeniaz ≥ yi, dla i=1,2,…,M • Minimalizacjawartościbezwględnej, min |x| Zapisujemyjakomin max (x,-x), a dalejjakpowyżej • Ograniczenia w postaci min/max/wartośćbezwględna Ograniczenieminki=1(ciTx) ≥ α zapisujemyjako ciTx) ≥ α, dla i=1,2,…,k Taksamoograniczeniemaxki=1 (ciTx) ≤ α zapisujemyjako ciTx) ≤ α, dla i=1,2,…,k Z koleiograniczenie|cTx|≤ α zapisujemyjakomax (cTx,-cTx)≤ α Niestetyograniczeń: minki=1 (ciTx) ≤ α, maxki=1 (ciTx) ≥ α, |cTx| ≥ α nie da sięzamienićnaliniowe.

More Related