20.07.2013 Views

Metodo dei minimi quadrati e matrice pseudoinversa - Supsi

Metodo dei minimi quadrati e matrice pseudoinversa - Supsi

Metodo dei minimi quadrati e matrice pseudoinversa - Supsi

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Scuola universitaria professionale<br />

della Svizzera italiana<br />

Dipartimento<br />

Tecnologie<br />

Innovative<br />

<strong>Metodo</strong> <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e <strong>matrice</strong> <strong>pseudoinversa</strong><br />

Algebra Lineare<br />

Semestre Estivo 2006


<strong>Metodo</strong> <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e <strong>matrice</strong> <strong>pseudoinversa</strong> SUPSI-DTI<br />

3.1 Il metodo <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong><br />

3.1.1 Problema introduttivo<br />

Una ferrovia percorre una tratta che porta dal paese A al paese D passando per i<br />

paesi C e D.<br />

A <br />

x1 <br />

B <br />

x2 <br />

C <br />

x3 <br />

D<br />

Si vuole misurare con precisione la distanza tra le diverse stazioni. Due impiegati<br />

delle ferrovie eseguono le misurazioni necessarie e raccolgono i seguenti dati:<br />

AB = 35km, AC = 67km, AD = 89km, BD = 53km, CD = 20km.<br />

Otteniamo quindi il sistema<br />

⎧<br />

⎪⎨<br />

⎪⎩<br />

x1<br />

= 35<br />

= 67<br />

x1 + x2<br />

x1 + x2 + x3 = 89<br />

x2 + x3<br />

x3<br />

Risolvendo il sistema con Gauss troviamo:<br />

1 0 0 35<br />

1 1 0 67<br />

1 1 1 89<br />

0 1 1 53<br />

0 0 1 20<br />

→<br />

= 53<br />

= 20<br />

1 0 0 35<br />

0 1 0 32<br />

0 0 1 22<br />

0 0 0 1<br />

0 0 0 0<br />

Il sistema è impossibile! Evidentemente gli impiegati delle ferrovie hanno compiuto<br />

degli errori di misurazione. Come possiamo ricostruire le distanze x1,x2,x3 a partire<br />

dai dati raccolti nel miglior modo possibile?<br />

3.1.2 Sistemi di equazioni sovra-determinati: un problema frequente in<br />

pratica<br />

Il problema introduttivo è solo un esempio di un problema molto frequente in pratica.<br />

Se si vogliono determinare delle grandezze sconosciute tramite misurazioni è<br />

praticamente impossibile non commettere errori di misurazione. Per aumentare la<br />

sicurezza di solito si tende a raccogliere un numero di misurazioni delle grandezze<br />

da determinare (o di grandezze ad esse correlate) superiore al numero di incognite.<br />

Così facendo si ottengono <strong>dei</strong> sistemi A·x = b con un numero di equazioni superiore<br />

al numero di incognite (A ∈ R m×n con m > n), questi sistemi vengono detti sovradeterminati.<br />

Solitamente i sistemi sovra-determinati non possiedono una soluzione<br />

esatta.<br />

2 Algebra Lineare Semestre Estivo 2006


SUPSI-DTI <strong>Metodo</strong> <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e <strong>matrice</strong> <strong>pseudoinversa</strong><br />

Come possiamo allora risolvere il nostro problema? Chiaramente non è possibile<br />

ricavare una soluzione esatta x e quindi dobbiamo accontentarci di calcolare un<br />

vettore x ∗ che somigli il più possibile a una soluzione del sistema. In particolare<br />

sappiamo che per qualsiasi x ∗ vale<br />

A · x ∗ = b,<br />

e quindi esiste un vettore r di residui tale che<br />

A · x ∗ = b + r.<br />

Il vettore x∗ migliore sarà quello per cui i residui sono più piccoli secondo un certo<br />

criterio. Il criterio più usato in pratica è quello di cercare il vettore x∗ tale che il<br />

vettore r <strong>dei</strong> residui abbia modulo minimo, ossia quando<br />

<br />

r = r2 1 + ... + r2 m,<br />

è minimo, o in maniera equivalente quando<br />

r 2 1 + ... + r 2 m,<br />

è minimo. Questo criterio viene detto criterio <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e il metodo per<br />

trovare il vettore x ∗ metodo <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong>.<br />

3.1.3 Il metodo <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong><br />

Consideriamo il sistema<br />

A · x ∗ − b = r.<br />

Il sistema può essere scritto in componenti come<br />

⎧<br />

⎪⎨<br />

⎪⎩<br />

