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
4. přednáška SIMPLEXOVÁ METODA II.
© Lagová, Kalčevová
3
OSNOVA PŘEDNÁŠKY Algoritmus jednofázové SM
Odvození kriteria optimality Odvození kriteria pro určení vystupující proměnné Dvoufázová SM Chyby v ST Kontrola v ST © L&K
4
JEDNOFÁZOVÁ SM Jednofázovou simplexovou metodou (1FSM) řešíme úlohy LP, jejichž všechna vlastní omezení jsou zadána jako nerov-nice typu ≤ Výchozí řešení 1SM získáme pomocí přídatných proměnných, které přičteme k levé straně omezení Základními proměnnými ve výchozím řešení 1FSM jsou přídatné proměnné © L&K
5
ALGORITMUS 1SM Test optima a určení vstupující proměnné:
Najdeme nejmenší koeficient zj: g = minj (zj) = zk, (4.1) j = 1, 2, …, m+n a. g 0 → řešení je optimální, výpočet končí b. g < 0 → proměnná xk je vstupující k-tý sloupec je klíčový © L&K
6
2. Určení vystupující proměnné Vypočteme
kde βi ...je transformovaná pravá strana v i-tém řádku (i = 1, 2, ..., m) Podíl t určuje maximální hodnotu vstupující proměnné: - testujeme jeho hodnotu (4.2) © L&K
7
- vstupující proměnná může nabývat libovolně velkých kladných hodnot
a. αik ≤ 0 pro i = 1, 2, ..., m: - vstupující proměnná může nabývat libovolně velkých kladných hodnot - účelová funkce má neomezenou hodnotu - OŘ neexistuje → výpočet končí b. t = βq / αqk , αqk > 0: - vystupující proměnnou je základní pro- měnná v q-tém řádku - q-tý řádek je klíčový Na průsečíku klíčového sloupce a klíčové-ho řádku leží klíčový prvek αqk © L&K
8
3 a. Transformace matice A
Klíčový řádek dělíme klíčovým prvkem: (4.3) j = 1, 2, ..., n+m Transformujeme ostatní prvky v matici A: (4.4) i =1, 2, ..., m, i≠q, j = 1, 2, ..., n+m © L&K
9
3 b. Transformace pravých stran
Transformovaná pravá strana v klíčovém řádku: (4.5) Ostatní pravé strany: (4.6) kde q ... je index klíčového řádku, i =1, 2, ..., m, i≠q © L&K
10
4. NÁVRAT K BODU 1 3 c. Transformace řádku z
Koeficienty účelové funkce přepočteme podle (4.7) kde k ... je index klíčového sloupce j = 1, 2, ..., n+m Nová hodnota účelové funkce je (4.8) 4. NÁVRAT K BODU 1 © L&K
11
Odvození kriteria optimality
Iterační postup SM může začít od jaké-hokoliv ZPŘ Předpokládejme, že známe jedno ze ZPŘ (2.14): x(1)= (β1, β2, ..., βm, 0, ...0) (4.9) kde βi > 0, i = 1, 2, ..., m jsou transformované pravé strany omezení © L&K
12
Je tato hodnota maximální ?
Základními proměnnými jsou x1= β1, x2= β2, ..., xm= βm Hodnota účelové funkce je ? (4.10) Je tato hodnota maximální ? Zkusíme, co se stane, jestliže za některou nezákladní proměnnou dosadíme namísto nuly kladnou hodnotu © L&K
13
x1= β1- α1,m+1 .t x2= β2 - α2,m+1 .t (4.11) ... xm= βm - αm,m+1 .t
Zvolíme např. xm+1=t, kde t > 0 Z ekvivalentní soustavy rovnic vypočteme nové hodnoty základních proměnných: x1= β1- α1,m+1 .t x2= β2 - α2,m+1 .t (4.11) ... xm= βm - αm,m+1 .t kde αi,m+1 jsou transformované strukturní koeficienty u proměnné xm+1, i = 1, 2, ...m © L&K
14
z(2)= c1x1 + c2x2 + ... + cmxm + cm+1xm+1
Nová hodnota účelové funkce bude z(2)= c1x1 + c2x cmxm + cm+1xm+1 Dosadíme nové hodnoty proměnných z (4.11) ? Roznásobíme: z(2)= c1 β1 - c1α1,m+1.t + cm βm - cm αm,m+1.t + cm+1.t © L&K
15
z(2) = z(1) - t (c1α1,m+1 + ... + cmαm,m+1 - cm+1)
Uspořádáme: z(2)= c1 β cm βm + - c1α1,m+1.t cm αm,m+1.t + cm+1.t Zjednoduššíme a vytkneme (-t): z(2) = z(1) - t (c1α1,m cmαm,m+1 - cm+1) Označíme c1α1,m cmαm,m+1 = c’m+1 (4.12) kde c1, ..., cm jsou ceny základních pro- měnných x1, ..., xm α1,m+1, ..., αm,m+1 jsou transformované koeficienty proměnné xm+1 © L&K
16
z(2) = z(1) – t (c’m+1- cm+1) Δz = - t (c’m+1- cm+1)
Po dosazení (4.11) je: z(2) = z(1) – t (c’m+1- cm+1) Odtud je rozdíl mezi oběma hodnotami účelové funkce: Δz = - t (c’m+1- cm+1) Protože t >0 a tudíž (-t <0), je Δz > 0 pro (c’m+1- cm+1) < 0 Δz < 0 pro (c’m+1- cm+1) > 0 Δz = 0 pro (c’m+1- cm+1) = 0 © L&K
17
Ekonomická interpretace testu optimality
Ekvivalentní kombinace základních pro-cesů je lineární kombinace, která je vy-jádřením vektoru koeficientů nezákladní proměnné v bázi vektorů základních pro-měnných. Např. v (4.9) je to: am+1 =α1,m+1 a αm,m+1 am (4.13) Ekvivalentní kombinace (4.14) má na pra-vé strany omezení stejný vliv jako jednotka procesu (m+1) © L&K
18
Je-li c’j > cj, je výhodnější současná kom-
Má ale jinou „cenu“ c’j Podle (4.4) vypočteme c’j jako součin vektoru cen základních proměnných a vektoru transformovaných strukturních koeficientů nezákladní proměnné xj Cena ekvivalentní kombinace základních procesů ukazuje, kolik „stojí“*současná kombinace základních procesů Je-li c’j > cj, je výhodnější současná kom- binace základních procesů než j-tý proces * tj. kolik přinese jednotek k účelové funkci © L&K
19
je-li zj < 0, hodnota z roste
Je-li c’j < cj , je výhodnější j-tý proces Dá se odvodit (viz Přednáška V.), že (c’j - cj) = zj, (4.14) tj. koeficent účelové funkce u nezáklad- ní proměnné xj, Došli jsme tedy ke stejnému závěru jako při odvození testu optima: je-li zj < 0, hodnota z roste Jsou-li všechny koeficienty zj nezáporné, je řešení optimální © L&K
20
Příklad 4.1 Využijeme řešení kapacitní úlohy (3.1) z tabulky 3.6:
x(2)=(0, 45, 30, 0, 110)T, z = 2700 Vysvětlete ekvivalentní kombinaci základ-ních procesů proměnné x1 Vypočtěte koeficienty z1 a z4 v účelové funkci Určete, zda je hodnota účelové funkce maximální Pokud ne, vyberte vstupující proměnnou © L&K
21
Ekvivalentní kombinace 1. procesu: a1=1/2a3+1/4a2+a5 (4.15)
Proměnné x 1 2 3 4 5 i t 1/2 - /2 30 60 1/4 45 180 110 z j 25 15 2700 Ekvivalentní kombinace 1. procesu: a1=1/2a3+1/4a2+a (4.15) Cena ekvivalentní kombinace (4.15) ? Koeficient z1 a z ? © L&K
22
Ekonomická interpretace
Dosadíme vektory a1, a2, a3, a5 z tab. 3.1 do (4.15): a1=1/2a3+1/4a2+a5 Zkontrolujte správnost © L&K
23
• nevyužití 1/2 min. času lisu +
Vidíme, že jedna jednotka prvního procesu má na pravé strany stejný vliv jako ekviva-lentní kombinace (4.15): • nevyužití 1/2 min. času lisu + • výroba 1/4 krabičky matic (=spotřeba (1/4. 2)min. času lisu a 1/4.4)min. ba- licí linky ) + • „nevýroba“krabičky šroubků (= 1 KŠ) Jednotkové provedení ekvivalentní kombi-nace základních procesů (4.15) tedy „odebere“ z každé pravé strany 1 jednotku © L&K
24
Cena jednotky 1. procesu (tj. zisk z jedné
krabičky šroubků) je c1= 40 Kč Cena ekvivalentní kombinace (4.15) je c’1= 1/2c3+1/4c2+c5 = 1/2.0+1/4.60+0=15 c1 > c’1 , tj. výhodnější je 1. proces Řešení v tabulce 3.6 není optimální Vstupující proměnná je x1 © L&K
25
VYSTUPUJÍCÍ PROMĚNNÁ Předpokládejme, že jsme jako vstupující proměnnou určili xk V další iteraci bude mít kladnou hodnotu, kterou označíme symbolem t Velikost t je omezena podmínkami nezá-pornosti proměnných: x1= β1- α1k .t ≥ 0 x2= β2 - α2k .t ≥ (4.16) ... xm= βm - αm k .t ≥ 0 © L&K
26
βi - αik .t ≥ 0 t ≤ βi / αik t ≤ min (βi / αik )
Pro αik ≤ 0 je podmínka βi - αik .t ≥ 0 splněna vždy Pro αik > 0 musí v i-tém omezení platit t ≤ βi / αik Celkem je tedy hodnota vstupující proměn-né omezena horní hranicí t ≤ min (βi / αik ) i =1, ..., m © L&K
27
Zvolíme-li maximální možnost, tj.
bude řešení v další iteraci: - přípustné - základní • Co se stane, zvolíme-li t menší nebo větší než je povolená maximální možnost (Před- náška III.) ? © L&K
28
DVOUFÁZOVÁ SM 2FSM řešíme ty úlohy LP, které mají ně-která omezení zadána jako nerovnice typu ≥ nebo rovnice Po vyrovnání vlastních omezení na rov-nice není soustava ekvivalentních rovnic v kanonickém tvaru K získání výchozího řešení použijeme další druh proměnných Nazveme je pomocné proměnné © L&K
29
Pomocné proměnné Pomocné proměnné přičteme: v nerovnici typu ≥
v rovnici Ve výchozím řešení jsou základními pro-měnnými Pomocné proměnné nemají ekonomickou interpretaci Výchozí řešení proto není přípustným řešením zadané úlohy LP © L&K
30
Rozšířená soustava rovnic
Soustavu rovnic s pomocnými proměn-nými nazýváme rozšířená soustava Je ekvivalentní původní soustavě rovnic pouze tehdy, jsou-li všechny pomocné proměnné rovny nule Vynulování pomocných proměnných mů-žeme zajistit dvěma způsoby: − zavedením prohibitivních cen − sestavením pomocné účelové funkce © L&K
31
Prohibitivní ceny Pomocným proměnným dáme tzv. prohi-bitivní cenu, např (max.) nebo 1000 (min.) a úlohu řešíme 1FSM Tento způsob má dvě nevýhody: − zvolíme-li prohibitivní cenu málo odliš- nou od cenových koeficientů, nemusí se pomocná proměnná vynulovat − jestliže jsou naopak prohibitivní ceny řádově hodně vysoké, je výpočet ne- přehledný © L&K
32
Pomocná účelová funkce
Sestavíme pomocnou účelovou funkci: z' = ∑ yp … min. kde yp ≥ 0 jsou pomocné proměnné Nejmenší přípustná hodnota pomocné proměnné je nula (nezápornost) Jakmile se všechny pomocné proměnné vynulují, pomocnou účelovou funkci vyne-cháme Úlohu řešíme ve dvou fázích © L&K
33
1. FÁZE 2FSM V 1.fázi hledáme vstupující proměnnou podle kladného koeficientu v pomocné účelové funkci z' Při splnění podmínek nezápornosti je minimální hodnota z' = 0, jsou-li všechny pomocné proměnné rovny nule V tomto případě jsme našli první pří-pustné řešení zadané úlohy Pokud se to nepodaří, PŘ ani OŘ ne-existuje © L&K
34
2. FÁZE 2FSM Ve druhé fázi počítáme podle účelové funkce z
Hledáme její zadaný extrém (bez ohledu na minimalizaci pomocné účelové funkce) Pomocnou účelovou funkci vypustíme Dále počítáme 1FSM Můžeme vypustit i pomocné proměnné, pokud je nepotřebujeme k dalšímu výpočtu © L&K
35
Příklad 4.2 Uvažujme úlohu LP: x1 + 2x2 ≤ 120 x1 − x2 ≥ 90
xj ≥ 0, j = 1, 2 z = 40x1 + 60x2 ... max. Vypočtěte OŘ simplexovou metodou Pozn.: Je to úloha z příkladu 1.1, ve které jsme vynechali redundandní 2.omezení © L&K
36
Vlastní omezení vyrovnáme na rovnice: x1 + 2x2 + x3 = 120
Soustava (4.18) není v kanonickém tvaru Ve druhé rovnici chybí proměnná s jednot-kovým vektorem, takže je odtud x4 = - 90 Řešení x=(0, 0, 120, -90, 110) není přípustné © L&K
37
Ve druhém omezení přičteme pomocnou proměnnou y1: x1 + 2x2 + x3 = 120
x1 - x x y1 = 90 (4.19) x x =110 Výchozím řešením je odtud: x(1) = (0, 0, 120, 0, 110, 90) Vektor x(1) není PŘ úlohy (4.17) ... Proč? © L&K
38
Pomocná účelová funkce
Formulujeme pomocnou účelovou funkci z' = y1 … min. Vynulujeme ji z' − y1 = 0 Upravíme na kanonický tvar tak, že eliminační metodou vyloučíme (− y1 ) Z (4.19) přičteme k z' druhé omezení x1 – x2 – x4 + y1 = 90 z' + x1 – x2 – x4 = 90 + = © L&K
39
Dostaneme rozšířený model úlohy LP v kanonickém tvaru:
x1 + 2x2 + x = 120 x x x y = 90 x x = 110 -40x x z = 0 x x x z' = 90 xj ≥ 0 y1 ≥ 0 j = 1, 2, ..., 5 © L&K
40
Výchozí řešení v ST Výchozím řešením je z tabulky 4.1 vektor
x(1) = (0, 0, 120, 0, 110, 90) Není to přípustné řešení, protože y1=90 Počítáme 2FSM podle řádky z’ © L&K
41
1. iterace Klíčový sloupec je první ............... PROČ?
Tab. 4.2 Klíčový sloupec je první PROČ? Klíčový řádek je druhý PROČ? © L&K
42
2. iterace Prvním přípustným řešením úlohy (4.17) je vektor
Tab. 4.3 Pomocná proměnná se vynulovala, z’ = 0 Prvním přípustným řešením úlohy (4.17) je vektor x(2) = (90, 0, 30, 0, 20, 0) Přejdeme do 2.fáze Koeficient (-1) zaručuje, že se pomocná proměnná nikdy nestane vstupující proměnnou © L&K
43
2. fáze Z tabulky vynecháme pomocnou účelovou funkci a sloupec pomocné proměnné a pokračujeme ve výpočtu jednofázovou SM Hledáme maximum účelové funkce z: Tab. 4.4 Klíčový sloupec je podle g=-100 druhý Klíčový řádek je podle t=10 první © L&K
44
3. iterace Který sloupec je klíčový ................. Proč?
Tab. 4.5 Z tabulky (4.5) přečteme řešení: ? Který sloupec je klíčový Proč? Který řádek je klíčový Proč? © L&K
45
4. iterace Tab. 4.6 Odtud je řešení: x(4)=(110, 5, 0, 15, 0), z(4) = 4700 Je to OŘ ? © L&K
46
„Pan Simplex“ ve 2FSM Obrázek 4.1 − 2FSM x2 OPTIMUM x1 60 90 110 120
© L&K
47
CHYBY VE VÝPOČTU V ST Chyba: Projeví se: − v určení klíč. sloupce
− v určení klíč. řádku − v eliminaci − v zápisu základních proměnných − numerické chyby Projeví se: − snížení hodnoty z − nepřípustné řešení − porušení přípustnosti nebo kanon. tvaru − špatně přečtené ZPŘ − částečně nebo úplně špatný výsledek © L&K
48
1. CHYBNÝ VÝBĚR KLÍČOVÉHO SLOUPCE
Tab. 4.7 Hodnota vstupující proměnné x3 je: ? Změna účelové funkce bude: ? © L&K
49
Transformace Tab. 4.8 Vidíme, že hodnota účelové funkce klesla na 2700, tedy o 1500 V grafickém řešení jsme se dostali zpět do krajního bodu B © L&K
50
„Pan Simplex“ zabloudil Obrázek 4.2 − Zhoršení hodnoty z
1 x1 + 2 x2 £ 120 [0,60] B [0,45] C [60,30] 1 x1 + 4 x2 £ 180 D [110,5] x1 [0,0] A Obrázek 4.2 − Zhoršení hodnoty z [110,0] E [120,0] © L&K
51
2. CHYBNÝ VÝBĚR KLÍČOVÉHO ŘÁDKU
Tab. 4.9 Hodnota vstupující proměnné x4 je ? Jaká bude hodnota proměnných x1,x2 a x ? © L&K
52
Po transformaci dostáváme simplexovou tabulku s nepřípustným řešením:
V grafickém řešení jsme se dostali mimo množinu PŘ (bod F≡[120,0]) © L&K
53
„Pan Simplex“ se úplně ztratil Obrázek 4.3 − Nepřípustné řešení
1 x1 + 2 x2 £ 120 [0,60] B [0,45] C [60,30] 1 x1 + 4 x2 £ 180 D [110,5] x1 F [0,0] A Obrázek 4.3 − Nepřípustné řešení [110,0] E [120,0] © L&K
54
3. CHYBA V ELIMINACI Takových chyb může být velké množství, např.
odečteme od sebe řádky ST v opačném po-řadí a dostaneme tak nepřípustné řešení počítáme eliminační metodou, nikoliv meto-dou úplné eliminace a ztratíme tak jednotkové vektory, tj. kanonický tvar Např. v tabulce 4.11 jsme vynásobili druhý řádek (−2) a přičetli k němu první řádek © L&K
55
rušen kanonický tvar Řešení v tab. 4.12 je nepřípustné a je po-
Proměnné x 1 2 3 4 5 i t 1/2 - /2 30 60 1/4 45 180 110 z j 25 15 2700 Tab. 4.11 Proměnné x 1 2 3 4 5 i t - -2 z j 1 60 2 -60 Tab. 4.12 Řešení v tab je nepřípustné a je po- rušen kanonický tvar © L&K
56
4. CHYBNÝ ZÁPIS Ve třetím řádku je základní proměnná y1
Tab. 4.13 Ve třetím řádku je základní proměnná y1 Ve čtvrtém řádku je základní proměnná x6 Z tab bychom přečetli chybné řeše-ní x=(0, 0,120, 180, 90, 0, 90) © L&K
57
Kontrola výpočtu v ST • K ST přidáme první řádek cenových koe-
Tab. 4.14 • K ST přidáme první řádek cenových koe- ficientů, do prvního sloupce zapíšeme ceny základních proměnných • Podle (4.14) vypočteme koeficienty zj © L&K
58
KONEC © L&K
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.