Metody lineární optimalizace Simplexová metoda. Distribuční úlohy

Podobné dokumenty
4EK213 Lineární modely. 10. Celočíselné programování

Parametrické programování

OSTRAVSKÁ UNIVERZITA PŘÍRODOVĚDECKÁ FAKULTA [ MOPV ] METODY OPERAČNÍHO VÝZKUMU

Simplexové tabulky z minule. (KMI ZF JU) Lineární programování EMM a OA O6 1 / 25

13. Lineární programování

4EK213 LINEÁRNÍ MODELY

4EK213 Lineární modely. 4. Simplexová metoda - závěr

Ekonomická formulace. Matematický model

4EK213 Lineární modely. 12. Dopravní problém výchozí řešení

4EK213 LINEÁRNÍ MODELY

4EK212 Kvantitativní management. 2. Lineární programování

1. července 2010

4EK213 Lineární modely. 5. Dualita v úlohách LP

Optimalizace. Obsah přednášky. DÚ LP - Okružní problém. Lineární optimalizace. DÚ LP - Okružní problém. DÚ LP - Okružní problém

4EK201 Matematické modelování. 2. Lineární programování

4EK311 Operační výzkum. 3. Optimalizační software a stabilita řešení úloh LP

fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu (reg. č. CZ.1.07/2.2.00/28.

LDF MENDELU. Simona Fišnarová (MENDELU) Základy lineárního programování VMAT, IMT 1 / 25

Systémové modelování. Ekonomicko matematické metody I. Lineární programování

1.Modifikace simplexové metody

Teorie her a ekonomické rozhodování. 2. Maticové hry

Lineární programování

Přílohy. Příloha 1. Obr. P1.1 Zadání úlohy v MS Excel

12. Lineární programování

Obr. P1.1 Zadání úlohy v MS Excel

1 Úvod do celočíselné lineární optimalizace

f ( x) = 5x 1 + 8x 2 MAX, 3x x ,

4EK311 Operační výzkum. 4. Distribuční úlohy LP část 1

6 Simplexová metoda: Principy

Příklady modelů lineárního programování

4EK311 Operační výzkum. 2. Lineární programování

Jiří Neubauer. Katedra ekonometrie FEM UO Brno

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008

Problém lineární komplementarity a kvadratické programování

Numerické metody a programování. Lekce 8

Obecná úloha lineárního programování

1 Duální simplexová metoda

Přiřazovací problém. Přednáška č. 7

P ílohy. P íloha 1. ešení úlohy lineárního programování v MS Excel

OPTIMALIZACE A MULTIKRITERIÁLNÍ HODNOCENÍ FUNKČNÍ ZPŮSOBILOSTI POZEMNÍCH STAVEB D24FZS

Obecná úloha lineárního programování. Úloha LP a konvexní množiny Grafická metoda. Jiří Neubauer. Katedra ekonometrie FEM UO Brno

7. přednáška Systémová analýza a modelování. Přiřazovací problém

skladbu obou směsí ( v tunách komponenty na 1 tunu směsi):

opt [ ] Vyjádření subvektory (báz. a nebáz.) B,N Index bázových a nebázových proměnných β, ν Množina indexů veličin B,N

RNDr. Sousedíková Radmila, Ph.D.

Úvod do celočíselné optimalizace

4EK201 Matematické modelování 5. Speciální úlohy lineárního programování

Systematická tvorba jízdního řádu 2. cvičení

Studentská soutěžní práce

4EK212 Kvantitativní management. 1. Úvod do kvantitativního managementu a LP

Metodické pokyny pro práci s modulem Řešitel v tabulkovém procesoru Excel

Optimalizace & soft omezení: algoritmy

G( x) %, ν%, λ. x, x, N, N nezáporné přídatné proměnné, ( ) 2 Matematické programování

4EK213 LINEÁRNÍ MODELY

Operační výzkum. Teorie her. Řešení maticových her převodem na úlohu LP.

Matematický model. omezující podmínky. Tab. 2.1 Prvky ekonomického a matematického modelu

Kvantitativní metody v rozhodování. Marta Doubková

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

Transformace souřadnic

Nástroje pro analýzu dat

Operační výzkum. Přiřazovací problém.

2.2 Grafické ešení úloh LP

Simplexová metoda. Simplexová tabulka: Záhlaví (účelová funkce) A ~ b r βi. z j c j. z r

Vícekriteriální programování příklad

2 Spojité modely rozhodování

7 Výpočet simplexové metody

Kvantitativní metody v rozhodování

Celočíselné lineární programování(ilp)

Soustavy linea rnı ch rovnic

4.Řešení optimalizačních úloh v tabulkových kalkulátorech

SOUSTAVY LINEÁRNÍCH ROVNIC

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem

IB112 Základy matematiky

Otázky ke II. části písemné zkoušky Úvod do operačního výzkumu 1. Popište proces operačního výzkumu a uveďte typy rozhodovacích situací.

České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská OKRUHY. ke státním závěrečným zkouškám BAKALÁŘSKÉ STUDIUM

Dynamické programování

Programy pro ˇreˇsen ı ulohy line arn ıho programov an ı 18. dubna 2011

Autor: Vladimír Švehla

ZÁPADOČESKÁ UNIVERZITA V PLZNI

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2

Soustavy. Terminologie. Dva pohledy na soustavu lin. rovnic. Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová.

Lineární programování

Princip řešení soustavy rovnic

0.1 Úvod do lineární algebry

Křivky a plochy technické praxe

4. Trojúhelníkový rozklad p. 1/20

3. ANTAGONISTICKÉ HRY

Konvexní množiny Formulace úloh lineárního programování. Jiří Neubauer. Katedra ekonometrie FEM UO Brno

FIT ČVUT MI-LOM Lineární optimalizace a metody. Dualita. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

Matice přechodu. Pozorování 2. Základní úkol: Určete matici přechodu od báze M k bázi N. Každou bázi napíšeme do sloupců matice, např.

Otázky ke státní závěrečné zkoušce

Řešení 1b Máme najít body, v nichž má funkce (, ) vázané extrémy, případně vázané lokální extrémy s podmínkou (, )=0, je-li: (, )= +,

ÚVOD DO ROZHODOVÁNÍ PŘEDNÁŠKA. OPTIMALIZACE A ROZHODOVÁNÍ V DOPRAVĚ Přednáška 1. Zuzana Bělinová

3. Optimalizace pomocí nástroje Řešitel

2. Určete jádro KerL zobrazení L, tj. nalezněte alespoň jednu jeho bázi a určete jeho dimenzi.

Lineární programování

Systémové modelování. Lineární programování - Definice modelu a jeho grafické řešení

Matematika I (KMI/5MAT1)

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Transkript:

Metody lineární optimalizace Simplexová metoda Dvoufázová M-úloha Duální úloha jednofázová Post-optimalizační analýza Celočíselné řešení Metoda větví a mezí Distribuční úlohy 1

OÚLP = obecná úloha lineárního programování Hledáme optimum F x = c T x c R n je vektor cenových koeficientů x R n je vektor proměnných a R mxn je matice koeficientů proměnných b R m je vektor pravých stran na množině M = g i x omezujících podmínek g i x kapacitní: g i x : a i T x b i i I 1 požadavkové: g i x : a T i x b i i I 2 určující: g i x : a T i x = b i i I I 1 I 2 I = 1,, m a podmínek nezápornosti x 0 plynou z ekonomické interpretace ÚLP OÚLP = obecná úloha lineárního programování Hledáme optimum F x n = σ j=1 c j x j c 1,, c n R n je vektor cenových koeficientů x 1,, x n R n je vektor proměnných a 11,, a mn R mxn je matice koeficientů proměnných b 1,, b m b R m je vektor pravých stran na množině M = g i x omezujících podmínek g i x kapacitní: g i x : σn j=1 a ij x j b i i I 1 požadavkové: g i x : σ n j=1 a ij x j b i i I 2 určující: g i x : σn j=1 a ij x j = b i i I I 1 I 2 I = 1,, m a podmínek nezápornosti x 1,, x n 0 plynou z ekonomické interpretace ÚLP 2

SM = Simplexová metoda patří mezi univerzální iterační metody řešení OÚLP prochází krajní body množiny M jistým racionálním způsobem nikdy nepřejde do bodu s horší funkční hodnotou Nalezení výchozího přípustného řešení algoritmus výpočtu: Je řešení optimální? ano Konec výpočtu ne Přepočet na jiné přípustné řešení Pokud má OÚLP alespoň jedno přípustné řešení, vede tato metoda po konečném počtu kroků k nalezení / nenalezení konečného optimálního řešení. Simplexová metoda postup procházení M (geometricky): předpoklad máme krajní bod x 0 M (výchozí přípustné řešení) pro i = 0,1,,s z krajního bodu x i vychází konečné množství hran (krajní směry v i ) hrana obsahuje jediný další krajní bod množiny M hrana je neomezená neomezená hrana + body s lepší funkční hodnotou než c T x i úloha nemá optimální řešení omezené hrany obsahují další krajní body vybereme ten s lepší funkční hodnotou než c T x i získáme bod x i+1 a opakujeme postup pokud neexistuje bod s lepší funkční hodnotou bod x i je hledané optimum úloha má optimální řešení 3

Simplexová metoda používá se uspořádání do simplexové tabulky pro ruční řešení a přehlednost tabulka obsahuje m+1 řádků lineární rovnice g x + vektor z (redukované cenové koeficienty) jednofázová metoda obsahuje n+m+1 sloupců vektor proměnných x R n + vektor přídatných proměnných x R m + pravá strana b dvoufázová metoda obsahuje n+2m+1 sloupců vektor proměnných x R n + vektor přídatných proměnných x R m + vektor pomocných proměnných p R m + pravá strana b Jednofázová SM řešíme úlohu ve SKT min/ max F x kde F x = c T x za omezujících podmínek ve tvaru g x b A x + E x = b, x 0 rovnosti dosáhneme pomocí množiny přídatných proměnných x n+k, které tvoří bázi (v tabulce s koeficientem +1) 4

Dvoufázová SM řešíme pomocnou úlohu min σ p j kde p = A x b, p 0 řešíme původní úlohu ve SKT min/ max F x kde F x = c T x za omezujících podmínek g x b při výběru výchozího krajního bodu množiny M využijeme minimalizační algoritmus A x E x + E p = b, x 0 rovnosti dosáhneme pomocí množiny přídatných proměnných x n+k, (v tabulce s koeficientem -1) a pomocí množiny pomocných proměnných p k, které tvoří bázi (v tabulce s koeficientem +1) Dvoufázová M-úloha řešíme pomocnou úlohu min σ M p j kde p = A x b, p 0 řešíme původní úlohu ve SKT min/ max F x kde F x = c T x za omezujících podmínek g x b při výběru výchozího krajního bodu množiny M využijeme minimalizační algoritmus A x E x + E p = b, x 0 rovnosti dosáhneme pomocí množiny přídatných proměnných x n+k, (v tabulce s koeficientem -1) a pomocí množiny pomocných proměnných p k, které tvoří bázi (v tabulce s koeficientem +1) 5

řezný plán Sestavte model úlohy lineárního programování, vytvořte výchozí simplexovou tabulku a najděte optimální řešení. Střihačka střihá z kruhové látky půlkruhy, čtvrtky kruhu a osminy jako díly pro výrobu dekorativních textilií tzv. patchwork. Z jednoho kruhového kusu získá 2 půlkruhy; 1 půlkruh, 1 čtvrtku a 2 osminy; 2 čtvrtky a 4 osminy; 3 čtvrtky a 2 osminy. Na splnění zakázky je třeba získat 75 osmin kruhu, 50 čtvrtek a 10 půlkruhů. Je třeba minimalizovat spotřebu základní kruhové látky. Hledáme min F x = 1 x 1 + 1 x 2 + 1 x 3 + 1 x 4 x j určuje počet rozřezaných kruhových látek j-tým řezným plánem množina M = g i x omezujících podmínek půlkruhy g 1 x : 2 x 1 + 1 x 2 + 0 x 3 + 0 x 4 10 čtvrtky g 2 x : 0 x 1 + 1 x 2 + 2 x 3 + 3 x 4 50 osminky g 3 x : 0 x 1 + 2 x 2 + 4 x 3 + 2 x 4 75 podmínky nezápornosti x 1, x 2, x 3, x 4 0 6

Hledáme min F x = 1 x 1 + 1 x 2 + 1 x 3 + 1 x 4 + 0 x 5 + 0 x 6 + 0 x 7 účelová funkce původní úlohy min G p = 1 p 1 + 1 p 2 + 1 p 3 účelová funkce pomocné úlohy množina M = g i x omezujících podmínek g 1 x : 2 x 1 + 1 x 2 + 0 x 3 + 0 x 4 1 x 5 + 1 p 1 = 10 g 2 x : 0 x 1 + 1 x 2 + 2 x 3 + 3 x 4 1 x 6 + 1 p 2 = 50 g 3 x : 0 x 1 + 2 x 2 + 4 x 3 + 2 x 4 1 x 7 + 1 p 3 = 75 podmínky nezápornosti x 1, x 2, x 3, x 4, x 5, x 6, x 7, p 1, p 2, p 3 0 výchozí přípustné řešení zápis množiny M v SKT p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 1 2 3 0-1 0 0 1 0 50 p3 0 2 4 2 0 0-1 0 0 1 75 z z~ 7

výchozí přípustné řešení min F x = 1 x 1 + 1 x 2 + 1 x 3 + 1 x 4 + 0 x 5 + 0 x 6 + 0 x 7 anulovaný tvar: z min F x = 0 min G p = 1 p 1 + 1 p 2 + 1 p 3 tvar: z = min G p = σ p j p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 1 2 3 0-1 0 0 1 0 50 p3 0 2 4 2 0 0-1 0 0 1 75 z -1-1 -1-1 0 0 0 0 0 0 0 z~ 2 4 6 5-1 -1-1 0 0 0 135 výchozí přípustné řešení x 0 = 0,0,0,0,0,0,0, F x 0 = 0 p 0 = 10,50,75, G p 0 = 135 řešení z~ není optimální p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 1 2 3 0-1 0 0 1 0 50 p3 0 2 4 2 0 0-1 0 0 1 75 z -1-1 -1-1 0 0 0 0 0 0 0 z~ 2 4 6 5-1 -1-1 0 0 0 135 8

přepočet na jiné přípustné řešení klíčový sloupec = největší kladná hodnota v řádku z~ klíčový řádek = nejmenší podíl b j a ik pouze pro kladné hodnoty klíčového sloupce a ik p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 1 2 3 0-1 0 0 1 0 50 p3 0 2 4 2 0 0-1 0 0 1 75 z -1-1 -1-1 0 0 0 0 0 0 0 z~ 2 4 6 5-1 -1-1 0 0 0 135 p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 1 2 3 0-1 0 0 1 0 50 p3 0 2 4 2 0 0-1 0 0 1 75 z -1-1 -1-1 0 0 0 0 0 0 0 z~ 2 4 6 5-1 -1-1 0 0 0 135 p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 0 0-1 0 1 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z -1 0 0 0 0 0 z~ 2 0-1 -1 0 0 9

p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 1 2 3 0-1 0 0 1 0 50 p3 0 2 4 2 0 0-1 0 0 1 75 z -1-1 -1-1 0 0 0 0 0 0 0 z~ 2 4 6 5-1 -1-1 0 0 0 135 p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z -1-1/2 0-1/2 0 0-1/4 0 0 1/4 75/4 z~ 2 1 0 2-1 -1 1/2 0 0-3/2 45/2 jiné přípustné řešení x 1 = 0,0, 75 4, 0,0,0,0, F x 1 = 75 4 p 1 = 10, 25 2, 0, G p 1 = 45 2 řešení z~ není optimální p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z -1-1/2 0-1/2 0 0-1/4 0 0 1/4 75/4 z~ 2 1 0 2-1 -1 1/2 0 0-3/2 45/2 10

přepočet na jiné přípustné řešení klíčový sloupec = největší kladná hodnota v řádku z~ - kterou??? klíčový řádek = nejmenší podíl b j a ik pouze pro kladné hodnoty klíčového sloupce a ik p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z -1-1/2 0-1/2 0 0-1/4 0 0 1/4 75/4 z~ 2 1 0 2-1 -1 1/2 0 0-3/2 45/2 p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z -1-1/2 0-1/2 0 0-1/4 0 0 1/4 75/4 z~ 2 1 0 2-1 -1 1/2 0 0-3/2 45/2 x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z 0 0-1/2 0-1/4 0 1/4 z~ 0 0 2-1 1/2 0-3/2 11

p1 2 1 0 0-1 0 0 1 0 0 10 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z -1-1/2 0-1/2 0 0-1/4 0 0 1/4 75/4 z~ 2 1 0 2-1 -1 1/2 0 0-3/2 45/2 x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z 0 0 0-1/2-1/2 0-1/4 1/2 0 1/4 95/4 z~ 0 0 0 2 0-1 1/2-1 0-3/2 25/2 jiné přípustné řešení x 2 = 5,0, 75 4, 0,0,0,0, F x 2 = 95 4 p 2 = 0, 25 2, 0, G p 2 = 25 2 řešení z~ není optimální x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z 0 0 0-1/2-1/2 0-1/4 1/2 0 1/4 95/4 z~ 0 0 0 2 0-1 1/2-1 0-3/2 25/2 12

přepočet na jiné přípustné řešení klíčový sloupec = největší kladná hodnota v řádku z~ klíčový řádek = nejmenší podíl b j a ik pouze pro kladné hodnoty klíčového sloupce a ik x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z 0 0 0-1/2-1/2 0-1/4 1/2 0 1/4 95/4 z~ 0 0 0 2 0-1 1/2-1 0-3/2 25/2 x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z 0 0 0-1/2-1/2 0-1/4 1/2 0 1/4 95/4 z~ 0 0 0 2 0-1 1/2-1 0-3/2 25/2 x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 x4 0 0 0 1 0-1/2 1/4 0 1/2-1/4 25/4 x3 0 1/2 1 0 0 0 z 0 0 0 0-1/2 1/2 z~ 0 0 0 0 0-1 13

x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 p2 0 0 0 2 0-1 1/2 0 1-1/2 25/2 x3 0 1/2 1 1/2 0 0-1/2 0 0 1/2 75/4 z 0 0 0-1/2-1/2 0-1/4 1/2 0 1/4 95/4 z~ 0 0 0 2 0-1 1/2-1 0-3/2 25/2 x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 x4 0 0 0 1 0-1/2 1/4 0 1/2-1/4 25/4 x3 0 1/2 1 0 0 1/4-5/8 0-1/4 5/8 125/8 z 0 0 0 0-1/2-1/4-1/8 1/2 1/4 1/8 215/8 z~ 0 0 0 0 0 0 0-1 -1-1 0 jiné přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 p 3 = 0,0,0, G p 3 = 0 řešení z~ je už optimální x1 1 1/2 0 0-1/2 0 0 1/2 0 0 5 x4 0 0 0 1 0-1/2 1/4 0 1/2-1/4 25/4 x3 0 1/2 1 0 0 1/4-5/8 0-1/4 5/8 125/8 z 0 0 0 0-1/2-1/4-1/8 1/2 1/4 1/8 215/8 z~ 0 0 0 0 0 0 0-1 -1-1 0 14

jiné přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je také už optimální x1 1 1/2 0 0-1/2 0 0 --- --- --- 5 x4 0 0 0 1 0-1/2 1/4 --- --- --- 25/4 x3 0 1/2 1 0 0 1/4-5/8 --- --- --- 125/8 z 0 0 0 0-1/2-1/4-1/8 --- --- --- 215/8 z~ --- --- --- --- --- --- --- --- --- --- --- optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek 1. řezný plán: x 1 = 5 kruhů 2. řezný plán: x 2 = 0 kruhů 3. řezný plán: x 3 = 125 8 = 15,625 16 kruhů 4. řezný plán: x 4 = 25 = 6,25 7 kruhů 4 Celkem tedy 5 + 16 + 7 = 28 kruhů látky Účelová funkce: F x = 215 = 26,875 27 kruhů látky 8 Problém = celočíselné programování 15

optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek celočíselně I. 1. řezný plán: x 1 = 5 kruhů 2. řezný plán: x 2 = 0 kruhů 3. řezný plán: x 3 = 16 kruhů 4. řezný plán: x 4 = 6 kruhů Celkem půlkruhů 5 2 + 0 1 + 16 0 + 6 0 = 10 Celkem čtvrtkruhů 5 0 + 0 1 + 16 2 + 6 3 = 50 Celkem osminek kruhu 5 0 + 0 2 + 16 4 + 6 2 = 76 Účelová funkce: F x = 27 kruhů látky optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek celočíselně II. 1. řezný plán: x 1 = 4 kruhů 2. řezný plán: x 2 = 2 kruhů 3. řezný plán: x 3 = 15 kruhů 4. řezný plán: x 4 = 6 kruhů Celkem půlkruhů 4 2 + 2 1 + 15 0 + 6 0 = 10 Celkem čtvrtkruhů 4 0 + 2 1 + 15 2 + 6 3 = 50 Celkem osminek kruhu 4 0 + 2 2 + 15 4 + 6 2 = 76 Účelová funkce: F x = 27 kruhů látky 16

optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek celočíselně III. 1. řezný plán: x 1 = 3 kruhů 2. řezný plán: x 2 = 4 kruhů 3. řezný plán: x 3 = 14 kruhů 4. řezný plán: x 4 = 6 kruhů Celkem půlkruhů 3 2 + 4 1 + 14 0 + 6 0 = 10 Celkem čtvrtkruhů 3 0 + 4 1 + 14 2 + 6 3 = 50 Celkem osminek kruhu 3 0 + 4 2 + 14 4 + 6 2 = 76 Účelová funkce: F x = 27 kruhů látky optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek celočíselně IV. 1. řezný plán: x 1 = 2 kruhů 2. řezný plán: x 2 = 6 kruhů 3. řezný plán: x 3 = 13 kruhů 4. řezný plán: x 4 = 6 kruhů Celkem půlkruhů 2 2 + 6 1 + 13 0 + 6 0 = 10 Celkem čtvrtkruhů 2 0 + 6 1 + 13 2 + 6 3 = 50 Celkem osminek kruhu 2 0 + 6 2 + 13 4 + 6 2 = 76 Účelová funkce: F x = 27 kruhů látky 17

optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek celočíselně V. 1. řezný plán: x 1 = 1 kruhů 2. řezný plán: x 2 = 8 kruhů 3. řezný plán: x 3 = 12 kruhů 4. řezný plán: x 4 = 6 kruhů Celkem půlkruhů 1 2 + 8 1 + 12 0 + 6 0 = 10 Celkem čtvrtkruhů 1 0 + 8 1 + 12 2 + 6 3 = 50 Celkem osminek kruhu 1 0 + 8 2 + 12 4 + 6 2 = 76 Účelová funkce: F x = 27 kruhů látky optimální přípustné řešení x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řešení z je optimální Výsledek celočíselně VI. 1. řezný plán: x 1 = 0 kruhů 2. řezný plán: x 2 = 10 kruhů 3. řezný plán: x 3 = 11 kruhů 4. řezný plán: x 4 = 6 kruhů Celkem půlkruhů 0 2 + 10 1 + 11 0 + 6 0 = 10 Celkem čtvrtkruhů 0 0 + 10 1 + 11 2 + 6 3 = 50 Celkem osminek kruhu 0 0 + 10 2 + 11 4 + 6 2 = 76 Účelová funkce: F x = 27 kruhů látky 18

určuje citlivost optimálního řešení na změny v modelu tj. jak se mohou měnit jednotlivé části modelu, aniž by byla porušena optimalita nalezeného řešení 1) podmínky, za nichž není porušena optimalita současného řešení analýza citlivosti optimálního řešení na změny pravých stran analýza citlivosti optimálního řešení na změny cenových koeficientů analýza citlivosti optimálního řešení ve dvoufázové SM 2) výpočet optimálního řešení při změně modelu analýza citlivosti a změna pravých stran analýza citlivosti a změna cenových koeficientů změna počtu proměnných přidání omezující podmínky určuje citlivost optimálního řešení na změny v modelu tj. jak se mohou měnit jednotlivé části modelu, aniž by byla porušena optimalita nalezeného řešení 1) podmínky, za nichž není porušena optimalita současného řešení analýza citlivosti optimálního řešení na změny pravých stran (a cen) zvýšení pravé strany o b vyvolá snížení přídatné proměnné o b dosadíme hodnoty nebázových proměnných x j = 0 vypočteme hodnoty bázových proměnných x j 0 a zjistíme interval změny pravé strany b b b, b + b nebo výpočet dle transformačního vzorce max b i b ip >0 b p min b i b ip <0 nebo max z j a qj >0 c k min z j a qj <0 19

analýza citlivosti optimálního řešení na změny pravých stran b 1, 10, b 2 125 2, 25 2, b 3 25, 25 b 1, 20, b 2 25 2, 125 2, b 3 50, 100 změny x5 x6 x7 -bi b1 b2 b3 x1-1/2 0 0-5 10 - - x4 0-1/2 1/4-25/4-25/2-25 x3 0 1/4-5/8-125/8 - -125/2 25 dolní mez - - - - - -125/2-25 horní mez - - - - 10 25/2 25 analýza citlivosti optimálního řešení na změny cen u bázových proměnných c 1 0, 0, c 3 0,0, c 4 1 2, 1 2 c 1 1, 1, c 3 1,1, c 4 1, 3 2 2 změny x2 x5 x6 x7 dolní mez horní mez x1 1/2-1/2 0 0 - - x4 0 0-1/2 1/4 - - x3 1/2 0 1/4-5/8 - - -zj 0 1/2 1/4 1/8 - - c1 0-1 - - 0 0 c3 0-1 -1/5 0 0 c4 - - -1/2 1/2-1/2 1/2 20

analýza citlivosti optimálního řešení na změny cen u nebázových proměnných c 2 z 2 = 0 c 2 1, 1 změny x1 x2 x3 x4 x5 x6 x7 b x1 1 1/2 0 0-1/2 0 0 5 x4 0 0 0 1 0-1/2 1/4 25/4 x3 0 1/2 1 0 0 1/4-5/8 125/8 z 0 0 0 0-1/2-1/4-1/8 215/8 Hledáme min F x = 1 x 1 + 1 x 2 + 1 x 3 + 1 x 4 x j určuje počet rozřezaných kruhových látek j-tým řezným plánem množina M = g i x omezujících podmínek půlkruhy g 1 x : 2 x 1 + 1 x 2 + 0 x 3 + 0 x 4 10 čtvrtky g 2 x : 0 x 1 + 1 x 2 + 2 x 3 + 3 x 4 50 osminky g 3 x : 0 x 1 + 2 x 2 + 4 x 3 + 2 x 4 75 podmínky nezápornosti x 1, x 2, x 3, x 4 0 21

