Sunteți pe pagina 1din 4

1

DETERMINAREA PSEUDOINVERSEI UNEI MATRICE GENERALE




O generalizare a inversei unei matrice o reprezint pseudoinversa Moore-Penrose.

Teorema lui Penrose:
Fie matricea AM
mn
(R). Atunci exist i este unic matricea BM
nm
(R) astfel nct
1. ABA = A
2. BAB = B
3. (AB)
T
= AB
4. (BA)
T
= BA
B se noteaz cu A
+
i se numete pseudoinversa (Penrose) corespunztoare matricei A.
Aadar, A
+
verific urmtoarele relaii
AA
+
A = A
A
+
AA
+
= A
+

(AA
+
)
T
= AA
+

(A
+
A)
T
= A
+
A
Alte proprieti ale pseudoinversei:
1. Dac A este inversabil, atunci A
+
= A
-1
.
2. Dac AA
T
= I
m
, atunci A
+
= A
T
.
3. Dac A
T
A = I
n
, atunci A
+
= A
T
.
4. Dac AA
T
este inversabil, atunci A
+
=A
T
(AA
T
)
-1
.
5. Dac A
T
A este inversabil, atunci A
+
= (A
T
A)
-1
A
T
.
6. 0
T
= 0.
7. (A
+
)
+
= A.
8. Pentru orice 0, R
+
avem ( A
+
) =

1
A
+
.
9. A
+
= (A
T
A)
+
A
+
= A
T
(AA
T
)
+
.
10. rang A = rang A
+
.
11. Pentru orice a R
n
avem a
+
=

'


0 , 0
0 ,
1
2
a
a a
a
T
.

Algoritmul lui Greville pentru determinarea matricei A
+
(SIAM, Nr.2, 15, 1960)

Fie a
1
, , a
n
coloanele matricei AM
mn
(R) date.
Notm cu A
k
= (a
1
a
2
a
k
) matricea format din primele k coloane ale matricei A.

nti se calculeaz:

+
) (
1
A =

'


0 , 0
0 , ) (
1
1
1 1
2
1
a
a a
a
T
M
m1
(R)
Apoi, pentru k = 2, 3, , n se calculeaz
p
k
=

'


+



+

+

+

+

+

0 ) ) ( ( ,
) ( 1
) ( ) ) ((
0 ) ) ( ( ,
) ) ( (
) ) ( (
1 1
2
1
1 1
1 1
2
1 1
1 1
k k k m
k k
k k
T
k
k k k m
k k k m
k k k m
a A A I
a A
a A A
a A A I
a A A I
a A A I
M
m1
(R)
2
i

+
) (
k
A =

,
_

T
k
T
k k m k
p
p a I A
) (
) ) ( ( ) (
1
M
km
(R).
La final,
+
) (
n
A = A
+
.


Exemplul 1: S se determine pseudoinversa matricei A =

,
_

2 0 1
0 2 1
.
Avem a
1
=

,
_

1
1
, a
2
=

,
_


0
2
, a
3
=

,
_

2
0
, A
1
=

,
_

1
1
, A
2
=

,
_

0 1
2 1
, A
3
=

,
_

2 0 1
0 2 1
.
Cum
1
a = 2 ) 1 ( 1
2 2
+ 0 avem

+
) (
1
A =
T
a
a
) (
1
1
2
1
= (1/2 -1/2).
Pentru k = 2:
(I
2
A
1
(A
1
)
+
) a
2
= ( )

,
_


1
]
1

,
_

,
_

0
2
2 / 1 2 / 1
1
1
1 0
0 1
=

,
_

1
1

i cum
|| (I
3
A
1
(A
1
)
+
) a
2
|| = 2 0
rezult c
p
2
=
( )
2
2
1 1
= (-1/2 -1/2)
i folosind
(A
1
)
+
(I
2
a
2
(p
2
)
T
) = (1/2 1/2) ( )
1
]
1

,
_

,
_

2 / 1 2 / 1
0
2
1 0
0 1
= (0 -1)
se obine
(A
2
)
+
=

,
_

2 / 1 2 / 1
1 0
.
Pentru k = 3:
(I
2
A
2
(A
2
)
+
) a
3
=

,
_

1
]
1

,
_

,
_

,
_

2
0
2 / 1 2 / 1
1 0
0 1
2 1
1 0
0 1
=

,
_

0
0

