Monday, January 14, 2013

Inversi Matrix Singular-Marquardt

Pada pembahasan sebelumnya saya telah menjelaskan bagaimana penggunaan SVD (Singular Value Decomposition) untuk inversi matrix singular.

Pada bagian ini saya akan menjelaskan bagaimana penggunaan Metoda Marquardt untuk inversi matrix singular.

Sebuah perkalian matrix A*B=X, dengan kondisi matrix A singular dapat dipecahkan dengan:
 

B=inverse(A'*A+lamda*I) *A'*X

Dimana A' adalah transpose dari matrix A, lamda adalah koefisien dan I adalah matrix Identitas.

Kode C untuk Metoda Marquardt dapat dilihat di sini dan berikut adalah kode Matlab:
 

clear; clc
B=[0.2,0.2;0.2,0.2];
A=[2,2;3,3]
X=A*B;
%lamda=0.001 dan D~B.
D=inv(A'*A+0.001*eye(2))*A'*X

No comments: