Programowanie liniowe w logistyce
Transkrypt
Programowanie liniowe w logistyce
Programowanie liniowe w logistyce kierunek Informatyka, studia I stopnia ćwiczenia 1 Programowanie liniowe 1.1 Modelowanie Zadanie 1 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. Producent odzieży powinien określić, ile kurtek i płaszczy należy wyprodukować tak, aby zysk osiagni ˛ ety ˛ z ich sprzedaży był maksymalny. Do produkcji wykorzystywany jest jeden rodzaj tkaniny. Producent posiada 150 m 2 tej tkaniny. Zgodnie z zamówieniami należy wyprodukować co najmniej 20 kurtek i co najwyżej 10 płaszczy. Do produkcji jednej kurtki i jednego płaszcza potrzeba odpowiednio 2, 5 m 2 i 4 m 2 tkaniny. Przy sprzedaży jednej kurtki producent osiaga ˛ zysk 50 zł, płaszcza - 60 zł. Rozwiazanie Zadania 1. Wprowadźmy nastepuj ˛ ace ˛ oznaczenia: ˛ u1 - ilość wyprodukowanych kurtek, u2 - ilość wyprodukowanych płaszczy. Ograniczenia nałożone na zmienne u1 , u2 można zapisać nastepuj ˛ aco: ˛ u1 ≥ 20, u2 ≤ 10, 2, 5u1 + 4u2 ≤ 150. Funkcjonał kosztu, który należy zmaksymalizować, przyjmuje postać 50u1 + 60u2 1 Uwzgledniaj ac ˛ ˛ wiec ˛ naturalne ograniczenia nieujemności zmiennych u1 , u2 , możemy zapisać badane zagadnienie w postaci nastepuj zadania programowania liniowego ˛ acego ˛ ⎧ ⎪ ⎪ h(−50, −60), (u1 , u2 )i → min . ⎪ ⎪ ⎡ ⎤ ⎡ ⎤ ⎪ ⎪ ⎨ ⎤ −1 0 ⎡ −20 ⎢ ⎥ u1 ⎢ ⎥ . ⎢ ⎥⎣ ⎢ ⎥ 1 2 2 ⎪ ⎦ u ∈ U = {u = (u , u ) ∈ R ; u ≥ 0, ⎢ 0 ≤ ⎢ 10 ⎥} ⎪ 1 ⎥ ⎪ ⎪ ⎣ ⎦ u2 ⎣ ⎦ ⎪ ⎪ ⎩ 2, 5 4 150 Zadanie 2 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. Pewien wytwórca posiada magazyny z Lublinie, Łodzi i Szczecinie. W magazynach tych znajduje sie˛ odpowiednio 40, 20 i 40 jednostek produktu. Sklepy zamówiły nastepuj ˛ ace ˛ ilości produktu: Białystok - 25 jednostek, Cieszyn - 10, Kraków - 20, Sopot - 30, Warszawa - 15. Koszty transportu jednostki produktu (w zł) z magazynów do sklepów podaje nastepu˛ jaca ˛ tabela: Białystok Cieszyn Kraków Sopot Warszawa Lublin 55 30 40 50 40 Łódź 35 30 100 45 60 Szczecin 40 60 95 35 30 Należy tak zaplanować dystrybucje˛ produktu, by koszt transportu był minimalny. Rozwiazanie Zadania 2. W dalszym ciagu ˛ magazyny w Lublinie, Łodzi i Szczecinie oz˛ naczać bedziemy numerami 1, 2, 3, natomiast sklepy w Białymstoku, Cieszynie, Krakowie, ˛ Sopocie i Warszawie - numerami 1, 2, 3, 4, 5, odpowiednio. Wprowadźmy także nastepu˛ jace ˛ oznaczenia: ui,j - ilość jednostek produktu transportowanych z i - tego magazynu do j - tego sklepu ci,j - koszt transportu jednostki produktu z i - tego magazynu do j - tego sklepu Funkcjonał kosztu, który należy zminimalizować, przyjmuje postać X3 X5 i=1 j=1 2 ci,j ui,j , natomiast ograniczenia nałożone na zmienne ui,j można zapisać nastepuj ˛ aco: ˛ X5 j=1 X5 j=1 X5 j=1 X3 i=1 X3 i=1 X3 i=1 X3 i=1 X3 i=1 Oznaczajac ˛ wiec ˛ u1,j = 40 u2,j = 20 u3,j = 40 ui,1 = 25 ui,2 = 10 ui,3 = 20 ui,4 = 30 ui,5 = 15 u = (u1,1 , ..., u1,5 , u2,1 , ..., u2,5 , u3,1 , ..., u3,5 ) ∈ R15 , c = (55, 30, 40, 50, 40, 35, 30, 100, 45, 60, 40, 60, 95, 35, 30) i uwzgledniaj ac ˛ ˛ naturalne ograniczenie nieujemności zmiennych, możemy zapisać rozważane zadanie w postaci nastepuj zadania ˛ acego ˛ ⎧ ⎪ ⎪ hc, ui → min . ⎪ ⎪ ⎡ ⎪ ⎪ ⎪ ⎪ 1 1 1 ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ 0 0 0 ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ 0 0 0 ⎪ ⎨ ⎢ ⎢ ⎢ 1 0 0 15 ⎪ ⎢ u ∈ U = {u ∈ R ; u ≥ 0, ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ 0 1 0 ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ 0 0 1 ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ ⎪ ⎪ ⎢ 0 0 0 ⎪ ⎪ ⎣ ⎪ ⎪ ⎩ 0 0 0 programowania liniowego 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 0 1 ⎤ ⎡ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎥u = ⎢ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ Zadanie 3 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. 3 40 20 40 25 10 20 30 15 ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ . ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ Wytwórca mebli powinien określić, ile stoł ów, krzeseł, biurek i szaf powinien wyprodukować, by zysk z ich sprzedaży był maksymalny. Do produkcji wykorzystywane sa dwa typy desek. Wytwórca posiada 1500 m desek I typu i 1000 m - desek II typu oraz dysponuje kapitałem 860 godzin roboczych na wykonanie zaplanowanej produkcji. Ze złożonych zamówień wynika, że należy wyprodukować co najmniej 40 stołów, 130 krzeseł, 30 biurek i nie wiecej ˛ niż 10 szaf. Do produkcji każdego stołu, krzesła, biurka i szafy potrzeba odpowiednio 5, 1, 9, 12 m desek I typu i 2, 3, 4, 1 m desek II typu. Na wykonanie stołu potrzeba 3 godzin pracy, krzesła -2 godzin, biurka - 5 godzin, szafy - 10 godzin. Ze sprzedaży jednego stołu, krzesła, biurka i szafy wytwórca osiaga ˛ zysk odpowiednio 50, 20, 60 i 40 zł. Rozwiazanie Zadania 3. Wprowadźmy nastepuj ˛ ace ˛ oznaczenia: ˛ u1 - ilość stołów u2 - ilość krzeseł u3 - ilość biurek u4 - ilość szaf Funkcjonał kosztu, który należy zmaksymalizować, przyjmuje postać 50u1 + 20u2 + 60u3 + 40u4 → max . Ograniczenia nałożone na zmienne u1 , ..., u4 można zapisać nastepuj ˛ aco: ˛ u1 ≥ 40, u2 ≥ 130, u3 ≥ 30, u4 ≤ 10, 5u1 + u2 + 9u3 + 12u4 ≤ 1500, 2u1 + 3u2 + 4u3 + u4 ≤ 1000, 3u1 + 2u2 + 5u3 + 10u4 ≤ 860 Zatem, uwzgledniaj ac ˛ ˛ naturalne ograniczenia nieujemności zmiennych u1 , ..., u4 , możemy 4 zapisać badane zagadnienie w postaci nastepuj zadania programowania liniowego ˛ acego ˛ ⎧ ⎪ ⎪ h(−50, −20, −60, −40), (u1 , u2 , u3 , u4 )i → min . ⎪ ⎪ ⎤ ⎤ ⎡ ⎡ ⎪ ⎪ ⎪ ⎪ 1500 5 1 9 12 ⎪ ⎪ ⎥ ⎥ ⎢ ⎢ ⎪ ⎪ ⎥ ⎥⎡ ⎢ ⎪ ⎤ ⎢ ⎪ ⎥ ⎥ ⎢ ⎢ 1000 2 3 4 1 ⎪ 1 ⎪ ⎥ ⎥ ⎢ ⎢ ⎪ u ⎪ ⎥ ⎥⎢ ⎢ ⎢ ⎨ ⎥ ⎢ 860 ⎥ ⎢ 3 2 5 10 ⎥ ⎢ ⎥ . ⎥ ⎢ u2 ⎥ ⎢ ⎢ ⎥ ⎢ ⎥ ⎥⎢ ⎢ 1 4 4 ⎪ ⎥ ≤ ⎢ −40 ⎥} u ∈ U = {u = (u , ..., u ) ∈ R ; u ≥ 0, ⎢ −1 0 ⎪ 0 0 ⎥⎢ ⎪ ⎥ ⎪ ⎥ ⎥ ⎢ u3 ⎥ ⎢ ⎢ ⎪ ⎪ ⎥ ⎥⎣ ⎢ ⎢ ⎪ ⎦ ⎪ ⎥ ⎢ ⎢ −130 ⎥ 0 −1 0 0 ⎪ ⎪ ⎥ ⎥ ⎢ ⎢ 4 ⎪ ⎪ ⎥ ⎥ u ⎢ ⎢ ⎪ ⎪ ⎢ −30 ⎥ ⎢ 0 0 −1 0 ⎥ ⎪ ⎪ ⎦ ⎦ ⎣ ⎣ ⎪ ⎪ ⎩ 10 0 0 0 1 Zadanie 4 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. Zadaniem dietetyka jest opracowanie składu porannej owsianki tak, aby zawierała ona niezbedne dzienne zapotrzebowanie organizmu na określone składniki odżywcze i jednocześnie ˛ była możliwie najtańsza.˛ Dietetyk ma dyspozycji płatki dwóch rodzajów: I i II. Śniadanie powinno zawierać co najmniej 1 mg witaminy B 1 , 12 mg żelaza i mieć wartość energetyczna˛ równa˛ 360 kcal. 100 g płatków I rodzaju zawiera 1, 2 mg witaminy B 1 , 12 mg żelaza i ma wartość energetyczna˛ równa˛ 368 kcal, natomiast 100 g płatków II rodzaju zawiera 1, 5 mg witaminy B 1 , 10 mg żelaza i ma wartość energetyczna˛ równa˛ 390 kcal. Ponadto 100 g płatków I rodzaju kosztuje 32 gr, a 100 g płatków II rodzaju - 36 gr. Rozwiazanie Zadania 4. Wprowadźmy nastepuj ˛ ace ˛ oznaczenia: ˛ u1 - ilość płatków I rodzaju (100 gramowych porcji) u2 - ilość płatków II rodzaju (100 gramowych porcji) Funkcjonał kosztu, który należy zminimalizować jest postaci 32u1 + 36u2 , natomiast ograniczenia można zapisać w postaci nastepuj nierówności i równości ˛ acych ˛ 1, 2u1 + 1, 5u2 ≥ 1, 12u1 + 10u2 ≥ 12, 368u1 + 390u2 = 360. 5 Po uwzglednieniu naturalnych ograniczeń nieujemności zmiennych u1 , u2 otrzymujemy ˛ nastepuj ˛ ace ˛ zadanie programowania liniowego ⎧ ⎪ ⎪ h(32, 36), (u1 , u2 )i → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 ) ∈ R2 ; u ≥ 0, ⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎤ ⎡ . ⎪ 1 1 h i ⎪ −1, 2 −1, 5 u −1 u ⎪ ⎣ ⎪ ⎦⎣ ⎦≤⎣ ⎦ = [360]} ⎦ , 368 390 ⎣ ⎪ ⎪ ⎩ −12 −10 u2 u2 −12 Zadanie 5 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. Dyrektor pewnego przedsiebiorstwa powinien obsadzić trzy stanowiska pracy, majac ˛ ˛ do dyspozycji trzech pracowników. Ze wzgledu ˛ na różne ich kwalifikacje oraz zdobyte doświadczenie, wartość (dla przedsiebiorstwa) każdego z tych pracowników zależy od stanowiska, ˛ na którym jest on zatrudniony. Poniższa tabela zawiera oceny wartości pracowników zatrudnionych na poszczególnych stanowiskach Stanowisko I Stanowisko II Stanowisko III Pracownik A 5 4 7 Pracownik B 6 7 3 Pracownik C 8 11 2 Należy tak rozmieścić pracowników na rozważanych stanowiskach, by całkowita ich wartość dla przedsiebiorstwa była maksymalna. Zakładamy, że każdy pracownik powinien być za˛ trudniony łacznie na jeden etat i każdemu stanowisku powinien być przypisany jeden etat. ˛ Rozwiazanie Zadania 5. Symbolem ui,j oznaczać bedziemy cześć ˛ ˛ etatu, na jaka˛ ˛ należy zatrudnić i - tego pracownika na j -tym stanowisku. Funkcjał kosztu dla tego zagadnienia, który należy zmaksymalizować, ma nastepuj ˛ ac ˛ a˛ postać 5u1,1 + 4u1,2 + 7u1,3 + 6u2,1 + 7u2,2 + 3u2,3 + 8u3,1 + 11u3,2 + 2u3,3 , 6 zaś ograniczenia sa˛ nastepuj ˛ ace: ˛ u1,1 + u1,2 + u1,3 = 1, u2,1 + u2,2 + u2,3 = 1, u3,1 + u3,2 + u3,3 = 1, u1,1 + u2,1 + u3,1 = 1, u1,2 + u2,2 + u3,2 = 1, u1,3 + u2,3 + u3,3 = 1. Uwzgledniaj ac ˛ ˛ zatem naturalne ograniczenia nieujemności zmiennych ui,j , możemy badane zagadnienie zapisać w postaci nastepuj zadania programowania liniowego ˛ acego ˛ ⎧ ⎪ h(−5, −4, −7, −6, −7, −3, −8, −11, −2), (u1,1 , ..., u1,3 , u2,1 , ..., u2,3 , u3,1 , ..., u3,3 )i → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1,1 , ..., u1,3 , u2,1 , ..., u2,3 , u3,1 , ..., u3,3 ) ∈ R9 ; ⎪ ⎪ ⎡ ⎤ ⎪ ⎪ 1,1 ⎪ ⎪ u ⎪ ⎪ ⎢ ⎥ ⎪ ⎪ 1,2 ⎥ ⎪ ⎤⎢ ⎡ ⎪ ⎢ ⎥ ⎡ ⎤ u ⎪ ⎪ ⎢ ⎥ ⎪ 1 1 1 0 0 0 0 0 0 ⎪ ⎢ 1,3 ⎥ ⎢ 1 ⎥ ⎪ ⎥ ⎢ ⎪ ⎪ ⎥ ⎥⎢ u ⎥ ⎢ ⎨ ⎥ ⎢ ⎢ 0 0 0 1 1 1 0 0 0 ⎥⎢ 1 ⎥ ⎥ ⎢ 2,1 ⎢ ⎥⎢ ⎢ . u ⎥ ⎢ ⎥ ⎥⎢ ⎢ ⎪ ⎢ ⎥ ⎢ 1 ⎥ ⎪ ⎥ ⎥ ⎢ 0 0 0 0 0 0 1 1 1 ⎪ ⎥ ⎪ ⎥}. ⎥⎢ ⎪ u ≥ 0, ⎢ u2,2 ⎥ = ⎢ ⎪ ⎥ ⎥⎢ ⎢ ⎪ ⎢ ⎥ ⎢ ⎪ ⎥ ⎢ ⎥ ⎢ 1 1 0 0 1 0 0 1 0 0 ⎪ ⎢ ⎥ ⎪ ⎥ ⎢ u2,3 ⎥ ⎢ ⎥ ⎢ ⎪ ⎪ ⎥ ⎥ ⎢ ⎪ ⎥ ⎢ ⎪ ⎢ 1 ⎥ ⎢ 0 1 0 0 1 0 0 1 0 ⎥⎢ ⎪ ⎢ ⎥ ⎪ 3,1 ⎦⎢ u ⎥ ⎣ ⎦ ⎣ ⎪ ⎪ ⎪ ⎢ ⎥ ⎪ 1 0 0 1 0 0 1 0 0 1 ⎪ ⎢ 3,2 ⎥ ⎪ ⎪ ⎢ ⎥ u ⎪ ⎪ ⎣ ⎦ ⎪ ⎪ ⎩ u3,3 Zadanie 6 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. Producent farb musi określić, ile litrów farby białej, zielonej, niebieskiej i czerwonej powinien wyprodukować, aby zysk osiagni ˛ ety ˛ ze sprzedaży był maksymalny. Do produkcji wykorzystywane sa˛ trzy surowce: A, B i C. Producent posiada 230 litrów surowca A, 200 litrów surowca B i 170 litrów - surowca C oraz dysponuje kapitałem 160 godzin roboczych. Z przyjetych zamówień wynika, że należy wyprodukować co najmniej 125 litrów farby białej, ˛ 7 co najmniej 135 litrów - farby zielonej, co najwyżej 205 litrów - farby niebieskiej i nie mniej niż 175 litrów - farby czerwonej. Ilości poszczególnych surowców potrzebnych do wyprodukowania 1 litra każdej farby przedstawione sa˛ w nastepuj ˛ acej ˛ tabeli (w litrach) biała zielona niebieska czerwona A 0,30 0,60 0,35 0,15 B 0,25 0,20 0,45 0,55 C 0,45 0,20 0,20 0,30 . Ponadto, wyprodukowanie 1 litra każdej farby wymaga 15 minut pracy. Zysk ze sprzedaży 1 litra farby białej wynosi 7 zł, zielonej - 6 zł, niebieskiej - 7 zł, czerwonej - 5 zł. odpowiednio ilość Rozwiazanie Zadania 6. Symbolem u1 , u2 , u3 oznaczać bedziemy ˛ ˛ (w litrach) farby białej, zielonej, niebieskiej i czerwonej, która˛ należy wyprodukować. Funkcjał kosztu dla tego zagadnienia, który należy zmaksymalizować, ma nastepuj ˛ ac ˛ a˛ postać 7u1 + 6u2 + 7u3 + 5u4 , zaś ograniczenia sa˛ nastepuj ˛ ace: ˛ u1 ≥ 125, u2 ≥ 135, u3 ≤ 205, u4 ≥ 175, 0, 3u1 + 0, 6u2 + 0, 35u3 + 0, 15u4 ≤ 230, 0, 25u1 + 0, 2u2 + 0, 45u3 + 0, 55u4 ≤ 200, 0, 45u1 + 0, 2u2 + 0, 2u3 + 0, 3u4 ≤ 170, 0, 25u1 + 0, 25u2 + 0, 25u3 + 0, 25u4 ≤ 160 Uwzgledniaj ac ˛ ˛ zatem standardowe ograniczenia nieujemności zmiennych ui , możemy badane zagadnienie zapisać w postaci nastepuj zadania programowania liniowego w postaci ˛ acego ˛ 8 podstawowej ⎧ ⎪ ⎪ h(−7, −6, −7, −5), (u1 , ..., u4 )i → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , ..., u4 ) ∈ R4 ; ⎪ ⎪ ⎤ ⎡ ⎪ ⎪ ⎪ ⎪ −1 0 0 0 ⎪ ⎪ ⎥ ⎢ ⎪ ⎪ ⎥ ⎢ ⎪ ⎪ ⎥ ⎢ 0 −1 0 0 ⎪ ⎪ ⎥⎡ ⎢ ⎪ ⎪ ⎥ ⎢ ⎨ ⎥ ⎢ 0 0 1 0 ⎥⎢ ⎢ ⎥⎢ ⎢ ⎪ ⎪ ⎢ 0 0 0 −1 ⎥ ⎢ ⎪ ⎪ ⎥⎢ ⎢ u ≥ 0, ⎢ ⎪ ⎪ ⎥⎢ ⎪ ⎪ ⎢ 0, 3 0, 6 0, 35 0, 15 ⎥ ⎢ ⎪ ⎪ ⎥⎣ ⎢ ⎪ ⎪ ⎥ ⎢ ⎪ ⎪ ⎢ 0, 25 0, 2 0, 45 0, 55 ⎥ ⎪ ⎪ ⎥ ⎢ ⎪ ⎪ ⎥ ⎢ ⎪ ⎪ ⎢ 0, 45 0, 2 0, 2 0, 3 ⎥ ⎪ ⎪ ⎦ ⎣ ⎪ ⎪ ⎩ 0, 25 0, 25 0, 25 0, 25 ⎡ u1 u2 u3 u4 ⎢ ⎢ ⎢ ⎤ ⎢ ⎢ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥≤⎢ ⎥ ⎢ ⎥ ⎢ ⎦ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ −125 ⎤ ⎥ ⎥ −135 ⎥ ⎥ ⎥ 205 ⎥ ⎥ . ⎥ −175 ⎥ ⎥}. ⎥ 230 ⎥ ⎥ ⎥ 200 ⎥ ⎥ ⎥ 170 ⎥ ⎦ 160 Zadanie 7 Zapisać nastepuj ˛ ace ˛ zadanie w postaci zadania programowania liniowego. Hodowca krowy karmi zwierze˛ produktami pochodzacymi z gospodarstwa rolnego. Jednak ˛ ze wzgledu ˛ na konieczność zapewnienia w diecie odpowiednich ilości pewnych składników odżywczych (oznaczmy je przez A, B, C) hodowca musi zakupić raz w roku trzy dodatkowe produkty (oznaczmy je przez I, II, III), które zawieraja˛ te składniki. Jeden kilogram produktu I zawiera 63 g składnika A i 9 g składnika B, jeden kilogram produktu II zawiera 14 g składnika B i 28 g składnika C, zaś jeden kilogram produktu III zawiera 50 g składnika A i 15 g składnika C. Minimalne zapotrzebowanie zwierzecia ˛ na poszczególne składniki wynosi: 870 g składnika A, 200 g składnika B, 450 g składnika C. Każdy z produktów zawiera jednak pewne ilości szkodliwych środków konserwujacych. I ˛ tak, 1 kg produktu I zawiera 7 g tych środków, produktu II - 11 g, produktu III - 9 g. Roczne spożycie tych środków nie powinno być wieksze niż 150 g. Przyjmijmy na koniec, ˛ 9 że 1 kg produktu I kosztuje 35 zł, produktu II - 29 zł, a produktu III - 19 zł. Celem hodowcy jest ustalenie ilości kupowanych produktów I, II, III tak, aby zapewnić zwierzeciu ˛ właściwa˛ diete˛ i jednocześnie ponieść możliwie najmniejsze koszty. 1.2 Równoważność zadań Zadanie 8 Zapisać zadanie „o stolarzu” w postaci kanonicznego zadania programowania liniowego. Rozwiazanie. Odpowiednie zadanie kanoniczne jest nastepuj ˛ ace: ˛ ˛ ⎧ ⎪ ⎪ h(−50, −20, −60, −40, 0, ..., 0), (u1 , u2 , u3 , u4 , u5 , ..., u11 )i → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , ..., u11 ) ∈ R11 ; u ≥ 0, ⎪ ⎪ ⎤ ⎡ ⎡ ⎪ ⎪ ⎪ ⎪ 1500 5 1 9 12 1 0 0 0 0 0 0 ⎪ ⎪ ⎥ ⎢ ⎢ ⎪ ⎪ ⎥ ⎢ ⎢ ⎪ ⎪ ⎢ 1000 ⎢ 2 3 4 1 0 1 0 0 0 0 0 ⎥ ⎪ ⎨ ⎢ ⎥⎡ ⎤ ⎢ ⎥ ⎢ ⎢ ⎢ 860 ⎢ 3 2 5 10 0 0 1 0 0 0 0 ⎥ u1 ⎪ ⎢ ⎥ ⎢ ⎢ ⎥ ⎪ ⎪ ⎥ ⎢ .. ⎥ ⎢ ⎢ ⎪ ⎪ ⎢ −1 0 0 0 0 0 0 1 0 0 0 ⎥ ⎢ . ⎥ = ⎢ −40 ⎪ ⎪ ⎥⎣ ⎢ ⎦ ⎢ ⎪ ⎪ ⎥ ⎢ ⎢ ⎪ 11 ⎪ ⎥ ⎢ −130 ⎢ 0 −1 0 0 0 0 0 0 1 0 0 u ⎪ ⎪ ⎥ ⎢ ⎢ ⎪ ⎪ ⎥ ⎢ ⎢ ⎪ ⎪ ⎥ ⎢ −30 ⎢ 0 0 −1 0 0 0 0 0 0 1 0 ⎪ ⎪ ⎦ ⎣ ⎣ ⎪ ⎪ ⎩ 10 0 0 0 1 0 0 0 0 0 0 1 Zadanie 9 Zapisać nastepuj ˛ ace ˛ zadanie programowania liniowego ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ . ⎥ ⎥ ⎥} ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ J(u) = u1 − 3u3 − 2u4 + 15u5 → min . u ∈ U = {u = (u1 , u2 , u3 , u4 , u5 ) ∈ R5 ; u1 ≥ 0, u4 ≥ 0, u5 ≥ 0, u1 + 2u3 ≤ 21, u2 + u4 + 3u5 ≤ 10, u2 − u3 + 7u5 = 2, 2u1 − 7u4 = 9} w postaci „odpowiedniego” zadania kanonicznego. 10 Zadanie 10 Zapisać zadanie ogólne ⎧ ⎪ ⎪ J(u) = u1 + 2u2 + 3u3 → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , u2 , u3 ) ∈ R3 ; u1 ≥ 0, ⎪ ⎨ 10u1 + 20u2 + 30u3 ≤ 11, ⎪ ⎪ ⎪ ⎪ ⎪ 100u1 + 200u2 + 300u3 ≤ 12 ⎪ ⎪ ⎪ ⎪ 1 1 ⎩ u + 13 u2 + 14 u3 = 0} 2 w postaci zadania kanonicznego. Zadanie 11 Zapisać zadanie „o diecie” w postaci kanonicznego zadania programowania liniowego. Rozwiazanie. Odpowiednie zadanie kanoniczne jest nastepuj ˛ ace: ˛ ˛ ⎧ ⎪ ⎪ h(0, 0, 32, 36), (v 1 , v2 , u1 , u2 )i → min . ⎪ ⎪ ⎤ ⎡ ⎡ ⎡ ⎤ ⎡ ⎤ ⎤ ⎪ ⎪ 1 ⎪ ⎪ v −1, 5 −1 −1, 2 ⎪ ⎪ ⎦+⎣ ⎦ u2 = ⎣ ⎦, ⎦ u1 + ⎣ z ∈ Z = {z = (v1 , v2 , u1 , u2 ) ∈ R4 ; z ≥ 0, ⎣ ⎪ ⎪ 2 ⎪ ⎪ v −15 −12 −12 ⎪ ⎪ ⎪ ⎪ ⎨ [368]u1 + [390]u2 = [360]} = ⎡ ⎤ . ⎪ ⎡ ⎤ ⎡ ⎤ z1 ⎪ ⎪ ⎪ ⎥ ⎪ −1 1 0 −1, 2 −1, 5 ⎢ ⎪ ⎪ 2 ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎪ ⎢ ⎥ z ⎪ ⎢ ⎢ ⎥ 1 4 4 1 4 ⎪ ⎢ ⎥ = ⎢ −12 ⎥ {z = (z , ..., z ) ∈ R ; (z , ..., z ) ≥ 0, ⎪ ⎥} ⎢ ⎥ 0 1 −12 −10 ⎪ ⎪ 3 ⎥ ⎣ ⎦ ⎣ ⎦⎢ ⎪ ⎢ ⎥ z ⎪ ⎪ ⎣ ⎦ ⎪ 360 0 0 368 390 ⎪ ⎩ z4 Zadanie 12 Zapisać zadanie ogólne ⎧ ⎪ ⎪ J(u) = 3u1 + 5u2 + 7u3 + 9u4 → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u2 ≥ 0, u4 ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ 11u1 + 12u2 + 13u3 + 14u4 ≤ 1, ⎪ ⎨ 21u1 + 23u3 ≤ −1, ⎪ ⎪ ⎪ ⎪ ⎪ 32u2 ≥ 8, ⎪ ⎪ ⎪ ⎪ 1 1 ⎪ ⎪ u + 12 u2 + 13 u3 + 14 u4 = 2, ⎪ 1 ⎪ ⎪ ⎪ ⎩ 1 1 1 4 u + 14 u = −2} 11 w postaci zadania kanonicznego. 11 1.3 Interpretacja geometryczna zadań programowania liniowego Zadanie 13 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie: ⎧ ⎪ ⎪ J(u) = u1 + u2 → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , u2 ) ∈ R2 ; u ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎨ −2u1 − u2 ≤ −2, . 1 1 1 ⎪ 2 ⎪ u − u ≤ , ⎪ 2 2 ⎪ ⎪ ⎪ ⎪ ⎪ −u1 + u2 ≤ 2, ⎪ ⎪ ⎪ ⎪ ⎩ u1 ≤ 3} Rozwiazanie. ˛ Zadanie 14 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie: ⎧ ⎪ ⎪ J(u) = −2u1 + u2 → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , u2 ) ∈ R2 ; u ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎨ −u1 − u2 ≤ −1, . ⎪ 1 2 ⎪ −u + u ≤ −1, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ −u1 + 2u2 ≤ 0, ⎪ ⎪ ⎪ ⎪ ⎩ 2u1 − u2 ≤ 5} 12 Rozwiazanie. ˛ Zadanie 15 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie: ⎧ ⎪ ⎪ J(u) = 2u1 − u2 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 ) ∈ R2 ; u ≥ 0, . 1 1 ⎪ 2 ⎪ − 2 u + u ≤ 2, ⎪ ⎪ ⎪ ⎪ ⎩ − 12 u1 − u2 ≤ −1} Zadanie 16 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie: ⎧ ⎪ ⎪ J(u) = −u1 − u2 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 ) ∈ R2 ; u ≥ 0, . 1 1 ⎪ 2 ⎪ − 2 u + u ≤ 2, ⎪ ⎪ ⎪ ⎪ 1 1 ⎩ u − u2 = −1} 3 Zadanie 17 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie. W pewnym zakładzie wytwarzane sa˛ produkty A i B. Do produkcji każdego z nich wykorzystywana jest praca trzech maszyn: M1, M2, M3. Maszyna M1 może być wykorzystana przez 2400 minut, M2 - 4000 minut, M3 - 2700 minut. Poniższa tabela podaje czas pracy każdej maszyny potrzebny do wyprodukowania jednostki każdego produktu 13 A B M1 3 6 M2 8 4 M3 9 3 Zysk ze sprzedaży jednostki produktu A wynosi 90 zł, B - 60 zł. Należy zaplanować produkcje˛ tak, by zysk ze sprzedaży był maksymalny. Zadanie 18 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie: ⎧ ⎪ ⎪ J(u) = −u1 − 3u2 − 2u4 − 3u5 → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , u2 , u3 , u4 , u5 ) ∈ R5 ; u ≥ 0, ⎪ ⎨ . u1 + 2u4 + 3u5 = 15, ⎪ ⎪ ⎪ ⎪ ⎪ 2u1 + u3 + u4 + 5u5 = 20, ⎪ ⎪ ⎪ ⎪ ⎩ u1 + u2 + 2u4 + u5 = 10} Rozwiazanie. Rozważamy zadanie pomocnicze postaci ˛ D E ® −1 −1 c, A b − A Au + c, u → min . −1 −1 u ∈ {u ∈ R2 ; u ≥ 0, A Au ≤ A b}, gdzie ⎤ ⎡ ⎡ ⎤ ⎡ ⎤ 15 1 0 0 2 3 ⎥ ⎢ ⎥ ⎥ ⎢ ⎢ ⎥ ⎢ ⎥ ⎥ ⎢ ⎢ c = (−1, −3, 0), A = ⎢ 2 0 1 ⎥ , A = ⎢ 1 5 ⎥ , b = ⎢ 20 ⎥ . ⎦ ⎣ ⎦ ⎦ ⎣ ⎣ 10 1 1 0 2 1 Ze wzoru na macierz odwrotna˛ D−1 do macierzy nieosobliwej D: D−1 = 1 [(−1)i+j Dij ]T det D (tutaj Dij jest wyznacznikiem macierzy powstałej z macierzy D przez skreslenie i-tego wiersza i j-tej kolumny) wynika, że −1 A ⎤ ⎡ 1 0 0 ⎥ ⎢ ⎥ ⎢ = ⎢ −1 0 1 ⎥ . ⎦ ⎣ −2 1 0 14 A wiec ˛ zadanie pomocnicze jest postaci ® ® (−1, −3, 0), (15, −5, −10) − (2u4 + 3u5 , −2u5 , −3u4 − u5 ) + (−2, −3), (u4 , u5 ) ® = (0, −6), (u4 , u5 ) → min . ⎤ ⎤ ⎡ ⎡ 2 3 15 ⎥ ⎥ ⎢ ⎢ ⎥ ⎥ ⎢ ⎢ u ∈ {u = (u4 , u5 ) ∈ R2 ; u ≥ 0, ⎢ 0 −2 ⎥ u ≤ ⎢ −5 ⎥}. ⎦ ⎦ ⎣ ⎣ −3 −1 −10 Rozwiazuj jest ˛ ac ˛ powyższe zadanie w sposób graficzny, stwierdzamy, że jego rozwiazaniem ˛ punkt ∗ u =( 15 25 , ). 7 7 W konsekwencji, rozwiazaniem zadania wyjściowego jest punkt ˛ −1 −1 u∗ = (A b − A Au∗ , u∗ ) = (0, 15 25 15 , 0, , ). 7 7 7 Zadanie 19 Rozwiazać w sposób geometryczny nastepuj ˛ ˛ ace ˛ zadanie: ⎧ ⎪ ⎪ J(u) = −u1 − 2u2 + u3 → min . ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ u ∈ U = {u = (u1 , u2 , u3 , u4 , u5 ) ∈ R5 ; u ≥ 0, ⎪ ⎨ . 3u1 − 2u2 + 2u3 − 2u4 + 3u5 = 38, ⎪ ⎪ ⎪ ⎪ ⎪ −u1 + u2 + 3u4 − u5 = 13, ⎪ ⎪ ⎪ ⎪ ⎩ u1 − u2 + u3 = 14} 1.4 Punkty wierzchołkowe Zadanie 20 Znaleźć, w oparciu o twierdzenie, punkty wierzchołkowe zbioru 1 U = {u = (u1 , u2 ) ∈ R2 ; u ≥ 0, − u1 + u2 = 1}. 3 15 Zadanie 21 Znaleźć, w oparciu o twierdzenie, punkty wierzchołkowe zbioru U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, u1 + u2 + 3u3 + u4 = 3, u1 − u2 + u3 + 2u4 = 1}. Rozwiazanie. Łatwo widać, że ˛ ⎡ rank ⎣ 1 1 3 1 1 −1 1 2 ⎡ 10 Niech j1 = 1, j2 = 2. Kolumny A1 = ⎣ ⎤ 1 ⎤ ⎦ = 2. ⎡ 1 ⎦, A2 = ⎣ 1 Ponadto, rozwiazaniem układu ˛ −1 ⎤ ⎦ sa˛ liniowo niezależne. A1 v 1 + A2 v2 = b, czyli ⎧ ⎨ v1 + v2 = 3 ⎩ v1 − v2 = 1 jest para v1 = 2 ≥ 0, v 2 = 1 ≥ 0. Zatem punkt v = (2, 1, 0, 0) jest nieosobliwym punktem wierzchołkowym zbioru U z baza˛ A1 , A2 . ⎡ 20 Niech j1 = 1, j2 = 3. Kolumny A1 = ⎣ 1 1 Ponadto, rozwiazaniem układu ˛ ⎤ ⎡ ⎦, A3 = ⎣ 3 1 ⎤ ⎦ sa˛ liniowo niezależne. A1 v 1 + A3 v3 = b, czyli ⎧ ⎨ v1 + 3v 3 = 3 ⎩ v1 + v3 = 1 jest para v 1 = 0 ≥ 0, v 3 = 1 ≥ 0. Zatem punkt v = (0, 0, 1, 0) jest osobliwym punktem wierzchołkowym zbioru U z baza˛ A1 , A3 . ⎡ 30 Niech j1 = 1, j2 = 4. Kolumny A1 = ⎣ Ponadto, rozwiazaniem układu ˛ 1 1 ⎤ ⎦, A4 = ⎣ A1 v 1 + A4 v4 = b, 16 ⎡ 1 2 ⎤ ⎦. sa˛ liniowo niezależne. czyli ⎧ ⎨ v1 + v4 = 3 ⎩ v1 + 2v 4 = 1 jest para v1 = 5 ≥ 0, v4 = −2 < 0. Zatem kolumny A1 , A4 nie sa˛ baza˛ dla żadnego punktu wierzchołkowego. ⎡ 40 Niech j1 = 2, j2 = 3. Kolumny A2 = ⎣ Ponadto, rozwiazaniem układu ˛ ⎤ 1 ⎡ ⎦, A3 = ⎣ −1 3 1 ⎤ ⎦ sa˛ liniowo niezależne. A2 v 2 + A3 v3 = b, czyli ⎧ ⎨ v2 + 3v 3 = 3 ⎩ −v 2 + v3 = 1 jest para v 2 = 0 ≥ 0, v 3 = 1 ≥ 0. Zatem punkt v = (0, 0, 1, 0) jest osobliwym punktem wierzchołkowym zbioru U z baza˛ A2 , A3 . ⎡ 50 Niech j1 = 2, j2 = 4. Kolumny A2 = ⎣ Ponadto, rozwiazaniem układu ˛ 1 −1 ⎤ ⎡ ⎦, A4 = ⎣ 1 2 ⎤ ⎦. sa˛ liniowo niezależne. A2 v 2 + A4 v4 = b, czyli jest para v2 = ⎧ ⎨ 5 3 ≥ 0, v 4 = 4 3 v2 + v4 = 3 ⎩ −v 2 + 2v4 = 1 ≥ 0. Zatem punkt v = (0, 53 , 0, 43 ) jest nieosobliwym punktem wierzchołkowym zbioru U z baza˛ A2 , A4 . ⎡ 60 Niech j1 = 3, j2 = 4. Kolumny A3 = ⎣ Ponadto, rozwiazaniem układu ˛ 3 1 ⎤ ⎦, A4 = ⎣ A3 v 3 + A4 v4 = b, czyli ⎧ ⎨ 3v 3 + v 4 = 3 ⎩ v3 + 2v 4 = 1 17 ⎡ 1 2 ⎤ ⎦ sa˛ liniowo niezależne. jest para v 3 = 1 ≥ 0, v 4 = 0 ≥ 0. Zatem punkt v = (0, 0, 1, 0) jest osobliwym punktem wierzchołkowym zbioru U z baza˛ A3 , A4 . Zadanie 22 Znaleźć punkty wierzchołkowe zbioru U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, u1 + u4 = 0, 2u2 + u4 = 3, 3u3 = 0} i wskazać ich bazy.Rozwiazanie. Łatwo widać, że ˛ ⎡ 1 0 0 1 ⎢ ⎢ rank ⎢ 0 2 0 1 ⎣ 0 0 3 0 ⎤ ⎥ ⎥ ⎥ = 3. ⎦ ⎡ 1 ⎤ ⎡ 0 ⎤ ⎡ 0 ⎤ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ 10 Niech j1 = 1, j2 = 2, j3 = 3. Kolumny A1 = ⎢ 0 ⎥, A2 = ⎢ 2 ⎥, A3 = ⎢ 0 ⎥ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ 0 0 3 sa˛ liniowo niezależne (można to sprawdzić, korzystajac ˛ z pojecia ˛ wyznacznika macierzy). Ponadto, rozwiazaniem układu ˛ A1 v 1 + A2 v 2 + A3 v3 = b, czyli ⎧ ⎪ ⎪ v1 = 0 ⎪ ⎨ jest "trójka" v1 = 0 ≥ 0, v2 = 9 6 2v2 = 3 ⎪ ⎪ ⎪ ⎩ 3v3 = 0 ≥ 0, v3 = 0 ≥ 0. Zatem punkt v = (0, 96 , 0, 0) jest osobliwym punktem wierzchołkowym zbioru U z baza˛ A1 , A2 , A3 . ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ 1 0 1 ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎥ ⎥ ⎥ ⎢ ⎢ ⎢ 20 Niech j1 = 1, j2 = 2, j3 = 4. Kolumny A1 = ⎢ 0 ⎥, A2 = ⎢ 2 ⎥, A4 = ⎢ 1 ⎥ sa˛ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ 0 0 0 liniowo zależne (można to sprawdzić, korzystajac ˛ z pojecia ˛ wyznacznika macierzy). Zatem nie sa˛ one baza˛ żadnego punktu wierzchołkowego zbioru U. 18 ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ 1 0 1 ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎥ ⎥ ⎥ ⎢ ⎢ ⎢ 30 Niech j1 = 1, j2 = 3, j3 = 4. Kolumny A1 = ⎢ 0 ⎥, A3 = ⎢ 0 ⎥, A4 = ⎢ 1 ⎥ sa˛ lin⎣ ⎦ ⎣ ⎦ ⎣ ⎦ 0 3 0 iowo niezależne (można to sprawdzić, korzystajac ˛ z pojecia ˛ wyznacznika macierzy). Ponadto, rozwiazaniem układu ˛ A1 v 1 + A3 v 3 + A4 v4 + = b, czyli ⎧ ⎪ ⎪ v1 + v4 = 0 ⎪ ⎨ ⎪ ⎪ ⎪ ⎩ v4 = 3 3v3 = 0 jest "trójka" v1 = −3 < 0, v3 = 0 ≥ 0, v4 = 3 ≥ 0. Zatem kolumny A1 , A3 , A4 nie sa˛ baza˛ żadnego punktu wierzchołkowego. ⎡ ⎤ 0 ⎢ ⎥ ⎢ ⎥ 40 Niech j1 = 2, j2 = 3, j3 = 4. Niech j1 = 2, j2 = 3, j3 = 4. Kolumny A2 = ⎢ 2 ⎥, ⎣ ⎦ 0 ⎡ ⎤ ⎡ ⎤ 0 1 ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ A3 = ⎢ 0 ⎥, A4 = ⎢ 1 ⎥ sa˛ liniowo niezależne (można to sprawdzić, korzystajac ˛ z ⎣ ⎦ ⎣ ⎦ 3 0 pojecia układu ˛ wyznacznika macierzy). Ponadto, rozwiazaniem ˛ A2 v 2 + A3 v 3 + A4 v4 + = b, czyli jest "trójka" v2 = ⎧ ⎪ ⎪ ⎪ ⎨ 3 2 ⎪ ⎪ ⎪ ⎩ v4 = 0 2v 2 + v4 = 3 3v3 = 0 > 0, v 3 = 0 ≥ 0, v3 = 0 ≥ 0. Zatem punkt v = (0, 32 , 0, 0) jest osobliwym punktem wierzchołkowym zbioru U z baza˛ A2 , A3 , A4 . 19 Zadanie 23 Znależć punkty wierzchołkowe zbioru U = {u = (u1 , u2 , u3 ) ∈ R3 ; u ≥ 0, u1 + 2u2 + 3u3 = 4, −u1 + 5u3 = 0}. Podać bazy znalezionych punktów wierzchołkowych. Zadanie 24 Znaleźć, w oparciu o twierdzenie, punkty wierzchołkowe zbioru U = {u = (u1 , u2 , u3 ) ∈ R3 ; u ≥ 0, u1 + u2 + 2u3 = 10, −u1 + 3u3 = 9, u1 + 2u2 + 7u3 = 29}. Rozwiazanie. Łatwo widać, że ˛ ⎤ ⎡ 1 1 2 ⎥ ⎢ ⎥ ⎢ rank ⎢ −1 0 3 ⎥ = 2. ⎦ ⎣ 1 2 7 ⎤ ⎡ ⎡ ⎤ 1 1 ⎥ ⎢ ⎢ ⎥ ⎥ ⎥ ⎢ ⎢ 10 Niech j1 = 1, j2 = 2. Kolumny A1 = ⎢ −1 ⎥, A2 = ⎢ 0 ⎥ sa˛ liniowo niezależne ⎦ ⎣ ⎣ ⎦ 1 2 (można to sprawdzić, korzystajac ˛ z definicji liniowej niezależności wektorów). Ponadto, rozwiazaniem układu ˛ A1 v 1 + A2 v2 = b, czyli ⎧ ⎪ ⎪ v1 + v2 = 10 ⎪ ⎨ −v 1 = 9 ⎪ ⎪ ⎪ ⎩ v 1 + 2v 2 = 29 jest para v1 = −9 < 0, v2 = 19 ≥ 0. Zatem kolumny A1 , A2 nie sa˛ baza˛ dla żadnego punktu wierzchołkowego. ⎡ ⎤ 1 ⎢ ⎥ ⎢ ⎥ 20 Niech j1 = 1, j2 = 3. Kolumny A1 = ⎢ −1 ⎥, A3 = ⎣ ⎦ 1 leżne (można to sprawdzić, korzystajac ˛ z definicji liniowej 20 ⎡ ⎤ 2 ⎢ ⎥ ⎢ ⎥ ⎢ 3 ⎥ sa˛ liniowo nieza⎣ ⎦ 7 niezależności wektorów). Ponadto, rozwiazaniem układu ˛ A1 v 1 + A3 v3 = b, czyli jest para v 1 = ⎧ ⎪ ⎪ v1 + 2v 3 = 10 ⎪ ⎨ 12 5 > 0, v 3 = 19 5 −v 1 + 3v 3 = 9 ⎪ ⎪ ⎪ ⎩ v1 + 7v 3 = 29 > 0. Zatem punkt v = ( 12 , 0, 19 ) jest nieosobliwym 5 5 punktem wierzchołkowym zbioru U z baza˛ A1 , A3 . ⎡ ⎤ ⎡ ⎤ 1 2 ⎢ ⎥ ⎢ ⎥ ⎥ ⎥ ⎢ ⎢ 30 Niech j1 = 2, j2 = 3. Kolumny A2 = ⎢ 0 ⎥, A3 = ⎢ 3 ⎥ sa˛ liniowo niezależne ⎣ ⎦ ⎣ ⎦ 2 7 (można to sprawdzić, korzystajac ˛ z definicji liniowej niezależności wektorów). Ponadto, rozwiazaniem układu ˛ A2 v 2 + A3 v3 = b, czyli ⎧ ⎪ ⎪ v2 + 2v 3 = 10 ⎪ ⎨ 3v3 = 9 ⎪ ⎪ ⎪ ⎩ 2v2 + 7v3 = 29 jest para v2 = 4 > 0, v3 = 3 > 0. Zatem punkt v = (0, 4, 3) jest nieosobliwym punktem wierzchołkowym zbioru U z baza˛ A2 , A3 . 1.5 Metoda sympleksowa Zadanie 25 Utworzyć tablice˛ sympleksowa˛ dla zadania ⎧ ⎪ ⎪ J(u) = u1 − u2 + 2u4 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ 2u1 − 3u2 + 4u3 + u4 = 3, u1 + u2 − 2u3 = 10} 21 i punktu wierzchołkowego v=( 33 17 , , 0, 0). 5 5 Zadanie 26 Rozwiazać metoda˛ sympleksowa˛ zadanie ˛ ⎧ ⎪ ⎪ J(u) = u1 + 2u2 + 3u3 + 4u4 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ u1 + u2 + 3u3 + u4 = 3, , u1 − u2 + u3 + 2u4 = 1} startujac ˛ z punktu wierzchołkowego v = (2, 1, 0, 0). Rozwiazanie. Łatwo widać, że r = rankA = 2 i w konsekwencji współrzednymi bazowymi ˛ ˛ punktu v sa˛ dwie pierwsze współrzedne. Zgodnie wcześniej oznaczeniami ˛ ˛ ⎡ z przyj ⎤ etymi 1 1 ⎦. Zatem mamy u = (u1 , u2 ), v = (2, 1), c = (1, 2), B = ⎣ 1 −1 ⎤ ⎡ ⎤T ⎡ 1 1 1 ⎣ −1 −1 ⎦ = ⎣ 2 2 ⎦, B −1 = 1 −2 −1 1 −1 2 skad ˛ ⎡ ⎣ ⎡ oraz ⎣ γ 1,3 γ 2,3 γ 1,4 γ 2,4 ⎤ ⎡ 2 ⎤ ⎡ 3 2 ⎦ = B −1 A3 = ⎣ ⎦ = B −1 A4 = ⎣ 1 2 ⎤ ⎦, ⎤ ⎦ − 12 ® ∆3 = c, B −1 A3 − c3 = 1, ® 7 ∆4 = c, B −1 A4 − c4 = − . 2 Tablica sympleksowa dla punktu v = (2, 1, 0, 0) jest wiec ˛ postaci u1 u2 u3 u1 1 0 2 u2 0 1 1 0 0 1 22 u4 3 2 2 − 12 1 − 72 4 . Łatwo widać, że dla powyższej tablicy zachodzi przypadek 30 . Mamy ∆3 > 0 I3 = {i ∈ {1, 2}; γ i,3 > 0} = {1, 2}, skad ˛ vi 2 1 2 = min{ , } = i∈I3 γ i,3 2 1 2 min Zatem k = 3, s = 1 (elementem rozwiazujacym tablicy sympleksowej jest γ 1,3 = 2). Baza˛ ˛ kolejnego punktu wierzchołkowego bedzie układ kolumn ˛ A2 , A3 . Korzystajac punkty wierzchołkowe znajdujemy kolejny ˛ z twierdzenia charakteryzujacego ˛ punkt wierzchołkowy w: ⎡ ⎣ 1 −1 ⎤ ⎡ ⎦ w2 + ⎣ ⎡ skad ˛ w = (0, 0, 1, 0). Ponadto, B = ⎣ B −1 = skad ˛ ⎡ ⎣ ⎡ oraz ⎣ ⎡ 1 ⎤ 3 ⎦ w3 = ⎣ 1 3 −1 1 ⎡ γ 3,1 γ 2,4 γ 3,4 3 ⎦, 1 ⎤ ⎦ i w konsekwencji ⎤T ⎡ 1 4 ⎤ ⎡ − 12 ⎤ ⎤ ⎡ − 54 ⎤ 1⎣ 1 1 ⎦ =⎣ 4 −3 1 γ 2,1 ⎤ ⎦ = B −1 A1 = ⎣ ⎦ = B −1 A4 = ⎣ − 34 1 4 1 4 1 2 3 4 ⎦, ⎦ ® 1 ∆1 = c, B −1 A1 − c1 = − , 2 ® 17 ∆4 = c, B −1 A4 − c4 = − . 4 23 ⎤ ⎦, Tablica sympleksowa dla punktu w = (0, 0, 1, 0) jest wiec ˛ postaci u1 u2 u3 u4 1 0 1 2 − 54 0 1 − 12 0 1 u2 − 12 u3 3 4 0 . 1 − 17 3 4 Łatwo widać, że dla powyższej tablicy zachodzi przypadek 10 , co oznacza, że punkt w = (0, 0, 1, 0) jest rozwiazaniem zadania. ˛ Zadanie 27 Rozwiazać metoda˛ sympleksowa˛ zadanie ˛ ⎧ ⎪ ⎪ J(u) = u1 − u2 + u4 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, , ⎪ 1 2 3 4 ⎪ − 2u + 4u + u = 2, 2u ⎪ ⎪ ⎪ ⎪ ⎩ u1 + u2 + u4 = 0} startuj wierzchołkowego ν = (0, 0, 12 , 0), wiedzac, ˛⎡ z punktu ˛ że jego baza˛ jest układ kolumn ⎡ ⎤ ac ⎤ 2 4 ⎣ ⎦, ⎣ ⎦. 1 0 Zadanie 28 Zapisać zadanie ⎧ ⎪ ⎪ J(u) = u1 + 2u2 + 3u3 + 4u4 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ u1 + u2 + 3u3 + u4 ≤ 3, u1 − u2 + u3 + 2u4 = 1} w postaci zadania kanonicznego, rozwiazać tak otrzymane zadanie metoda˛ sympleksowa,˛ ˛ a nastepnie podać rozwiazanie zadania wyjściowego. ˛ ˛ Zadanie 29 Rozwiazać metoda˛ sympleksowa˛ zadanie ˛ ⎧ ⎪ ⎪ J(u) = u1 + 2u2 + 3u3 + 4u4 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ u1 + u2 + 3u3 + u4 = 3, u1 − u2 + u3 + 2u4 = 1} 24 , startujac ˛ z punktu wierzchołkowego 5 4 v = (0, , 0, ). 3 3 Zadanie 30 Sprawdzić, korzystajac ˛ z zadania pomocniczego, czy zbiór U = {u = (u1 , u2 , u3 , u4 ) ∈ R4 ; u ≥ 0, u1 + u2 + 3u3 + u4 = 3, u1 − u2 + u3 + 2u4 = 1} jest niepusty i jeśli tak - wyznaczyć, przy pomocy metody sympleksowej, punkt wierzchołkowy tego zbioru. Rozwiazanie. Rozważmy zadanie pomocnicze ˛ ⎧ ⎪ ⎪ J(z) = u5 + u6 → min . ⎪ ⎨ ⎡ ⎤ ⎡ ⎤ 1 1 3 1 1 0 3 ⎪ ⎦ z = ⎣ ⎦} Z = {z = (u1 , ..., u6 ) ∈ R6 ; z ≥ 0 , ⎣ ⎪ ⎪ ⎩ 1 −1 1 2 0 1 1 ⎡ ⎤ 1 Widać, że b = ⎣ ⎦ ≥ 0. Punkt z0 = (0, b) = (0, 0, 0, 0, 3, 1) jest punktem wierz0 ⎡ ⎤ ⎡ ⎤ 1 0 chołkowym zbioru Z z baza˛ C5 = ⎣ ⎦, C6 = ⎣ ⎦. 0 1 Zastosujmy wiec a. ˛ do zadania pomocniczego metode˛ sympleksow ˛ ⎤W tym przypadku ⎡ 1 0 ⎦. Zatem r = 2, j1 = 5, j2 = 6, z = (u5 , u6 ), v = (3, 1), c = (1, 1), B = ⎣ 0 1 ⎡ ⎤ 1 0 ⎦, B −1 = ⎣ 0 1 skad ˛ ⎡ ⎣ ⎡ ⎣ γ 5,1 γ 6,1 γ 5,2 γ 6,2 ⎤ ⎡ ⎦ = B −1 C1 = C1 = ⎣ ⎡ ⎤ ⎦ = B −1 C2 = C2 = ⎣ 25 1 1 1 −1 ⎤ ⎦, ⎤ ⎦, ⎡ ⎣ ⎡ oraz ⎣ γ 5,3 γ 6,3 γ 5,4 γ 6,4 ⎤ ⎡ ⎤ ⎡ ⎦ = B −1 C3 = C3 = ⎣ ⎦ = B −1 C4 = C4 = ⎣ 3 1 1 2 ⎤ ⎦, ⎤ ⎦. ® ∆1 = c, B −1 C1 − c1 = h(1, 1), (1, 1)i − 0 = 2, ® ∆2 = c, B −1 C2 − c2 = h(1, 1), (1, −1)i − 0 = 0, ® ∆3 = c, B −1 A3 − c3 = h(1, 1), (3, 1)i − 0 = 4, ® ∆4 = c, B −1 A4 − c4 = h(1, 1), (1, 2)i − 0 = 3. Tablica sympleksowa dla punktu v = (0, 0, 0, 0, 3, 1) jest wiec ˛ postaci u1 u2 u3 u4 u5 u6 u5 1 1 3 1 1 0 3 u6 1 −1 1 2 0 1 1 2 0 4 3 0 0 4 . Dla powyższej tablicy zachodzi przypadek 30 . Mamy ∆1 > 0 Iv,1 = {ji ∈ {5, 6}; γ ji ,1 > 0} = {5, 6}, skad ˛ 3 1 v ji = min{ , } = 1 ji ∈Iv,1 γ j ,1 1 1 i tablicy sympleksowej jest γ 6,1 = 1). Baza˛ Zatem k = 1, js = 6 (elementem rozwiazujacym ˛ min kolejnego punktu wierzchołkowego bedzie układ kolumn ˛ C1 , C5 . Korzystajac punkty wierzchołkowe znajdujemy kolejny ˛ z twierdzenia charakteryzujacego ˛ punkt wierzchołkowy w: ⎡ ⎣ 1 1 ⎤ ⎡ ⎦ w1 + ⎣ 1 0 ⎤ ⎡ ⎦ w5 = ⎣ 26 3 1 ⎤ ⎦, ⎡ skad ˛ w = (1, 0, 0, 0, 2, 0). Ponadto, B = ⎣ B −1 = skad ˛ ⎣ ⎡ ⎣ ⎣ ⎡ oraz ⎣ 0 1 ⎣ −1 −1 ⎡ ⎡ ⎡ γ 1,2 γ 5,2 γ 1,3 γ 5,3 γ 1,4 γ 5,4 γ 1,6 γ 5,6 1 1 1 0 −1 1 ⎤ ⎦ i w konsekwencji ⎡ ⎤T ⎦ =⎣ ⎡ ⎤ ⎦ = B −1 C2 = ⎣ ⎤ ⎡ ⎦ = B −1 C3 = ⎣ ⎤ ⎡ ⎤ ⎡ ⎦ = B −1 C4 = ⎣ ⎦ = B −1 C6 = ⎣ 0 ⎤ 1 ⎦, 1 −1 ⎤ −1 ⎦, 2 ⎤ 1 ⎦, 2 2 −1 1 −1 ⎤ ⎦, ⎤ ⎦. ∆2 = h(0, 1), (−1, 2)i − 0 = 2, ∆3 = h(0, 1), (1, 2)i − 0 = 2, ∆4 = h(0, 1), (2, −1)i − 0 = −1, ∆6 = h(0, 1), (1, −1)i − 1 = −2. Tablica sympleksowa dla punktu w = (1, 0, 0, 0, 2, 0) jest wiec ˛ postaci u1 u2 u3 u4 u5 u6 u1 1 1 2 0 1 u5 −1 0 2 2 −1 1 −1 2 0 2 2 −1 0 −2 2 Dla powyższej tablicy zachodzi przypadek 30 . Mamy ∆2 > 0 27 1 . Iv,2 = {ji ∈ {1, 5}; γ ji ,2 > 0} = {5}, skad ˛ vji 2 = min{ } = 1 ji ∈Iv,2 γ j ,1 2 i min Zatem k = 2, js = 5 (elementem rozwiazuj tablicy sympleksowej jest γ 5,2 = 2). Baza˛ ˛ acym ˛ kolejnego punktu wierzchołkowego bedzie układ kolumn ˛ C1 , C2 . Korzystajac punkty wierzchołkowe znajdujemy kolejny ˛ z twierdzenia charakteryzujacego ˛ punkt wierzchołkowy w: ⎡ ⎣ ⎡ ⎤ 1 ⎦ w1 + ⎣ 1 ⎡ skad ˛ w = (2, 1, 0, 0, 0, 0). Ponadto, B = ⎣ B −1 = skad ˛ ⎡ ⎣ ⎡ ⎣ oraz 1 ⎡ ⎤ ⎦ w2 = ⎣ 1 1 −1 ⎤T γ 1,3 γ 2,3 ⎡ γ 1,4 γ 2,4 γ 1,5 γ 2,5 γ 1,6 γ 2,6 ⎦ = B −1 C3 = ⎣ ⎤ ⎡ ⎦ = B −1 C4 = ⎣ ⎤ ⎡ ⎦ = B −1 C5 = ⎣ ⎤ ⎦, 1 ⎦ i w konsekwencji ⎡ ⎤ ⎤ 3 ⎤ 1 ⎣ −1 −1 ⎦ =⎣ −2 −1 1 ⎣ ⎣ −1 ⎡ ⎡ ⎡ 1 ⎡ ⎦ = B −1 C6 = ⎣ 1 2 1 2 1 2 − 12 2 1 3 2 − 12 1 2 1 2 1 2 − 12 ⎤ ⎦, ⎤ ⎦, ⎤ ⎦, ⎤ ⎦. ∆3 = h(0, 0), (2, 1)i − 0 = 0, 28 ⎤ ⎦, À ¿ 3 1 ∆4 = (0, 0), ( , − ) − 0 = 0, 2 2 À ¿ 1 1 ∆5 = (0, 0), ( , ) − 1 = −1, 2 2 ¿ À 1 1 ∆6 = (0, 0), ( , − ) − 1 = −1. 2 2 Tablica sympleksowa dla punktu w = (1, 0, 0, 0, 2, 0) jest wiec ˛ postaci u1 u2 u3 u4 u5 u6 1 2 u1 1 0 2 3 2 1 2 u2 0 1 1 − 12 1 2 0 0 0 0 2 − 12 1 . −1 −1 0 Dla powyższej tablicy zachodzi przypadek 10 . Ponieważ J1 (2, 1, 0, 0, 0, 0) = 0, wiec ˛ zbiór U jest niepusty. Ponadto, ponieważ punkt z∗ = (2, 1, 0, 0, 0, 0) jest rozwiazaniem zadania ˛ pomocniczego, wiec ˛ punkt v1 = (2, 1, 0, 0) jest punktem wierzchołkowym zbioru U . Zadanie 31 „Kontrprzykład do stwierdzenia: jeśli v jest rozwiazaniem zadania, to ∆i ≤ ˛ 0 dla dowolnego i = 1, ..., n. ⎧ ⎪ ⎪ J(u1 , u2 , u3 ) = u1 + u2 → min . ⎪ ⎨ ⎡ ⎤ ⎡ ⎤ . 1 0 1 0 1 3 3 ⎪ ⎣ ⎦ u = ⎣ ⎦} , ..., u ) ∈ R ; u ≥ 0 , U = {u = (u ⎪ ⎪ ⎩ 0 1 0 0 Oczywiście (0, 0, 0) jest punktem wierzchołkowym zbioru U z baza˛ A1 , A2 (na mocy twierdzenia charakteryzujacego punkty wierzchołkowe). Łatwo widać, że punkt ten jest rozwiazaniem ˛ ˛ zadania. Tablica sympleksowa dla punktu (0, 0, 0) jest postaci u1 u2 u3 u1 1 0 1 0 u2 0 1 0 0 0 0 1 0 29 , ponieważ oraz ⎡ ⎣ γ 1,3 γ 2,3 ⎤ ⎡ ⎦ = B −1 A3 = ⎣ 1 0 0 1 ⎤⎡ ⎦⎣ 1 0 ⎤ ⎡ ⎦=⎣ 1 0 ⎤ ⎦. ∆3 = h(1, 1), (1, 0)i − 0 = 1. Zauważmy dalej, że dla powyższej tablicy zachodzi przypadek 30 . Łatwo widać, że k = 3, js = 1. W zwiazku z tym baza˛ nowego punktu wierzchołkowego jest układ A2 , A3 . ˛ Tym punktem wierzchołkowym jest punkt (0, 0, 0). Teraz tablica sympleksowa dla punktu (0, 0, 0) jest postaci ponieważ oraz ⎡ ⎣ γ 2,1 γ 3,1 ⎤ u1 u2 u3 u2 0 1 0 0 u3 1 0 1 0 −1 0 0 0 ⎡ ⎦ = B −1 A1 = ⎣ 0 1 1 0 ⎤⎡ ⎦⎣ , 1 0 ⎤ ⎡ ⎦=⎣ 0 1 ⎤ ⎦. ∆1 = h(1, 0), (0, 1)i − 1 = −1, co oznacza, że ma miejsce 10 przypadek. Zatem punkt (0, 0, 0) jest rozwiazaniem zadania/ ˛ Zadanie 32 Rozważmy zadanie ⎧ ⎪ ⎪ J(u) = u1 + 3u2 − 5u3 + u4 − 3u5 → min . ⎪ ⎪ ⎪ ⎪ ⎨ u ∈ U = {u ∈ R5 ; u ≥ 0, ⎪ ⎪ u1 + u2 − 4u3 + u4 − 3u5 = 3, ⎪ ⎪ ⎪ ⎪ ⎩ u1 − 4u3 + 2u4 − 5u5 = 6}. Utworzyć tablice˛ sympleksowa˛ dla punku wierzchołkowego v = (0, 0, 0, 3, 0), wiedzac, ˛ że współrzednymi bazowymi tego punktu sa˛ współrzedne v 1 , v4 . Czy punkt v jest rozwiazaniem ˛ ˛ ˛ zadania? Odpowiedź uzasadnić. 30