primární úloha min F x = c T x duální úloha max D u = b T u F x = 1,1,1,1 M: A x b 2 1 0 0 0 1 2 3 0 2 4 2 x 1 x 2 x 3 x 4 x 1 x 2 x 3 x 4 podmínky nezápornosti x 1, x 2, x 3, x 4 0 10 50 75 D u = 10,50,75 M: A T u c 2 0 0 1 0 1 2 2 4 0 3 2 u 1 u 2 u 3 u 1 u 2 u 3 1 1 1 1 podmínky nezápornosti u 1, u 2, u 3 0 Hledáme max D u = 10 u 1 + 50 u 2 + 75 u 3 účelová funkce duální úlohy množina M = g i u omezujících podmínek g 1 u : 2 u 1 + 0 u 2 + 0 u 3 1 g 2 u : 1 u 1 + 1 u 2 + 2 u 3 1 g 3 u : 0 u 1 + 2 u 2 + 4 u 3 1 g 4 u : 0 u 1 + 3 u 2 + 2 u 3 1 podmínky nezápornosti u 1, u 2, u 3 0 22

Hledáme max D u = 10 u 1 + 50 u 2 + 75 u 3 + 0 u 4 + 0 u 5 + 0 u 6 + 0 u 7 účelová funkce duální úlohy množina M = g i u omezujících podmínek g 1 u : 2 u 1 + 0 u 2 + 0 u 3 + 1 u 4 = 1 g 2 u : 1 u 1 + 1 u 2 + 2 u 3 + 1 u 5 = 1 g 3 u : 0 u 1 + 2 u 2 + 4 u 3 + 1 u 6 = 1 g 4 u : 0 u 1 + 3 u 2 + 2 u 3 + 1 u 7 = 1 podmínky nezápornosti u 1, u 2, u 3, u 4, u 5, u 6, u 7 0 výchozí přípustné řešení zápis množiny M v SKT u5 1 1 2 0 1 0 0 1 u6 0 2 4 0 0 1 0 1 u7 0 3 2 0 0 0 1 1 z 23

