Malliratkaisut Demot

Samankaltaiset tiedostot
Malliratkaisut Demot 6,

Malliratkaisut Demo 4

Malliratkaisut Demot

Malliratkaisut Demot

Malliratkaisut Demot

Malliratkaisut Demot

Malliratkaisut Demot 5,

Malliratkaisut Demot

Malliratkaisut Demot

Harjoitus 5 ( )

Lineaarinen optimointi. Harjoitus 6-7, Olkoon A R m n, x, c R ja b R m. Osoita, että LP-tehtävän. c T x = min!

Malliratkaisut Demo 4

Demo 1: Simplex-menetelmä

Harjoitus 6 ( )

Jälki- ja herkkyysanalyysi. Tutkitaan eri kertoimien ja vakioiden arvoissa tapahtuvien muutosten vaikutusta optimiratkaisuun

Kokonaislukuoptiomointi Leikkaustasomenetelmät

Malliratkaisut Demo 1

Harjoitus 5 ( )

Malliratkaisut Demot

Mat Lineaarinen ohjelmointi

Ovatko seuraavat väittämät oikein vai väärin? Perustele vastauksesi.

Harjoitus 6 ( )

JYVÄSKYLÄN YLIOPISTO. 3. Luennon sisältö

Harjoitus 1 ( )

Lineaarinen optimointitehtävä

Mat Lineaarinen ohjelmointi

b 1. b m ) + ( 2b Ax) + (b b)

Talousmatematiikan perusteet: Luento 12. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen

Talousmatematiikan perusteet: Luento 14. Rajoitettu optimointi Lagrangen menetelmä: yksi yhtälörajoitus Lagrangen menetelmä: monta yhtälörajoitusta

Mat Lineaarinen ohjelmointi

Luento 9: Yhtälörajoitukset optimoinnissa

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä

Talousmatematiikan perusteet: Luento 11. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

Malliratkaisut Demot

Luento 3: Simplex-menetelmä

Luento 4: Lineaarisen tehtävän duaali

Talousmatematiikan perusteet: Luento 15. Rajoitettu optimointi Lagrangen menetelmä Lagrangen kerroin ja varjohinta

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

Harjoitus 3 ( )

Harjoitus 3 ( )

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

6. Luennon sisältö. Lineaarisen optimoinnin duaaliteoriaa

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Harjoitus 1 ( )

Kuljetustehtävä. Materiaalia kuljetetaan m:stä lähtöpaikasta n:ään tarvepaikkaan. Kuljetuskustannukset lähtöpaikasta i tarvepaikkaan j ovat c ij

Lineaarisen kokonaislukuoptimointitehtävän ratkaiseminen

MS-C2105 Optimoinnin perusteet Malliratkaisut 4

5 OMINAISARVOT JA OMINAISVEKTORIT

Kannan vektorit siis virittävät aliavaruuden, ja lisäksi kanta on vapaa. Lauseesta 7.6 saadaan seuraava hyvin käyttökelpoinen tulos:

Johdatus diskreettiin matematiikkaan Harjoitus 5, Ratkaise rekursioyhtälö

Matematiikan perusteet taloustieteilijöille II Harjoituksia kevät ja B = Olkoon A = a) A + B b) AB c) BA d) A 2 e) A T f) A T B g) 3A

1 Johdanto LP tehtävän luonteen tarkastelua Johdanto herkkyysanalyysiin Optimiarvon funktio ja marginaalihinta

3 Simplex-menetelmä. c T x = min! Ax = b (x R n ) (3.1) x 0. Tarvittaessa sarakkeiden järjestystä voidaan vaihtaa, joten voidaan oletetaan, että

KKT: log p i v 1 + v 2 x i = 0, i = 1,...,n.

ja B = 2 1 a) A + B, b) AB, c) BA, d) A 2, e) A T, f) A T B, g) 3A (e) A =

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Lineaarinen optimointitehtävä

