A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe ZAGADNIENIE DUALNE Z każdym zagadnieniem liniowym związane jest inne zagadnienie nazywane dualnym. Podamy teraz teraz jak budować zagadnienie dualne, interpretacje i związki jakie zachodzą między tymi zagadnieniami. Rozważmy zagadnienie liniowe(zagadnienie to nazywamy prymalnym) o postaci kanonicznej: maxz = c x + c 2 x 2 + + c n x n a x + a 2 x 2 + + a n x n b a 2 x + a 22 x 2 + + a 2n x n b 2... a m x + a m2 x 2 + + a mn x n b m x j 0 (j =, 2,...,n) Zagadnienie dualne definiuje się następująco: min w = b y + b 2 y 2 + + b m y m a y + a 2 y 2 + + a m y m c a 2 y + a 22 y 2 + + a m2 y m c 2... a n y + a 2n y 2 + + a mn y m c n y i 0 (i =, 2,...,m) Budowę zagadnienia dualnego ilustruje tablica. Tab..: Budowa zagadniena dualnego maxz min w (x 0) (x 2 0) (x n 0) x x 2 x n (y 0) y a a 2 a n b (y 2 0) y 2 a 2 a 22 a 2n b 2...... (y m 0) y m a m a m2 a mn b m c c 2 c n Przykład.. Zakład meblowy STYL produkuje stoły i fotele. Wyprodukowany stół przynosi 60 zł. zysku a fotel 200 zł. Produkcja stołów i foteli limitowana jest godzinami pracy, ilością posiadanego drewna i powierzchnią magazynowania. Zużycie tych zasobów oraz ich dzienne limity są następujace:
A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 2 Zużycie zasobów Zasoby Stół Fotel Limit dzienny(godz.) Praca(godz.) 2 4 40 Drewno(m 3 ) 8 8 26 Powierz.(m 2 ) 24 2 240 Jaki powinien być dzienny plan produkcji maksymalizujący zysk? Model prymalny: Model dualny max z = 60x + 200x 2 2x + 4x 2 40 8x + 8x 2 26 24x + 2x 2 240 x, x 2 0. min w = 40y + 26y 2 + 40y 3 2y + 8y 2 + 24y 3 60 4y + 8y 2 + 2y 3 200 y, y 2, y 3 0. Ekonomiczna interpretacja zagadnienia dualnego. Załóżmy, że w zakładzie STYL pojawia się przedsiębiorca, który chce nabyć wszystkie zasoby zakładu,tj.40godz.pracy,20 m 3 drewnai240 m 2 powierzchimagazynowej.musi zatem ustalić cenę każdej jednostki zasobu, którą gotów byłby za nie zapłacić. Niech y, y 2 i y 3 będziecenąodpowiednioza:godz.pracy,metrsześciennydrewna i metr kwadratowy powierzchni magazynowej. Pokażemy, że te ceny można wyznaczyć rozwiązując zagadnienia dualne. Całkowity koszt zasobów wyniesie w tychcenach 40y + 26y 2 + 240y 3 aponieważprzedsiębiorcachceminimalizować koszty zakupu zasobów to chce wyznaczyć: min w = 40y + 26y 2 + 240y 3. Jakie ograniczenia musi uwzględnić przedsiębiorca określając ceny? Ceny musi ustalić na takim poziomie aby firma STYL zechciała mu sprzedać swoje zasoby. Na przykład za zasoby, które zakład zużywa do wyprodukowania stołu tj. 2 godz.pracy,8m 3 drewnai24m 2 powierzchnimagazynowejpowinienzapłacić co najmniej 60 zł. gdyż zakład produkując ten stół osiągnie zysk 60 zł. Zatem oferując 2y + 8y 2 + 24y 3 zazasobydoprodukcjistołumusitakustalićceny y,y 2,y 3 tak,aby 2y + 8y 2 + 24y 3 60.
A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 3 Analogiczne rozumowanie dla fotela daje ograniczenie: 4y + 8y 2 + 2y 3 200. Musząteżbyćdodaneograniczeniananieujemnośćtychcentj. y,y 2,y 3 0,co razem daje model dualny. Budowę zagadnienia dualnego dla dowolnej postaci zagadnienia programowania liniowego podamy na przykładzie. maxz = 2x + x 2 min w = 2y + 3y 2 + y 3 x + x 2 = 2 y -dowolna 2x x 2 3 y 2 0 x x 2 y 3 0 x 0 y + 2y 2 + y 3 2 x 2 dowolna y y 2 y 3 =. Zauważmy, że każdemu ograniczeniu w modelu pierwotnym odpowiada zmienna dualna a każdemu warunkowi na zmienną odpowiada ograniczenie w zagadnieniu dualnym. Ograniczeniu odpowiada warunek na nieujemność zmiennej dualnej odpowiadającej temu ograniczeniu, ograniczeniu w postaci równości odpowiada zmienna dualna o dowolnym znaku a ograniczeniu ujemna zmienna dualna. Warunkowi na nieujemność zmiennej w zagadnieniu pierwotnym odpowiada w zagadnieniu dualnym ograniczenie natomiast zmiennej dowolnej odpowiada w zagadnieniu dualnym ograniczenie w postaci równości. Lewą stronę ograniczenia j-tego w zagadnieniu dualnym otrzymujemy przemnażając(skalarnie) j-tą kolumnę macierzy ograniczeń zagadnienia pierwotnego przez wektor zmiennychdualnychaprawąjestwspółczynnikstojącyprzyzmiennej x j (tj. c j ) w funkcji celu zagadnienia pierwotnego. Funkcją celu zagadnienia dualnego jest iloczyn(skalarny) wektora prawych stron ograniczeń zagadnienia pierwotnego przez wektor zmiennych dualnych. Jeśli funkcja celu zgadnieia pierwotnego jest maksymalizowana, to w zagadnieniu dualnym mamy minimalizacje funkcji celu. Podstawowe związki pomiędzy zagadnieniami pierwotnym i dualnym Twierdzenie.. Zagadnienie dualne do dualnego jest zagadnieniem pierwotnym. Twierdzenie.2. Wartość funkcji celu z dla dowolnego rozwiązania dopuszczalnego zagadnienia pierwotnego jest nie większa niż wartośc funkcji celu w dla dowolnego rozwiązania zagadnienia dualnego. Z tego twierdzenia mamy dwa wnioski: Wniosek..Jeśli (x,x 2,...,x n )i(y,y 2,...,y m )sąrozwiązaniamidopuszczalnymiodpowiedniozagadnieniapierwotnegoidualnegotakimi,że z = c x + c 2 x 2 +...+c n x n = b y + b 2 y 2 +...+b m y m = w,tosątorozwiązaniaoptymalne tych zagadnień.
A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 4 Wniosek.2. Jeśli jedno z zagadnień(pierwotne lub dualne) nie ma skończonego rozwiązania optymalnego(funkcja celu jest nieograniczona w zbiorze rozwiązań dopuszczalnych), to drugie zagadnienie nie ma rozwiązań dopuszczalnych(układ ograniczeń jest sprzeczny). Natomiast jeśli jedno z zagadnień nie ma rozwiązania dopuszczalnego to jego zagadnienie dualne może albo nie mieć rozwiązania dopuszczalnego albo nie mieć skończonego rozwiązania optymalnego. Twierdzenie.3. Jeśli jedno z zagadnień(pierwotne lub dualne) ma rozwiązanie optymalne, to oba zagadnienia mają rozwiązania optymalne i wartości funkcji celu tych zagadnień dla rozwiązań optymalnych są sobie równe. Rozwiązując metodą sympleks zagadnienia pierwotne z optymalnej tablicy można odczytać rozwiązanie optymalne zagadnienia dualnego. Rozważmy model liniowy dla firmy STYL. Optymalną tablicą sympleksową jest tablica.2: Zmiennymibazowymirozwiązaniaoptymalnegosą ZB = {x 2,x,s 3 }natomiast bazątegorozwiązaniajest B = Tab..2: Optymalna tablica sympleksowa s s 2 s 3 x x 2 200 x 2 0 0 8 2 8 60 x 0 0 4 2 9 0 s 3 6-2 0 0 48 20 z 20 0 0 0 2240 3 4 2 0 8 8 0 2 24.Macierzodwrotna B = znajdujesięwkolumnach s,s 2,s 3 tablicyoptymalnej.rozwiązanieoptymalne zagadnieniadualnego (y,y 2,y 3 )możnawyznaczyćkorzystajączmacierzy B następująco: (y,y 2,y 3 ) = c B B = (200, 60, 0) 0 2 8 0 = (20, 20 9 3, 0). 6 2 2 2 0 2 8 0 9 6 2 gdziewektor c B zawierawspółczynnikifunkcjiceluodpowiadającezmiennymbazowym.wtablicyoptymalnejtorozwiązanieznajdujesięwkolumnach s,s 2,s 3 wiersza wskażników optymalności. Jeśli zagadnienie pierwotne jest w dowolnej postaci, to rozwiązanie optymalne odczytujemy z optymalnej tablicy sympleksowej nastepująco: Optymalnawartośćzmiennejdualnej y i odpowiadającejograniczeniu równasięwspółczynnikowikolumny s i wierszawskażnikówoptymalnośći.
A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 5 Optymalnawartośćzmiennejdualnej y i odpowiadającejograniczeniu równasię-(współczynnikkolumy e i wierszawskażnikówoptymalności). Optymalnawartośćzmiennejdualnej y i odpowiadającejograniczeniu = równasię(współczynnikowikolumny a i wierszawskażnikówoptymalności)- M. Zmienna e i jestzmienną,którąodejmujemyodlewejstronyograniczeniapostaci,abyzamienićjenarównanie,azmienna a i jestzmiennąsztucznąwmmetodzie, którą dodajemy do lewej strony ograniczenia w postaci równania. Dla ilustracji rozważmy następujące zagadnienie: Dodając odpowiednie zmienne mamy: maxz = 3x + 2x 2 + 5x 5 x + 3x 2 + 2x 3 5 2x 2 x 3 5 2x + x 2 5x 3 = 0 x,x 2,x 3 0. max z = 3x + 2x 2 + 5x 5 Ma 2 Ma 3 x + 3x 2 + 2x 3 + s = 5 2x 2 x 3 e 2 + a 2 = 5 2x + x 2 5x 3 + a 3 = 0 x,x 2,x 3,s,a 2,a 3 0. Rozwiązując to zagadnienie M-metodą otrzymujemy następującą optymalną tablicę.3: Tab..3: M-metoda, ostatnia tablica x x 2 x 3 s e 2 a 2 a 3 4 5 5 x 3 0 0 5 2 2 2 x 2 0 0 9 9 9 7 3 x 0 0 7 7 z 0 0 0 5 58 M 58 M + 9 5 65 20 565
A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 6 Zagadnienie dualne ma postać: min w = 5y + 5y 2 + 0y 3 y + 2y 3 3 3y + 2y 2 + y 3 2 2y y 2 5y 3 5 y 0,y 2 0,y 3 dowolna. Odczytując rozwiązanie optymalne zagadnienia dualnego z optymalnej tablicy sympleksmamy:ograniczeniepierwszejestnierównością to y = 5(współ- czynnikoptymalnościwkolumnie s ),drugieograniczeniejestnierównością to y 2 = 58(-wspólczynnikoptymalnościwkolumnie e 2),trzecieograniczenie jestrównościązatem y 3 = 9 (współczynnikoptymalnościwkolumnie a 3-M). Optymalnawartośćrozwiązaniadualnegowynosi w = 5 5 +5( 58)+0 9 = 565 i jest równa optymalnej wartości funkcji celu zagadnienia pierwotnego.