výchozí přípustné řešení max D u = 10 u 1 + 50 u 2 + 75 u 3 + 0 u 4 + 0 u 5 + 0 u 6 + 0 u 7 anulovaný tvar: z max D u = 0 u5 1 1 2 0 1 0 0 1 u6 0 2 4 0 0 1 0 1 u7 0 3 2 0 0 0 1 1 z -10-50 -75 0 0 0 0 0 výchozí přípustné řešení u 0 = 0,0,0,1,1,1,1, D u 0 = 0 řešení z není optimální u5 1 1 2 0 1 0 0 1 u6 0 2 4 0 0 1 0 1 u7 0 3 2 0 0 0 1 1 z -10-50 -75 0 0 0 0 0 24

přepočet na jiné přípustné řešení klíčový sloupec = největší záporná hodnota v řádku z klíčový řádek = nejmenší podíl b j a ik pouze pro kladné hodnoty klíčového sloupce a ik u5 1 1 2 0 1 0 0 1 u6 0 2 4 0 0 1 0 1 u7 0 3 2 0 0 0 1 1 z -10-50 -75 0 0 0 0 0 u5 1 1 2 0 1 0 0 1 u6 0 2 4 0 0 1 0 1 u7 0 3 2 0 0 0 1 1 z -10-50 -75 0 0 0 0 0 u5 1 0 0 1 0 u3 0 1/2 1 0 0 1/4 0 1/4 u7 0 0 0 0 1 z -10 0 0 0 0 25

