1

I want to solve a least-squares problem of the form

$$\begin{array}{ll} \underset{x}{\text{minimize}} & \|Ax-b\|_2^2\\ \text{subject to} & \mathcal{L}(x)\succeq0\end{array}$$

with $\mathcal{L} : \mathbb{R}^n \to \mathbb{R}^{m \times m}$ being a linear operator.

This paper claims that they used Mosek to solve a problem of this form. To my best knowledge, the Mosek documentation on semidefinite programming does only include examples with linear objectives. How do I need to formulate the problem described above to solve it with Mosek?

1 Answers1

3

You first write the problem as minimization of a new variable $t$ with the constraints $ \|Ax-b\|_2^2\leq t$ (and all your other constraints). The quadratic constraints can then be written using a second-order cone constraint as $\left|\left|\begin{matrix}1-t\\2(Ax-b)\end{matrix}\right|\right|\leq 1+t$. At that point, you have a mixed second-order and semidefinite cone program.

Having said that, in practice you would most often use a modelling language which would do this manipulations for you and then call Mosek.

You absolutely do not write the quadratic constraints as an LMI through a Schur complement as illustrated in the link in the comments. That's like trying to multiply two numbers by using logarithmic rules. Sure it's one way to do it if you have a calculator without any support for multiplication, but if your calculator has multiplication, use that button.

Johan Löfberg
  • 9,737
  • 1
  • 16
  • 15
  • Affine conic constraints in MOSEK are only supported for the Matlab interface though afaik. I unfortunately cannot use the Matlab interface. Would it be just incovenient for me to formulate the problem using a Schur complement, or does it also affect the performance of MOSEK? – Felix Crazzolara Nov 17 '19 at 11:47
  • What do you mean? All these types of constraints are supported in any Mosek API you would use. You would never ever formulate quadratic constraints as LMIs with Mosek (or SeDuMi, SDPT3 or any other other mixed socp-sdp solver for that matter) – Johan Löfberg Nov 17 '19 at 15:05