Badania operacyjne

dr Radosław Jadczak

Katedra Badań Operacyjnych

Bud. „E” pok. E136

WT, 11.30-15.00

rjadczak@pai.net.pl

Badania operacyjne – zakres zagadnień (1) 1.

Elementy teorii podejmowania decyzji

podejmowanie decyzji w warunkach niepewności

podejmowanie decyzji w warunkach ryzyka

2.

Liniowe modele decyzyjne

budowa modeli decyzyjnych

poszukiwanie i analiza rozwiązań optymalnych

analiza postoptymalizacyjna

3.

Optymalizacja w zagadnieniach przewozowych

klasyczne zadanie transportowe

modyfikacje zadania transportowego

pochodne zadania transportowego – zagadnienie przydziału Badania operacyjne – zakres zagadnień (2) 4.

Modelowanie złożonych przedsięwzięć wieloczynnościowych (zarządzanie projektami)

deterministyczna analiza przedsięwzięcia

kosztowo-czasowa analiza przedsięwzięcia

5.

Modelowanie procesów o charakterze masowym

podstawowe pojęcia i definicje

klasyfikacja systemów masowej obsługi

1

Badania operacyjne – literatura i oprogramowanie

1. Krawczyk S., Badania operacyjne dla menedżerów, Wyd. AE we Wrocławiu, Wrocław, 1997

2. Kukuła K. (red.), Badania operacyjne w przykładach i zadaniach, PWN, Warszawa, 1999

3. Miszczyńska D., Miszczyński M., Wybrane metody badań operacyjnych, WSzEH, Skierniewice, 2002

4. Trzaskalik T. , Wprowadzenie do badań operacyjnych z komputerem, PWE, Warszawa, 2003

1. BAD_OP - pakiet programów załączony do podręcznika [6]

2. SOLVER (narzędzie Excel’a w MS Office)

3. WinQSB

4. WinSTORM

Liniowe modele decyzyjne

Sytuacja decyzyjna - przykład

Mały zakład wytwarza dwa produkty A i B, których ceny zbytu wynoszą odpowiednio 3 $/szt. oraz 4 $/szt.

Należy opracować dzienny plan produkcji zakładu tak, aby wartość produkcji liczona w cenach zbytu była możliwie największa.

Produkcja jest limitowana głównie przez dwa czynniki: dostępny czas pracy maszyn i surowiec podstawowy.

Dzienny limit czasu pracy maszyn wynosi 500 minut. Sztuka wyrobu A wymaga 1 minuty czasu pracy maszyn, natomiast sztuka wyrobu B - 2 minut. Na wyprodukowanie sztuki wyrobu A zużywa się 1

kg surowca specjalnego. Również sztuka wyrobu B wymaga 1 kg tego surowca.

Umowy z producentem surowca podstawowego wskazują, że każdego dnia zakład będzie miał do dyspozycji 350 kg tego surowca (bezpieczny poziom).

Zakład jest zainteresowany takim programem dziennej produkcji, przy którym osiągał będzie zysk minimum 600 $. Jednostkowy zysk ze sztuki wyrobu A wynosi 2 $/szt., a ze sztuki wyrobu B – 1 $/szt.

2

Model decyzyjny

1. Lista zmiennych decyzyjnych:

x - dzienna produkcja wyrobu A [szt.]

1

x - dzienna produkcja wyrobu B [szt.]

2

2. Funkcja celu: (wartość produkcji w cenach zbytu) F( x) = F( x , x ,) = 3 x + 4 x 1

2

1

2

→

max

[$]

3. Ograniczenia: (warunki określające zbiór planów dopuszczalnych) (maszyny)

x + 2 x

1

2 ≤ 500

[min]

(surowiec)

x + x

1

2 ≤ 350

[kg]

(min. poziom zysku) 2 x + x

1

2 ≥ 600

[$]

4. Warunki brzegowe: (warunki dotyczące zmiennych decyzyjnych) x

, x ∈ C

1 ≥ 0

[szt.]

x1 2

x2 ≥ 0

