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.