1

I want to solve multiple measurement vector (MMV) sparse representation problem with CVX toolbox. I have a N*L matrix X. matrix X have only a few nonzero rows. I have system of equations Y=A*X. Y is M*L matrix of measurements (M

min Relax(X) subject to Y=A*X

Realx(.) is a function that applies norm 1 to the vector t. (N*1)vector t consists of the norm 2 of each rows of matrix X. i.e. Relax(X)= norm_1(t) and t(i)=norm_2(X(i,:))

I can’t transform my objective function into a language that CVX can understand and solve. Please tell me how I should change the problem objective and constraints that CVX could solve it.

Moosa
  • 11
  • 1

1 Answers1

0

'norms' is the cvx command you're looking for. Suppose sigma is some known parameter that allows Y to be only approximately equal to A*X (e.g. I tried it with sigma=10e-6). Then you could use this code:

cvx_begin separable

    variable X(n,n)
    minimize( norms(X,2,1) )
    subject to
       norm(Y - A*X,2)<= 10*sigma

cvx_end
  • thank you Laura, but it seems the command "norms" only works for square matrices. my unknown matrix is M*L – Moosa Aug 24 '14 at 10:23