u5 1 1 2 0 1 0 0 1 u6 0 2 4 0 0 1 0 1 u7 0 3 2 0 0 0 1 1 z -10-50 -75 0 0 0 0 0 u5 1 0 0 0 1-1/2 0 1/2 u3 0 1/2 1 0 0 1/4 0 1/4 u7 0 2 0 0 0-1/2 1 1/2 z -10-25/2 0 0 0 75/4 0 75/4 jiné přípustné řešení u 1 = 0,0, 1 4, 1, 1 2, 0, 1 2, D u 1 = 75 4 řešení z není optimální u5 1 0 0 0 1-1/2 0 1/2 u3 0 1/2 1 0 0 1/4 0 1/4 u7 0 2 0 0 0-1/2 1 1/2 z -10-25/2 0 0 0 75/4 0 75/4 26

přepočet na jiné přípustné řešení klíčový sloupec = největší záporná hodnota v řádku z klíčový řádek = nejmenší podíl b j a ik pouze pro kladné hodnoty klíčového sloupce a ik u5 1 0 0 0 1-1/2 0 1/2 u3 0 1/2 1 0 0 1/4 0 1/4 u7 0 2 0 0 0-1/2 1 1/2 z -10-25/2 0 0 0 75/4 0 75/4 u5 1 0 0 0 1-1/2 0 1/2 u3 0 1/2 1 0 0 1/4 0 1/4 u7 0 2 0 0 0-1/2 1 1/2 z -10-25/2 0 0 0 75/4 0 75/4 u5 1 0 0 0 1-1/2 0 1/2 u3 0 0 1 0 0 u2 0 1 0 0 0-1/4 1/2 1/4 z -10 0 0 0 0 27

