Basis Pursuit Denoising with additional constraint function

4 次查看(过去 30 天)
I want to solve optimization problem of the type basis pursuit denoising (BPDN). What I want to minimize is the l_1 norm of vector x (length N), |x|_1, subject to |Ax - B|_2 <= sigma, where A is an MxN matrix, B is length M vector, and sigma is a positive scalar. In addition to that constraint, there is also another one, namely I want also, let's say, x(1:P) = 0 where P < N obviouisly.
That's what I want to do and now I have already found a MATLAB code designed specially to solve BPDN problem but it's the standard one I think, it can only assume the first constraint involving inequality with sigma. What I want to do now is that I want to add the second constraint while using the code I'm having without modifying it, that is I would like to add my own constraint directly in my MATLAB script in which the BPDN problem will be executed.
Could somebody give an idea?
EDIT: My idea is to set the first up to the P-th column of matrix A to have zero entries because this way the product Ax is the same as the original problem. In coming up with this idea I also assume that the BPDN code I found will automatically set the elements x(1:P) to zero because it will have the full freedom in deciding the values of these elements due to the multiplication with zero-entries columns and it must also minimize the |x|_1. Will this way equivalent with the original problem?

回答(1 个)

Matt J
Matt J 2015-5-4
编辑:Matt J 2015-5-5
Your "constraints" aren't really constraints. What you're saying in fact is that you already know the values of x(1:P) already. Since they are not unknowns, you shouldn't treat them as such and should just remove them from the problem.
Just delete the first P columns of A and replace B with the apriori known quantity,
B-A(:,1:P)*x(1:P)
Then everything will reduce to a standard BP problem in the remaining N-P variables.
  4 个评论
Imam
Imam 2015-5-4
编辑:Imam 2015-5-4
Well ok the first one does make sense, but as for the second, since the program will always try to minimize the objective function whose value is always positive, the natural choice for x(1:P) should be all-zero, shouldn't it?
Matt J
Matt J 2015-5-4
编辑:Matt J 2015-5-5
I don't know about BP algorithms specifically, but many optimization algorithms converge better in general when the solution is unique and well-posed.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Denoising and Compression 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by