Calcolo di autovalori Esempio Calcolo di autovalori Esempio

Transcript

Calcolo di autovalori Esempio Calcolo di autovalori Esempio
Calcolo di autovalori
Data la matrice A, determinare l numero e v vettore non
nullo tali che
A v = lv
l autovalore, v autovettore
Esempio
⎛9
A = ⎜⎜
⎝8
4⎞
⎟⎟ ,
5⎠
⎛a⎞
v = ⎜⎜ ⎟⎟ ,
⎝b⎠
⎛9 a + 4b⎞
⎟⎟
A v = ⎜⎜
⎝8a + 5b ⎠
A v in generale non è multiplo di v. Se però
⎛1⎞
⎛ 1 ⎞
v = ⎜⎜ ⎟⎟ ⇒ A v = 13 v , v = ⎜⎜ ⎟⎟ ⇒ A v = v
⎝1⎠
⎝ − 2⎠
ovvero ci sono due direzioni lungo le quali A funziona come
se v fosse moltiplicato per uno scalare.
Conoscere le direzioni lungo le quali A agisce come
scalare semplifica i problemi
1
Calcolo di autovalori
Data la matrice A, determinare l numero e v vettore non
nullo tali che A v = l v: l autovalore, v autovettore
Esempio
⎛−1
A = ⎜⎜
⎝ 6
4⎞
⎟⎟
1⎠
⎛2⎞
v1 = ⎜⎜ ⎟⎟
⎝3⎠
⎛ 1 ⎞
⎟⎟
v 2 = ⎜⎜
⎝ − 1⎠
⎛1⎞
v3 = ⎜ ⎟
⎝1⎠
⎛ 10 ⎞
A v1 = ⎜⎜ ⎟⎟
⎝ 15 ⎠
λ1 = 5
⎛− 5⎞
⎟⎟ λ 2 = − 5
A v 2 = ⎜⎜
⎝ 5⎠
⎛3⎞
non è
A v3 = ⎜ ⎟
⎝ 7 ⎠ autovettore
Se v è un autovettore, anche ogni multiplo di v lo è.
2
In Matlab: eig(A) restituisce gli autovalori dellla matrice A
Calcolo di autovalori
Data la matrice A, determinare l numero e v vettore non
nullo tali che
A v = lv
l autovalore, v autovettore
In pratica cerchiamo l e v tali che (A - l I ) v = 0
E’ possibile che un sistema lineare omogeneo abbia una
soluzione non nulla solo se è singolare, ovvero
det (A - l I ) = 0 equazione caratteristica
Gli autovalori sono le radici del polinomio caratteristico
3
Esempio
⎛9
A = ⎜⎜
⎝8
4⎞
⎟
5 ⎟⎠
4 ⎞
⎛9 − λ
0 = det ( A − λ I ) = det ⎜⎜
⎟⎟ =
8
5
λ
−
⎠
⎝
= (9 − λ ) ( 5 − λ ) − 32 = λ 2 −14 λ +13
Soluzioni:
λ = 7 ± 49 − 13
λ 1 =13, λ 2 =1
Infatti si ha:
⎛1⎞
⎛ 1⎞
v1 = ⎜⎜ ⎟⎟ ⇒ A v1 = 13v1 , v2 = ⎜⎜ ⎟⎟ ⇒ A v2 = v2
⎝1⎠
⎝ − 2⎠
4
Esempio
Calcolare gli autovalori delle seguenti matrici:
⎛1
⎜
A=⎜0
⎜0
⎝
−2
2
0
0⎞
⎟
0⎟
2 ⎟⎠
⎛2
⎜
⎜0
(ii) A = ⎜
0
⎜
⎜0
⎝
−1
3
1
−2
0
0
8
−3
(i)
λ 1 = 1,
molteplicità
λ 2 = 2,
m( λ 1 ) = 1, m( λ 2 ) = 2
−1⎞
⎟
− 5⎟
6 ⎟
⎟
2 ⎟⎠
λ 1 = 2, λ 2 = 3,
λ 3 = 5 + 3i , λ 4 = 5 − 3i
m (λ i ) = 1
In Matlab: eig(A) restituisce gli autovalori dellla matrice A
Lo spettro di A è l’insieme degli autovalori di A.
Il raggio spettrale di A è
ρ ( A ) = max λ
1≤ i ≤ n
i
Data S matrice non singolare, B = S-1 A S è simile ad A
Matrici simili hanno gli stessi autovalori.
Dim: λ , x t.c. A x = λ x,
S −1 A x = λ S −1 x
Inserisco la matrice identità I = S S -1
S
−1
A( S S ) x = λ S x
B y=λ y
−1
−1
Si pone
B = S −1 A S ,
y = S −1 x
6
A è diagonalizzabile se ∃ S
S -1 A S = D diagonale
non singolare t.c.
Gli autovalori di una matrice diagonale D sono gli elementi
sulla diagonale
A è diagonalizzabile se e solo se possiede n autovettori
linearmente indipendenti
Gli autovettori associati ad autovalori distinti sono linearmente
indipendenti
7
Se gli autovalori di A sono distinti, allora A è diagonalizzabile
Localizzazione degli autovalori
Per ogni norma naturale vale che ρ ( A ) ≤ A
⎛4
⎜
⎜0
A=⎜
5
⎜
⎜3
⎝
−5
4
−3
0
0
−3
4
5
3 ⎞
⎟
− 5⎟
0 ⎟
⎟
4 ⎟⎠
A
∞
= max
i
n
∑
j =1
a ij = 12
ρ ( A ) = max λ
1≤ i ≤ n
i
≤ 12
cioè gli autovalori si trovano nel cerchio di centro
l’origine e raggio 12.
λ 1 = 12 , λ 2 = 2,
Infatti gli autovalori sono:
λ 3 = 1 + 5i , λ 4 = 1 − 5i
λ 1 = 12 , λ 2 = 2,
λ 3 = λ 4 = 26
8
Localizzazione degli autovalori
⎛4
⎜
⎜0
A=⎜
5
⎜
⎜3
⎝
−5
4
−3
0
0
−3
4
5
3 ⎞
⎟
− 5⎟
0 ⎟
⎟
4 ⎟⎠
5
0
12
-5
λ 1 = 12 , λ 2 = 2,
λ 3 = 1 + 5i , λ 4 = 1 − 5i
9
Teorema di Gerschgorin
(i) Sia l un autovalore di A.
∃ x ≠ 0 t.c. A x − λ x = 0
Sia i l’indice della componente di massimo modulo
dell’autovettore x.
a i1 x1 + a i 2 x 2 +…+ ( a ii − λ ) x i +…+ a in x n = 0
a ii − λ =
Quindi
∑a
k ≠i
xk
ik
xi
≤
∑
k ≠i
aik
xk
xi
≤ ∑ a i k = ri
k ≠i
λ ∈R i = { z∈ C t.c. z − a i i ≤ ri }
Poiché i non è noto a priori
n
λ ( A )∈ R = ∪ R
i =1
i
10
Teorema di Gerschgorin
(ii)
l è un autovalore anche di A T , e quindi:
n
λ ( A) ∈ C = ∪ C j ,
j =1
C j = { z ∈C t.c. z − a j j ≤ c j c j = ∑ a k j
k≠ j
⇓
λ ( A) ∈ R ∩C
11
Ricapitolando:
Teorema di Gerschgorin
n
ri = ∑ a i k i = 1,..., n
k =1
k ≠i
n
(i)
λ ( A)∈R = ∪ R i
n
c j = ∑ a k j j = 1,..., n
k =1
k≠ j
R i = { z ∈ C t.c. z − a i i ≤ ri }
i =1
n
(ii) λ ( A ) ∈ C = ∪ C j ,
j =1
{
C j = z ∈C t.c. z − a j j ≤ c j
λ ∈R ∩ C
12
}
Teorema di Gerschgorin - esempio
⎛4
⎜
⎜0
A=⎜
5
⎜
⎜3
⎝
−5
4
−3
0
3 ⎞
⎟
− 5⎟
0 ⎟
⎟
4 ⎟⎠
0
−3
4
5
5
R∩ C
0
12
-5
R 1 = R 2 = R 3 = R 4 = R 5 = { z − 4 ≤ 8}
C 1 = C 2 = C 3 = C 4 = C 5 = { z − 4 ≤ 8}
4
R =∪ R i
i =1
4
C =∪ C j
j =1
13
Teorema di Gerschgorin - esempio
Esempio:
⎛4
⎜
⎜1
A = ⎜0
⎜
⎜0
⎜0
⎝
−1
3
1
0
0
1
−1
1
0
0
0
0
0
2
1
0⎞
⎟
0⎟
0⎟
⎟
1⎟
8 ⎟⎠
R 1 = { z − 4 ≤ 2}, R 2 = { z − 3 ≤ 2}, R 3 = { z − 1 ≤ 1},
R 4 = { z − 2 ≤ 1}, R 5 = { z − 8 ≤ 1}
C 1 = { z − 4 ≤ 1}, C 2 = { z − 3 ≤ 2}, C 3 = { z − 1 ≤ 2},
C 4 = { z − 2 ≤ 1}, C 5 = { z − 8 ≤ 1}
14
Teorema di Gerschgorin - esempio
R 1 = { z − 4 ≤ 2}
R 4 = { z − 2 ≤ 1}
R 2 = { z − 3 ≤ 2}
R 5 = { z − 8 ≤ 1}
R 3 = { z − 1 ≤ 1}
(i) λ ∈R =
0
1 2
3 4
6
5
7
9
8
10
5
∪R
i
i =1
C 1 = { z − 4 ≤ 1}
C 4 = { z − 2 ≤ 1}
C 2 = { z − 3 ≤ 2}
C 3 = { z − 1 ≤ 2}
-1
0
1 2
3 4
6
5
7
9
8
10
C 5 = { z − 8 ≤ 1}
5
(ii) λ ∈ C = ∪ C j ,
15
j =1
Teorema di Gerschgorin - esempio
5
R =∪ R i
i =1
0
1 2
3 4
5
6
7
8
9
10
0
1 2
3 4
5
6
7
8
9
10
5
C =∪ C j
j =1
-1
λ 1 = 5 + 10 , λ 2 = λ 3 = 3,
λ 4 = 2, λ 5 = 5 − 10
R∩ C
-1
0
1 2
3 4
5
6
7
8
9
10
λi ∈ R ∩ C
Teorema di Gerschgorin
(iii) Il teorema inoltre stabilisce che ad ogni componente
di R (o C), ovvero ad ogni unione connessa
massimale di cerchi Ri o Cj, appartengono tanti
autovalori quanti sono i cerchi che costituiscono la
componente, contando autovalore e cerchio con la
sua molteplicità.
0
1 2
3 4
5
6
7
8
9
-1
10
0
1 2
3 4
5
6
7
9
8
10
5
5
C =∪ C j
λ 1 = 5 + 10 , λ 2 = λ 3 = 3,
R =∪ R i
j =1
λ 4 = 2, λ 5 = 5 − 10
i =1
17
Metodo delle potenze
Calcolo dell’autovalore di massimo modulo.
Supponiamo che l’autovalore di max modulo sia
unico
λ > λ ≥ λ ≥ …≥ λ
1
2
3
n
Da questa ipotesi discende che λ 1 è reale di molteplicità
uno.
Supponiamo che i corrispondenti autovettori
siano linearmente indipendenti x 1 ,… , x n
v 0 = α 1 x 1 + α 2 x 2 + … + α n x n Scelgo v 0 t.c. α 1 ≠ 0
v 1 = Av0 , v 2 = Av1 ,..., vm = Avm −1
λ 1 = lim
m→∞
(v )
(v )
m +1
m
k
successione di vettori
componente k-sima
k
18
Metodo delle potenze
Dimostrazione
v 0 =α 1 x1 + α2 x 2 +… + α n x n
t.c. α 1 ≠ 0
v1 = A v 0 = α 1 λ 1 x1 + α2 λ 2 x 2 +… + α n λ n x n =
⎛
λ2
λn ⎞
⎜
= λ 1 α 1 x1 +α 2
x2 + … + α n
xn ⎟
⎜
λ1
λ 1 ⎟⎠
⎝
m
m
⎤
⎡
⎛
⎞
⎛
⎞
λ
λ
n
2
⎟ x 2 + …+ α n ⎜
⎟ xn ⎥
v m = A v m −1 = A mv 0 = λ 1m ⎢ α 1 x1 + α 2 ⎜
⎜
⎟
⎜
⎟
⎥
⎢
⎝λ1⎠
⎝λ1⎠
⎦
⎣
m
m
⎤
⎡
⎛
⎞
⎛
⎞
λ2
λn
m
⎟ ( x 2 ) k + …+ α n ⎜
⎟ ( x n )k ⎥
(v m )k = λ 1 ⎢ α 1 ( x1 )k + α 2 ⎜
⎜λ1⎟
⎜λ1⎟
⎥19
⎢
⎝
⎠
⎝
⎠
⎦
⎣
Metodo delle potenze
(v )
(v )
m +1
m
Se
m +1
m +1
⎡
⎤
⎛λ 2 ⎞
⎛λ n ⎞
⎜
⎟
⎜
⎟
⎢ α 1 (x1)k + α 2
(x 2 )k + … + α n
(x n )k ⎥
λ
⎜λ ⎟
⎜λ ⎟
⎢
⎥
⎝ 1⎠
⎝ 1⎠
⎣
⎦
m
m
⎡
⎤
⎛λ 2 ⎞
⎛λ n ⎞
m
⎜
⎟
⎜
⎟
⎢
(x 2 )k + … + α n
(x n )k ⎥
λ 1 α 1 (x1)k + α 2 ⎜
⎟
⎜
⎟
⎢
⎥
⎝λ 1⎠
⎝λ 1⎠
⎣
⎦
m +1
1
k
=
λ
λ
i
k
1
<1 ⇒ λ
1 = lim
m→∞
(v )
(v )
m +1
m
k
k
L’autovalore di minimo modulo di A è il reciproco
dell’autovalore di massimo modulo di A -1, poiché se l è
un autovalore di A, allora l -1 è un autovalore di A -1.
A x = λ x ⇒ x = λ A−1 x ⇒ λ −1 x = A−1 x
20
Metodo delle potenze
Fissato v 0
for m=0,1,…..
v m+1 = Av m
λ
( m +1)
1
(Implementazione)
y 0 = (1,1,...,1)T
for m=0,1,…..
normalizzazione
w m+1 = Ay m
(v )
= m+1 k
(v m ) k
end
Le componenti di v m possono
crescere molto in modulo!!!
λ1( m+1) =
(w m+1 ) k
(y m ) k
y m +1 =
w m +1
w m+1 ∞
end
OSSERVAZIONI
1) in genere ad ogni iterazione si sceglie l’indice k come la posizione
della prima componente di modulo massimo di w m +1.
2) utilizzare un opportuno criterio di arresto!
21
Metodo delle potenze
Osservazioni sulla convergenza:
• la velocità di convergenza dipende dal rapporto λ2 / λ1 :
quanto più è piccolo tanto più rapidamente converge
• quando λ2 ≅ λ1 la convergenza può risultare
eccessivamente lenta. In questa situazione il metodo viene
usato per ottenere solo una stima iniziale da migliorare
successivamente con un metodo più veloce, ad esempio il
metodo delle potenze inverse.
• Se λ1 è reale ed ha molteplicità k la convergenza è
generalmente lenta.
• Se gli autovalori sono reali e distinti ed hanno lo stesso
22
modulo in genere il metodo non converge.
Autovalore di minimo modulo
(Implementazione)
E’ il reciproco dell’autovalore di massimo modulo di A-1
λn = 1/ λ1 autovalore di
λ1 autovalore di
minimo modulo di A
massimo modulo di A-1
y 0 = (1,1,...,1)T
for m=0,1,…..
w m+1 = A −1y m
λ1( m+1) =
(w m+1 ) k
(y m ) k
w m +1
y m +1 =
w m+1 ∞
PA = LU
y 0 = (1,1,...,1)T
for m=0,1,…..
risolvi Aw m +1 = y m
(y m ) k
λn( m+1) =
(w m+1 ) k
y m +1 =
w m +1
w m+1 ∞
end
end
N.B. in genere ad ogni iterazione si sceglie l’indice k come la
posizione della prima componente di modulo massimo di w m+1.
23
Metodo delle potenze inverse
Serve per migliorare l’approssimazione p di un
autovalore l
( A− p I ) x = A x − p x =( λ − p ) x
Quindi l - p è un autovalore di A - p I.
Quindi (l - p) -1 è un autovalore di (A - p I) -1
−1
Se p ≈ λ , ( λ − p ) = µ è autovalore max di (A - p I) -1
Quindi, calcolato µ ,
(ad es con il metodo delle potenze)
λ = p+
1
µ
24
Metodo delle potenze inverse
(Implementazione)
p: approssimazione di un autovalore λ
migliore approssimazione:
λp = p +
dove µ è autovalore max di (A-pI)-1
e quindi 1/µ è autovalore min di A-pI
1
µ
P(A − pI) = LU
y 0 = (1,1,...,1)T
λp(0) = p;
for m=0,…
risolvi (A − pI)w m+1 = y m
(y m ) k
λp( m+1) = p +
(w m +1 ) k
Se l’approssimazione iniziale p non è
w m +1
sufficentemente buona la convergenza del
y m +1 =
w m +1 ∞
metodo risulta assai lenta.
end
N.B. in genere ad ogni iterazione si sceglie l’indice k come la
posizione della prima componente di modulo massimo di w m +1.
25
Matematica del web:
Google e Page Rank
Larry Page e Sergey Brin, specializzandi in Informatica a
Stanford, hanno inventato il motore di ricerca più famoso.
Page creò un programma per sapere quali siti contenevano un link ad
una certa pagina (BackRub). Pensando alla bibliometria (valutazione
di un articolo sulla base delle sue citazioni), Page e Brin idearono un
programma per misurare l’importanza di una pagina web, contando
quante altre pagine rimandano ad essa.
Problema: ordinare le pagine presenti sul web in base alla loro
importanza (page rank)
Per ulteriori info visitare il sito web del Prof. Bini:
www.dm.unipi.it/~bini/Didattica/Slides/google.pdf
26
Page Rank
L’importanza di una pagina è legata alle sue connessioni (e non
al suo contenuto)
L’importanza di una pagina è trasferita alle pagina a cui essa punta
L’importanza di una pagina è data dalla somma delle frazioni di
importanza delle pagine che ad essa puntano
ovvero
Io sono importante se frequento persone importanti
Se io sono importante, allora anche le persone che frequento
27
sono importanti
Page Rank
(continua)
Numeriamo le pagine del web da 1 a n, e definiamo la matrice di
connettività G = (g ij), con
g ij = 1 se c’è un link dalla pagina i alla pagina j
g ij = 0 altrimenti.
Indichiamo con
x j l’importanza della pagina j;
r i il numero di link che partono dalla pagina i (dato dalla somma
dei valori sulla riga i della matrice di connettività;
c i il numero di link che puntano alla pagina i (dato dalla somma
dei valori sulla colonna i della matrice di connettività;
28
Page Rank
(continua)
Per l’importanza della pagina j risulta
xj = g1 j
x
x1
x
+ g 2 j 2 +…+ g n j n
r1
r2
rn
Sistema lineare n x n (sparso): le soluzioni forniscono il livello di
importanza delle singole pagine
L’equazione di Google è:
⎛
x
x
x ⎞ 1
x j = d ⎜ g 1 j 1 + g 2 j 2 + … + g n j n ⎟ + (1 − d )
r1
r2
rn ⎠ n
⎝
con d parametro tra 0 e 1 (di solito d= 0.85)
Il Page Rank viene calcolato una volta al mese (su 10 9 pagine) 29
Page Rank
(continua)
Sia A la matrice i cui elementi sono
a ij =d
g ij
ri
+
1− d
n
A non è sparsa, ma è la modifica di una matrice sparsa; la maggior
parte dei suoi elementi ha un valore piccolissimo tra 0 e 1; la somma
di ciascuna colonna è 1
Dalla teoria è noto che l’autovalore di massimo modulo di una
matrica siffatta è 1, e il corrispondente autovettore soddisfa
x=Ax
(da calcolare in maniera iterativa col metodo delle potenze)
x (k+1) = A x (k)
30
Metodi basati su trasformazioni di
similitudine
Il calcolo si basa su una successione di trasformazioni di
similitudine mediante matrici ortogonali, ovvero si
determina una successione
A= A1 , A2 ,…, Ak t.c. Ak =QkT Ak −1 Qk con QkT Qk = I
Ogni A k è simile ad A (stessi autovalori)
Teorema: A reale simmetrica, esiste Q ortogonale t.c.
D = QT A Q
diagonale
(la trasformazione non avviene in un numero finito di passi)
Teorema: A reale, esiste Q ortogonale t.c. Q T A Q è di
Hessenberg (tridiagonale se A è simmetrica)
31
(la trasformazione avviene in un numero finito di passi)
Fattorizzazione QR di matrice
Teroema.
Sia data una matrice A
A ∈ ℜm xn , ∃ Q ∈ ℜ
A = Q R,
mxm
R ∈ℜm x n
Q ortogonale
R triangolare superiore
Si determina usando i riflettori elementari.
Costa 2/3 n 3 operazioni.
Il comando Matlab è qr(A).
Si potrebbe usare per risolvere sistemi lineari
Ax=b
Rx=QTb
ma è più costosa dell’eliminazione di Gauss
32
Trasformazioni di Householder
Un riflettore elementare è una matrice del tipo
U = I − 2u u T ,
Uè
u
T
=
u
u =1
2
simmetrica U T = U
ortogonale U T U = I
involutoria U 2 = I
Si usano per introdurre zeri in un vettore
Th: x vettore non nullo, U = I −
e1 = (1, 0 ,…, 0 ) T , σ = ± x
2
2
1
π
, π=
u u T , u = x +σ e1,
1
u
2
2
2
è t.c
U x =−σ e331
E’ possibile costruire il riflettore elementare U k tale che
U k x = ( x1 ,…, x k −1 , x k , 0 ,…, 0 )
ovvero U k non altera le prime k-1 componenti di x, ed
introduce zeri dalla k+1.ma componente
Posso costruire una successione di riflettori elementari t.c.
U 1 introduce zeri nella prima colonna, fatta eccezione
per il primo elemento;
U 2 introduce zeri nella seconda colonna, fatta eccezione
per il secondo elemento;
etc. U
n − 1 U n − 2 …U 1 A = R
triangolare superiore
QT
A=Q R
34
Algoritmo QR per il calcolo degli
autovalori
Si costruisce una successione di matrici simili ad A
(utilizzando la fattorizzazione QR ad ogni iterazione),
che convergono alla forma triangolare alta (con
autovalori sulla diagonale), oppure ad una forma quasitriangolare (nel caso di autovalori complessi)
A1= A
for i=1,2,….
[Q i , R i]=qr(A i )
A i+1 = R i Q i
end i
A i e A i+1 sono simili.
Infatti
A i = Q i R i quindi Q iT A i = R i
A i+1 = R i Q i = Q iT A i Q i
35
usando ad esempio il comando in linea di matlab
Se la matrice A ha autovalori reali, per la convergenza
alla forma triangolare si richiede che:
| λ1 |>| λ2 |> ... >| λn |
Inoltre gli elementi sotto la diagonale principale
convergono a zero con velocità:
⎛ λ i⎞
| A i (k, k − 1) |= O ⎜ k ⎟
⎜ λk −1 ⎟
⎝
⎠
Dove i è l’i-esima iterazione del metodo.
36
Algoritmo QR con
traslazione (shift)
E’ una accelerazione del metodo base nel caso A
abbia autovalori vicini in modulo.
Dato µ ∈ ℜ :
A1= A
for i=1,2,….
[Qi , R i ] = qr(A i − µ I)
Ai +1 = Ri Qi + µI
end
La matrice Ai +1è simile a A i .
La velocità di convergenza è:
| A i (k, k − 1) |= O
( (λ − µ ) / (λ
k −1
k
− µ)
i
)
37
Algoritmo QR con
traslazione (shift)
Aggiornamento dello shift
Lo shift µ può essere fisso oppure aggiornato ad
ogni iterazione. Ad esempio si può scegliere
A1= A
for i=1,2,….
µi = A i (n, n)
[Qi , R i ] = qr(A i − µi I)
A i+1 = R iQi + µi I
end
A i (n, n) è la stima dell’autovalore
λn . Quando sia
noto con l’accuratezza desiderata, il metodo QR
proseguirà sulla sotto-matrice Ai (1 : n − 1,1 : n − 1) e
così via fino a trovare tutti gli autovalori.
38
Algoritmo QR con
traslazione (shift)
Criterio di arresto (per matrici con autovalori reali)
Si controlla il valore dell’elemento sottodiagonale:
| A i (n, n − 1) |≤ toll ⋅ (| A i (n − 1, n − 1) | + | A i (n, n) |)
Se la condizione è soddisfatta, prendiamo A i (n, n) come
approssimazione dell’autovalore λn .
toll è una tolleranza fissata, in genere dell’ordine della
precisione macchina.
39
Utilizzo della fattorizzazione QR
nel problema dei minimi quadrati
( Sistemi sovradeterminati, n << m)
Problema:
Dati
A∈ℜ(m+1)×(n+1) , y∈ℜ(m+1)
determinare c ∈ ℜ
n +1
tale che
2
y − Ac 2 =
minimo
Determiniamo la fattorizzazione QR di A (esiste anche per le matrici
rettangolari):
A=QR con
⎛ R⎞
R = ⎜⎜ ⎟⎟, R ∈ℜ ( n +1) x ( n +1) ⇒ Q T A = R
⎝0⎠
y* = Q T y
40
Le matrici ortogonali non alterano la norma due di un vettore:
Qy 2= y
Partizioniamo y*:
⎛ y1 ⎞
y = ⎜⎜ ⎟⎟,
⎝ y2 ⎠
y1 ∈ ℜ n +1 , y 2 ∈ ℜ m − n
*
y − A c 2 = Q T (y − A c )
= y* − R c
y − Ac
2
2
=
y1 − R c
y2 − 0 c
=
2
2
2
= QT y − QT A c
2
=
y1 − R c
y2
risulta minimo quando
2
R c = y1
Il problema dei minimi quadrati si riconduce quindi alla risoluzione
41
di un sistema triangolare superiore