ja B = 2 1 a) A + B, b) AB, c) BA, d) A 2, e) A T, f) A T B, g) 3A (e)

Markov-kustannusmallit ja kulkuajat

Ominaisarvo ja ominaisvektori

Johdatus verkkoteoriaan luento Netspace

Piiri K 1 K 2 K 3 K 4 R R

2.5. Matriisin avaruudet ja tunnusluvut

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

Kirjallisuuskatsaus sisäpistemenetelmiin ja niiden soveltamiseen eri optimointiluokille (valmiin työn esittely)

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

Matemaattinen optimointi I, demo

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat.

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

Harjoitus 7: vastausvihjeet

Simplex-algoritmi. T Informaatiotekniikan seminaari , Susanna Moisala

TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio. Kimmo Berg. Mat Optimointioppi. 9. harjoitus - ratkaisut

Harjoitus 2 ( )

Numeeriset menetelmät

Kimppu-suodatus-menetelmä

Talousmatematiikan perusteet

Suorista ja tasoista LaMa 1 syksyllä 2009

Mat Lineaarinen ohjelmointi

Numeeriset menetelmät TIEA381. Luento 5. Kirsi Valjus. Jyväskylän yliopisto. Luento 5 () Numeeriset menetelmät / 28

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

TEKNILLINEN TIEDEKUNTA, MATEMATIIKAN JAOS

TIEA382 Lineaarinen ja diskreetti optimointi

12. Hessen matriisi. Ääriarvoteoriaa

min x x2 2 x 1 + x 2 1 = 0 (1) 2x1 1, h = f = 4x 2 2x1 + v = 0 4x 2 + v = 0 min x x3 2 x1 = ± v/3 = ±a x 2 = ± v/3 = ±a, a > 0 0 6x 2

Harjoitus 4: Matlab - Optimization Toolbox

Demo 1: Lineaarisen tehtävän ratkaiseminen graafisesti ja Solverilla

Operatioanalyysi 2011, Harjoitus 3, viikko 39

Differentiaali- ja integraalilaskenta 2 (CHEM) MS-A0207 Hakula/Vuojamo Kurssitentti, 12.2, 2018, arvosteluperusteet

Matematiikka B2 - TUDI

Lineaarialgebra ja matriisilaskenta I, HY Kurssikoe Ratkaisuehdotus. 1. (35 pistettä)

= ( 1) 2 u tt (x, t) = u tt (x, t)

Insinöörimatematiikka D

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Matriisilaskenta Luento 8: LU-hajotelma

8. Ensimmäisen käyvän kantaratkaisun haku

Transkriptio:

Malliratkaisut Demot 2.2.217 Tehtävä 1 Edellisten demojen tehtävä oli muotoa max 3x 1 + 4x 2 s.t. 7x 1 + 3x 2 24 : v 1 x 1 + 4x 2 17 : v 2 x 2 3 : v 3 x 1, x 2. Kohdefunktio voitiin kirjoittaa myös muotoon max 3x 1 + 4x 2, skaalaamalla kilojoulet megajouleiksi. Lisäksi tehtävä kirjoitetaan standardimuotoon: max 3x 1 + 4x 2 s. t. 7x 1 + 3x 2 + x 3 = 24 x 1 + 4x 2 + x 4 = 17 x 2 + x = 3 x 1, x 2, x 3, x 4, x, jotta se voidaan ratkaista parannetulla Simplex-algoritmilla (.19). Parannetun Simplexalgoritmin toiminta on esitetty alla olevassa taulokossa, ja esimerkiksi taulukon kohdassa (*) on laskettu 1 1 B = 1, B 1 = 1, v T = (c B ) T B 1 = T B 1 = (,, ). 1 1 Kohdassa (**) taas on laskettu 1 x π(1) x π(3) E = 1 x 1 3 π(2) x π(3) = 1 1 4 1, 1 1 x 1 π(3) missä x π(3) = x on kannasta poistuva muuttuja. Lisäksi lasketaan 1 3 1 1 3 B 1 = EB 1 old = 1 4 1 = 1 4 1 1 1 1 3 v T = (c B ) T B 1 = (,, 4) 1 4 = (,, 4). 1 ja 1

