19
Matematické programování Ekonomický x matematický model úlohy Formulace matematického modelu úlohy LP Grafické řešení úloh LP a základní pojmy Simplexová metoda Interpretace výsledků Formulace typických úloh LP 1

Matematické programování

  • Upload
    daktari

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

Matematické programování. Ekonomický x matematický model úlohy Formulace matematického modelu úlohy LP Grafické řešení úloh LP a základní pojmy Simplexová metoda Interpretace výsledků Formulace typických úloh LP. Úvod. Matematický model úlohy MP: maximalizovat (minimalizovat) - PowerPoint PPT Presentation

Citation preview

Page 1: Matematické programování

1

Matematické programováníEkonomický x matematický model úlohyFormulace matematického modelu úlohy LPGrafické řešení úloh LP a základní pojmySimplexová metodaInterpretace výsledkůFormulace typických úloh LP

Page 2: Matematické programování

2

ÚvodMatematický model úlohy MP:

maximalizovat (minimalizovat)

za podmínek

),...,,f( 21 nxxxz

.,...,2,1 ,0

,0),...,,(g

:

,0),...,,(g

,0),...,,(g

21m

212

211

njx

xxx

xxx

xxx

j

n

n

n

Page 3: Matematické programování

3

Příklad – ekonomický modelBalírny a pražírny kávy DE, a.s., plánují na následující období výrobu dvou směsí kávy Mocca a Standard. Pro výrobu obou směsí mají přitom na toto období smluvně k dispozici od dodavatelů tři druhy kávových bobů K1, K2 a K3 postupně v kapacitě 40, 60 a 25 tun, které se navzájem liší kvalitou a samozřejmě i nákupní cenou. Na základě přímých a nepřímých nákladů souvisejících s výrobou a vzhledem k předpokládané ceně obou směsí byl vykalkulován zisk, který činí 20 000 Kč resp. 14 000 Kč na jednu tunu směsi Mocca resp. Standard. Management firmy DE, a.s., chce samozřejmě naplánovat produkci firmy tak, aby byl její celkový zisk maximální.

Směs Kapacita

Komponenta

Mocca Standard [tuny]

K1 0.5 0.25 40

K2 0.5 0.5 60

K3 - 0.25 25

Page 4: Matematické programování

4

Příklad – matematický modelmaximalizovat

z = 20 000x1 + 14 000x2 , (zisk)

za podmínek0.5x1 + 0.25x2 ≤ 40 , (K1)0.5x1 + 0.5 x2 ≤ 60 , (K2)0.25x2 ≤ 25 , (K3)x1 ≥ 0, x2 ≥ 0 .

• účelová (kriteriální) funkce (=zisk)• vlastní omezení úlohy (= K1, K2, K3) • podmínky nezápornosti.

Page 5: Matematické programování

5

Přípustné a nepřípustné programy

směsi

[tuny]

zbytek(+), nedostatek(-)

kapacit

zisk

[tis. Kč]

program Moc Std K1 K2 K3

1 0 0 40 60 25 02 80 0 0 20 25 16003 0 100 15 10 0 14004 50 50 25 10 12.5 17005 80 20 -5 10 20 1880

Page 6: Matematické programování

6

Ekonomický model• cíl optimalizace (maximalizace zisku)• procesy, které probíhají v systému a jejich intenzita (výroba obou druhů směsí),• činitelé, které ovlivňují provádění procesů (omezená zásoba surovin)

Matematický model• účelová (kriteriální) funkce = lineární fce n-proměnných• strukturní proměnné modelu (x1, x2,…, xn)

• vlastní omezení ve formě lineárních rovnic/ nerovnic a podmínky nezápornosti.

Page 7: Matematické programování

7

Obecný matematický model úlohy LPmaximalizovat (minimalizovat)

z = c1x1 + c2x2 + . . .+ cnxn ,za podmínek

a11x1 + a12x2+ . . . + a1nxn ≤ b1 ,a21x1 + a22x2 + . . . + a2nxn ≤ b2 ,.:am1x1 + am2x2 + . . . + amnxn ≤ bm ,

xj ≥ 0 , j = 1, 2, ..., n .

n počet strukturních proměnných modelu,m počet vlastních omezení,cj , j = 1,2,...,n - cenový koeficient příslušející j-té proměnné,bi , i = 1,2,...,m - hodnota pravé strany příslušející i-tému omezení,aij , i = 1,2,...,m, j = 1,2,...,n - strukturní koeficient vyjadřující vztah mezi i- tým činitelem a j-tým procesem.

Page 8: Matematické programování

8

MM úlohy LP – sumace, maticemaximalizovat (minimalizovat)

za podmínek

jn

1jjxcz

, 1,2,...,= , 0

1,2,...,= ,

j

ij

n

1jij

njx

mibxa

maximalizovat (minimalizovat)z = cTx ,

za podmínekAx ≤ b , x ≥ 0 ,

cT = (c1, c2, ..., cn) je n - složkový řádkový vektor cenových koeficientů,x = (x1,x2,...,xn)

T je n-složkový sloupcový vektor strukturních proměnných modelu,b = (b1, b2, ..., bm)T je m - složkový sloupcový vektor hodnot pravé strany,0 = (0, 0, ..., 0)T je n - složkový sloupcový nulový vektor aA je matice strukturních koeficientů o rozměru m x n .

Page 9: Matematické programování

9

Typické úlohy LP

1. Úlohy výrobního plánování (alokace zdrojů)

2. Úlohy finančního plánování (optimalizace portfolia)

3. Plánování reklamy (media selection problem)

4. Nutriční problém5. Směšovací problém6. Rozvrhování pracovníků7. Úlohy o dělení materiálu8. Distribuční úlohy LP

Page 10: Matematické programování

10

Základní pojmy LP

Přípustné řešení úlohy LP je takové řešení, které vyhovuje všem podmínkám úlohy, tzn. všem vlastním omezením i podmínkám nezápornosti.

Optimální řešení úlohy LP je přípustné řešení s nejlepší hodnotou účelové funkce (s nejvyšší hodnotou v případě maximalizace a nejnižší hodnotou v případě minimalizace účelové funkce).

Základní (přípustné) řešení úlohy LP je takové přípustné řešení, které má maximálně tolik nenulových složek, kolik je lineárně nezávislých řádků ekvivalentní soustavy rovnic.

Ekvivalentní soustava rovnic vznikne převedením původní soustavy nerovnic na rovnice pomocí doplňkových proměnných, které se označují jako přídatné proměnné (slack variables).

Page 11: Matematické programování

11

Ekvivalentní soustava rovnicPřídatné proměnné

0.5x1 + 0.25x2 ≤ 40 , (K1)0.5x1 + 0.5 x2 ≤ 60 , (K2)0.25x2 ≤ 25 , (K3)

0.5x1 + 0.25x2 + x3 = 40 ,0.5x1 + 0.5 x2 + x4 = 60 ,0.25x2 + x5 = 25 .

typ omezení

přídatná proměnná

"≤" + x"≥" x"="

Page 12: Matematické programování

12

Základní pojmy LP – grafické znázornění

x

2

0 80

160

0.25 0.5 x 1 + x 2

x 1

[tun]

[tun]

x 1

x 2

0

1 0.5 0.5 x + x 2

[tun]

x

2

0

0.25 x 2

x 1

[tun]

[tun]

100

x

2

0 80

160

x 1

[tun]

[tun]

množina

přípustných

řešení

120

100

Page 13: Matematické programování

13

Základní pojmy LP – grafické znázornění

x

2

x 1

[tun]

[tun]

x 1 x

2

x 3 x

4 x 5

x 6

x 7

x 8

x 9

hodnoty proměnných

řešení x1 x2 x3 x4 x5

x1 0 0 40 60 25

x2 80 0 0 20 25

x3 40 80 0 0 5

x4 20 100 5 0 0

x5 0 100 15 10 0

x6 0 120 10 0 -5

x7 0 160 0 -20 -15

x8 30 100 0 -5 0

x9 120 0 -20 0 25

x10 při volbě dvojice nezákladních proměnných x2 = x5 = 0 řešení neexistuje

Page 14: Matematické programování

14

Grafické řešení úlohy LP

0 80 x 1

[tun]

x 2

[tun]

100

z = 20 000 x 1 + 14 000 x 2 = 0

z = 1 400 000

z = 1 920 000

x opt

40

80

Page 15: Matematické programování

15

Základní věta LP a její význam

Jestliže má úloha lineárního programování optimální řešení, potom má také optimální řešení základní.

1. Jestliže má úloha LP jediné optimální řešení, potom je to řešení základní.

2. Jestliže má úloha LP více optimálních řešení, potom alespoň jedno z nich je základní.

Důsledek: Optimální řešení stačí hledat mezi řešeními základními, kterých je konečný počet.

Page 16: Matematické programování

16

Možnosti zakončení výpočtu při řešení úloh LP

x 1

x 2

0

X

z x

opt .

x 1

x 2

0

x opt

z X

x 1

x 2

0

z

X

x 1

x 2

0

z

1. Jediné optimální řešení 2. Alternativní optimální řešení

3. neomezená hodnota účelové funkce 4. neexistuje přípustné řešení

Page 17: Matematické programování

17

Simplexová metoda

nalezení výchozího

základního řešení úlohy LP

ZAČÁTEK

je to

řešení optimální ?

(test optima)

výpočet nového ZŘ

s lepší hodnotou

účelové funkce

NE

ANO je to

jediné optimální řešení ?

NE

ANO

popis množiny

optimálních řešení

KONEC

Page 18: Matematické programování

18

Interpretace výsledků

Global optimal solution found. Objective value: 1920000. Total solver iterations: 2

Total constraints: 4

Variable Value Reduced Cost X1 40.00000 0.000000 X2 80.00000 0.000000

Row Slack or Surplus Dual Price ZISK 1920000. 1.000000 K1 0.000000 24000.00 K2 0.000000 16000.00 K3 5.000000 0.000000

Page 19: Matematické programování

19

Interpretace výsledků

Hodnoty strukturních proměnných (Value)

Udávají úroveň jednotlivých procesů modelu (objem výroby obou druhů směsí)

Hodnoty přídatných proměnných (Slack or Surplus)

Udávají rozdíl mezi pravou a levou stranou (případně mezi levou a pravou stranou) omezujících podmínek (nevyužitá kapacita surovin)

Stínové ceny (shadow/dual price)

Lze interpretovat jako ocenění jedné jednotky pravé strany ve vztahu k hodnotě účelové funkce. Jedná se tedy vlastně o marginální ocenění pravých stran (podíl jedné tuny kapacity suroviny K na celkovém zisku)

Redukované ceny (reduced cost)

Udávají, o kolik je třeba zvýšit přínos daného procesu, aby byl efektivní (aby se daný výrobek vyráběl)