i cum
|| (I
2
A
2
(A
2
)
+
) a
3
|| = 0
rezult c
p
3
=
2
3 2
3 2 2
) ( 1
) ( ) ) ((
a A
a A A
T
+
+ +
+
=
2
2
0
2 / 1 2 / 1
1 0
1
2
0
2 / 1 2 / 1
1 0
2 / 1 1
2 / 1 0

,
_

,
_

,
_

,
_

,
_

=
2
1
2
1
1
2
2 / 1 1
2 / 1 0

,
_

,
_

,
_


=
2
5 1
2 / 5
2 / 1
+

,
_

,
_

12 / 5
12 / 1

i folosind
3
(A
2
)
+
(I
2
a
3
(p
3
)
T
) = ( )
1
]
1

,
_

,
_

,
_

12 / 5 12 / 1
2
0
1 0
0 1
2 / 1 2 / 1
1 0
=
=
1
]
1

,
_

,
_

,
_

6 / 5 6 / 1
0 0
1 0
0 1
2 / 1 2 / 1
1 0
=

,
_

,
_

6 / 1 6 / 1
0 1
2 / 1 2 / 1
1 0
=

,
_

12
1
12
5
6
1
6
1

se obine
(A
3
)
+
=

,
_

12 / 5 12 / 1
12 / 1 12 / 5
6 / 1 6 / 1
= A
+
.
(Suplimentar, se poate verifica c: A
+
A = A, A
+
AA
+
= A
+
, (AA
+
)
T
= AA
+
, (A
+
A)
T
= A
+
A)

Observaie:
n Matlab se poate determina pseudoinversa unei matrice folosind funcia pinv:

>> format rat
>> a = [1 -2 0; -1 0 2];
>> pinv(a)
ans =
1/6 -1/6
-5/12 -1/12
1/12 5/12


Exemplul 2: S se determine pseudoinversa matricei A =

,
_

0 0 1
1 1 1
0 1 1
.
Cum a
1
=

,
_

1
1
1
i
1
a = 3 1 1 1
2 2 2
+ + 0 avem

+
) (
1
A =
T
a
a
) (
1
1
2
1
= (1/3 1/3 1/3).

Pentru k = 2:
(I
3
A
1
(A
1
)
+
) a
2
=

,
_

1
1
]
1

,
_

,
_

,
_

0
1
1
3
1
3
1
3
1
1
1
1
1 0 0
0 1 0
0 0 1
=

,
_

3 / 2
3 / 1
3 / 1

i cum
|| (I
3
A
1
(A
1
)
+
) a
2
|| =
3
2
0
rezult c
p
2
=
( )
2
3 / 2
3 / 2 3 / 1 3 / 1
= (1/2 1/2 -1)
i folosind
(A
1
)
+
(I
3
a
2
(p
2
)
T
) = (1/3 1/3 1/3) ( )
1
1
]
1

,
_

,
_

1 2 / 1 2 / 1
0
1
1
1 0 0
0 1 0
0 0 1
= (0 0 1)
se obine
4
(A
2
)
+
=

,
_

1 2 / 1 2 / 1
1 0 0
.
Pentru k = 3:
(I
3
A
2
(A
2
)
+
) a
3
=

,
_

1
1
]
1

,
_

,
_

,
_

0
1
0
1 2 / 1 2 / 1
1 0 0
0 1
1 1
1 1
1 0 0
0 1 0
0 0 1
=

,
_


0
1
1
2
1

i cum
|| (I
3
A
2
(A
2
)
+
) a
3
|| =
2
1
0
rezult c
p
3
=
( )
2
2 / 1
0 2 / 1 2 / 1
= (-1 1 0)
i folosind
(A
2
)
+
(I
3
a
3
(p
3
)
T
) =

,
_

1 0 1
1 0 0

se obine
(A
3
)
+
=

,
_

0 1 1
1 0 1
1 0 0
= A
+
.
Cum matricea dat A este nesingular avem c A
+
= A
-1
.



Tem: Determinai pseudoinversa (inversa generalizat) matricei A =

,
_

1 1 0
3 2 1
,
respectiv A =

,
_

1 1
1 0
0 1
.
Soluie: A
+
=

,
_

3 / 1 3 / 1
3 / 4 3 / 1
3 / 5 3 / 2
, respectiv A
+
=

,
_

3 / 1 3 / 2 3 / 1
3 / 1 3 / 1 3 / 2
.