Taulukko 1: Parannetun Simplex-algoritmin kulku x 1 x 2 x 3 x 4 x max c 3 4 b 7 3 1 24 A 4 1 17 1 1 3 t = N N 1 2 3 muuttujien järj. kannassa x 24 17 3 c T x = 1 B 1 = 1 v T = (,, ) T (*) 1 c j 3 4 c j = c j v T a j x : x 2 1 3 4 1 x = B 1 a 2 24 ( 3) 17 ( 4) 3 λ = 3 ( 1) t = 1 N 3 1 2 N x 1 3 1 c T x 1 = 12 1 3 B 1 = 1 4 v T = (,, 4) T (**) 1 c j 3 4 c j = c j v T a j (***) x : x 1 1 7 x = B 1 a 1 1 ( 7) λ = 1 ( ) t = 2 2 3 1 N N x 2 1 3 8 c T x 2 = 1 1 7 13 B 1 1 4 = v T = (, 3, 8 )T (****) 1 c j 3 8 STOP 2

Redusoidut kustannukset (***) ovat 7 c 1 = c 1 v T a 1 = 3 (,, 4) = 3 c = c v T a = (,, 4) = 4. 1 Edelleen kohdassa (****) on laskettu 1 7 B 1 = EB 1 old = 1 3 1 7 13 1 1 4 1 4 =. 1 1 1 ( v T = (c B ) T B 1 = (, 3, 4)B 1 =, 3, 8 ). ja Tällöin redusoidut kustannukset ovat c 4 = c 4 v T a 4 = c = c v T a = joten algoritmi pysähtyy. Standardimuotoisen primääritehtävän duaali on (, 3, 8 ) 1 = 3 (, 3, 8 ) = 8, 1 min 24v 1 + 17v 2 + 3v 3 s. t. 7v 1 + v 2 3 3v 1 + 4v 2 + v 3 4 v 1, v 2, v 3. Jos (ja kun) parannettu Simplex-algoritmi tuottaa optimiratkaisun, niin viimeksi saatu pricing-vektori on duaalitehtävän ratkaisu. Tämän tehtävän tapauksessa 3 v =, jolloin duaali saa arvon 1 megajoulea eli 1kJ. Vahvan duaalisuuslauseen mukaan näin tulee ollakin. 8 3

Tehtävä 2 Tavoitteena on muodostaa tehtävän max 2x 1 + x 2 duaali. Muodostetaan duaali seuraavasti: a) Luentomonisteen taulukon säännöillä: s. t. x 1 : v 1 x 2 2 : v 2 x 1 +.2x 2 72 : v 3 1x 1 + 2x 2 1 : v 4 1x 1 + x 2 : v x 1 min v 1 + 2v 2 + 72v 3 + 1 v 4 + v s. t. v 1 + v 3 + 1v 4 + 1v 2 (x 1 ) v 2 +.2v 3 + 2v 4 + v = (x 2 R) v 1, v 2, v 3, v 4, v (rajoitteista) b) Luentomonisteessa annetun määritelmän perusteella. Koska x 2 ei ole rajoitettu ja voi olla negatiivinen, niin merkitään ensin x 2 = x + 2 x 2, jolloin tehtävä voidaan kirjoittaa muotoon Määritelmän mukaan duaali on nyt max 2x 1 + x + 2 x 2 s. t. x 1 x + 2 x 2 2 x 1 +.2x + 2.2x 2 72 1x 1 + 2x + 2 2x 2 1 1x 1 x + 2 + x 2 x 1, x + 2, x 2. min v 1 + 2v 2 + 72v 3 + 1 v 4 v s. t. v 1 + v 3 + 1v 4 1v 2 v 2 +.2v 3 + 2v 4 v v 2.2v 3 2v 4 + v v 1, v 2, v 3, v 4, v. Sijoitetaan lopuksi muuttujan v paikalle v ja yhdistetään kaksi viimeistä rajoitetta, jolloin saadaan eli sama kuin a-kohdassa. min v 1 + 2v 2 + 72v 3 + 1 v 4 + v s. t. v 1 + v 3 + 1v 4 + 1v 2 v 2 +.2v 3 + 2v 4 + v = v 1, v 2, v 3, v 4, v. 4

