Program_calkow.pdf
(
503 KB
)
Pobierz
Microsoft PowerPoint - ZSTD_03_Programowanie ca³kowitoliczb.ppt
Programowanie
całkowitoliczbowe
Piotr Sawicki
Wydział Maszyn Roboczych i Transportu
pok. 719, tel. 665 22 30, 665 21 29
E-mail: piotr.sawicki@put.poznan.pl
URL: www.put.poznan.pl/~piotrs
Plan prezentacji
Istota programowania całkowitoliczbowego
•
informacje wprowadzające
•
przykładowe problemy
Ogólne sformułowanie zadania programowania całkowitoliczbowego
Programowanie całkowitoliczbowe na przykładzie
•
identyfikacja problemu
•
konstrukcja modelu matematycznego
•
rozwiązanie problemu
•
interpretacja rozwiązania
Procedura rozwiązywania zadania programowania całkowitoliczbowego
•
metoda płaszczyzn odcinających
•
metoda rozgałęzień i ograniczeń
Podsumowanie
Piotr Sawicki / Programowanie całkowitoliczbowe
2
Programowanie całkowitoliczbowe
Istota
Programowanie całkowitoliczbowe
•
problem z liniową funkcja celu i ograniczeniami
•
niektóre lub wszystkie zmienne decyzyjne muszą być
– nieujemne
i
–całkowite
•
możliwe jest zastosowanie metody SIMPLEX do rozwiązania zadania programowania
całkowitoliczbowego
–jeżeli rozwiązanie optymalne zawiera wartości ułamkowe (rozwiązanie niecałowitoliczbowe)
ułamkowa część rozwiązania jest
{
zaokrąglana do najbliższej liczby całkowitej
{
pomijana
– zaokrąglenie lub pominięcie części ułamkowej powoduje, że rozwiązanie
może być
nieoptymalne
programowanie liniowe
Piotr Sawicki / Programowanie całkowitoliczbowe
3
Programowanie całkowitoliczbowe
Istota
Analiza rozwiązania zadania
sformułowanego w postaci
zadania programowania
liniowego
Max Z(S, H) = 2.850
S
+ 6.270
H
H
140
S=10
S = 100
100
6S + 4H = 520
75
H=75
Z
max
= 448.400
(10; 66,96)
19S +33H = 2 400
Obszar dalszej analizy
20
5
H=5
0
20
100 120
S
Piotr Sawicki / Programowanie całkowitoliczbowe
4
Programowanie całkowitoliczbowe
Istota
Analiza rozwiązania zadania
sformułowanego w postaci
zadania programowania
liniowego
Max Z(S, H) = 2.850
S
+ 6.270
H
H
S=10
H=75
75
74
73
72
71
70
69
68
67
66
65
19S +33H = 2 400
„siatka” rozwiązań
całkowitoliczbowych
(10; 66,96); Z = 448.400
(10,67); Z = 448.590
(10; 66,96)
i
(10,66); Z = 442.320
(11,66); Z = 445.170
Obszar rozwiązań dopuszczalnych
0 1 2 3 4 5 6 7 8 9 10 11 12 13
S
Piotr Sawicki / Programowanie całkowitoliczbowe
5
Programowanie całkowitoliczbowe
Istota
Programowanie całkowitoliczbowe znajduje zastosowanie przy
rozwiązywaniu problemów alokacji (przydziału) ograniczonych
zasobów
zasobów
do
operacji
, w przypadku gdy niektóre lub wszystkie zmienne
są liczbami całkowitymi
•
ustalenie liczebności taboru
•
określenie liczby obsług pojazdów w skali roku
•
sprzedaż pojazdów przez przedstawiciela handlowego
Problemy sformułowane w kategoriach programowania całkowitoliczbowego
najczęściej polegają na
•
maksymalizacji
– zysku
– efektywności
– …innych maksymentów
•
minimalizacji
– kosztów
– czasu
– …innych minimentów
Piotr Sawicki / Programowanie całkowitoliczbowe
6
konkurencyjnych
operacji
Programowanie całkowitoliczbowe
Ogólne sformułowanie
Ogólne sformułowanie zadania programowania całkowitoliczbowego
•
funkcja celu
Max
Z = c
1
x
1
+ c
2
x
2
+ ... + c
n
x
n
•
ograniczenia
(ograniczone zasoby)
a
11
x
1
+ a
12
x
2
+ ... + a
1n
x
n
≤
b
1
a
21
x
1
+ a
22
x
2
+ ... + a
2n
x
n
≤
b
2
...
a
m1
x
1
+ a
m2
x
2
+ ... + a
mn
x
n
≤
b
m
x
1
≥
0,
x
2
≥
0, ...,
x
n
≥
0
x
1
,
x
2
, ...,
x
n
∈
C
c
j
– jednostkowy przyrost
j–
tej czynności w ocenie globalnej
Z
(
j
= 1, 2, ...,n)
b
i
–
ilość
i –
tego zasobu dostępnego do alokacji do czynności (
i
= 1, 2, ...,m)
a
ij
– ilość
i –
tego zasobu konsumowanego przez
j –
tą czynność
c
j
, b
i
, a
ij
–
parametry;
zmienne decyzyjne
Piotr Sawicki / Programowanie całkowitoliczbowe
7
Programowanie całkowitoliczbowe
Proces rozwiązywania problemu
Proces rozwiązywania
problemu decyzyjnego
Przebieg procesu
•
identyfikacja problemu decyzyjnego
•
konstrukcja modelu matematycznego
•
rozwiązanie problemu
•
interpretacja rozwiązania
Analiza procesu rozwiązywania problemu
sformułowanego w postaci zadania programowania
całkowitoliczbowego
Æ
analiza przypadku FLS
•
identyfikacja problemu i konstrukcja modelu
matematycznego nie ulega zmianie
•
rozwiązanie problemu decyzyjnego
– metoda płaszczyzn odcinających (metoda Gomory’ego)
– metoda rozgałęzień i ograniczeń (
ang
. branch-and-bound)
•
interpretacja rozwiązania
Identyfikacja problemu
decyzyjnego
Model matematyczny
problemu
Dobór metody rozw.
Rozwiązanie problemu
Interpretacja rozw.
Analiza wrażliwości
Piotr Sawicki / Programowanie całkowitoliczbowe
8
parametry;
x
1
,
x
2
, ...,
x
3
–
zmienne decyzyjne
Programowanie całkowitoliczbowe
Metoda płaszczyzn odcinających –
metoda Gomory’ego
Piotr Sawicki / Programowanie całkowitoliczbowe
9
Programowanie całkowitoliczbowe
Proces rozwiązywania problemu / Metoda Gomory’ego
Założenia metody Gomory’ego
•
metoda bazuje na redukcji Gaussa-Jordana, stosowanej w metodzie SIMPLEX
•
metoda rozpoczyna się od rozwiązywania problemu z pominięciem ograniczenia o
całkowitoliczbowym charakterze zmiennych decyzyjnych
problem decyzyjny
rozwiązanie optymalne
(metoda SIMPLEX)
czy rozwiązanie jest
całkowitoliczbowe?
Nie
dodatkowe ograniczenia
„płaszczyzn odcinających”
Tak
problem rozwiązany
Piotr Sawicki / Programowanie całkowitoliczbowe
10
Plik z chomika:
ankra21
Inne pliki z tego folderu:
Kopia Mrpd_Met_przydz_wielokr.pdf
(245 KB)
Kopia Mrpd_Bud_sieci_transp.pdf
(438 KB)
Kopia Mot_Prob_transp_wielokryt.pdf
(747 KB)
Kopia Mot_Prob_transp.pdf
(1862 KB)
Kopia Mot_01_Wskaz.pdf
(973 KB)
Inne foldery tego chomika:
Administracja
Analiza finansowa
Architektura
Bankowość
Biochemia
Zgłoś jeśli
naruszono regulamin