73125 MATEMAATTINEN OPTIMOINTITEORIA 2



Samankaltaiset tiedostot
Esimerkki 2 (Kaupparatsuongelma eli TSP)

12. Hessen matriisi. Ääriarvoteoriaa

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

2 Konveksisuus ja ratkaisun olemassaolo

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

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

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

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

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

Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus

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

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

Piiri K 1 K 2 K 3 K 4 R R

Luento 6: Monitavoitteinen optimointi

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

1. Lineaarinen optimointi

Avaruuden R n aliavaruus

Harjoitus 8: Excel - Optimointi

Harjoitus 4: Matlab - Optimization Toolbox

1 Lineaariavaruus eli Vektoriavaruus

Kokonaislukuoptiomointi Leikkaustasomenetelmät

1 Rajoitettu optimointi I

9. Lineaaristen differentiaaliyhtälöiden ratkaisuavaruuksista

Mat Lineaarinen ohjelmointi

30A01000 Taulukkolaskenta ja analytiikka Luku 8: Lineaarinen optimointi ja sen sovellukset

, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1).

MS-C1340 Lineaarialgebra ja

802320A LINEAARIALGEBRA OSA I

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

w + x + y + z =4, wx + wy + wz + xy + xz + yz =2, wxy + wxz + wyz + xyz = 4, wxyz = 1.

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

Luento 4: Lineaarisen tehtävän duaali

Malliratkaisut Demo 4

6. Differentiaaliyhtälösysteemien laadullista teoriaa.

Luento 2: Optimointitehtävän graafinen ratkaiseminen. LP-malli.

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.

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 Demot

4. Kokonaislukutehtävän ja LP:n yhteyksiä

Lineaarinen optimointitehtävä

Liittomatriisi. Liittomatriisi. Määritelmä 16 Olkoon A 2 M(n, n). Matriisin A liittomatriisi on cof A 2 M(n, n), missä. 1) i+j det A ij.

Lineaarisen ohjelman määritelmä. Joonas Vanninen

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

Kimppu-suodatus-menetelmä

Ensimmäisen ja toisen kertaluvun differentiaaliyhtälöistä

6 Vektoriavaruus R n. 6.1 Lineaarikombinaatio

k S P[ X µ kσ] 1 k 2.

