Optimization with respect to matrix

Hi,
I have the following problem to solve: argmin_X || Xu - b ||^2 where u and b are given (vectors), and || . || is l-2 norm. So it looks like ordinary least squares but with optimization that goes over matrix X. Is it possible to do this in Matlab?

3 Comments

What does armin_X represent? something-something-minimum with respect to X ? Or is X || Xu-b ||^2 indicating X * || X*u - b || ^2 and the armin_ representing something?
It should be argmin, not armin.
argmin_X represents minimization with respect to X.
So argmin_X f(X) means minimization of the objective f with respect to X.
what is the dimension of u and b? But generally I think you will get infinite many solutions giving you || X*u - b || ^2 =0.
For example, say u and b are both 2D vectors. X is therefore 2 by 2 matrix, having 4 degree of freedom to let you assign values. You can arbitrarily choose x_11 and x_12 such that u_1*x_11+u_2*x_12=b_1 and u_1*x_21+u_2*x_22=b_2. Therefore, the 2-norm is zero.

Sign in to comment.

Answers (1)

The l^2-norm does not care about the shape of your data so you can just reshape your matrix into a vector.
u = u(:);
b = b(:);

3 Comments

And the how to reshape my vectors, u and b?
see my edit.
Well, I think it doesn't make sense.
u and b are vectors. X is a matrix.
If X := X(:) and do nothing with u and b (u(:) do nothing with vectors), then I have problems with dimensions (u and b has different dimensionality).

Sign in to comment.

Asked:

on 30 Aug 2011

Community Treasure Hunt

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

Start Hunting!