[szt.]

Postać ogólna modelu decyzyjnego (1)

1. Lista n zmiennych decyzyjnych:

x – zmienna decyzyjna nr 1

[j.m.]

1

x – zmienna decyzyjna nr 2

[j.m.]

2

...

x – zmienna decyzyjna nr n

n

[j.m.]

2. Funkcja celu:

F( x) = F( x , x ,…, x ) = c x + c x + … + c x 1

2

n

1 1

2 2

n n

→

max (lub min) [j.m.]

Postać ogólna modelu decyzyjnego (2)

3. Ograniczenia:

(ograniczenie nr 1)

a x + a x + … + a x

[j.m.]

11 1

12 2

1n n

≤ b1

.

.

.

.

.

.

(ograniczenie nr k)

a x + a x + … + a x

= b

[j.m.]

k1 1

k2 2

kn n

k

.

.

.

.

.

.

(ograniczenie nr m)

a x + a x + … + a x

[j.m.]

m1 1

m2 2

mn n ≥ bm

4. Warunki brzegowe:

x1 ≥ 0 x2 ≥ 0 … xn ≥ 0

3

Ilustracja graficzna zbioru decyzji dopuszczalnych

x2

600

min. zysk

400

surowiec

200

maszyny

x

200

400

600

x1

Rozwiązanie optymalne

1. Formalny zapis decyzji optymalnej:

x opt = 250

opt

opt

opt

1

x

= 100

F( x

; x

) = 1150

2

1

2

2. Najlepsza dzienna decyzja produkcyjna:

produkować 250 szt. wyrobu A

produkować 100 szt. wyrobu A

maksymalna wartość produkcji wyniesie 1150 $

fundusz czasu pracy maszyn (max. 500 minut) nie zostanie w pełni wykorzystany (codziennie wolne 50 minut)

zasób surowca (350 kg) będzie wykorzystany w pełni

minimalny żądany poziom zysku został osiągnięty dokładnie na żądanym poziomie

Poszukiwanie rozwiązania optymalnego

•

metoda graficzna (2 zmienne decyzyjne)

•

metoda simpleks (dowolna liczba zmiennych decyzyjnych) 4

Metoda graficzna

x2

F → max

300

G[150,200]

w: F = 1150

w: F = 1050

200

rozwiązanie

w: F = 900

optymalne

A = (300,0)

100

C

B = (350,0)

C = (250,100)

A

B

100

200

300

x1

Klasyczna metoda simpleks ( informacje ogólne, idea) (1) 1. Postać modelu:

F( x) = F( x , x ,) = 3 x + 4 x 1

2

1

2

→

max

x + 2 x

1

2 ≤ 500

(maszyny)

x + x

1

2 ≤ 350

(surowiec)

2 x + x

1

2 ≥ 600

(min. poziom zysku)

x

, x ∈ C

1 ≥ 0 x2 ≥ 0

x1 2

2. Postać kanoniczna modelu:

3 x + 4 x

1

2 + 0 s + 0 s + 0 s – M t 1

2

3

3

→

max

x + 2 x

= 500

(maszyny)

1

2 + s1

x + x

= 350

(surowiec)

1

2

+ s2

2 x + x

= 600

(min. poziom zysku)

1

2

- s + t

3

3

x1 ≥ 0 x2 ≥ 0 s1 ≥ 0 s2 ≥ 0 s3 ≥ 0 t3 ≥ 0

Klasyczna metoda simpleks ( informacje ogólne, idea) (2) 3. Interpretacja zmiennych swobodnych:

s – niewykorzystany fundusz czasu pracy maszyn (limit 500 minut) 1

( ang. slack – luz)

s – niewykorzystany zasób surowca (limit 350 kg) 2

( ang. slack – luz)

s – przekroczenie minimalnej kwoty zysku (

3

żądane minimum 600 $)

( ang. surplus – nadwyżka)

t – zmienna sztuczna – zmienna pomocnicza, nie ma interpretacji 3

ekonomicznej

( ang. artificial – sztuczny)