u5 1 0 0 0 1-1/2 0 1/2 u3 0 1/2 1 0 0 1/4 0 1/4 u7 0 2 0 0 0-1/2 1 1/2 z -10-25/2 0 0 0 75/4 0 75/4 u5 1 0 0 0 1-1/2 0 1/2 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z -10 0 0 0 0 125/8 25/4 175/8 jiné přípustné řešení u 2 = 0, 1 4, 1 8, 1, 1 2, 0,0, D u 2 = 175 8 řešení z není optimální u5 1 0 0 0 1-1/2 0 1/2 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z -10 0 0 0 0 125/8 25/4 175/8 28

přepočet na jiné přípustné řešení klíčový sloupec = největší záporná hodnota v řádku z klíčový řádek = nejmenší podíl b j a ik (kterou???) pouze pro kladné hodnoty klíčového sloupce a ik u5 1 0 0 0 1-1/2 0 1/2 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z -10 0 0 0 0 125/8 25/4 175/8 u5 1 0 0 0 1-1/2 0 1/2 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z -10 0 0 0 0 125/8 25/4 175/8 u1 1 0 0 1/2 0 0 0 1/2 u5 0 0 0 1-1/2 0 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z 0 0 0 0 125/8 25/4 29

u5 1 0 0 0 1-1/2 0 1/2 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z -10 0 0 0 0 125/8 25/4 175/8 u1 1 0 0 1/2 0 0 0 1/2 u5 0 0 0-1/2 1-1/2 0 0 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z 0 0 0 5 0 125/8 25/4 215/8 jiné přípustné řešení u 3 = 1 2, 1 4, 1 8, 0,0,0,0, D u 3 = 215 8 řešení z už je optimální u1 1 0 0 1/2 0 0 0 1/2 u5 0 0 0-1/2 1-1/2 0 0 u3 0 0 1 0 0 3/8-1/4 1/8 u2 0 1 0 0 0-1/4 1/2 1/4 z 0 0 0 5 0 125/8 25/4 215/8 30

