3.7 Metodi quasi-Newton Varianti del metodo di Newton in cui invece di usare/invertire la matrice Hessiana di f si estraggono informazioni relative alle derivate seconde dalle variazioni di ∇f . Si genera una successione {Hk }, con Hk simmetrica definita positiva e approssimazione di [∇2f (xk )]−1, e si pone xk+1 = xk + αk dk con dk = −Hk ∇f (xk ) dove αk > 0 minimizza f lungo dk 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/manipolazioni di matrici 1 Idea: Ricavare da ∇f (xk ) e ∇f (xk+1) informazioni relative alle derivate seconde di f Approssimazione quadratica di f intorno a xk : 1 f (xk + δ) ≈ f (xk ) + δ t∇f (xk ) + δ t∇2f (xk )δ 2 Derivando si ottiene ∇f (xk + δ) ≈ ∇f (xk ) + ∇2f (xk )δ Ponendo δ k = xk+1 − xk e γ k = ∇f (xk+1) − ∇f (xk ) abbiamo γ k ≈ ∇2f (xk )δ k ovvero [∇2f (xk )]−1γ k ≈ δ k Poiché δ k e γ k possono essere determinate solo dopo la ricerca 1-D, si sceglie Hk+1 simmetrica d.p. 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). 2 Uno dei più semplici procede per aggiornamento: Hk+1 = Hk + ak uut (2) dove uut è una matrice simmetrica di rango 1 e ak un coefficiente di proporzionalità. Per soddisfare la (1) si richiede che Hk γ k + ak uutγ k = δ k quindi che u ∝ (δ k − Hk γ k ). Dato che ak tiene conto della propozionalità, si può porre che u = δ k − Hk γ k e quindi ak utγ k = 1. Formula di aggiornamento di rango 1: Hk+1 = Hk + (δ k − Hk γ k )(δ k − Hk γ k )t (δ k − Hk γ k )tγ k (3) 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! 3 Metodo DFP Formule più interessanti si ottengono con aggiornamenti di rango 2: Hk+1 = Hk + ak uut + bk vv t (4) Imponendo (1) si ha Hk γ k + ak uutγ k + bk vv tγ k = δ k in cui u, v non sono univocamente determinati. Ponendo u = δ k e v = Hk γ k si ottengono le condizioni ak utγk = 1 e bk v tγk = −1 e quindi la formula di aggiornamento di rango 2: Hk+1 t δ k δ tk Hk γ k γ k Hk = Hk + t − t γ k Hk γ k δk γ k Davidon-Fletcher-Powell (DFP) (5) 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 4 Per funzioni qualsiasi: 4. sotto una ipotesi 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 convessa e ricerca 1-D esatta, metodo DFP converge globalmente. Proposizione Se δ tk γ k > 0 per ogni k (condizione di curvatura), il metodo preserva la condizione che Hk sia definita positiva. 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). 5 Metodo BFGS In modo complementare, costruiamo un’approssimazione di ∇2f (xk ) invece di [∇2f (xk )]−1. Poiché si desidera Bk ≈ ∇2f (xk ), Bk deve soddisfare Bk+1δ k = γ k . Scegliendo Bk+1 = Bk + ak uut + bk vv t, con passaggi analoghi, si ottiene: Bk+1 γ k γ tk Bk δ k δ tk Bk = Bk + t − t γ k δk δ k Bk δ k (6) che andrebbe invertita ad ogni iterazione per ottenere Hk+1. Applicando due volte l’identità di Sherman–Morrison t −1 (A + ab ) =A −1 A−1abtA−1 − t −1 , 1+bA a A ∈ Rn×n non singolare, a, b ∈ Rn e denominatore 6= 0 si ottiene la formula di aggiornamento di Broyden Fletcher Goldfarb e Shanno (BFGS): ! t γ k Hk γ k δ k δ tk Hk γ k δ tk + δ k γkt Hk Hk+1 = Hk + 1 + t − t δk γ k δk γ k δ tk γ k che non richiede molte più operazioni della formula di DFP. Si verifica facilmente che Bk+1Hk+1 = I se Bk Hk = I. 6 (7) 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 BFGS Hk+1 = (1 − φ)Hk+1 + φHk+1 con 0 ≤ φ ≤ 1 Proprietà comuni: • Hk+1 soddisfa la condizione della secante ed è definita positiva se δ tk γ k > 0 • Invarianti rispetto a trasformazioni affini delle variabili • Se f quadratica strettamente convessa e ricerca 1-D esatta: trovano soluzione in al più n iterazioni (Hn = Q−1 ) 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) 7 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 (cond. 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 {xk } converge a x∗ con ∇f (x∗) = 0 e ∇2f (x∗) è definita positiva, {xk } converge superlinearmente se e solo se k(Bk − ∇2f (x∗))dk k lim =0 k→∞ kdk k (8) Bk = Hk−1 ≈ ∇2f (xk ) Se direzione quasi-Newton dk è un approssimazione sufficiente della direzione di Newton, αk = 1 soddisfa le condizioni di Wolfe quando xk converge verso x∗ NB: Non è necessario che Bk → ∇2f (x∗) per ottenere la convergenza superlineare, basta che le matrici Bk diventino approssimazioni sempre più accurate di ∇2f (x∗) lungo le direzioni dk ! La condizione (8) è necessaria e sufficiente per la convergenza superlineare di un metodo quasi-Newton 8 Risultati parziali di convergenza globale per funzioni generiche: Siano insieme di livello L0 = {x ∈ Rn : f (x) ≤ f (x0)} compatto e funzione obiettivo f ∈ C 1. Sia {xk } la successione generata da metodo quasi-Newton dove {Bk } generata con la formula BFGS e passo αk che soddisfa le condizioni di Wolfe. Allora, o ∃ indice l t.c. ∇f (xl ) = 0 oppure sequenza infinita con lim inf k∇f (xk )k = 0 k→∞ qualunque sia la matrice definita positiva B0 se ∃ costante ρ t.c. γ tk γ k γ tk δ k ≤ρ per ogni k. (9) Condizione (9) soddisfatta per funzioni convesse Condizioni di Wolfe garantiscono (9)? Nuovo tipo di ricerca 1-D che la garantisca? Per assicurare convergenza globale teorica: ricerche 1-D lungo la direzione dell’antigradiente (“restart”) o approccio di tipo “trust region” Queste tecniche “classiche” di globalizzazione non sono molto utilizzate per metodi quasi-Newton perché in pratica non si conoscono esempi di non convergenza 9 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 Per problemi di grandi dimensioni, è 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 iterazione Il metodo BFGS a memoria limitata (cf. esercizi) risulta molto efficiente 10