e, definendo i vettori aj =<br />

forma vettoriale come<br />

a11x ∗ 1 + a12x ∗ 2 + ... + a1nx ∗ n − b1 = r1<br />

a21x ∗ 1 + a22x ∗ 2 + ... + a2nx ∗ n − b2 = r2<br />

.<br />

am1x ∗ 1 + am2x ∗ 2 + ... + amnx ∗ n − bm = rm<br />

⎛<br />

⎜<br />

⎝<br />

a1j<br />

.<br />

amj<br />

⎞<br />

⎟<br />

⎠ per ogni j = 1,...,n, può essere scritto in<br />

x ∗ 1 · a1 + x ∗ 2 · a2 + ... + x ∗ n · an − b = r. (3.1)<br />

Il vettore di residui r è la differenza tra una combinazione lineare <strong>dei</strong> vettori a1,...,an<br />

e il vettore b. Per far sì che il vettore r abbia modulo minimo è necessario che r<br />

Semestre Estivo 2006 Algebra Lineare 3


<strong>Metodo</strong> <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e <strong>matrice</strong> <strong>pseudoinversa</strong> SUPSI-DTI<br />

sia perpendicolare allo sottospazio di R m generato dai vettori a1,...,an. Quindi il<br />

vettore r deve soddisfare le seguenti condizioni:<br />

a1 · r = 0,<br />

a2 · r = 0,<br />

.<br />

an · r = 0,<br />

dove · indica un prodotto scalare tra vettori. Moltiplicando scalarmente entrambe le<br />

parti del sistema 3.1 per ogni vettore aj otteniamo un nuovo sistema di n equazioni<br />

e n incognite, sappiamo infatti che<br />

x ∗ 1 · aj · a1 + x ∗ 2 · aj · a2 + ... + x ∗ n · aj · an − aj · b = aj · r = 0,<br />

e quindi abbiamo il sistema<br />

⎧<br />

⎪⎨<br />

⎪⎩<br />

x ∗ 1 · a1 · a1 + x ∗ 2 · a1 · a2 + ... + x ∗ n · a1 · an = a1 · b<br />

x ∗ 1 · a2 · a1 + x ∗ 2 · a2 · a2 + ... + x ∗ n · a2 · an = a2 · b<br />

.<br />

x ∗ 1 · an · a1 + x ∗ 2 · an · a2 + ... + x ∗ n · an · an = an · b<br />

(3.2)<br />

Sfruttando il fatto che il prodotto scalare ai ·aj è esprimibile sotto forma di prodotto<br />

matriciale come ai T · aj possiamo scrivere il sistema 3.2 in forma matriciale come<br />

A T · A · x ∗ = A T · b. (3.3)<br />

Il sistema 3.3 è un sistema di n equazioni e n incognite che, nei problemi reali,<br />

solitamente, possiede un’unica soluzione esatta x ∗ che a sua volta è la ”soluzione”<br />

secondo il criterio <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> del sistema A · x = b. Si può dimostrare<br />

che il sistema 3.3 non possiede un’unica soluzione solo se le colonne della <strong>matrice</strong> A<br />

sono linearmente dipendenti, eseguendo molte misurazioni con errori di misurazione<br />

questa eventualità è in realtà praticamente impossibile.<br />

Esempio Possiamo ora calcolare la soluzione del problema introduttivo secondo<br />

il criterio <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong>. Abbiamo<br />

⎛ ⎞<br />

1 0 0<br />

⎜ 1 1 0 ⎟<br />

A = ⎜ 1 1 1 ⎟<br />

⎝ 0 1 1 ⎠<br />

0 0 1<br />

A T ⎛ ⎞<br />

⎛ ⎞<br />

1 0 0<br />

1 1 1 0 0 ⎜ 1 1 0 ⎟<br />

· A = ⎝ 0 1 1 1 0 ⎠ · ⎜ 1 1 1 ⎟<br />

0 0 1 1 1 ⎝ 0 1 1 ⎠<br />

0 0 1<br />

=<br />

⎛ ⎞<br />

3 2 1<br />

⎝ 2 3 2 ⎠ ,<br />

1 2 3<br />

4 Algebra Lineare Semestre Estivo 2006


SUPSI-DTI <strong>Metodo</strong> <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e <strong>matrice</strong> <strong>pseudoinversa</strong><br />

⎛<br />

A T · b = ⎝<br />

1 1 1 0 0<br />

0 1 1 1 0<br />

0 0 1 1 1<br />

otteniamo quindi il sistema<br />

⎛ ⎞ ⎛<br />

3 2 1<br />

