Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Úterý 11:00 – 12:30 hod. učebna 212 RB © Lagová, Kalčevová
4EK213 – LINEÁRNÍ MODELY Úterý 11:00 – 12:30 hod. učebna 212 RB © Lagová, Kalčevová
2
5. přednáška SIMPLEXOVÁ METODA III.
© Lagová, Kalčevová
3
OSNOVA PŘEDNÁŠKY Konečnost SM Degenerace a její odstranění
Obecné maticové vyjádření ST Analýza citlivosti pravých stran Postoptimalizační změny b Analýza citlivosti cenových koeficientů Postoptimalizační změny c © L&K
4
KONEČNOST SM Konečnost simplexové metody vyplývá ze základní věty LP:
optimální řešení hledáme mezi základními přípustnými řešeními základních přípustných řešení je konečný počet podle testu optima v každé iteraci zvýšíme hodnotu účelové funkce v konečném počtu tedy musíme dojít k optimálnímu řešení nebo k závěru, že neexistuje. © L&K
5
DEGENERACE V ÚLOZE LP Degenerované řešení
je základní přípustné řešení, které má méně než m kladných složek, tj. více než n – m nulových složek Znamená to, že jedna nebo více základ-ních proměnných je rovna nule V ST je alespoň jedna pravá strana rovna nule © L&K
6
Degenerace v ST K degeneraci v ST může dojít dvěma způ-soby:
− při zadání úlohy LP − během výpočtu (je-li několik stejných mi- nimálních podílů podle (4.2)) Je-li proti nulové pravé straně v klíčovém sloupci kladný koeficient, je hodnota vstupující proměnné rovna nule: xk = t = 0 © L&K
7
Zacyklení báze Je-li t =0, je nulový i přírůstek z: Δz = −zk.0 = 0
Tato situace může vést k zacyklení: − po určitém počtu kroků se opět vrací již známá kombinace základních proměn- ných (známá báze) − postup se opakuje donekonečna (viz pří- klad podle Bealea v Systému LinPro) − toto zacyklení báze je velmi vzácné © L&K
8
Příklad 5.1 Je dána úloha LP: výchozí řešení do tabulky
Přičteme přídatné proměnné a přepíšeme výchozí řešení do tabulky © L&K
9
Nejednoznačnost klíč. řádku
Tab. 5.1 Klíčový řádek je 1. nebo 2. Nejednoznačnost pokračuje i v dalších iteracích Zvolíme-li vždy první z možností, vracíme se po sedmi iteracích zpět k výchozí bázi © L&K
10
Zacyklení báze • Výpočet v LinPro byl po 30. iteracích ukon- čen
Tab. 5.2 • Výpočet v LinPro byl po 30. iteracích ukon- čen © L&K
11
Odstranění degenerace
Nejznámější jsou tři způsoby: Modifikace testu optima − snaží se o nenulovou změnu účelové funkce podle (3.10) 2. Charnesova metoda − upraví nulové pravé strany na kladné 3. Blandovo pravidlo − modifikuje určení klíčového sloupce i klíčového řádku © L&K
12
1. Modifikace testu optima
Tab. 5.3 Klíčový sloupec vybereme třetí Klíčový řádek je jednoznačně třetí Změna účelové funkce je: ? Ve třetí iteraci vypočteme OŘ © L&K
13
Manuální výpočet v LinPro
Tab. 5.4 V 1. iteraci je klíčový sloupec třetí © L&K
14
2. iterace • Zvolte klíčový sloupec a řádek ............... ? Tab. 5.5
© L&K
15
3. iterace - OŘ Optimálním řešením je vektor
Tab. 5.6 Optimálním řešením je vektor x(3) =(0; 0, 04; 1; 0; 0,03;0; 0)T, z = -0,05 © L&K
16
2. Charnesova metoda Pravé strany upravíme na kladná čísla:
b(ε) = b + εj aj (5.2) kde 0 < ε < 1 je malé kladné číslo blízké nule Začínáme sloupcem, který má v poten-ciálních klíčových řádcích kladné koefi-cienty Toto uspořádání dodržujeme po celou do-bu výpočtu Dostaneme tak perturbované pravé stra-ny, které jsou všechny kladné Vždy je možno využít jednotkovou matici základních proměnných © L&K
17
Perturbované pravé strany
Uspořádání sloupců: Tab. 5. 7 b1(ε) = 0 +1/4 ε - 60 ε2 - 1/25 ε3 + 9 ε4 + + ε5 b2(ε) = 0 +1/2 ε - 90 ε2 - 1/50 ε3 + 3 ε4 + 0 + + ε6 + 0 © L&K
18
Určení klíčového řádku
Místo pravých stran bi dosadíme pertur-bované pravé strany bi(ε) podle (5.2) V tab. 5.7 zvolíme např. ε = 0,001: b1(ε) = 0, , b2(ε) = 0, Dělíme pravé strany bi(ε) kladnými koefi-cienty klíčového sloupce a najdeme mini-mum: t=min(0,00019/(1/4), 0,00041/(1/2)) = =min(0,00076, 0,00082)=0,00076 © L&K
19
Postup je možno zjednodušit
Hodnotu perturbované pravé strany bi(ε) není třeba počítat Vzhledem k tomu, že každý další sloupec je násoben menším číslem, má na hodno-tu bi(ε) menší vliv Stačí tedy hodnotu t počítat postupně ze seřazených sloupců tabulky Tímto způsobem je klíčový řádek vždy určen jenoznačně © L&K
20
Příklad 5.2 Uvažujme opět úlohu (5.1)
Určete klíčový řádek ve třetí iteraci Char-nesovou perturbační metodou Zachovejte přitom seřazení sloupců podle tabulky 5.7: x x x x x x x7 © L&K
21
Charnesova metoda • Klíčový řádek určíme ze druhého sloupce
Tab. 5. 8 • Klíčový řádek určíme ze druhého sloupce podle ? © L&K
22
Optimální řešení • V 6. iteraci vypočteme OŘ:
Tab. 5. 9 • V 6. iteraci vypočteme OŘ: x(3) =(0; 0, 04; 1; 0; 0,03;0; 0)T, z = -0,05 © L&K
23
3. Blandovo pravidlo Je jednodušší než Charnesova metoda:
volíme vždy první možný klíčový sloupec bez ohledu na absolutní hodnotu koeficientu zj volíme první možný klíčový řádek metoda byla odvozena experimentálně (zvolte manuální výpočet v systému LinPro) © L&K
24
Příklad 5.3 Řešte úlohu (5.1) podle Blendova pravidla
Určete klíčový sloupec a klíčový řádek v páté iteraci Obvyklým způsobem (vede k zacyklení) bychom volili klíčový sloupec pátý Podle Blandova pravidla volíme první možný, tj. druhý V sedmé iteraci vypočteme optimální ře-šení © L&K
25
Blandovo pravidlo • Volíme klíčový sloupec druhý (nikoliv pá- tý)
Tab • Volíme klíčový sloupec druhý (nikoliv pá- tý) © L&K
26
Optimální řešení • Optimální řešení
Tab. 5.11 • Optimální řešení x(7) =(0; 0,04; 1; 0; 0,03; 0; 0)T, z = -0,05 jsme vypočetli v 7. iteraci © L&K
27
Obr. 5.1 – Výchozí řešení v ST
OBECNÉ VYJÁDŘENÍ ST Výchozí řešení 1FSM: kde je ... A[m.n] matice koeficientů aij b[m.1] vektor pravých stran bi cT[1.n] vektor cen cj E [m.m] jednotková matice (5.3) Obr. 5.1 – Výchozí řešení v ST © L&K
28
Báze v ST Vektory strukturních koeficientů zá-kladních proměnných v s-té iteraci tvoří bázi Bs Všechny vektory strukturních koeficientů nezákladních proměnných jsou v s-té iteraci vyjádřeny jako lineární kombinace vektorů báze Bs * Matice báze výchozího řešení v 1FSM je jednotková matice vektorů přídatných proměnných * ekvivalentní kombinace základních procesů © L&K
29
Báze výchozího řešení Výchozí řešení Matice báze Inverzní matice báze
Tab. 5.12 © L&K
30
Inverzní matice báze s-té iterace
Vektory báze s-té iterace najdeme ve vý-chozí simplexové tabulce ve sloupcích základních proměnných s-té iterace K matici báze Bs existuje inverzní matice báze Bs-1 Inverzní matice báze je v tabulce s-té iterace na místě jednotkové výchozí báze V JFSM je to ve sloupcích přídatných pro-měnných © L&K
31
Báze v s-té iteraci Výchozí řešení 2. iterace
Matice báze 2. iterace B2 Výchozí řešení 2. iterace 2 1 3 Inverzní matice báze 2. iterace B2-1 Tab. 5.13 © L&K
32
Rozšířená matice báze Matici báze rozšíříme o řádek účelové funkce:
(5.4) kde je vektor cen základních proměn- ných v s-té iteraci Matice k ní inverzní: (5.5) © L&K
33
Obecné vyjádření s-té iterace
• Výchozí ST ve tvaru (5.3) násobíme zleva rozšířenou inverzní matici báze (5.5): = (5.6) Obr. 5.2 © L&K
34
Bs-1A matice transformovaných strukturních koeficientů
kde je: Bs-1A matice transformovaných strukturních koeficientů Bs-1 b hodnoty základních proměn- ných cBT Bs-1 A - cT koeficienty zj u strukturních proměnných cBT Bs-1 koeficienty zj u přídatných cBT Bs-1 b hodnota účelové funkce © L&K
35
Např. transformovaná matice A ve druhé iteraci v tabulce 5
Např. transformovaná matice A ve druhé iteraci v tabulce 5.13 je podle vzorců na obr. 5.2: Bs-1A = . = = © L&K
36
Postoptimalizační analýza
Obecných vzorců (5.6) můžeme využít k analýze optimálního řešení Umožňují sledovat vliv řady různých změn v původním modelu na optimální řešení To rozšiřuje možnosti LOM, který je sta-tický a deterministický Rovněž to umožňuje řadu různých experi-mentů, které by s reálným systémem ne-byly uskutečnitelné Různé možnosti probereme postupně © L&K
37
Přidání procesu • V matematickém modelu úlohy LP to zna-
mená přidat strukturní proměnnou xp • Její vektor ap transformujeme: αp(s) = Bs−1ap a vypočteme koeficient zp : zp = cBT αp(s) − cp (5.7) • Testujeme jeho znaménko: - je−li zp < 0, je nový proces výhodný - je-li zp < 0, není nový proces výhodný jaký je další postup ? © L&K
38
Příklad 5.4 V tabulce 5.14 je OŘ úlohy LP z příkladu 3.1
Určete, jaký vliv bude mít na optimální řešení, jestliže se firma zavede výrobu podložek: - jedna krabička se vylisuje za 2 min., zabalí se za 1 min. Cena jedné krabičky je 50 Kč. Tab © L&K
39
Přidání proměnné x6 Transformujeme vektor a6:
· = Vypočteme koeficient v řádce z: ? Je výroba podložek pro firmu výhodná ....? Kdy bude a proč ? © L&K
40
Optimální řešení Optimální řešení se po přidání proměnné x6 nezměnilo:
x* =(110, 5, 0, 50, 0)T, z = 4700 Podložky by se mohly vyrábět, pokud by jejich jednotkový zisk byl alespoň 60 Kč Tab. 5.15 © L&K
41
ANALÝZA CITLIVOSTI Analýza citlivosti stanoví meze změn, ne-boli interval stability: 1. pravých stran omezení bi 2. cenových koeficientů cj Pokud se hodnota bi nebo cj mění v těchto mezích (jednotlivě), není porušena optima-lita současného řešení Nemění se báze optimálního řešení, tj. zá-kladní proměnné © L&K
42
1. PRAVÉ STRANY OMEZENÍ Jednou z podmínek optimality řešení je nezápornost pravých stran Pro transformované pravé strany tedy musí platit Bs−1 b ≥ (5.8) Jestliže se změní některá pravá strana, může být tento vztah porušen Předpokládejme, že se změní pouze bp, tj. pravá strana v p-tém omezení © L&K
43
Podle podmínek nezápornosti musí být Bs−1b* ≥ 0, (5.9)
kde ve vektoru b* jsou všechny složky rov-ny původním hodnotám (tedy konstanty), až na p-tou, která je rovna bp* Vztah (5.4) rozepíšeme po složkách (viz Lagová, Jablonský: Lineární modely) Dostaneme soustavu m nerovnic, které omezí hodnotu pravé strany bp* © L&K
44
Ze soustavy nerovnic stanovíme:
− dolní mez hodnoty p-té pravé strany dp − horní mez hodnoty p-té pravé strany hp Leží-li pravá strana p-tého omezení v intervalu stability bp* dp , hp (5.10) není porušena primární přípustnost a tedy ani optimalita řešení Základní proměnné zůstávají tytéž, mohou se ale změnit jejich hodnoty © L&K
45
Příklad 5.5 Je dána úloha LP: x1 + 2x2 ≤ 120 x1 + 4x2 ≤ 180 x1 ≤ 110
xj ≥ 0, j = 1, 2 z = 40x1 + 60x2 ... max. Určete intervaly stability pravých stran V tabulce 5.16 je OŘ této úlohy © L&K
46
• Pro jaké hodnoty pravých stran zůstane toto řešení optimální ?
Tab. 5.16 • Odtud je OŘ x = ( 110, 5, 0, 50, 0)T, z = 4700 • Pro jaké hodnoty pravých stran zůstane toto řešení optimální ? © L&K
47
1. Dosadíme z tabulky (5.14) do Bs−1b* ≥ 0:
Rozepíšeme: 110 ≥ 0 1/2·b1 − 1/2·110 ≥ 0 → b1 ≥ 110 −2·b ≥ 0 → b1 ≤ 145 . ≥ © L&K
48
Odtud je interval stability první pravé stra-ny: b1* 110, 145
Proměnné x1, x2 a x4 zůstanou základní Bude-li disponibilní čas lisu alespoň 110 minut a nanejvýše 145 minut, bude pro firmu nadále optimální vyrábět šroub- ky i matice Disponibilní čas balicí linky bude stále nevyčerpán © L&K
49
Příklad 5.6 Řešte úlohu z předchozího příkladu za změněných podmínek:
a. disponibilní čas lisu je 135 minut b. disponibilní čas lisu je 90 minut Určete, zda změna ovlivní optimalitu řeše-ní Vypočtěte nové optimální řešení Srovnejte s původním optimálním řešením Úlohu vyřešte v systému LinPro © L&K
50
OŘ původní úlohy • Interval stability pravé strany prvního
omezení je b1 110, 145 © L&K
51
OŘ nové úlohy: b1*=135 • Základní proměnné se nezměnily
Tab. 5.18 • Základní proměnné se nezměnily Změnil se počet KM: 12,5 (dříve 5) Snížil se zbytek času balicí linky z 50 na 20 Zvýšil se zisk na 5150 Kč © L&K
52
OŘ nové úlohy : b1*=90 • Matice se vůbec nevyrábí
Tab. 5.19 • Matice se vůbec nevyrábí Čas lisu se vyčerpal, na balicí lince zbývá 90 min. Počet KŠ je o 20 menší než 110 (90) Zisk se snížil na 3600 Kč © L&K
53
2. CENOVÉ KOEFICIENTY V OŘ maximalizační úlohy je v řádce z:
cBT Bs−1 A − cT ≥ 0 cBT Bs−1 ≥ (5.11) Změní-li se některý cenový koeficient, může být porušena optimalita řešení Koeficient zj je podle obecného vzorce: zj = cBT Bs−1 aj cj (5.12) Odtud je zřejmé, že změna ceny nezáklad-ní poměnné má na optimalitu řešení jiný vliv než změna ceny základní proměnné © L&K
54
Mění se cena nezákladní proměnné xj - změní se jedna složka vektoru cT
- vektor cBT se nezmění Ze vzorce (5.13) je zřejmé, že zj *= cBT Bs−1 aj − (cj + ∆cj) = zj − ∆cj (5.13) kde ∆cj je velikost změny cj Podmínka zachování optimality řešení: zj − ∆cj ≥ 0, tj ∆cj ≤ zj (5.14) zj © L&K
55
Růst je omezen původní hodnotou ceny zvýšenou o zj: hj = cj + zj
Odtud je zřejmé, že cena nezákladní proměnné v maximalizační úloze může klesat neomezeně Růst je omezen původní hodnotou ceny zvýšenou o zj: hj = cj + zj Interval stability ceny nezákladní proměnné v maximalizační úloze je tedy cj ( - , hj (5.15) ∞ © L&K
56
cBT Bs−1 A cT ≥ 0 (5.15) cBT Bs−1 ≥ 0
2. Mění se cena základní proměnné xk - změní se vektor cBT i vektor cT Musí se přepočítat všechny koeficienty účelové funkce Novou cenu ck* dosadíme do cBT Bs−1 A cT ≥ (5.15) cBT Bs−1 ≥ 0 Rozepíšeme soustavu nerovnic a vypoč-teme interval stability ceny základní pro-měnné: ck dk , hk kde dk , hk jsou meze ceny ck © L&K
57
Příklad 5.7 • V tabulce je optimální řešení úlohy LP:
Vypočtěte interval stability cen proměn-ných x2 a x3, je-li vektor cen strukturních proměnných cT=(10, 7, 12) © L&K
58
Interval stability c2 je z tab. 5.19: c2 ( - , 7 + 15 = 22
1. Proměnná x2 je nezákladní Interval stability c2 je z tab. 5.19: c2 ( - , = 22 Zvolíme novou cenu c2*=20 (∆c2 =13) Tab. 5.21 • Optimalita řešení nebyla porušena • Základní proměnné ani jejich hodnota se nezměnily • Nezměnila se ani hodnota z © L&K
59
sestavíme soustavu nerovnic podle (5.15):
2. Proměnná x3 je základní sestavíme soustavu nerovnic podle (5.15): ≥ − ≥ kde symbol Δ označuje měnící se hodnoty c3 Odtud je: ………………………………….. ? © L&K
60
Zvolíme novou hodnotu c3* = 30 mimo tento interval
V přepočtené řádce z bude alespoň jeden koeficient záporný: Tab. 5.22 Je porušena optimalita řešení Nové OŘ se počítá simplexovou me- todou © L&K
61
KONEC © L&K
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.