Pseudoinversa di una Matrice, definizione, spiegazione ed esempi: (ChatGPT 4o)
Definizione:
La pseudoinversa di una matrice (o pseudoinversa di Moore-Penrose) è una generalizzazione dell’inversa di una matrice quadrata a matrici che non sono necessariamente quadrate o invertibili. È una matrice denotata A+ che fornisce una soluzione approssimata ai sistemi di equazioni lineari, specialmente quando non esiste una soluzione unica.
Spiegazione:
Per una matrice quadrata A, l’inversa A−1 è una matrice che soddisfa:AA−1=A−1A=Idove I è la matrice identità. Tuttavia, non tutte le matrici sono quadrate o invertibili, ma possiamo comunque definire una pseudoinversaA+ che approssima l’inversa e soddisfa condizioni simili. La pseudoinversa è utilizzata quando:
La matrice non è quadrata (ad esempio una matrice m×n con m=n).
La matrice è singolare (ha determinante pari a zero) e quindi non invertibile nel senso tradizionale.
La pseudoinversa di una matrice A soddisfa le seguenti proprietà:
AA+A=A
A+AA+=A+
(AA+)T=AA+
(A+A)T=A+A
Costruzione della pseudoinversa: La pseudoinversa può essere calcolata utilizzando la decomposizione ai valori singolari (SVD):
Dato A, troviamo la sua decomposizione A=UΣVT, dove:
U e V sono matrici ortogonali.
Σ è una matrice diagonale contenente i valori singolari di A.
La pseudoinversa A+ si calcola come:A+=VΣ+UTDove Σ+ è ottenuta invertendo i valori singolari non nulli di Σ (per i valori nulli, si lascia zero).
Esempi:
Matrice quadrata non invertibile:
Consideriamo la matrice:A=(1224)Questa matrice è singolare perché le righe non sono linearmente indipendenti (la seconda riga è il doppio della prima). Non esiste un’inversa nel senso tradizionale, ma possiamo calcolare la sua pseudoinversa A+. Utilizzando la decomposizione ai valori singolari, otteniamo una soluzione approssimata per il sistema lineare associato.
Matrice rettangolare:
Supponiamo di avere una matrice A rettangolare di dimensioni 3×2:A=135246Poiché A non è quadrata, non possiamo calcolare la sua inversa nel senso tradizionale. Tuttavia, possiamo calcolare la pseudoinversa A+, che avrà dimensioni 2×3 e potrà essere utilizzata per risolvere il sistema di equazioni Ax=b nel modo dei minimi quadrati, minimizzando l’errore della soluzione.
Applicazioni della pseudoinversa:
Risoluzione di sistemi lineari:
La pseudoinversa è utilizzata per risolvere sistemi lineari che non hanno una soluzione unica o che non possono essere risolti con i metodi tradizionali. In particolare, per un sistema sovradeterminato (cioè con più equazioni che incognite), la pseudoinversa fornisce la soluzione dei minimi quadrati, che minimizza l’errore tra la soluzione stimata e i dati osservati.
Se abbiamo un sistema Ax=b, dove A è una matrice rettangolare, la pseudoinversa A+ fornisce la soluzione:x=A+bQuesta soluzione minimizza la norma ∣∣Ax−b∣∣, riducendo l’errore tra i dati b e la soluzione approssimata.
Robotica e cinematica inversa:
Nella robotica, la pseudoinversa della matrice Jacobiana è spesso utilizzata per calcolare la cinematica inversa. La matrice Jacobiana J mappa le velocità dei giunti del robot alle velocità dell’end-effector. Se il robot ha ridondanza (più gradi di libertà rispetto ai movimenti richiesti), la Jacobiana potrebbe non essere invertibile. La pseudoinversa consente di trovare una soluzione approssimata che minimizza l’errore e fornisce una soluzione ai movimenti dei giunti.
Esempio: Se J è la Jacobiana e v è la velocità desiderata per l’end-effector, possiamo calcolare la velocità dei giunti come q˙=J+v, dove J+ è la pseudoinversa della Jacobiana.
Apprendimento automatico:
La pseudoinversa viene anche utilizzata in alcune tecniche di regressione lineare per trovare i coefficienti che minimizzano l’errore tra le previsioni del modello e i dati osservati.
Esempio numerico:
Consideriamo una matrice semplice:A=135246Per trovare la pseudoinversa A+, possiamo usare la decomposizione ai valori singolari (SVD). Il risultato è:A+=(−16.666713.3333−1.66671.666713.3333−10.0000)Questa pseudoinversa minimizza l’errore nel risolvere sistemi lineari sovradeterminati associati alla matrice A.
Conclusione: La pseudoinversa è uno strumento potente per gestire matrici che non sono invertibili o quadrate. Essa fornisce una soluzione approssimata in molti contesti, inclusa la risoluzione di sistemi di equazioni lineari, la robotica e la minimizzazione dell’errore nei modelli di regressione.