1
$\begingroup$

i have the following optimization problem:

$min_X \|aX-b\|$

$s.t. \quad X\geq 0$

where $a$, $b$ are vectors and $X$ is a matrix. Is there any possibility of obtain the closed form of the optimized X? Thanks.

$\endgroup$
1
  • $\begingroup$ Yes in the sense that the problem is trivial ($aX$ is just either an arbitrary vector whose scalar product with $a$ is positive, or $0$) and No in the sense that the minimum is just not attained if $(a,b)\le 0$ and $b$ is not collinear to $a$.. $\endgroup$
    – fedja
    Commented Aug 31, 2016 at 10:44

1 Answer 1

0
$\begingroup$

This is easy to formulate and solve (presuming it's not too large or otherwise unpleasant) in CVX or YALMIP.

CVX:

cvx_begin
variable X(length(a),length(a)) semidefinite
minimize(norm(a*X-b))
cvx_end

YALMIP:

X = sdpvar(length(a),length(a))
optimize(X>=0,norm(a*X-b))

By virtue of referring to least square optimization, presumably your intended norm is the 2-norm. But you can easily change to the p-norm for any p >= 1(convex) in CVX by adding an extra argument to norm; or to the 1 or inf norms in YALMIP by adding this as an extra argument to norm.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged .