Y=AS + N
size of S: K × T
size of A: M × K
min norm(p,1)
subject to
[frobenius norm of(Y-AS)]^2≤β^2
p(i)=norm(one row of the S,2)
P=[P(i),....,p(K)];
How can code this problem in CVX(with the help of e.g. SeDuMi) to find S?
Y=AS + N
size of S: K × T
size of A: M × K
min norm(p,1)
subject to
[frobenius norm of(Y-AS)]^2≤β^2
p(i)=norm(one row of the S,2)
P=[P(i),....,p(K)];
How can code this problem in CVX(with the help of e.g. SeDuMi) to find S?
This looks like a good old fashioned sum-of-norms problem. Then only trick here is that you want the norms of the rows of S, and CVX’s norms
function nominally looks at the norms of the columns. An easy way to fix that is to just transpose S.
cvx_begin
variable S(K,T)
minimize(sum(norms(S')))
subject to
norm(Y-A*S,'fro')<=beta
cvx_end
Or alternatively use sum(norms(S,2,2)) ?