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
Matematický model úlohy MP: maximalizovat (minimalizovat) za podmínek Úvod Matematický model úlohy MP: maximalizovat (minimalizovat) za podmínek
Příklad – ekonomický model Balí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 Kompon enta Mocca Standard [tuny] K1 0.5 0.25 40 K2 60 K3 - 25
Příklad – matematický model maximalizovat z = 20 000x1 + 14 000x2 , (zisk) za podmínek 0.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.
Přípustné a nepřípustné programy směsi [tuny] zbytek(+), nedostatek(-) kapacit zisk [tis. Kč] program Moc Std K1 K2 K3 1 40 60 25 2 80 20 1600 3 100 15 10 1400 4 50 12.5 1700 5 -5 1880
Ekonomický model Matematický 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.
Obecný matematický model úlohy LP maximalizovat (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.
MM úlohy LP – sumace, matice maximalizovat (minimalizovat) za podmínek maximalizovat (minimalizovat) z = cTx , za podmínek Ax ≤ 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 a A je matice strukturních koeficientů o rozměru m x n .
Typické úlohy LP Úlohy výrobního plánování (alokace zdrojů) Úlohy finančního plánování (optimalizace portfolia) Plánování reklamy (media selection problem) Nutriční problém Směšovací problém Rozvrhování pracovníků Úlohy o dělení materiálu Distribuční úlohy LP
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).
Ekvivalentní soustava rovnic Pří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 "="
Základní pojmy LP – grafické znázornění
Základní pojmy LP – grafické znázornění hodnoty proměnných řešení x1 x2 x3 x4 x5 40 60 25 80 20 5 100 15 10 x6 120 -5 x7 160 -20 -15 x8 30 x9 x10 při volbě dvojice nezákladních proměnných x2 = x5 = 0 řešení neexistuje
Grafické řešení úlohy LP
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í. Jestliže má úloha LP jediné optimální řešení, potom je to řešení základní. 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.
Možnosti zakončení výpočtu při řešení úloh LP 1. Jediné optimální řešení 2. Alternativní optimální řešení 3. neomezená hodnota účelové funkce 4. neexistuje přípustné řešení
Simplexová metoda
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
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)