How to program the fitness function of PSO on SVD denoising

2 views (last 30 days)
I want to use the PSO algorithm to optimize the SVD noise reduction,utilize the SNR of de-noised signal for the fitness function of PSO.Provided there are a pure signal s(t)=[s1(t),s2(t),...,sN(t)]' and a noise signal x(t)=[x1(t),x2(t),...,xN(t)]'.Constructing a Hankel matrix X of m×n dimension on the noise signal x(t),then applying SVD on the Hankel matrix X=USV',where matrix U is m×m dimension,matrix S is m×n dimension,and matrix V is n×n dimension.According to the maximum of singular value difference to determine the reconstruction order rank k of singular values.Pice up the first k column of matrix U and V,the first k row and first k column of matrix S,then obtain the sub-matrix u of m×k dimension,s of k×k dimension and v of n×k dimension.Supposed there is a diagonal matrix A of k×k dimension.The estimated matrix of pure signal is E_X=uAsv',so the estimated pure signal is ss=[E_X(1,:) E_X(2:end,end)'],and the SNR=10*log10(s(t)^2)/((s(t)-ss(t))^2). Above all,I want to know how to program the fitness function of PSO?Thank you!

Answers (1)

GEETHANJALI K
GEETHANJALI K on 13 Mar 2018
how to apply svd in pso

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!