TNK049 Optimeringslära Clas Rydergren, ITN Föreläsning 9 Icke-linjär optimering Konveitet Metoder ör problem utan bivillkor Optimalitetsvillkor ör icke-linjära problem
Icke-linjär programmering Non-linear programming (NLP) Problem i kontinuerliga variabler. min då g i ( ( ) ) b i, i = K m Minst en av (), ( ), i g i är ickelinjär Förkortningen ILP står i engelsk litteratur otast ör Integer Linear Programming, dvs linjära heltalsproblem.
Övertid jämört med stordrit Som en del i en linjär produktionsplaneringsmodell, där vi vill minimera kostnaden, har vi en variabel som är örenad med kostnaden c. Jämör nu öljande två all: Över en viss gräns = u måste produktionen ske på övertid, dvs c ersätts med d > c, ör alla > u. z d c e Över en viss gräns = u uppnår man stordrit i produktionen, dvs c ersätts med e < c ör alla > u. = u Vilket av allen är knepigast att hantera? Varör? 3
Olika typer av icke-linjär programmering Ota är samband inte linjära Skalördelar Avstånd Mekanik/konstruktion Ingen universalalgoritm inns Anpassa algoritm till problem Ota mycket svårlösta problem Eempel klassiiceringar Med visavi utan bivillkor Linjära visavi ickelinjära bivillkor Konvet visavi icke-konvet problem När man pratar om icke-linjära (nonlinear) problem brukar man normalt också örutsätta att det är problem i kontinuerliga variabler. 4
Sökmetoder ör icke-linjär programmering Sökmetoder bygger otast på att lösa örenklade/approimativa problem Otast hittar sökmetoder lokala optimum och ibland bara lokala stationära punkter Konvea problem enklare att hantera Varje lokalt optimum är också ett globalt optimum. 5
Konveitet Konvet problem Minimera konve unktion över konvet område Alternativt maimera en konkav unktion över ett konvet område. Konvea unktioner Summan av konvea unktioner konve unktion Eempel: = + 4 + e Om g() är konve, och h(y) är konve och icke-avtagande, så måste = h g vara en konve unktion. Eempel: = e +4 Konvea mängder Konve unktion begränsad uppåt är en konve mängd X = g i b i, i Skärningen (snittet) av konvea mängder är en konve mängd X = X X X p där X, X,, X p är konvea mängder. Skärning av icke-konvea mängder kan vara konve mängd. 6
Undersöka konveitet Betrakta (). En unktion kan vara Konve Strikt konve Konkav Strikt konkav Varken konve eller konkav (Både konve och konkav) Inör gradienten Vektor av partiella derivatorer: Inör Hessianen Matris av partiella andraderivatorer Man kan se Hessianen som en Jacobian till gradient-unktionen. Hessianen tecknas ibland. = n ) ( = ) ( n n n H K K K 7
Konvea unktioner = ) ( h = ) ( h K = ) ( h 3 Beräkna Hessianens egenvärden, λ Om λ i > 0 0, i är H() positivt (semi-) deinit, och då är () strikt konve (konve) Studera ledande underdeterminanterna Beteckna Om det h i > 0 i, är H() positivt deinit. Eempel! 8
Obegränsad optimering Obegränsad = utan bivillkor (kap 0) Kallas unconstrained på engelska. Mängden tillåtna lösningar är obegränsad. Ma/Min till målunktionen är normalt begränsade. Obegränsad = oändlig Kallas unbounded på engelska. Mängden tillåtna lösningar är begränsad eller obegränsad. Ma eller min till unktionen saknas: (ör min), eller + (ör ma) på mängden tillåtna lösningar. 9
Optimalitet i optimeringsproblem utan bivillkor Nödvändiga villkor Om skall vara optimum till min (), måste ( ) = 0. Tillräckliga villkor Om ( ) = 0 och () konve är (globalt) optimum till min (). Begrepp Descentriktning d (k) : (k) d k < 0. Riktning i vilken unktionsvärdet minskar. Ascentriktning d (k) : (k) d k > 0. Riktning i vilken unktionsvärdet ökar. Descentriktningar * ( * ) 0
Sökmetoder i jämörelse Steg Allmänt 0 Utgå rån en tillåten lösning, Utan bivillkor (icke-linjärt) Valri punkt (allt tillåtet) Bestäm tillåten och örbättrande sökriktning Se på gradient (Brantaste lutning)/ Hessian (Newton) Bestäm steglängd Linjesökning 3 Uppdatera och upprepa Uppdatera och upprepa.
Brantaste lutning-metoden (Steepest descent method) 0) Börja i valri punkt, (0) Sätt k = 0 ) Beräkna sökriktning Beräkna gradienten (k) Sökriktning ges av Maproblem: d (k) = (k) Minproblem: d (k) = (k) ) Kontrollera avbrottskriterium 3) Bestäm steglängd, t (k) Gör linjesökning t (k) = arg min t 0 k + t d (k) Analytiskt om möjligt (Se även kap 0.4) 4) Beräkna ny punktsteglängd (k+) = (k) + t (k) d (k) 5) Sätt k = k + och gå till Avbryt om (k) < ε 0 (k) (tillräckligt nära) optimum. Alternativa kriterier inns!
Newtons metod (Newton s method) 0) Börja i valri punkt, (0) Sätt k = 0 ) Beräkna sökriktning Beräkna gradienten (k) Beräkna hessianen H (k) Och dess invers H (k) Sökriktning ges av H (k) (k) ör både ma- och minproblem. ) Kontrollera avbrottskriterium 3) Bestäm steglängd, t (k) t (k) om Newtons metod Linjesökning (se kap 0.4) ger Newtons modiierade metod. 4) Beräkna ny punktsteglängd (k+) = (k) + t (k) d (k) 5) Sätt k = k + och gå till Avbryt om (k) < ε 0 3 (k) (tillräckligt nära) optimum. Alternativa kriterier inns!
Modiierade Newton-metoder Totala beräkningstiden viktigast I varje iteration behövs en riktning och en steglängd. Approimera ör att hitta riktning Om tidsbesparande T e approimera Hessianen Ger Marquardts modiiering eller kvasi-newton-metoder Approimera ör att hitta steglängd Om tidsbesparande kan man använda en ineakt (ickeanalytiskt) beräknad steglängd 4
Linjesökning Hur bestämmer man optimal steglängd? Analytiskt (ungerar enbart i små all eller all med speciell struktur där den kan härledas ram). Approimativt Gyllene snitt Intervall-halvering Newton Raphson Armijos metod Det är den totala beräkningstiden som är intressant! Ibland tar det lång tid bara att evaluera () ör olika! 5
Optimalitetsvillkor ör icke-linjära problem För optimeringsproblemet min, då g i b i, i är lokalt optimum om Karush Kuhn Tucker-villkoren (KKT-villkoren) nedan är uppyllda. Dual tillåtenhet Målunktionsgradienten ligger i den kon som bildas av de (bindande) bivillkorens normaler: = v i g i i v i 0, i Primal tillåtenhet, g i b i, i Komplementaritet, v i g i b i = 0, i 6
Graisk tolkning av optimalitetsvillkoren min ( ), då g i ( ) b, i. i g ( 3 ) Tillåtet område här! * g ( ) g ( ) g ( * ) g ( * ) 3 ( * ) 7
Uppgit 9.6: Inör Lektion 9 Koveitet. Dela upp målunktionen i tre delar, utnyttja Sats 9.4. Bivillkoren kan undersökas ett och ett, utnyttja Sats 9.. Uppgit 0.5: Ett konvet problem utan bivillkor. Brantaste lutnings-metoden. Newtons metod. 8
www.liu.se