Rozwiązania zadań egzaminacyjnych z DMBO 1a) Wektor

Transkrypt

Rozwiązania zadań egzaminacyjnych z DMBO 1a) Wektor
Rozwiązania zadań egzaminacyjnych z DMBO
1a) Wektor binarnych zmiennych decyzyjnych , ,
gdzie oznacza zbiór wszystkich 22
skierowanych łuków oznaczonych przez , , gdzie jest wierzchołkiem początkowym a wierzchołkiem końcowym danego łuku:
, 1 jeśli Agilulf przejdzie łukiem , $
0 jeśli Agilulf nie przejdzie łukiem , 1b) Funkcja celu to łączny dystans przebyty przez Agilulfa z wierzchołka 1 do wierzchołka 10
% &, , ' minimalizuj
,
Gdzie &, oznacza długość łuku (i,j).
1c) Zdefiniujmy macierz ) *+,, +
,,,
gdzie A oznacza zbiór wszystkich wierzchołków oraz:
*+,,
.1 jeśli / $
- 1 jeśli / 0 w pozostałych przypadkach
Ograniczenia przyjmują postać:
.1 dla / 1
% *+,, , 7 0 dla / 82, … ,9<$
1 dla / .1
,
Można dodać ograniczenie, że zmienne decyzyjne są binarne, bądź skorzystać z własności
unimodularności i zamiast binarności nałożyć ograniczenie górne (1) i dolne (0).
1d) Najkrótsza droga z wierzchołka 1 do wierzchołka 10 wynosi:
•
•
Zestaw = : 1 ' 3 ' 5 ' 6 ' 9 ' 10, funkcja celu: ABCDCBEB 26
Zestaw F: 1 ' 3 ' 5 ' 6 ' 9 ' 10, funkcja celu ABCDCBEB 28
1e) Ograniczenie, które możemy nałożyć to:
•
Zestaw = : Suma wyjść z (wejść do) wierzchołka 7 musi być nie mniejsza niż suma wyjść z
(wejść do) wierzchołka 9, czyli:
H,I J H,KL M N,KL
Wówczas rozwiązanie jest następujące: 1 ' 3 ' 5 ' 6 ' 7 ' 10 albo 1 ' 2 ' 7 ' 10
funkcja celu: ABCDCBEB 29
•
Zestaw F: Suma wejść (wyjść z) do wierzchołka 4 musi być nie mniejsza niż suma wyjść z
(wejść do) wierzchołka 9, czyli:
K,P J Q,P M N,KL
Wówczas rozwiązanie jest następujące: 1 ' 4 ' 7 ' 10, funkcja celu: ABCDCBEB 29
2a) Wektor binarnych zmiennych decyzyjnych S T
U gdzie ) oznacza zbiór wszystkich 10
zawodników:
1
0
jeśli zawodnik zostanie wybrany do drużyny
$
jeśli zawodnik nie zostanie wybrany do drużyny
2b) Funkcja celu (im niższa pozycja rankingowa dot. punktów tym wyższa zdolność punktowa):
% * ' minimalizuj
U
Gdzie * oznacza pozycję rankingową danego gracza dotyczącą punktów.
2c) Ograniczenia:
1. Przynajmniej dwóch musi umieć grać na obronie: K J X J Y J H J I J KL M 2
Przynajmniej dwóch musi umieć grać na pomocy: Q J P J Z J I M 2
Przynajmniej czterech musi umieć grać na ataku: X J P J Y J Z J H J N J KL M 4
2. Maksymalny średni ranking dotyczący asyst, punktów, obrony oraz zbiórek w drużynie 7
zawodników musi być nie gorszy niż:
• Zestaw = : 4
• Zestaw F: 3
1
% [ \ 43
7
U
1
% * \ 43
7
U
1
% ] \ 43
7
U
1
% ^ \ 43
7
U
Gdzie dla danego gracza , [ oznacza pozycję rankingową dot. asyst, * pozycję rankingową
dot. punktów, ] pozycję rankingową dot. obrony oraz ^ pozycję rankingową dotyczącą
zbiórek.
Uwaga: poniższe trzy punkty bazują na fakcie, że zmienne decyzyjne są binarne:
3. Musimy wyeliminować możliwość P Y Z 1. Aby to zrobić wprowadzamy warunek:
P J Y J Z \ 2
4. Mamy dwie możliwości: albo X N 1 albo X N 0. Zatem wystarczy warunek:
X N
5. Musimy wyeliminować możliwość X P 0. Zatem wystarczy warunek:
X J P M 1
Dodatkowo potrzebujemy ograniczenia, że zmienne są binarne oraz, że ma być wybranych dokładnie
7 zawodników:
% 7
U
2d) Do drużyny zostaną wybrani następujący zawodnicy:
• Zestaw = : 2,3,5,6,8,9,10. Funkcja celu: ABCDCBEB 14
• Zestaw F: 2,3,4,6,8,9,10. Funkcja celu: ABCDCBEB 15
2e) W obu zestawach te same ograniczenia są wiążące: 3., 4., 5. oraz ograniczenie, że ma być 7
zawodników w drużynie. Ograniczenia niewiążące to 1. i 2.
2f) Dodatkowe ograniczenie (jakiekolwiek) albo nic nie zmieni albo zmniejszy zbiór punktów
dopuszczalnych. Zatem wprowadzenie dodatkowego ograniczenia na pewno NIE POPRAWI wartości
funkcji celu (jeśli minimalizujemy poprawa oznacza zmniejszenie wartości funkcji celu, jeśli
maksymalizujemy poprawa oznacza zwiększenie wartości funkcji celu)
2g) Aby skorzystać z własności unimodularności wystarczy zrezygnować z ograniczenia, że zmienne
decyzyjne są binarne (to ograniczenie powoduje, że nie możemy użyć zwykłego programowania
liniowego, tylko musimy skorzystać np. z algorytmu branch and bound). Zamiast tego ograniczenia
musimy wprowadzić następujące: 0 \ \ 1, gdzie ). Własność unimodularności powoduje, że
mimo, iż nie zakładamy zmiennych binarnych, to rozwiązaniem problemu będą zmienne binarne,
ponieważ wszystkie wierzchołki zbioru dopuszczalnego mają binarne współrzędne, a liniowy algorytm
sympleks znajduje optymalne rozwiązania właśnie w wierzchołkach.
3) Na czerwono zaznaczone łuki: najkrótsza droga do danego wierzchołka. Liczby na czerwono w
wierzchołkach oznaczają długość najkrótszej drogi do danego wierzchołka.
Kolejność rozwiązywanych wierzchołków: A, C, B, D, E/G, F, H
13
B3
3
6
2
5
A0
2
3
4
5
H 12
2
D4
2
C2
3
F9
G7
6
E7
6