Solving for scalar in matrix norm minimization

1 view (last 30 days)
Is it possible in MATLAB to minimize argmin_alpha norm( X - alpha * Y , 1) (where X and Y are matrices)?
I want the following constraints:
alpha > 0, X - alpha * Y >= eps
Thanks
  2 Comments
Matt J
Matt J on 4 Sep 2014
The thing you propose to minimize X - alpha * Y _1 is not a scalar. Do you mean you want to minimize some squared norm of this difference? If so, which norm? L2? Frobenius?
matlab user guy
matlab user guy on 4 Sep 2014
Sorry there was a problem with the text. This should be the matrix norm. The double bars were removed.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 4 Sep 2014
Edited: Matt J on 4 Sep 2014
If you have the Optimization Toolbox, you could also use fminimax, although that might be overkill for a simple scalar problem. Recall that the L1-norm of a matrix is its maximum absolute row sum.
  1 Comment
matlab user guy
matlab user guy on 4 Sep 2014
Thank you.
I have that toolbox. fminbnd doesn't seem to be working, but I'll check out fminimax.

Sign in to comment.

More Answers (1)

Matt J
Matt J on 4 Sep 2014
Edited: Matt J on 4 Sep 2014
The system of linear inequalities
X(i) - alpha * Y(i) >= eps
are equivalent to some 1D interval [alpha_lower, alpha_upper]. Once you find this interval, you can apply fminbnd.
The analysis needed to find the interval is simple, but you could let this FEX file do it for you,

Community Treasure Hunt

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

Start Hunting!