Keskeiset tulokset heikko duaalisuus (duaaliaukko, 6.2.1) vahva duaalisuus (6.2.4) satulapisteominaisuus (6.2.5) yhteys KKT ehtoihin (6.2.

Kanta ja dimensio 1 / 23

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

Malliratkaisut Demo 1

Lineaarialgebra ja matriisilaskenta II. LM2, Kesä /141

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

Luento 2: Optimointitehtävän graafinen ratkaiseminen. LP-malli.

Luento 9: Yhtälörajoitukset optimoinnissa

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

Johdatus verkkoteoriaan luento Netspace

Insinöörimatematiikka D

Kokonaislukuoptimointi

Luento 6: Monitavoiteoptimointi

1 Sisätulo- ja normiavaruudet

Talousmatematiikan perusteet: Luento 9

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

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

Taustatietoja ja perusteita

. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1

ominaisvektorit. Nyt 2 3 6

Talousmatematiikan perusteet: Luento 8. Vektoreista ja matriiseista Vektorien peruslaskutoimitukset Lineaarinen riippumattomuus Vektorien sisätulo

HY, MTL / Matemaattisten tieteiden kandiohjelma Todennäköisyyslaskenta IIb, syksy 2017 Harjoitus 1 Ratkaisuehdotuksia

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

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

TEKNILLINEN TIEDEKUNTA, MATEMATIIKAN JAOS

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Epäyhtälöt ovat yksi matemaatikon voimakkaimmista

Lineaarialgebra ja differentiaaliyhtälöt Laskuharjoitus 1 / vko 44

2.3. Lausekkeen arvo tasoalueessa

3.3 Paraabeli toisen asteen polynomifunktion kuvaajana. Toisen asteen epäyhtälö

5 Differentiaaliyhtälöryhmät

Matematiikan tukikurssi

Insinöörimatematiikka D

JAKSO 2 KANTA JA KOORDINAATIT

Oletetaan ensin, että tangenttitaso on olemassa. Nyt pinnalla S on koordinaattiesitys ψ, jolle pätee että kaikilla x V U

4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen

802320A LINEAARIALGEBRA OSA II

Insinöörimatematiikka D

Malliratkaisut Demo 4

3.1 Lineaarikuvaukset. MS-A0004/A0006 Matriisilaskenta. 3.1 Lineaarikuvaukset. 3.1 Lineaarikuvaukset

Todennäköisyyslaskenta IIa, syys lokakuu 2019 / Hytönen 3. laskuharjoitus, ratkaisuehdotukset

Lineaarialgebra ja matriisilaskenta II Syksy 2009 Laskuharjoitus 1 ( ) Ratkaisuehdotuksia Vesa Ala-Mattila

Lineaarinen optimointitehtävä

Matematiikan tukikurssi

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

Matematiikan johdantokurssi, syksy 2016 Harjoitus 11, ratkaisuista

Gaussin ja Jordanin eliminointimenetelmä

Insinöörimatematiikka D

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

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

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

Likimääräisratkaisut ja regularisaatio

Transkriptio:

73125 MATEMAATTINEN OPTIMOINTITEORIA 2 Risto Silvennoinen Tampereen teknillinen yliopisto, kevät 2004 1. Peruskäsitteet Optimointiteoria on sovelletun matematiikan osa-alue, jossa tutkitaan funktioiden suurimpien ja pienimpien arvojen hakua rajoitusehtojen sitomien muuttujien joukosta. Tämä sisältää klassisen differentiaalilaskennan ääriarvoteorian, mutta on huomattavasti laajempi. Optimoinnin teoria käsittelee mm. optimaalisuusehtoja, algoritmien kehittelyä ja olemassaolotarkasteluja. Sovellusten kannalta on oleellista mallin muodostaminen, jossa ilmiö (systeemi, tuote, komponentti, suunnitelma, ) kuvataan matemaattisesti niin, että optimointimenetelmiä voidaan käyttää. Tällä kurssilla mallien muodostamista harjoitellaan lukuisilla standardimalleilla, joita aikojen kuluessa on kehitetty ja jotka analogioiden kautta ovat osoittautuneet hyödyllisiksi alkuperäistä aluettaan laajemmaltikin. Optimointiprobleema on matemaattinen malli, jossa mallin muuttujia sitovat analyyttiset yhtälöt tai epäyhtälöt. Näitä kutsutaan rajoitusyhtälöiksi tai rajoitusepäyhtälöiksi, yhteiseltä nimeltään rajoitusehdot tai rajoitteet. Kaikki muuttujien arvot, jotka toteuttavat rajoitusehdot, ovat mallin käypiä ratkaisuja. Näiden keskinäinen vertailu tapahtuu kriteerien avulla, esimerkiksi minimoimalla kustannus, maksimoimalla luotettavuus jne. Perusmallissa optimoidaan yhden kriteerin suhteen kerrallaan, jolloin maksimoitava tai minimoitava kriteeri on optimointitehtävän kohdefunktio. Monitavoitteisessa optimoinnissa kohdefunktio on vektori, jonka komponentteina ovat optimoitavat kriteerit. Optimointiprobleemat luokitellaan muuttujien tyyppien ja rajoitefunktioiden tyyppien mukaan. Muuttujien mukaan jaettuna mallit ovat jatkuvia, kokonaislukumalleja tai sekalukumalleja. Jatkuvan mallin muuttujat ovat reaalilukuja, kokonaislukumallin kokonaislukuja ja sekalukumallissa on mukana molempia tyyppejä. Puhutaan myös diskreetistä optimoinnista, kun muuttujat saavat vain tietyn diskreetin joukon arvoja (ei välttämättä kokonaislukuja), mutta nämä voidaan aina muuntaa kokonaislukumalleiksi. Termiä diskreetti esiintyy myös muunnettaessa ääretönulotteisia tehtäviä äärellisulotteisiksi (esim. FEM), joka on eri asia. Jatkuvien muuttujien tehtävien ratkaiseminen on yleensä helpompaa ja laskennallisesti vähemmän vaativaa kuin kokonais- tai sekalukuprobleemoiden. Käytännössä kuitenkin useat mallit sisältävät ainakin osana kokonaislukumuuttujia, joita tarvitaan esimerkiksi loogisia ehtoja mallinnettaessa. Toinen jakoperuste on esiintyvien funktioiden tyyppi. Jos kaikki mallin funktiot ovat muotoa lineaarinen + vakio (affiini funktio), kyseessä on lineaarisen optimoinnin

2 probleema. Englanninkielinen termi on Linear Programming, josta on vakiintunut yleinen lyhenne LP. Lineaarisella optimoinnilla on tärkeydessään erityisasema optimoinnissa, mm. sen takia, että sille on olemassa muihin luokkiin verrattuna ylivoimaisen tehokkaita ratkaisualgoritmeja. Jos mukana on epälineaarisia funktioita, kyseessä on epälineaarisen optimoinnin probleema (Nonlinear Programming, NLP). Tämä voidaan edelleen jakaa osaluokkiin, kuten konveksi ja kvadraattinen optimointi. Kun molemmat luokittelut yhdistetään, saadaan esimerkiksi sovellusten kannalta kattavimmat lineaarinen sekalukuoptimointi (Mixed Integer Linear Programming, MILP) ja epälineaarinen sekalukuoptimointi (MINLP). Pelkästään kokonaislukuja sisältävä lineaarinen optimointi esiintyy myös nimellä Integer Programming (IP), ja jos nämä kokonaisluvut ovat erityisesti kaikki binäärilukuja, kyseessä on binäärioptimointi eli Binary Integer Programming (BIP). Tarkassa puhetavassa voidaan erottaa toisistaan probleema ja sen konkreettisilla numeroarvoilla esitetty tapaus (instanssi). Tässä kurssissa Matemaattinen optimointiteoria 2 käsitellään probleematyyppejä MINLP, MILP, IP ja BIP, kun taas LP ja NLP ovat kurssin 1 aihepiirinä. Jos nämä merkinnät kuvaavat kyseisten probleemoiden luokkia, niin on voimassa aitojen inkluusioiden ketjut MINLP NLP LP & MINLP MILP IP BIP. Yleisin optimointiprobleema tässä esityksessä on siis MINLP, jonka muoto on min f(x,y) h i (x,y)=0, i=1,,r g j (x,y) 0, j=1,,s x Z n, y R q Funktio f on tässä (skalaariarvoinen) kohdefunktio, funktiot h i ja g j ovat rajoitefunktioita ja muuttujavektori [x T,y T ] T kuuluu muuttuja-avaruuteen Z n R q (myös tilanteesta riippuen päätösavaruus tai suunnitteluavaruus). Joukko S = {[x T,y T ] T Z n R q h i (x,y)=0, i=1,,r; g j (x,y) 0, j=1,,s } on käypä joukko, jonka pisteet ovat optimointitehtävän käyvät ratkaisut. Tehtävän optimiratkaisu on sellainen käypä ratkaisu, joka antaa kohdefunktiolle pienimmän arvon. Minimoinnin sijasta voidaan f:ää maksimoida, tai käyttää yhteyttä max f(x) = - min (-f(x))

3 2. Kokonaislukuprobleemoiden muotoilusta Tarkastellaan puhdasta lineaarista kokonaislukuprobleemaa IP tai sen alalajia binääristä lineaarisen optimoinnin probleemaa BIP. Ne ovat standardissa epäyhtälömuodossaan max c T x (1) x P = {x R n Ax b} missä muuttuja x Z n,, x 0 (IP) tai x B n, B = {0,1} (BIP). Lähtökohtana on useimmiten alkuperäisestä ongelmasta saatu malli, jonka muoto on implisiittisempi: (2) max c T x x S Z n + (tai x S B n ) missä käypä joukko S on tehtävänannon kautta määritelty. Sen esitystä lineaaristen epäyhtälöiden avulla ei välttämättä tunneta. Jos on voimassa, että probleemoilla (2) ja (1) on samat käyvät joukot, niin sanotaan, että (1) on (2):n (IP/BIP-)muotoilu eli formulointi. Silloin siis pätee tai S = {x Z n Ax b, x 0}= P Z n + S = {x B n Ax b, x 0} = P B n. Kokonaislukuoptimoinnille on tyypillistä, että samalla tehtävällä on yleensä useita eri muotoiluja. Eri formuloinnit voivat erota paljonkin ratkaisemisen vaikeuden kannalta. Mitä suppeampi formuloinnissa esiintyvä joukko P on, sitä parempi muotoilu se on. Eli jos P 1 ja P 2 ovat probleemassa (1) esiintyviä epäyhtälöillä määriteltyjä joukkoja P ja P 1 P 2, niin P 1 :n kautta määritelty muotoilu (1) on parempi kuin P 2 :n avulla määritelty. Tehtävän muotoilu voidaan tehdä myös muuttujia lisäämällä, jolloin on kyse laajennetusta muotoilusta. Siinä ei siis muuttuja-avaruus pysy samana kuin alkuperäisessä probleemanasettelussa.

4 Esimerkkinä hahmottele piirtämällä kolme eri muotoilua probleemalle max x 1 + x 2 S ={(1,1), (2,1), (3,1), (1,2), (2,2), (3,2), (2,3)}. Äärellisen monen lineaarisen epäyhtälön avulla määritelty joukko R n :ssä on (konveksi) monitahokas. (Tasossa se on monikulmio.) Muotoilussa (1) esiintyvä joukko P on täten myös monitahokas. Kyse on siis sellaisten monitahokkaiden löytämisestä, jotka sisältävät probleeman käyvät pisteet, mutta eivät muita kokonaislukukomponenttisia pisteitä. Tätä kautta päästään käyttämään hyväksi lineaarista optimointia (joka tunnetusti on lineaarisen kohdefunktion optimointia monitahokkaassa). 3. Monitahokkaiden teoriaa Kuten edellä todettiin, monitahokkailla on merkittävä rooli kokonaislukuoptimoinnissa. Olkoon monitahokas (polyhedron) P määritelty mxnmatriisilla A ja vektorilla b R m : P = {x R n Ax b}. Monitahokas P on rationaalinen, jos A ja b voidaan valita rationaalikertoimisiksi. Tässä kurssissa oletamme, että P on aina rationaalinen. P on rajoitettu, jos se on R n :n joukkona rajoitettu, eli sisältyy äärellissäteiseen palloon tai äärellissivuiseen kuutioon. (Englanninkielessä rajoitettu monitahokas on polytope, tosin joissakin kirjoissa asia on päinvastoin, eli polyhedron on rajoitettu ja polytope yleinen monitahokas.) Monitahokas on konveksi joukko. (Joskus määritellään yleisempi käsite monitahokkaaksi, jolloin meidän käsitteemme on konveksi monitahokas.) Pisteiden x i (i=1,,r) lineaarikombinaatio x = c 1 x 1 + +c r x r on konveksi kombinaatio, jos kertoimet c i ovat ei-negatiivisia ja niiden summa = 1. Joukon S R n konveksi verho co(s) on S:n pisteiden kaikkien konveksien kombinaatioiden muodostama joukko. Se on suppein konveksi joukko, joka sisältää S:n. Osoittautuu, että kaikki rajoitetut monitahokkaat ovat äärellisten pistejoukkojen konvekseja verhoja.

5 Pisteet x i (i=1,,k) ovat affiinisti riippumattomia, jos ehdoista c 1 x 1 + +c k x k = 0 & c 1 + + c k = 0 seuraa c 1 = = c k = 0. Yhtäpitävää tämän kanssa on, että vektorit x 2 -x 1, x k -x 1 ovat lineaarisesti riippumattomia. Edelleen yhtäpitävää affiinille riippumattomuudelle on, että R n+1 :n vektorit [x i T,-1] T (i=1,,k) ovat lineaarisesti riippumattomia. Näistä nähdään, että enimmillään R n :n affiinisti riippumattomassa pistejoukossa voi olla n+1 pistettä (siis dimensio plus yksi). Yhtälöryhmällä Ax = b on korkeintaan n+1-rank(a) affiinisti riippumatonta ratkaisua. (A ja b ovat kuten P:n määritelmässä). Monitahokkaan P dimensio eli ulottuvuus on k, jos suurin määrä affiinisti riippumattomia pisteitä P:ssä on k+1. Monitahokkaan P R n ulottuvuus on täysi, jos dim(p)=n. Monitahokkaan P määritelmässä Ax b on m lineaarista epäyhtälöä A i x b i (i=1,,m), missä A i on A:n i:s vaakarivi. Osa näistä voi toteutua yhtälönä koko P:ssä. Merkitään A = :llä sitä matriisin A osaa, joka koostuu tällaisista riveistä, ja loppuja A < :llä. Vastaavasti vektorille b. Siis Ax b jakautuu kahteen osaan, A = x b = ja A < x b <. Monitahokkaiden dimensiolause on silloin: dim(p) + rank([a =,b = ]) = n. Tästä seuraa, että monitahokkaan dimensio on täysi, jos ja vain jos sillä on sisäpisteitä.

6 Monitahokkaan P = {x R n Ax b} esityksessä voi olla "tarpeettomiakin" epäyhtälöitä. Epäyhtälöä α T x β sanotaan voimassa-olevaksi epäyhtälöksi (valid inequality), jos P:n kaikki pisteet toteuttavat sen. Silloin P sijaitsee kyseisen epäyhtälön määräämässä puoliavaruudessa, jonka reunana on (hyper)taso α T x = β. Jos epäyhtälö ei toteudu yhtälönä yhdessäkään P:n pisteessä, se voidaan jättää P:n määrittelystä pois. Ne epäyhtälöt, jotka toteutuvat osassa P:tä yhtälönä, tukevat P:tä ja niiden määräämää tasoa sanotaan P:n tukitasoksi. Monitahokkaan tahkoja (face) ovat kaikki tukitasojen ja P:n leikkaukset. Tahko F on siis muotoa F = {x R n α T x = β} P jollakin monitahokkaan P voimassaolevalla epäyhtälöllä α T x β. Yhtälö tai geometrisesti sanottuna taso α T x = β on silloin tahkon esitys. Tahko on aito, jos se ei ole tyhjä eikä koko P. Tahkot ovat itsekin monitahokkaita, ja niitä voidaan luokitella P:n tahkoina dimensioidensa mukaan seuraavasti: - F on kärki(piste), jos dim(f) = 0 - F on särmä, jos dim(f) = 1 - F on viiste, jos dim(f) = dim(p)-1. Englanninkieliset termit ovat extreme point, edge ja facet. (Suomenkieliset nimitykset eivät kaikki ole vakiintuneita.) Kolmiulotteissa avaruudessa olevalla täysulotteisella monitahokkaalla on vain kärkiä, särmiä ja viisteitä tahkoina, mutta korkeampiulotteisissa avaruuksissa monitahokkailla voi olla tahkoja, joiden dimensio on välillä [2, dim(p)-2] ja jotka eivät ole mitään edellä mainituista tyypeistä. Viisteen tapauksessa on aina olemassa ryhmään A < x b < kuuluva epäyhtälö, joka toteutuu viisteessä yhtälönä. Silloin monitahokkaaseen jää myös pisteitä, joissa kyseinen epäyhtälö toteutuu aitona. Osoittautuu, että monitahokkaan määräämiseksi riittää ottaa ryhmästä A < x b < viisteiden esitykset, alempiulotteisten tahkojen esitykset ovat redundantteja. Ja jokaiselle viisteelle riittää yksi esitys, joka on skalaarikertolaskua vaille yksikäsitteinen. Jos monitahokkaalla P = {x R n Ax b} on rank(a) = n-k, niin P:n dimensioltaan alhaisin tahko on k-ulotteinen. Jos siis rank(a) = n, niin P:llä on kärkipisteitä. Kärkipistettä karakterisoi myös ominaisuus, että se ei ole minkään kahden muun P:n pisteen välissä aidosti eli se on P:n ääripiste. Vektori d 0 on monitahokkaan säde (äärettömyyssuunta), jos jokaisella x P pisteet x + td kuuluvat P:hen kaikilla t>0. Äärisäde on sellainen säde, joka ei ole P:n kahden muun säteen välissä aidosti. Silloin nähdään, että d on P:n äärisäde, jos ja vain jos {td t>0} on P:n yksiulotteinen tahko. Monitahokkaan voi "rakentaa" sen kärkipisteistä ja äärisäteistä:

7 Monitahokkaiden esityslause (Minkowski) Olkoon P = {x R n Ax b} epätyhjä monitahokas, jolla rank(a)=n. Silloin P={x x = c 1 x 1 + c N x N + t 1 d 1 + t K d K c 1 +c 2 + c N =1, c i 0, t j 0 }, missä pisteet x i ovat P:n kärkipisteet ja vektorit d j P:n äärisäteet. (Todistukset tässä pykälässä esitettyihin tuloksiin, ks. Nemhauser-Wolsey, luku I.4.)