4.8 Metodi quasi-Newton Varianti del metodo di Newton in cui invece di usare/invertire la matrice Hessiana di f (x) si estraggono informazioni relative alle derivate seconde dalle variazioni di ∇f (x). Si genera una successione {Hk }, con Hk simmetrica definita positiva e approssimazione di [∇2 f (x k )]−1 , e si pone x k+1 = x k + αk d k con d k = −Hk ∇f (x k ) dove αk > 0 minimizza f (x) lungo d k o soddisfa le condizioni di ricerca 1-D inesatta (e.g. Wolfe). Vantaggi rispetto a metodo di Newton: iterazione ben definita e metodo di discesa poiché Hk sono simmetriche e definite positive, richiede solo derivate prime, matrice Hk è costruita in modo iterativo, ogni iterazione O(n2 ). Svantaggio rispetto al metodo delle direzioni coniugate: richiede memorizzazione e manipolazioni di matrici. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 1 / 12 Idea: Ricavare da ∇f (x k ) e ∇f (x k+1 ) informazioni relative alle derivate seconde di f (x). Approssimazione quadratica di f intorno a x k : f (x k + δ) ≈ f (x k ) + δ t ∇f (x k ) + 1 t 2 δ ∇ f (x k )δ. 2 Derivando si ottiene ∇f (x k + δ) ≈ ∇f (x k ) + ∇2 f (x k )δ. Sostituendo δ con δ k e ponendo δ k = x k+1 − x k e γ k = ∇f (x k+1 ) − ∇f (x k ) abbiamo γ k ≈ ∇2 f (x k )δ k ovvero [∇2 f (x k )]−1 γ k ≈ δ k . Poiché δ k e γ k possono essere determinate solo dopo la ricerca 1-D, si sceglie Hk+1 simmetrica definita positiva tale che Hk+1 γ k = δ k ”secant condition”. (1) Sistema lineare che non determina in modo univoco Hk+1 (n equazioni e n(n + 1)/2 gradi di libertà). Vi sono molti modi di soddisfare le condizioni (1). Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 2 / 12 Uno dei più semplici procede per aggiornamento: Hk+1 = Hk + ak uu t (2) t dove uu è una matrice simmetrica di rango 1 e ak un coefficiente di proporzionalità. Per soddisfare (1) si richiede che Hk γ k + ak uu t γ k = δ k e quindi che u e (δ k − Hk γ k ) siano collineari. Dato che ak tiene conto della propozionalità, si può porre che u = δ k − Hk γ k e quindi ak u t γ k = 1. Formula di aggiornamento di rango 1: Hk+1 = Hk + (δ k − Hk γ k )(δ k − Hk γ k )t (3) (δ k − Hk γ k )t γ k Proprietà 1 Per funzioni quadratiche strettamente convesse, in al più n iterazioni si ottiene Hn = Q −1 , anche con ricerca 1-D approssimata. 2 Non c’è garanzia che Hk sia definita positiva! Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 3 / 12 Più interessanti: formule di aggiornamento di rango 2 Hk+1 = Hk + ak uu t + bk v v t (4) Imponendo (1) si ha Hk γ k + ak uu t γ k + bk v v t γ k = δ k in cui u, v non sono univocamente determinati. Ponendo u = δ k e v = Hk γ k si ottengono le condizioni ak u t γk = 1 e bk v t γk = −1 e quindi la formula di aggiornamento di rango 2: Hk+1 = Hk + Edoardo Amaldi (PoliMI) Hk γ k γ tk Hk δ k δ tk − γ tk Hk γ k δ tk γ k Davidon-Fletcher-Powell (DFP) Ottimizzazione A.A. 2013-14 (5) 4 / 12 Proposizione: Se condizione di curvatura, δ tk γ k > 0 ∀k il metodo preserva la condizione che Hk sia definita positiva. Dim.: Supponiamo H0 sia d.p. e procediamo per induzione. Mostriamo che se Hk è d.p. allora z t Hk+1 z > 0 ∀z 6= 0. Se Hk è d.p. ammette una fattorizzazione di Choleski Hk = Lk Ltk . Eliminando i pedici k e ponendo a = Lt z e b = Lt γ abbiamo z t (H − Hγγ t H (at b)2 )z = at a − t ≥0 t γ Hγ bb visto che |at a| ≤ kakkbk (Cauchy). Dato che z 6= 0, uguaglianza vale solo se a e b collineari, ovvero se z e γ collineari. Poiché δ t γ > 0 si ha δδ t )z ≥ 0 δt γ che vale in senso stretto se z e γ sono collineari. zt( Basta quindi ”sviluppare”z t Hk+1 z e applicare queste due disuguaglianze. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 5 / 12 Fatto: La condizione di curvatura δ tk γ k > 0 è garantita per ogni k purché la ricerca 1-D soddisfi le condizioni di Wolfe (deboli o forti). Dim.: Per funzioni quadratiche strettamente convesse, γ k = Qδ k implica δ tk Qδ k = δ tk γ k > 0 perché Q è d.p. Per funzioni qualsiasi: Condizioni di Wolfe deboli f (x k + αk d k ) ≤ f (x k ) + c1 αk ∇t f (x k )d k (6) ∇t f (x k + αk d k )d k ≥ c2 ∇t f (x k )d k (7) con 0 < c1 < c2 < 1. Visto che δ k = αk d k , (7) implica ∇t f (x k+1 )δ k ≥ c2 ∇t f (x k )δ k che implica γ tk δk ≥ (c2 − 1)αk ∇t f (x k )d k con (c2 − 1) < 0, αk > 0, ∇t f (x k )d k < 0 perché d k è direzione di discesa. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 6 / 12 Proprietà Per funzioni quadratiche strettamente convesse con ricerca 1-D esatta: 1 termina in al più n iterazioni con Hn = Q −1 ; 2 genera direzioni mutualmente Q–coniugate (partendo da H0 = I genera i gradienti coniugati); 3 la condizione della secante è ereditaria, ovvero Hi γ j = δ j j = 0 . . . i − 1. Per funzioni qualsiasi: 4 se δ tk γ k > 0 (condizione di curvatura), le Hk sono definite positive se H0 lo è (quindi metodo di discesa); 5 ogni iterazione richiede O(n2 ) operazioni; 6 rapidità di convergenza superlineare (in genere solo locale); 7 se funzione f (x) convessa e ricerca 1-D esatta, metodo DFP converge globalmente. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 7 / 12 Metodo BFGS In modo complementare, costruiamo un’approssimazione di ∇2 f (x k ) invece di [∇2 f (x k )]−1 . Poiché si desidera Bk ≈ ∇2 f (x k ), Bk deve soddisfare Bk+1 δ k = γ k . Scegliendo Bk+1 = Bk + ak uu t + b k v v t , con passaggi analoghi, si ottiene: Bk+1 = Bk + γ k γ tk γ tk δ k − Bk δ k δ tk Bk δ tk Bk δ k (8) che andrebbe invertita ad ogni iterazione per ottenere Hk+1 . Applicando due volte l’identità di Sherman–Morrison (A+ab t )−1 = A−1 − A−1 ab t A−1 , 1 + b t A−1 a A ∈ Rn×n non singolare, a, b ∈ Rn , denominatore 6= 0, si ottiene la formula di aggiornamento di Broyden Fletcher Goldfarb e Shanno (BFGS): ! γ t Hk γ Hk γ k δ tk + δ k γkt Hk δ k δ tk − (9) Hk+1 = Hk + 1 + k t k t δk γ k δk γ k δ tk γ k che non richiede molte più operazioni della formula di DFP. Si verifica facilmente che Bk+1 Hk+1 = I se Bk Hk = I . Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 8 / 12 Il metodo BFGS gode delle stesse proprietà 1 a 5 di quello DFP. In pratica risulta più robusto (rispetto a errori di arrotondamento e ricerca 1-D inesatta). Contrariamente a DFP è stata dimostrata la convergenza globale anche con ricerca 1-D inesatta. BFGS e DFP sono due estremi dell’unica famiglia di formule di Broyden: DFP + φH BFGS Hk+1 = (1 − φ)Hk+1 k+1 con 0 ≤ φ ≤ 1. Proprietà: (famiglia) Hk+1 soddisfa la condizione della secante ed è definita positiva se δ tk γ k > 0. Invarianti rispetto a trasformazioni affini delle variabili. Se f (x) quadratica strettamente convessa e ricerca 1-D esatta: si trova x ∗ in al più n iterazioni (Hn = Q −1 ) e le direzioni prodotte sono mutualmente Q-coniugate. Metodi quasi-Newton sono molto meno ”sensibili” alla ricerca 1-D inesatta che il metodo delle direzioni coniugate (adatti a funzioni altamente non lineari). Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 9 / 12 Convergenza dei metodi quasi-Newton Analisi complessa perché l’approssimazione della matrice Hessiana (o della sua inversa) viene aggiornata iterativamente. Rapidità di convergenza locale per qualsiasi {Bk } o {Hk } con ricerca 1-D inesatta (condizioni di Wolfe) in cui viene provato prima il passo αk = 1: Teorema: (Dennis e Moré) Sia f ∈ C 3 e metodo quasi-Newton con Bk definite positive e αk = 1 per ogni k. Se {x k } converge a x ∗ con ∇f (x ∗ ) = 0 e ∇2 f (x ∗ ) è definita positiva, {x k } converge superlinearmente se e solo se lim k→∞ k(Bk − ∇2 f (x ∗ ))d k k = 0. kd k k (10) Bk = Hk−1 ≈ ∇2 f (x k ) Se direzione quasi-Newton d k è un approssimazione sufficiente della direzione di Newton, αk = 1 soddisfa le condizioni di Wolfe quando x k converge verso x ∗ . N.B.: Non è necessario che Bk → ∇2 f (x ∗ ) per ottenere la convergenza superlineare, basta che le Bk diventino approssimazioni sempre più accurate di ∇2 f (x ∗ ) lungo le direzioni d k ! Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 10 / 12 La condizione (10), necessaria e sufficiente per la convergenza superlineare, è soddisfatta dai metodi quasi-Newton come BFGS e DFP. Confronto rapidità di convergenza tra metodi del gradiente, di Newton e BFGS: esempio per funzione di Rosenbrock tratto da pagina 199 (capitolo 8) di J. Nocedal, S. Wright, Numerical Optimization, Springer, first edition, 1999. Convergenza globale: Esistono risultati teorici di convergenza globale per funzioni generiche con ottimizzazione 1-D approssimata. Le tecniche “classiche” di globalizzazione (”restart” o ”trust region”) sono poco utilizzate per metodi quasi-Newton perché in pratica non si conoscono esempi di non convergenza. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 11 / 12 Varianti a memoria limitata I metodi quasi-Newton più utilizzati si basano sulle formule di aggiornamento BFGS e DFP con ricerca 1-D che soddisfa le condizioni di Wolfe. Visto che per n molto elevato è troppo costo costruire esplicitamente Bk o Hk , sono state proposte varianti a memoria limitata in cui vengono utilizzate solo informazioni (i vettori δ k e γ k ) relative alle ultime iterazioni. Il metodo BFGS a memoria limitata (cf. esercizio 7.5) risulta molto efficiente. Edoardo Amaldi (PoliMI) Ottimizzazione A.A. 2013-14 12 / 12