optimální přípustné řešení primární úlohy: x 3 = 5,0, 125, 25, 0,0,0, F x 3 = 215 8 4 8 řádek z = 0,0,0,0, 1 2, 1 4, 1 8 z 0 0 0 0-1/2-1/4-1/8 --- --- --- 215/8 optimální přípustné řešení duální úlohy: u 3 = 1 2, 1 4, 1 8, 0,0,0,0, D u 3 = 215 8 řádek z = 0,0,0,5,0, 125 8, 25 4 z 0 0 0 5 0 125/8 25/4 215/8 Metoda větví a mezí BB = Branch and bound algoritmus LP, který je určen pro hledání optimálního řešení v oblasti diskrétní (celočíselné) optimalizace a kombinatorické optimalizace princip: systematické procházení všech potenciálních řešení podmnožiny nevhodných řešení jsou vyloučeny najednou používá se prořezávání spolu s horním a dolním odhadem optimální hodnoty (tyto odhady se v průběhu výpočtu zpřesňují) 1960 navrhli A. H. Land a A. G. Doig 31

optimální řešení Simplexovou metodou LP 0 : x 3 = 5,0, 125 8, 25 4, 0,0,0, F x 3 = 215 8 = 26,875 proměnné x 3, x 4 porušují celočíselnost, mez h 0 = 215 8 zvolíme větvící proměnnou x 3 = 125 8 = 15,625 levá větev řešení: řešíme úlohu LP 1 = LP 0 + g 4 x : 1 x 3 15 = 27 x 1 = 35 8, 5 4, 15, 25 4, 0,0,0, F x1 = 215 8 h0 neuzavřeme pravá větev řešení: řešíme úlohu LP 2 = LP 0 + g 4 x : 1 x 3 16 x 2 = 5,0,16,6,0,0,1, F x 2 = 27 h 0 uzavřeme, máme řešení nalezli jsme přijatelné celočíselné řešení, mez h 1 = 27 optimální řešení Simplexovou metodou LP 1 : x 1 = 35 8, 5 4, 15, 25 4, 0,0,0, F x1 = 215 8 = 26,875 proměnné x 1, x 2, x 4 porušují celočíselnost, mez h 1 = 27 zvolíme větvící proměnnou x 1 = 35 8 = 4,375 levá větev řešení: řešíme úlohu LP 3 = LP 1 + g 5 x : 1 x 1 4 x 3 = 4,2, 117 8, 25 4, 0,0,0, F x3 = 215 8 h1 neuzavřeme pravá větev řešení: řešíme úlohu LP 4 = LP 1 + g 5 x : 1 x 1 5 x 4 = 5, 5 4, 15, 25 4, 5 4, 0,0, F x4 = 55 2 = 27,5 > h1 uzavřeme 32

