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