Tentamen TMA946/MAN80 tillämpad optimeringslära 01081 1. Uppgift: min z 3x 1 + x Då x 1 + x 6 x 1 + x x 1, x 0 Skriv på standardform m.h.aṡlackvariabler min z 3x 1 + x Då x 1 + x s 1 6 x 1 x + s x 1, x, s, s 0 Vi ser ingen uppenbar bas skapa FAS I problem min w a Då x 1 + x s 1 + a 6 x 1 x + s Välj a, s som bas B Titta på reducerad kostnad: c T N C T BB 1 N 0 0 0 1 1 1 1 1 välj x 1 som inkommande. Vi gör min-ratio test för att hitta utgående Y B 1 A ink 1 b B 1 b 6 6 1 1
argmin Utgående i, Y i > 0 Ny bas blir a, x 1 1 B B 1 c T B N b Y i bas variabel utgår. 1 1 1 B 1 b Hitta reducerad kostnad CN T CT B B 1 N 1 1 0 0 0 1 icke basvar 1, d.v.s. x blir inkommande. Gör min ratio. utgående Y B 1 Aink argmin i, Y i > 0 Ny bas blir x, x 1. bi Y i 1 1 1 1 basvar 1 utgår. c T N 0 0 0 3 1 1 0 Vi har ej länge någon artificiell variabel i basen Fas I är klar. Starta fas II. Vi har bas x 1, x 1 B B 1 1 1 1 B 1 b 1 8 1 1 3 1 3 c T B 3 1c T N 0 0N 1 1 Hitta reducerad kostnad. c c T N ct B ct B B 1 N 0 0 3 1 1 3 1 4/3 1/3 4/3 1/3 icke basvar s är inkommen. 1 1 Vi gör min ratio test. Y B 1 Aink 1 3 1 argmin bi Utgående i, y i > 0 y i basvar 1 är utgående. Ny bas x, s. 0 1 1/3 /3 3 1
Hitta reducerad kostnad: B B 1 1 1 1 1 c c T N CT B B 1 N 3 0 1 1 1 i 3 0 1 1 0 vi har en optimal bas, x 1, s 6 6 med värden B 1 b 1 1 8 Vi har x 1 0, x 6, s 1 0, s 8. Kolla! x 1 + x 6 6 OK x 1 + x 6 OK 1 c T N 3 0cT B N 1 Z 3x 1 + x 6 1b För att avgöra för vilka c mängden påverkar bildar vi problemet. min z x 1 + x Då x 1 + x 6 x 1 + x x 1, x 0 Antag att det optimala värdet på detta problem är z. Då påverkas mängden för c > z. a) Ett exakt straff för g i (x) 0 är min{0, g i (x)}. En straffunktionsmetod baserad på denna är följande: 0. Välj µ 0 0. Sätt t 0. 1. Lös min x n f(x) µ t min{0, g i (x)} x t.. Sätt µ t+1 > µ t (så att lim t µ t + ), t : t + 1, gå till 1. b) Låt x : {x R n a T i x b i, i 1,..., m}. Frank-Wolfe algoritmens iteration är följande: 0. Välj x 0 X. Sätt t 0. 1. Lös min y X f(x t ) T y y t.. Om f(x t ) T (b t x t ) 0 Stopp! x t är en KKT-punkt. 3. Lös min l 0,1 f(x t + l(y t t t )) l t. 3
4. Sätt x t+1 x t + l t (y t x t ), t : t + 1, gå till 1. För att en iteration skall kunna genomföras krävs att stegen 1 och 3 (de två optimeringsproblemen) är genomförbara. Steg 1 är genomförbart om LP-problemet har en lösning, d.v.s. om f(x t ) T y är nedåt begränsad på X. Steg är genomförbart om f har ett minimum på linjesegmentet x t, y t. För detta räcker det med att f är kontinuerligt differentiarbar eftersom den då är kontinuerlig och x t, y t är en kompakt mängd (Weierstrass). For steg 1 fordras i allmänhet att x är begränsad. c) Eftersom f bara är differentierbar en gång har vi inte tillgång till rena Newtonmetoder. Problemet är konvext och inte särdeles stort (n 500 är att betrakta som ganska litet för ett konvext obegräansat problem). Om f(x) är någorlunda lätt att beräkna rekommenderas Qvari-Neewton/konjugerade gradientmetoder. (se kurslitteraturen för beskrivningar.) 3 a) Modell: Variabler: x ij andel av rxxxx j:s efterfrågan som tillgodoses av central i i, j. { 1, om central i byggs, i. y i 0, annars. Ny konstant: a ij Minimera Då 10 i jci b i { 1 om dij D 0 annars i, j (uppnåelighetsmatris) 30 j1 10 x i j a ij y i, i 1,..., 10; j 1,..., 30 e j x ij k i y i, i 1,..., 10 k ij 1, j 1,..., 30 (tillgång) (efterfrågan) x ij 0, i 1,..., 10, j 1,..., 30 y i {0, 1}, i 1,..., 10. (uppnåelighet) b) tillägg: x ij {0, 1}, i 1,..., 10; j 1,..., 30. 4 a) x är ett lokalt minimum f(x ) f(x), x B(x ), där B(x ) {x R n x x ɛ} för ett tillräckligt litet ɛ > 0. x är ett lokalt minimum f(x ) 0 n. 4
b) x är ett lokalt minimum f(x ) f(x), x B(x )ns. x är ett lokalt minimum λ 0 m så att f(x ) A T λ. λ T (Ax b) 0 Ax b. 5 a) Sätt φ(x) log( g i )(x)), β(x, µ) f(x) + µφ(x). Låt µ 1, µ e,... vara en positiv och monotont avtagande följd om tal med gränsvärde 0. Sekvensen x 1, x,..., ges av x k arg min x nβ(x, µ k ). b) (Iterationsindex k struket här.) Från optimalitetsvillkoret x β(x, µ) o n fås att f(x) µ g i (x) g i(x) 0 n. Eftersom g i (x) > 0, i. kan vi skriva detta som: (λ i µ/g i (x), i 1,..., m) f(x) λ i g i (x) o n, λ i g i (x) µ, i 1,..., m g i (x) 0, i 1,..., m. Skillnaden mellan detta och KKT för problemet (1)-() är att högerledet 0 i komplementariteten ersatts av µ > 0. Multiplikator estimat: λ i µ/g i (x), i 1,..., m.. c) Låt I(x ) {i g i (x ) 0}. x är reguljär betyder att g i (x ), i I(x ) är linjärt oberoende. Pga att f och g i är kontinuerligt differentierbara så följer att {x k } x { f(x k )} f(x ); { g i (x k )} g i (x ), i. Multiplikator estimatet ger att för i / I(x ) : {λ ik } {µ k /g i (x k )} 0/g i (x ) 0. För i I(x ), notera att systemet f(x ) i I(x ) λ i g i (x ) 0 n har en unik lösning λ i, i I(x ), vilken måste vara gränsvärdet för {λ ik }, i I(x ). Ty antag att {λ ik }, i (x ), konvergerar mot λ, där λ i λ i för 5
något i I(x ). Då följer att 0 f(x k ) λ ik g i (x k ) i/ j(x ) f(x ) 0 i I(x ) i j(x ) λ i λ i g i(x ). i I(x ) λ i g i (x ) λ i g i(x k ) i j(x ) i I(x ) λ i λ i g i (x ) λ ik λ i g i(x m ) Denna summa är 0 endast om λ i λ i i I(x ), ty g i (x ) är linjärt oberoende. Alltså är {λ k } konvergent, och vi kan sammanfatta läget så här: eftersom g i (x k ) > 0 för alla i och k kommer g i (x ) 0 att gälla. Dessutom för (x, λ ) gäller att f(x ) λ i g i (x ) 0 n λ i g i (x ) 0, i 1,..., m λ i 0, i 1,..., m I limes fås vektorer (x, λ ) som tillsammans uppfyller KKT-villkoren för ursprungs problemet! 6 a) KKT: L(x, λ, µ) 1 xt Qx q T x + λ T (Ax b) µ T x ger Qx + λ T λ Iµ q λ, µ 0 (dual till.) λ T (Ax b) 0 µ T x 0 (kompl.) Ax b (primal till.) x 0 KKT beskrives mängden av globalt optimala lösningar om Q är positivt semidefinit. b) Inför en slackvariabel i Ax b. Då fås ur KKT: Qx + A T λ I n q Ax + Is b samt x, A, µ, s 0 { λ T s 0 µ T x 0 6
x Vi indentifierar v s q b. µ ; w λ Q 0 ; T A I A T I ; U 0 0 ; p Fas-1-metodP: Inför artificiella variabler z 1 R n och z i R m och betrakta problemet (multipliera först rader så att q, b 0!) minimera då n zj 1 + j1 z i Qx + A T λ I m u + z 1 q Ax + Is + z b, λ, m, s, z 1, z 0 λ T s 0, µ T x 0 Enda skillnaden mot ett Fas-1-problem i LP är kraven att λ T s 0 och µ T x 0. Det betyder i själva verket att λ i s i 0 i och µ j x j 0 j. Att säkerställa att detta är uppfyllt är inte svårt: vi inför ett tillägg till inkommande kriteriet: Om λ i (s i ) redan finns i basen, får inte s i (λ i ) vara inkommande, såvida det inte inträffar att s i (λ i ) blir den utgående variabeln. Motsvarande för paret (µ j, x j ). 7 a) f(x) x 3 1 + x + 1x 1x 4x 1 0x f(x) (6x 1 + 1x 4; 6x + 1x 1 0) T 1x1 1 x1 1 f(x) 1 1 1x 1 x x1 1 x1 λ 1 Egenvärden hos : det 0... 1 x 1 x λ Egenvärden: λ 1 (x 1 + x )/ + ( 1x 1 1x ) + 1 λ (x 1 + x )/ ( 1 x 1 1 x λ 1 λ 1! ) + 1 λ 0 om och endast om x 1, x 0 och x 1 x 1. f är konvex då x 1, x 0, x 1 x 1 λ 1 0 om och endast om x 1, x 0 och x 1 x 1. f är konkav då x 1, x 0, x 1 x 1 f är följaktligen varken konvex eller konkav då x 1 x < 1. b) x (1, 1) T. Newtons metod utnyttjar sökriktningen p från f( x)p 1 1 f( x). I x (1, 1) T är f( x) ( 6, ); f( x). Det 1 1 7
existerar inte något p som uppfyller f( x)p f( x)! Modifiering à lá Levenberg-Marquardt: addera en lämpligt skalad enhetsmatris till f( x). Lös t.ex. f( x) + σip f( x) för σ 10. 1 1 6 p Vi använder Armijos steglägdsregel: p (0.3, 0.08) f( x + lp) f( x) + αl f( x) T p, α (0, 1). Med α 0.1 och l 1 som startsteglägd fås: f( x) T p 1.74 < 0 f( x) 8; x + lp (1.3, 0.9); f( x + lp) 9.35 f( x) + αl f( x) T p 8.17 9.35, d.v.s. steglägd 1 accepteras av Armijos steglägdsregel. Nästa iterationspunkt är x (1.3, 0.9). 8