Analisi Numerica II - Matematica e informatica
Transcript
Analisi Numerica II - Matematica e informatica
Analisi Numerica II D. Lera LEZIONE 5 Analisi Numerica II Daniela Lera Università degli Studi di Cagliari Dipartimento di Matematica e Informatica A.A. 2008-2009 Equazioni non lineari Analisi Numerica II D. Lera Metodo di Newton LEZIONE 5 Il metodo di Newton sfrutta le informazioni sulla funzione e sulla derivata della funzione in determinati punti dell’intervallo. Schema generale xn+1 = xn − f (xn ) f 0 (xn ) x0 arbitrario e f 0 (xn ) 6= 0, ∀n n = 0, 1, 2, ... Equazioni non lineari Analisi Numerica II D. Lera Metodo di Newton LEZIONE 5 Lo schema si ottiene approssimando la f ad ogni iterazione con lo sviluppo in serie di Taylor arrestato alla derivata prima. Al primo passo si ha: f (x) ≈ f (x0 ) + f 0 (x0 )(x − x0 ) = 0 da cui: x = x0 − f (x0 ) f 0 (x0 ) Newton Analisi Numerica II D. Lera LEZIONE 5 Significato geometrico Ad ogni passo k del metodo di Newton si approssima la f (x) con la retta tangente nel punto xk−1 alla stessa f . Al primo passo si considera la retta tangente alla f in x0 : y − f (x0 ) = f 0 (x0 )(x − x0 ) y = 0 ⇒ x1 = x0 − f (x0 ) f 0 (x0 ) Newton Analisi Numerica II D. Lera LEZIONE 5 Significato geometrico Newton Analisi Numerica II D. Lera LEZIONE 5 Ordine di convergenza Il metodo di Newton è più costoso, in termini di valutazione di funzione, rispetto ad altri metodi iterativi come bisezione o regula-falsi. Newton necessita inoltre della derivata prima della funzione f . Di contro, supponendo che converga, la sua velocità di convergenza risulta quadratica. Newton Analisi Numerica II Ordine di convergenza D. Lera LEZIONE 5 Si consideri lo sviluppo di Taylor applicato in un intorno di xn : f (x) = f (xn ) + (x − xn )f 0 (xn ) + (x − xn )2 f ”(ξn ) 2 ξn ∈ I(xn ,x) Per x = α si ha: 0 = f (α) = f (xn ) + (α − xn )f 0 (xn ) + (α − xn )2 f ”(ξn ) 2 Da cui, supponendo f 0 (xn ) 6= 0 f (xn ) 1 f ”(ξn ) + α − xn = − 0 (α − xn )2 0 f (xn ) 2 f (xn ) Newton Analisi Numerica II D. Lera Ordine di convergenza LEZIONE 5 Quindi α − xn+1 = − 1 f ”(ξn ) (α − xn )2 2 f 0 (xn ) Sia en = α − xn l’errore al passo n, quindi la (1) diventa: en+1 = − 1 f ”(ξn ) 2 e 2 f 0 (xn ) n (1) Newton Analisi Numerica II D. Lera LEZIONE 5 Ordine di convergenza Passando al limite, supponendo che {xn } → α en+1 1 f ”(α) =− 0 2 n→∞ en 2 f (α) lim Se f 0 (α) 6= 0, (radice ha molteplicità 1). Il metodo di Newton ha ordine di convergenza 2. Newton Analisi Numerica II D. Lera LEZIONE 5 Ordine di convergenza Quindi, se il metodo di Newton converge, e α non è una radice multipla, l’ordine di convergenza è 2. L’ordine di convergenza può diminuire in presenza di radici multiple. Newton Analisi Numerica II Radici multiple D. Lera LEZIONE 5 Esempio. f (x) = x2 xn+1 = xn − xn2 xn = 2xn 2 1 ⇒ en+1 = en 2 ⇒ convergenza lineare Newton Analisi Numerica II D. Lera LEZIONE 5 Quando converge Analizziamo ora in quali situazioni il metodo di Newton converge alla soluzione. Ci interessa cioé studiare sotto quali ipotesi lim |en | = lim |α − xn | = 0 n→∞ n→∞ Newton Analisi Numerica II D. Lera Quando converge LEZIONE 5 Sia: 1 f ”(y) ≤M 2 f 0 (x) ∀x, y ∈ Iα Allora: |en+1 | ≤ M|en |2 Da cui: n+1 M|en+1 | ≤ |Men |2 ≤ ... ≤ |Me0 |2 Newton Analisi Numerica II D. Lera Quando converge LEZIONE 5 Infine: |en+1 | ≤ 1 n+1 |Me0 |2 M Convergenza sse |Me0 | < 1, ⇒ |e0 | < 1/M |α − x0 | < 1 1 1 ⇒ x0 ∈ (α − , α + ) M M M x0 deve essere sufficientemente vicino ad α. Stimare la costante M é un problema. Newton Analisi Numerica II D. Lera LEZIONE 5 Quando converge La regolarità della funzione quindi non basta per la convergenza del metodo. D’altra parte si può avere convergenza in situazioni più generali: per esempio quando la derivata prima della f nella radice non é finita. Newton Analisi Numerica II Quando converge D. Lera LEZIONE 5 Esempio 1. f (x) = x2/3 x≥0 −(x2/3 ) x < 0 1 ⇒ xk+1 = − xk Converge, ma linearmente 2 Esempio 2. f (x) = x1/3 x≥0 −(−x)1/3 x < 0 ⇒ xk+1 = −2xk Diverge Newton Analisi Numerica II Convergenza globale D. Lera LEZIONE 5 TEOREMA Sia f (x) ∈ C2 ([a, b]), [a, b] chiuso e limitato. Se: 1. f (a)f (b) < 0 2. f 0 (x) 6= 0, ∀x ∈ [a, b] 3. f ”(x) ≥ 0 oppure f ”(x) ≤ 0, ∀x ∈ [a, b] f (b) 4. ff0(a) < b − a; (a) f 0 (b) < b − a allora il metodo di Newton converge all’unica soluzione α in [a, b] per ogni scelta di x0 ∈ [a, b]. Newton Analisi Numerica II D. Lera Casi speciali LEZIONE 5 Esempio 1. Sia c > 0, c ∈ R f (x) = x2 − c, x>0 √ f (x) = 0 ⇒ x = c . Newton: 1 c xk+1 = (xk + ) 2 xk Newton Analisi Numerica II D. Lera LEZIONE 5 Casi speciali: esempio 1 Metodo di Erone per il calcolo della radice quadrata che utilizza solo le 4 operazioni elementari. f 0 > 0, f ” > 0, per x > 0 ⇒ si applica il teo di convergenza. √ Su ogni [a, b] con a < c < b, la condizione 4. é soddisfatta per b > (a + c/a)/2 ⇒ la success. di Newton converge ∀x0 > 0. Newton Analisi Numerica II D. Lera Casi speciali LEZIONE 5 Esempio 2. Dato un numero reale c > 0 si vuole calcolare 1/c: f (x) = Newton: 1 −c=0 x xk+1 = xk (2 − cxk ) Calcolo del reciproco senza divisioni. Equazioni non lineari Analisi Numerica II D. Lera LEZIONE 5 Metodi Quasi-Newton Nel metodo di Newton il calcolo della derivata prima può essere costoso o impossibile. Esistono interessanti varianti che non implicano direttamente il calcolo esplicito della derivata, o ne richiedono un minor numero di valutazioni. Quasi-Newton Analisi Numerica II Metodo delle Corde D. Lera LEZIONE 5 Schema generale xn+1 = xn − f (xn ) m m 6= 0. Una scelta opportuna della costante m può portare a convergenza con ordine 1. Una scelta possibile: m = f 0 (x0 ). Variante: si inizia con m = f 0 (x0 ) e si aggiorna ogni r iterazioni. Quasi-Newton Analisi Numerica II D. Lera Metodo delle Secanti LEZIONE 5 Consiste nell’approssimare la derivata mediante il rapporto incrementale: Schema generale xn+1 = xn − f (xn ) f (xn ) 6= f (xn−1 ). Richiede 2 punti iniziali x0 e x1 . xn − xn−1 f (xn ) − f (xn−1 ) Quasi-Newton Analisi Numerica II D. Lera LEZIONE 5 Metodo delle Secanti Quasi-Newton Analisi Numerica II D. Lera Metodo delle Secanti LEZIONE 5 Si dimostra che l’ordine di convergenza è √ (1 + 5)/2 ≈ 1.618 Tenuto conto del costo di ciascuna iterazione, viene ritenuto più vantaggioso di Newton. Nelle prime iterazioni i punti trovati saranno molto differenti da quelli forniti dal metodo di Newton, man mano che i punti si avvicinano tra loro, a causa della convergenza, la secante tenderà sempre più a coincidere con la tangente e le prestazioni del metodo si avvicineranno a quelle del metodo di Newton. Equazioni non lineari Analisi Numerica II Risultati numerici: Newton D. Lera LEZIONE 5 f (x) −2 α √ 2 ex − 2 log2 1/x − 3 1/3 (x − 3)3 3 x2 Stop: |xk −xk−1 | max{1,|xk |} x0 |x − α| n.iter. 2 200 2 200 2 0.1 2 2.9 0 0 0 97.3 2.8 ∗ 10178 5.6 ∗ 10−17 4.0 ∗ 10−8 4.8 ∗ 10−8 4 11 5 >100 8 6 41 35 < 10−8 or f (x) = 0 or k > 100. Equazioni non lineari Analisi Numerica II Risultati numerici: Secanti D. Lera LEZIONE 5 f (x) −2 α √ 2 ex − 2 log2 1/x − 3 1/3 (x − 3)3 3 x2 Stop: |xk −xk−1 | max{1,|xk |} [x0 , x1 ] |x − α| n.iter. [1,2] [199,200] [2,3] [199,200] [2,3] [0.1,0.11] [1,2] [2.5,2.9] 0 2.2 ∗ 10−16 1.1 ∗ 10−16 128.6 ∞ 5.0 ∗ 10−16 9.0 ∗ 10−8 7.0 ∗ 10−8 6 16 9 >100 8 9 58 51 < 10−8 or f (x) = 0 or k > 100. Equazioni non lineari Analisi Numerica II Risultati numerici: Corde D. Lera LEZIONE 5 f (x) −2 α √ 2 ex − 2 log2 1/x − 3 1/3 (x − 3)3 3 x2 Stop: |xk −xk−1 | max{1,|xk |} x0 2 200 2 200 2 0.1 2 2.9 |x − α| 10−9 2.6 ∗ 1.9 ∗ 10−6 2.1 ∗ 10−8 192.4 2.4 ∗ 104 9.9 ∗ 10−8 2.7 ∗ 10−2 2.7 ∗ 10−3 n.iter. 14 1990 53 >2000 >2000 146 >2000 >2000 < 10−8 or f (x) = 0 or k > 2000.