4.5 Metodo del gradiente Si cerca un punto stazionario di f : Rn → R con f ∈ C 1 . Metodo del gradiente con ricerca 1-D esatta: Scegliere x 0 , porre k := 0 Iterazione: d k := −∇f (x k ) Determinare αk > 0 tale che minα≥0 φ(α) = f (x k + αd k ) x k+1 := x k + αk d k k := k + 1 Criteri di arresto: k∇f (x k )k < ε o |f (x k ) − f (x k+1 )| < ε o kx k+1 − x k k < ε. Propriet` a: Se ricerca 1-D esatta, le direzioni successive sono ortogonali. Poich´e αk tale che minα≥0 φ(α) = f (x k + αd k ), φ′ (αk ) = ∇t f (x k + αk d k )d k = ∇t f (x k+1 )d k = 0. e quindi d tk+1 d k = −∇t f (x k+1 )d k = 0. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 1 / 12 3 2.5 2 1.5 1 0.5 0 0 0.5 1 1.5 2 2.5 3 Esempio: traiettoria a zig zag, convergenza molto lenta Consideriamo prima le propriet` a di convergenza per le funzioni quadratiche strettamente convesse. Caso importante perch´e qualsiasi funzione C 2 pu` o essere bene approssimata intorno ad un minimo locale/globale da una funzione quadratica. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 2 / 12 Funzioni quadratiche strettamente convesse: f (x) = 1 t x Qx − b t x 2 con Q simmetrica e definita positiva. o Minimo globale `e l’unica soluzione di ∇f (x) = Qx − b = 0 (quindi di Qx = b) e αk pu` essere determinato esplicitamente: 1 φ(α) = f (x k − α∇f (x k )) = (x k − α∇f (x k ))t Q(x k − α∇f (x k )) − b t (x k − α∇f (x k )) 2 φ′ (α) = −∇t f (x k )Q(x k − α∇f (x k )) + b t ∇f (x k ) = 0 Visto che ∇tx f (x k ) = x tk Q − b t implica b t = −∇t f (x k ) + x tk Q −∇t f (x k )Qx k + α∇t f (x k )Q∇f (x k ) + (−∇t f (x k ) + x tk Q)∇f (x k ) = 0 quindi αk = ∇t f (x k )∇f (x k ) ∇t f (x k )Q∇f (x k ) e in termini di d k : αk = Edoardo Amaldi (PoliMI) d tk d k . d tk Qd k Ottimizzazione A.A. 2013-14 3 / 12 Rapidit` a di convergenza Spesso si considera la rapidit` a di convergenza con la quale f (x k ) → f (x ∗ ) invece di ∗ kx k − x k → 0 quando k → ∞. Proposizione: Se H(x ∗ ) definita positiva, x k converge (super)linearmente ad x ∗ rispetto a |f (x k ) − f (x ∗ )| se e solo se converge nello stesso modo rispetto a kx k − x ∗ k. Infatti, vicino a x ∗ f (x) ≈ f (x ∗ ) + e ∃ intorno N(x ∗ ) tale che ′ 1 (x − x ∗ )t H(x ∗ )(x − x ∗ ) 2 ′ λ1 kx − x ∗ k2 ≤ |f (x) − f (x ∗ )| ≤ λn kx − x ∗ k2 ′ ∀x ∈ N(x ∗ ) ′ con λ1 = λ1 − ε > 0 e λn = λn + ε, dove ε > 0 e 0 < λ1 ≤ . . . ≤ λn sono gli autovalori di H(x ∗ ). N.B.: In generale non esiste un’equivalenza (e.g. funzioni non ovunque C 1 ) ma vale per funzioni quadratiche strettamente convesse. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 4 / 12 Funzioni quadratiche strettamente convesse: Sia f (x) = 21 x t Qx − b t x e la norma pesata kxk2Q := x t Qx. Poich´e Qx ∗ = b, 1 kx − x ∗ k2Q = 21 (x − x ∗ )t Q(x − x ∗ ) = 21 x t Qx + 12 x ∗t Qx ∗ − x ∗t Qx = f (x) − f (x ∗ ) 2 Teorema: Se il metodo del gradiente con ottimizzazione 1-D esatta viene applicato ad f ∈ C 2 quadratica strettamente convessa, {x k } → x ∗ per qualsiasi x 0 e λn − λ1 2 ) kx k − x ∗ k2Q λn + λ1 dove 0 < λ1 ≤ . . . ≤ λn sono gli autovalori di Q. kx k+1 − x ∗ k2Q ≤ ( Dim.: Risultato di convergenza globale (Zoutendijk) + Si applica la disuguaglianza di Kantorovich: Se Q definita positiva (con λ1 e λn minimo e massimo autovalore), per ogni x 6= 0 si ha (x t x)2 (x t Qx)(x t Q −1 x) ≥ 4λn λ1 . (λn + λ1 )2 Se λ1 = λn (Q = γI e curve di livello = cerchi), metodo “converge” in una iterazione. Aikake ha mostrato che questo limite superiore `e raggiunto per certe scelte di x 0 . Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 5 / 12 Il tasso di convergenza dipende dal numero di condizionamento κ = λn λ1 di Q: λn − λ1 κ−1 )=( ) λn + λ1 κ+1 r `e tanto pi` u piccolo quanto κ `e vicino ad 1; se lo spettro di Q `e molto ampio allora κ ≫ 1 e r ≈ 1. r =( Funzioni non lineari generiche: Teorema: Se f ∈ C 2 e metodo del gradiente con ricerca 1-D esatta converge a x ∗ con H(x ∗ ) definita positiva, allora f (x k+1 ) − f (x ∗ ) ≤ ( λn − λ1 2 ) [f (x k ) − f (x ∗ )] λn + λ1 dove 0 < λ1 ≤ . . . ≤ λn sono gli autovalori di H(x ∗ ). In genere non ci si pu` o aspettare convergenza migliore con ricerca 1-D inesatta. Determinare αk che minimizza φ(α) pu` o non essere la scelta migliore, bisognerebbe cercare di “estrarre” informazioni del 2o ordine su f (x). Esempio: per f quadratica strettamente convessa, αk = 1/λk+1 ”porta” a x ∗ in al pi` un passi! Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 6 / 12 4.6 Metodo di Newton Siano f ∈ C 2 e H(x) = ∇2 f (x). Consideriamo l’approssimazione quadratica intorno a x k : 1 (x − x k )t H(x k )(x − x k ) 2 un suo punto stazionario (∇x qk (x) = 0), ovvero tale che qk (x) := f (x k ) + ∇t f (x k )(x − x k ) + e scegliamo come x k+1 ∇f (x k ) + H(x k )(x k+1 − x k ) = 0. Se H(x k ) non singolare, H −1 (x k ) esiste e x k+1 := x k − H −1 (x k )∇f (x k ). Se H(x k ) `e definita positiva, allora f ∈ C 2 implica H −1 (x) definita positiva su N(x k ) e l’iterazione `e ben-definita in N(x k ), altrimenti direzione potrebbe non essere di discesa. Nel metodo di Newton “puro” αk = 1 per ogni k. Se f `e una funzione quadratica strettamente convessa, il minimo globale si trova in un’unica iterazione. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 7 / 12 Propriet` a: Metodo invariante rispetto a cambio di coordinate affine non singolare (esercizio 6.5) Osservazione: Per funzioni generiche convergenza locale molto rapida, ma non globale! 3 3 Esempio: minx∈R f (x) = − exp(−x 2 ) con minimo globale x ∗ = 0 e f ′ (x) = 2x exp(−x 2 ) 1 2 f’(x) x0 x2 0 0 1 2 f(x) x x1 x0 2 x1 x2 ... x −1 −2 −2 −1 2 −3 −2 −1 0 1 2 3 −3 −2 −1 0 1 2 3 Se −0.2 ≤ x0 ≤ 0.2, {xk }k∈N converge a x ∗ = 0. Se x0 > 1, {xk }k∈N diverge. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 8 / 12 Interpretazione alternativa del metodo di Newton (caso 1-D): f (x) ∈ C 2 e si cerca x ∗ tale che f ′ (x) = 0. Metodo delle tangenti (Newton-Raphson) per determinare gli zeri di una funzione: All’iterazione k, f ′ (x) approssimata con la tangente in xk z = f ′ (xk ) + f ′′ (xk )(x − xk ) xk+1 corrisponde all’intersezione con asse di x: xk+1 = xk − f ′ (xk ) . f ′′ (xk ) Caso n-D: Si determina un punto stazionario di f risolvendo il sistema non lineare ∇f (x) = 0 mediante il metodo di Newton-Raphson. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 9 / 12 Teorema: Supponiamo f ∈ C 2 e x ∗ tale che ∇f (x ∗ ) = 0 e H(x ∗ ) definita positiva e kH(x) − H(y )k ≤ Lkx − y k ∀x, y ∈ N(x ∗ ) allora, per x 0 sufficientemente vicino al minimo locale x ∗ , i) {x k } → x ∗ con rapidit` a di convergenza quadratica, ii) {k∇f (x k )k} → 0 quando k → ∞ quadraticamente. Svantaggi: Se H(x k ) `e singolare il passo non `e ben-definito. Se H −1 (x k ) non `e definita positiva, la direzione di Newton pu` o non essere di discesa per f . Anche se la direzione `e di discesa il passo αk = 1 potrebbe aumentare il valore di f . a O(n3 ) ). Calcolo di H −1 (x k ) ad ogni iterazione ( complessit` Convergenza solo locale: se x 0 non `e abbastanza vicino al minimo locale la o non convergere. successione {x k } pu` Poich´e il metodo converge a partire da un intorno di un qualsiasi punto stazionario o convergere verso massimi locali. in cui ∇2 f (x k ) non `e singolare, pu` Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 10 / 12 Modifiche del metodo di Newton 1) Se il passo αk = 1 non soddisfa le condizione di Wolfe (o alternative), si effettua una ricerca unidimensionale approssimata. 2) Per garantire la convergenza globale, si pu` o modificare la direzione di Newton considerando d k = −Dk ∇f (x k ) con una matrice Dk diversa da [∇2 f (x k )]−1 . Se Dk `e simmetrica e definita positiva, d k `e una direzione di discesa. “Compromesso” tra direzioni di massima discesa e di Newton: Dk := (εk I + ∇2 f (x k ))−1 dove εk > 0 sono i pi` u piccoli valori tali che gli autovalori di (εk I + ∇2 f (x k )) siano ≥ δ > 0. Esiste sempre un εk che rende Dk definita positiva. Coincide con metodo “puro” di Newton quando ci si avvicina ad un minimo locale. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 11 / 12 3) Metodi a passi ristretti (”trust region methods”) Idea: La direzione d k e il passo αk vengono determinati contemporaneamente minimizzando l’approssimazione quadratica qk (x) intorno a x k corrente su una regione di confidenza (“trust region”) in cui qk (x) fornisce una buona approssimazione di f (x). Esempio di regione di confidenza: palla di raggio ∆k > 0. Illustrazione: o essere risolto in forma chiusa o In genere il sottoproblema (per determinare d k e αk ) pu` richiede un onere computazionale ridotto. La dimensione della regione di confidenza (e.g., ∆k se palla) viene variata in modo adattativo in base ad una stima della qualit` a dell’approssimazione quadratica sulla regione corrente. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 12 / 12
© Copyright 2025 ExpyDoc