Optimaalisuusehdot Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0 i = 1,..., m j = 1,..., l missä f : R n R, g i : R n R kaikilla i = 1,..., m, ja h j : R n R kaikilla j = 1,..., l 1
Sallittu alue: S = {x R n g i (x) 0 i = 1,..., m, h j (x) = 0 j = 1,..., l} Aktiivinen rajoite: Epäyhtälörajoite g i (x) 0 on aktiivinen pisteessä x S, jos g i (x ) = 0 Säännöllinen piste: Piste x S on säännöllinen, jos siinä aktiivisten epäyhtälörajoitteiden ja kaikkien yhtälörajoitteiden gradienttien joukko { g i (x ), h j (x )} on lineaarisesti riippumaton 2
Lagrangen kertoimet: λ = (λ 1,..., λ l ) T ja µ = (µ 1,..., µ m ) T Lagrangen funktio: L(x, λ, µ) = f(x) + m i=1 µ i g i (x) + l j=1 λ j h j (x) Lagrangen funktion gradientti: x L(x, λ, µ) = f(x) + m i=1 µ i g i (x) + l j=1 λ j h j (x) 3
Välttämättömät Karush Kuhn Tucker-optimaalisuusehdot: Olkoot tehtävän (NLP) objekti- ja rajoitefunktiot jatkuvasti differentioituvia säännöllisessä pisteessä x S Jos x on tehtävän lokaali minimipiste, niin on olemassa Lagrangen kertoimet µ i 0, i = 1,..., m, ja λ j, j = 1,..., l, siten, että f(x ) + m i=1 µ i g i (x ) + l j=1 µ i g i (x ) = 0 i = 1,..., m λ j h j (x ) = 0 4
Riittävät Karush Kuhn Tucker-optimaalisuusehdot: Olkoot tehtävän (NLP) objekti- ja rajoitefunktiot jatkuvasti differentioituvia ja konvekseja, ja olkoon x S Jos on olemassa Lagrangen kertoimet µ i 0, i = 1,..., m, ja λ j, j = 1,..., l, siten, että f(x ) + m i=1 µ i g i (x ) + l j=1 µ i g i (x ) = 0 i = 1,..., m niin x on tehtävän globaali minimipiste λ j h j (x ) = 0 5
Tehtävä (NLP) vektorimuodossa: min f(x) kun g(x) 0 h(x) = 0 missä g = (g 1,..., g m ) T ja h = (h 1,..., h l ) T Lagrangen funktio vektorimuodossa: L(x, λ, µ) = f(x) + µ T g(x) + λ T h(x) 6
KKT-ehdot vektorimuodossa: x L(x, λ, µ) = 0 g(x) 0 h(x) = 0 µ T g(x) = 0 µ 0 7
Yleinen minimointitehtävä ei-negatiivisuusrajoittein (NLP ): min f(x) kun g(x) 0 h(x) = 0 x 0 Epätäydellinen Lagrangen funktio (ei ota huomioon ei-negatiivisuusrajoitetta): L(x, λ, µ) = f(x) + µ T g(x) + λ T h(x) 8
x 0 g m+i (x) 0 kaikilla i = 1,..., n, missä g m+i (x) = x i = Täydellinen Lagrangen funktio: L(x, λ, µ) = L(x, λ, µ) + n i=1 µ m+i g m+i (x) Merkitään ν = (ν 1,..., ν n ) T = (µ m+1,..., µ m+n ) T = L(x, λ, µ, ν) = L(x, λ, µ) ν T x 9
KKT-ehdot tehtävälle (NLP ): x L(x, λ, µ) ν = 0 x L(x, λ, µ) 0 g(x) 0 g(x) 0 h(x) = 0 h(x) = 0 µ T g(x) = 0 µ T g(x) = 0 ν T x = 0 x L(x, λ, µ) T x = 0 x, µ, ν 0 x, µ 0 10
Kvadraattinen optimointi Kvadraattinen minimointitehtävä (QP): min 1 2 xt Qx + c T x kun Ax = b x 0 missä Q R n n, c R n, A R m n ja b R m, ja lisäksi Q on symmetrinen (Rajoitteena voisi olla myös Ax b) 11
Semidefiniittisyys: Matriisi Q R n n on positiivisesti semidefiniitti, jos se on symmetrinen ja x T Qx 0 kaikilla x R n Definiittisyys: Matriisi Q R n n on positiivisesti definiitti, jos se on symmetrinen ja x T Qx > 0 kaikilla x R n, x 0 Matriisi Q on positiivisesti semidefiniitti Tehtävän (QP) objektifunktio on konveksi Matriisi Q on positiivisesti definiitti ja S = Tehtävällä (QP) on yksikäsitteinen ratkaisu 12
Ax = b h(x) = 0, missä h(x) = Ax b x 0 g(x) 0, missä g(x) = x = Tehtävän (QP) Lagrangen funktio: L(x, λ, µ) = 1 2 xt Qx + c T x + λ T (Ax b) µ T x 13
f(x) = x T Qx = f(x) = 2Qx f(x) = c T x = f(x) = c = L(x, λ, µ) = 1 2 xt Qx + c T x + λ T Ax λ T b µ T x x L(x, λ, µ) = Qx + c + A T λ µ 14
= Tehtävän (QP) KKT-ehdot: Qx + c + A T λ µ = 0 Ax = b µ T x = 0 x, µ 0 15
λ R = λ = u v, missä u,v 0 = Tehtävän (QP) KKT-ehdot: Qx + c + A T u A T v µ = 0 Ax = b µ T x = 0 x,u,v, µ 0 16
C = [ Q A T A T ] I A 0 0 0 y = x u v µ d = [ ] c b = Lineaarinen komplementaarinen probleema (LCP): Cy = d µ T x = 0 y 0 17
Lisätään keinotekoiset muuttujat w = (w 1,..., w n+m ) T ja keinotekoinen objektifunktio: min n+m i=1 w i kun Cy + Iw = d y,w 0 Ratkaistaan tehtävä simplex-menetelmällä siten, että komplementaarisuusehto µ T x = 0 pysyy voimassa, ts. muuttujat µ i ja x i eivät ole perusmuuttujina samanaikaisesti 18
Esimerkki Kvadraattinen minimointitehtävä: min x 2 1 + x2 2 2x 1 + 2x 2 kun x 1 + x 2 = 3 x 1, x 2 0 Tehtävä matriisimuodossa: ] min 1 [ 2 0 2 xt x + [ 2 2 ] x 0 2 kun [ 1 1 ] x = [ 3 ] x 0 19
KKT-ehdot lineaarisena komplementaarisena probleemana: Kerrotaan toinen rivi 1:llä 2 0 1 1 1 0 0 2 1 1 0 1 1 1 0 0 0 0 µ 1 x 1 = µ 2 x 2 = 0 x 1, x 2, u 1, v 1, µ 1, µ 2 0 x 1 x 2 u 1 v 1 µ 1 µ 2 = 2 2 3 Lisätään keinotekoiset muuttujat w 1, w 2 ja w 3 Lisätään keinotekoinen objektifunktio w 1 + w 2 + w 3 20
= Lineaarisen komplementaarisen probleeman simplex-taulukko: x 1 x 2 u 1 v 1 µ 1 µ 2 w 1 w 2 w 3 0 0 0 0 0 0 1 1 1 0 2 0 1 1 1 0 1 0 0 2 0 2 1 1 0 1 0 1 0 2 1 1 0 0 0 0 0 0 1 3 Eliminoidaan objektifunktiosta perusmuuttujat 21
= Aloitusperusmuodon simplex-taulukko: x 1 x 2 u 1 v 1 µ 1 µ 2 w 1 w 2 w 3 3 1 0 0 1 1 0 0 0 7 2 0 1 1 1 0 1 0 0 2 0 2 1 1 0 1 0 1 0 2 1 1 0 0 0 0 0 0 1 3 Pivot-alkio valitaan siten, että µ 1 ja x 1 eivät ole perusmuuttujia samanaikaisesti µ 2 ja x 2 eivät ole perusmuuttujia samanaikaisesti 22
3 1 0 0 1 1 0 0 0 7 2 0 1 1 1 0 1 0 0 2 0 2 1 1 0 1 0 1 0 2 1 1 0 0 0 0 0 0 1 3 = 0 1 3/2 3/2 1/2 1 3/2 0 0 4 1 0 1/2 1/2 1/2 0 1/2 0 0 1 0 2 1 1 0 1 0 1 0 2 0 1 1/2 1/2 1/2 0 1/2 0 1 2 23
0 1 3/2 3/2 1/2 1 3/2 0 0 4 1 0 1/2 1/2 1/2 0 1/2 0 0 1 0 2 1 1 0 1 0 1 0 2 0 1 1/2 1/2 1/2 0 1/2 0 1 2 = 0 2 0 0 1/2 1/2 3/2 3/2 0 1 1 1 0 0 1/2 1/2 1/2 1/2 0 2 0 2 1 1 0 1 0 1 0 2 0 2 0 0 1/2 1/2 1/2 1/2 1 1 24
0 2 0 0 1/2 1/2 3/2 3/2 0 1 1 1 0 0 1/2 1/2 1/2 1/2 0 2 0 2 1 1 0 1 0 1 0 2 0 2 0 0 1/2 1/2 1/2 1/2 1 1 = 0 0 0 0 0 0 1 1 1 0 1 0 0 0 1/4 1/4 1/4 1/4 1/2 5/2 0 0 1 1 1/2 1/2 1/2 1/2 1 3 0 1 0 0 1/4 1/4 1/4 1/4 1/2 1/2 25
Optimaalinen simplex-taulukko: x 1 x 2 u 1 v 1 µ 1 µ 2 w 1 w 2 w 3 0 0 0 0 0 0 1 1 1 0 1 0 0 0 1/4 1/4 1/4 1/4 1/2 5/2 0 0 1 1 1/2 1/2 1/2 1/2 1 3 0 1 0 0 1/4 1/4 1/4 1/4 1/2 1/2 Saatiin optimi, jossa w 1 = w 2 = w 3 = 0 Ratkaisu: (x 1, x 2 ) = (5/2,1/2) 26
Yleinen minimointitehtävä ei-negatiivisuusrajoittein Tehtävä (NLP ): min f(x) kun g(x) 0 h(x) = 0 x 0 Epätäydellinen Lagrangen funktio: L(x, λ, µ) = f(x) + µ T g(x) + λ T h(x) 27
KKT-ehdot tehtävälle (NLP ): x L(x, λ, µ) 0 ( 1 ) g(x) 0 ( 2 ) h(x) = 0 ( 2 ) µ T g(x) = 0 ( 3 ) x L(x, λ, µ) T x = 0 ( 3 ) x, µ 0 ( 4 ) ( 1 ) Varsinaiset KKT-ehdot ( 2 ) Varsinaiset rajoitteet ( 3 ) Komplementaarisuusehdot ( 4 ) Ei-negatiivisuusrajoitteet 28
Esimerkki x A, x B = tuotteiden A ja B määrät P A, P B = tuotteiden A ja B hinnat min x A P A x B P B + 0.2x A + 0.3x B kun x A + 21P A 0.1P B = 60 x B + 25P B 0.1P A = 50 x A 25 x B 30 x A + 2x B 50 x A, x B, P A, P B 0 29
Epätäydellinen Lagrangen funktio: L(x A, x B, P A, P B, λ 1, λ 2, µ 1, µ 2, µ 3 ) = x A P A x B P B + 0.2x A + 0.3x B + λ 1 (x A + 21P A 0.1P B 60) + λ 2 (x B + 25P B 0.1P A 50) + µ 1 (x A 25) + µ 2 (x B 30) + µ 3 (x A + 2x B 50) 30
KKT-ehdot: L/ x A = P A + 0.2 + λ 1 + µ 1 + µ 3 0 L/ x B = P B + 0.3 + λ 2 + µ 2 + 2µ 3 0 L/ P A = x A + 21λ 1 0.1λ 2 0 L/ P B = x B 0.1λ 1 + 25λ 2 0 x A + 21P A 0.1P B = 60 x B + 25P B 0.1P A = 50 x A 25 x B 30 x A + 2x B 50 µ 1 (x A 25) = µ 2 (x B 30) = µ 3 (x A + 2x B 50) = 0 ( L/ x A )x A = ( L/ x B )x B = ( L/ P A )P A = ( L/ P B )P B = 0 x A, x B, P A, P B, µ 1, µ 2, µ 3 0 31
Kvadraattinen minimointitehtävä Tehtävä (QP): min 1 2 xt Qx + c T x kun Ax = b x 0 KKT-ehdot: Qx + c + A T λ µ = 0 Ax = b µ T x = 0 x, µ 0 Oletetaan, että Q on positiivisesti definiitti 32
Erikoistapauksia Ei rajoitteita: min 1 2 xt Qx + c T x kun x R n KKT-ehdot: Qx + c = 0 Qx = c Lineaarinen yhtälöryhmä = Voidaan ratkaista (esimerkiksi) Choleskyn menetelmällä tai liittogradienttimenetelmällä 33
Vain yhtälörajoitteita: min 1 2 xt Qx + c T x kun Ax = b KKT-ehdot: Qx + c + A T λ = 0 Ax = b [ Q A T A 0 ] [ ] x λ = [ ] c b Lineaarinen yhtälöryhmä = Voidaan ratkaista (esimerkiksi) Gaussin eliminointimenetelmällä 34
Vain alarajarajoitteita: min 1 2 xt Qx + c T x kun x b KKT-ehdot: Qx + c µ = 0 x b µ T ( x + b) = 0 µ 0 Voidaan ratkaista (esimerkiksi) jollain aktiivijoukkomenetelmällä 35
Olkoon I act optimissa aktiivisten rajoitteiden joukko = x i = b i kun i I act µ i =? kun i I act x i =? kun i / I act µ i = 0 kun i / I act 36
Muuttujat x i, i / I act, saadaan ratkaisemalla lineaarinen yhtälöryhmä: Qx + c µ = 0 = j I act q ij x j + j / I act q ij x j + c i µ i = 0 i / I act = j / I act q ij x j = c i j I act q ij b j i / I act 37
Lagrangen kertoimet µ i, i I act, voidaan laskea: Qx + c µ = 0 = j I act q ij x j + j / I act q ij x j + c i µ i = 0 i I act = µ i = j / I act q ij x j + j I act q ij b j + c i i I act 38
Iteroidaan joukon I act suhteen: Aluksi arvataan I act, esimerkiksi I act = Ratkaistaan x ja lasketaan µ Jos x b ja µ 0, niin optimi on löytynyt = Lopetetaan Muuten päivitetään joukkoa I act Jos x i < b i, niin I act = I act {i} Jos µ i < 0, niin I act = I act \ {i} Uusi iteraatio 39
Esimerkki: Käyränsovitus Havaintopisteistö (x i, y i ), i = 1,..., k Tavoite: Etsi toisen asteen polynomi siten, että sen kuvaaja sopii havaintopisteisiin mahdollisimman hyvin pienimmän neliösumman (PNS) mielessä a, b, c = polynomin ax 2 + bx + c kertoimet min k i=1 kun a, b, c R (ax 2 i + bx i + c y i ) 2 40
= X = x 2 1 x 1 1 x 2 2 x 2 1... x 2 k x k 1 z = a b y = c y 1 y 2. y k k (ax 2 i + bx i + c y i ) 2 = k i=1 i=1 ([Xz] i y i ) 2 = (Xz y) T (Xz y) = z T X T Xz 2y T Xz + y T y Poistetaan vakiotermi y T y ja kerrotaan 1/2:lla = Objektifunktio on kvadraattinen 41
Rajoitteeton (QP)-tehtävä: min 1 2 xt Qx + c T x min 1 2 zt (X T X)z (X T y) T z kun x R n kun z R 3 KKT-ehdot: Qx = c (X T X)z = X T y 42
Sisäpistemenetelmät Simplex-menetelmä (George Dantzig, 1947): Kuljetaan sallitun alueen reunalla Pienissä tehtävissä käytännössä paras ja luotettavin menetelmä (jos koodattu tehokkaasti) Ratkaisuaika pahimmassa tapauksessa eksponentiaalinen Voidaanko lineaarisen optimoinnin ratkaisuideaa parantaa? 43
Sisäpistemenetelmät: Kuljetaan sallitun alueen sisäpisteissä Lähellä epälineaarisen optimoinnin menetelmiä Suurissa tehtävissä (tuhansia muuttujia) yleensä tehokkaampia kuin simplex 44
Karmarkarin menetelmä: Sisäpistemenetelmä lineaarisille optimointitehtäville Ratkaisuaika polynominen Alkuperäinen versio vuodelta 1984, sen jälkeen useita parannettuja versioita Gradientti antaa objektifunktion suurimman kasvun suunnan (ei ota huomioon rajoitteita) Edetään sisäpisteestä projisoidun negatiivisen gradientin suuntaan 45