optimální řešení Simplexovou metodou LP 3 : x 3 = 4,2, 117 8, 25 4, 0,0,0, F x3 = 215 8 = 26,875 proměnné x 3, x 4 porušují celočíselnost, mez h 3 = 215 8 zvolíme větvící proměnnou x 3 = 117 8 = 14,625 levá větev řešení: řešíme úlohu LP 5 = LP 3 + g 6 x : 1 x 3 14 = 27 x 5 = 27 8, 13 4, 14, 25 4, 0,0,0, F x5 = 215 8 h3 neuzavřeme pravá větev řešení: řešíme úlohu LP 6 = LP 3 + g 6 x : 1 x 3 15 x 6 = 4,2,15,6,0,0,1, F x 6 = 27 h 3 uzavřeme, máme řešení nalezli jsme přijatelné celočíselné řešení, mez h 6 = 27 a dál pokračujeme ve výpočtech větve LP 5 LP 0 x 0 = 5,0, 125, 25, 0,0,0 8 4 F x 0 = 215, 8 h0 = 215 = 27 8 LP 1 x 1 = 35, 5 25, 15,, 0,0,0 8 4 4 F x 1 = 215, 8 h1 = 215 = 27 8 LP 3 x 3 = 4,2, 117, 25, 0,0,0 8 4 F x 3 = 215, 8 h3 = 215 = 27 8 LP 2 x 2 = 5,0,16,6,0,0,1 F x 2 = 27, h 2 = 27 celočíselné řešení LP 4 x 4 = 5, 5 25, 15,, 5, 0,0 4 4 4 F x 4 = 55 = 27,5 > h1 2 konec větve x 5 = 27, 13 8 4 LP 5, 14, 25 4, 0,0,0 F x 5 = 215, 8 h5 = 215 8 = 27 LP 6 x 6 = 4,2,15,6,0,0,1 F x 6 = 27, h 6 = 27 celočíselné řešení 33

Konec vzorového příkladu 34