5

Metoda simpleks (program WinSTORM) (1) PROBLEM DATA IN EQUATION STYLE

Maximize

3 X1 + 4 X2

Subject to

MASZYNY

1 X1 + 2 X2 <= 500

SUROWIEC

1 X1 + 1 X2 <= 350

MIN. ZYSK

2 X1 + 1 X2 >= 600

0 <= X1 <= Infinity

0 <= X2 <= Infinity

Metoda simpleks (program WinSTORM) (2) OPTIMAL SOLUTION - DETAILED REPORT

Variable

Value Cost

Red. cost

Status

1 X1

250.0000 3.0000 0.0000

Basic

2 X2

100.0000 4.0000 0.0000

Basic

Objective Function Value = 1150

Slack Variables

3 MASZYNY

50.0000 0.0000 0.0000

Basic

4 SUROWIEC

0.0000 0.0000 -5.0000

Lower

5 MIN. ZYSK 0.0000 0.0000 -1.0000

Lower

Constraint Type

RHS

Slack

Shadow price

1 MASZYNY <=

500.0000

50.0000 0.0000

2 SUROWIEC <=

350.0000

0.0000 5.0000

3 MIN. ZYSK >= 600.0000

0.0000 -1.0000

Metoda simpleks (program WinSTORM) (3) SENSITIVITY ANALYSIS OF COST COEFFICIENTS

Current

Allowable

Allowable

Variable

Coeff.

Minimum

Maximum

1 X1

3.0000

- Infinity

4.0000

2 X2

4.0000

3.0000

Infinity

SENSITIVITY ANALYSIS OF RIGHT-HAND SIDE VALUES

Current

Allowable Allowable

Constraint

Type

Value

Minimum Maximum

1 MASZYNY

<= 500.0000 450.0000 Infinity 2 SUROWIEC

<= 350.0000 300.0000 366.6667

3 MIN. ZYSK

>= 600.0000 550.0000 700.0000

6

Wycena dualna

Wyceny dualne pozwalają określić wielkość oraz kierunek zmian uzyskanej optymalnej wartości funkcji celu na skutek zmiany wartości prawych stron ograniczeń (wyrazów wolnych).

y – wycena dualna

j

Jeżeli w j-tym ograniczeniu zadania programowania liniowego wyraz wolny b wzro

j

śnie (spadnie) o jednostkę, to optymalna wartość funkcji celu f(xopt) wzrośnie o y jednostek, tj. do poziomu f(xopt) + y .

j

j

Analiza wrażliwości (1)

Czy, a jeżeli tak to na ile zmieni się uzyskane rozwiązanie optymalne, jeżeli zmieni się wartość jednego wybranego parametru rozwiązywanego zadania programowania liniowego?”

parametr w funkcji celu cj

prawa strona ograniczenia bj

Analiza wrażliwości (2)

Konsekwencje zmian jednego wybranego współczynnika c w ramach j

przedziału dopuszczalnych zmian:

rozwiązanie optymalne zadania nie ulegnie zmianie

zmieni się optymalna wartość funkcji celu

zmieni się wycena dualna

7

Analiza wrażliwości (3)

Konsekwencje zmian jednego wybranego wyrazu wolnego ograniczeń b w ramach przedziału dopuszczalnych zmian: j

rozwiązanie optymalne zadania ulegnie zmianie, lecz tylko w zakresie zmiennych bazowych (status: basic)

zmieni się optymalna wartość funkcji celu

wycena dualna pozostanie bez zmian

Warianty rozwiązań zadania PL (1)

x2

zadanie sprzeczne

X = ∅

x1

Warianty rozwiązań zadania PL (2)

x2

brak skończonego

G

rozwiązanie zadania PL

X

x1

8

Warianty rozwiązań zadania PL (3)

x2

jednoznaczne optymalne

rozwiązanie zadania PL

A

X

G

x1

Warianty rozwiązań zadania PL (4)

x2

niejednoznaczne optymalne

rozwiązanie zadania PL

X

G

x1

9