Tehtävä 3 Standardimuotoon kirjoitettuna tehtävä 2 on max 2x 1 + x 2 s. t. x 1 + x 3 = x 2 + x 4 = 2 x 1 +.2x 2 + x = 72 1x 1 + 2x 2 + x 6 = 1 1x 1 + x 2 x 7 = x 1, x 3, x 4, x, x 6, x 7. Ratkaistaan tehtävä CPLEXillä (tuloste löytyy kurssin kotisivuilta) ja saadaan ratkaisu x 1 = 38 ja x 2 = 17, jolloin kohdefunktio saa arvon 188. CPLEXin antama duaalitehtävän ratkaisu on v 1 =, v 2 =, v 3 = 3, v 4 =, v =. Duaalitehtävän vektorin v voi ratkaista käsin ehdosta v T B = (c B ) T. Tässä c B tarkoittaa vektorin c kannassa olevia indeksejä. Kantamuuttujat saadaan esim. CPLEXin ratkaisusta, jonka mukaan sallittu kantaratkaisu on {x 1, x 2, x 3, x 4, x 6 }. Standardimuotoisen tehtävän apumuuttujat ovat kannassa, mikäli niitä vastaavat epäyhtälörajoitukset ovat ali- tai ylijäämäisiä, eli epäyhtälörajoitukset eivät ole aktiivisia. Poimitaan matriisiin B ne pystyrivit, jotka vastaavat kannassa olevia muuttujia. Nyt siis 1 1 1 1 B = 1.2 ja (c B ) T = (2,,,, ). 1 2 1 1 1 Yhtälöryhmä v T B = (c B ) T on muotoa v 1 + v 3 + 1v 4 + 1v = 2 v 2 +.2v 3 + 2v 4 + v = v 1 = v 2 = v 4 =. Sen ensimmäisestä yhtälöstä saadaan v 3 + 1v = 2 v 3 = 2 1v. Sijoittamalla tämä toisena olevaan yhtälöön tulee.2(2 1v ) + v = v = v =,