⎝ 2 3 2 ⎠ · ⎝<br />

1 2 3<br />

⎛<br />

⎞<br />

⎜<br />

⎠ · ⎜<br />

⎝<br />

x ∗ 1<br />

x ∗ 2<br />

x ∗ 3<br />

⎞<br />

35<br />

67<br />

89<br />

53<br />

20<br />

⎛<br />

⎠ = ⎝<br />

e la soluzione x ∗ 1 = 35.125, x ∗ 2 = 32.5, x ∗ 3 = 20.625.<br />

3.2 La <strong>matrice</strong> <strong>pseudoinversa</strong><br />

⎞<br />

⎟<br />

⎠ =<br />

⎛<br />

⎝<br />

Se tutte le colonne della <strong>matrice</strong> A sono linearmente indipendenti, allora la <strong>matrice</strong><br />

ha rango massimo (rang(A) = n). È possibile dimostrare che in questo caso anche la<br />

<strong>matrice</strong> AT ·A possiede rango massimo. Ma visto che AT ·A è una <strong>matrice</strong> quadrata<br />

di rango massimo sappiamo che possiede una <strong>matrice</strong> inversa (AT · A) −1 . Il sistema<br />

3.3 può quindi essere risolto calcolando direttamente<br />

x ∗ = (A T · A) −1 · A T · b.<br />

191<br />

209<br />

162<br />

⎞<br />

⎠ ,<br />

191<br />

209<br />

162<br />

La <strong>matrice</strong> (A T · A) −1 · A T ∈ R n×m è detta <strong>pseudoinversa</strong> della <strong>matrice</strong> A ∈ R m×n .<br />

Solitamente la <strong>matrice</strong> <strong>pseudoinversa</strong> di A viene indicata con A + .<br />

3.2.1 Proprietà della <strong>matrice</strong> <strong>pseudoinversa</strong><br />

Data una <strong>matrice</strong> A ∈ R m×n di rango massimo e la sua <strong>pseudoinversa</strong> A + valgono<br />

le seguenti proprietà.<br />

• A · A + · A = A,<br />

• A + · A · A + = A + ,<br />

• (α · A) + = α −1 · A + . dove α = 0 è un numero reale.<br />

Se la <strong>matrice</strong> A è già una <strong>matrice</strong> quadrata di rango pieno e quindi invertibile<br />

allora la sua <strong>pseudoinversa</strong> è uguale alla sua inversa (A −1 = A + ). Bisogna fare bene<br />

attenzione però di non pensare che la <strong>pseudoinversa</strong> di una <strong>matrice</strong> non quadrata sia<br />

l’equivalente dell’inversa di una <strong>matrice</strong> quadrata. Mentre l’inversa viene utilizzata<br />

per trovare la soluzione esatta di un sistema determinato, la <strong>pseudoinversa</strong> viene<br />

utilizzata per trovare un vettore che soddisfi il criterio <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> in un<br />

sistema sovra-determinato, vettore che non sarà in generale una soluzione esatta del<br />

sistema.<br />

Semestre Estivo 2006 Algebra Lineare 5<br />

⎞<br />

⎠ ,


<strong>Metodo</strong> <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> e <strong>matrice</strong> <strong>pseudoinversa</strong> SUPSI-DTI<br />

3.3 Esercizi<br />

1. Verifica le proprietà della <strong>pseudoinversa</strong> utilizzando la <strong>matrice</strong><br />

⎛<br />

2<br />

⎞<br />

1<br />

A = ⎝ 3 −1 ⎠ .<br />

−1 2<br />

2. Determina una funzione f(x) = a·x+b che passi il più vicino possibile (secondo<br />

il criterio <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong>) ai punti<br />

xi -1 0 1 2<br />

yi 0 1 3 9<br />

3. Determina una funzione g(x) = a ·x 2 +b·x+c che passi il più vicino possibile<br />

(secondo il criterio <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong>) ai punti<br />

xi 0 1 2 3 4 5 6 7<br />

yi 1.86 5.63 12.42 17.58 21.15 28.49 33.48 37.26<br />

4. Cosa otteniamo come soluzione con il metodo <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> se misuriamo<br />

ripetutamente un’unica grandezza?<br />

5. Di un triangolo ABC misuriamo i tre angoli α = 31 o , β = 62 o e γ = 90 o .<br />

Utilizza il metodo <strong>dei</strong> <strong>minimi</strong> <strong>quadrati</strong> per stimare il valore <strong>dei</strong> tre angoli.<br />

6 Algebra Lineare Semestre Estivo 2006

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!