joten duaalitehtävän ratkaisu on v 1 =, v 2 =, v 3 = 3, v 4 =, v =. Ratkaisu on sama kuin CPLEXillä saatu. Päätellään sitten duaalitehtävän ratkaisun avulla kohdefunktion arvon muuttuminen. a) Kasvatetaan vakiota arvoon 6, joka on viidennen epäyhtälörajoitteen vakio. Tätä rajoitetta vastaa duaalimuuttuja v, joka saa arvon v =. Sallitut rajat, joiden puitteissa voidaan liikkua ovat [2, 6] (CPLEX). Kohdefunktio vähenee (6 ) = verran arvosta 18 8 arvoon 18 8 + ( ) }{{} 1 = 18 8. muutos b) Kasvatetaan vakiota arvoon (1. rajoite). Tätä rajoitetta vastaa duaalimuuttuja v 1, joka saa arvon v 1 =. Sallitut rajat ovat nyt [38, ) (CPLEX). Kohdefunktion arvo ei muutu, sillä 18 8 + = 18 8. Tähän tehtävään liittyy lisäksi CPLEXistä otettu tuloste, joka löytyy kurssin kotisivuilta. Tehtävä 4 Kolmea erilevyistä paperilaatua tarvitaan seuraavasti: paperin leveys (cm) tarvittava määrä (m) 3 2 4 4 62 3 Pituussuunnassa paperirullasta on mahdollista leikata paperia yhdeksällä eri tavalla. Valitaan päätösmuuttujat x i, missä i = 1,..., 9, jotka osoittavat kullakin tavalla leikattavan paperin määrän metreinä. Saadaan optimointitehtävä mahdolliset leikkaustavat hukkaan (cm) metriä 3 2 x 1 4 3 + 1 4 x 2 3 3 + 1 62 18 x 3 2 3 + 2 4 2 x 4 2 3 + 1 4 + 1 62 3 x 1 3 + 3 4 x 6 1 3 + 2 62 16 x 7 1 4 + 2 62 1 x 8 2 4 + 1 62 18 x 9 min 2x 1 + x 2 + 18x 3 + 2x 4 + 3x + x 6 + 16x 7 + x 8 + 18x 9 (hukkapalojen pinta-ala) s. t. x 1 + 4x 2 + 3x 3 + 2x 4 + 2x + x 6 + x 7 2 (3 cm) x 2 + 2x 4 + x + 3x 6 + x 8 + 2x 9 4 x 3 + x + 2x 7 + 2x 8 + x 9 3 x i, i = 1,..., 9. (4 cm) (62 cm) Ratkaisemalla tehtävä numeerisesti LINGOlla ja CPLEXillä havaitaan, ettei tehtävällä ole yksikäsitteistä ratkaisua. Kohdefunktion arvo on kuitenkin sama molemmilla 6

ohjelmilla ratkaistaessa. LINGO Optimiratkaisu on leikata 1 m tavalla x ja 3 m tavalla x 8. Saatavat paperimäärät ovat 2 1 = 2 m (3 cm levyistä), 1 + 3 = 4 m (4 cm levyistä) ja 3 2+1 1 = 7 m (62 cm levyistä). Hukkaan menee.3 1+.1 3 = 6 m 2 paperia. CPLEX Optimiratkaisu on leikata m tavalla x 2 ja 3 m tavalla x 8. Saatavat paperimäärät ovat 4 = 2 m (3 cm levyistä), 1 + 3 1 = 4 m (4 cm levyistä) ja 3 2 = 7 m (62 cm levyistä). Hukkaan menee. +.1 3 = 6 m 2 paperia. Tehtävä Laaditaan tehtävässä annetuista tiedoista seuraava taulukko: työaika rubiineja safiireja hinta vähintään x 1 perusmalli 1 2 3 4 2 x 2 Luxus-malli 2 3 2 2 käytettävissä 7 1 12 Lisäksi on mahdollista hankkia ylimääräisiä rubiineja hintaan 1 euroa kappale. Olkoon x 3 ylimääräisten rubiinien määrä. Muodostetaan tietojen perusteella optimointitehtävä max 4x 1 + x 2 1x 3 s. t. 2x 1 + 3x 2 x 3 1 (rubiinit) : v 1 3x 1 + 2x 2 12 (safiirit) : v 2 x 1 + 2x 2 7 (työtunnit) : v 3 x 1 2 (perusmallisia vähintään) : v 4 x 2 2 (Luxus-mallisia vähintään) : v x 1, x 2, x 3. Ratkaisemalla tehtävä CPLEXillä ratkaisuksi tulee x 1 = 2. x 2 = 2. x 3 = 1. f = 19.. Duaalitehtävä on muotoa (tätä ei tehtävän annossa pyydetty) min 1v 1 + 12v 2 + 7v 3 + 2v 4 + 2v s. t. 2v 1 + 3v 2 + v 3 + v 4 4 3v 1 + 2v 2 + 2v 3 + v v 1 1 v 1 1 v 1, v 2, v 3, v 4, v. Tähän tehtävään liittyy lisäksi CPLEXistä otettu tuloste. 7