Converting a quadratic matrix inequality to a linear matrix inequality

495 views
Skip to first unread message

Universo

unread,
Apr 25, 2017, 9:16:34 AM4/25/17
to YALMIP
I would like to solve the following problem by converting it to an SDP.

Inline image 1

What I can do it to first cast it as a quadratic program and cast the QP as an SDP. But I don't see how I can do it directly. I thought this optimization problem is equivalent to

Inline image 2


I am not sure about this equivalency but if it is true I still need to convert the quadratic matrix inequality above to an LMI. I would appreciate any help/tips on this.

Johan Löfberg

unread,
Apr 25, 2017, 9:22:23 AM4/25/17
to YALMIP
No images visible

Universo

unread,
Apr 25, 2017, 9:46:00 AM4/25/17
to YALMIP
The original problem I would like to solve is in prob1.png. The problem that I think is equivalent to the first one is in prob2.png.
prob1.png
prob2.png

Universo

unread,
Apr 25, 2017, 9:47:51 AM4/25/17
to YALMIP
Thanks for pointing it out. I posted a reply to my original post by attaching the images. They are visible now I hope.

Johan Löfberg

unread,
Apr 25, 2017, 9:47:59 AM4/25/17
to YALMIP
They are equivalent, and the second model is converted to an LMI by applying a Schur complement (assuming P and R are positive semidefinite)

Johan Löfberg

unread,
Apr 25, 2017, 9:50:55 AM4/25/17
to YALMIP
having said that, writing this as a semidefinite program is a waste of resources. Since the objective is a quadratic function, and you have no constraints, the problem can be solved analytically. It's just a matter of matrix algebra and book-keeping. If you plug in the model in YALMIP, YALMIP will solve it as an unconstrained QP. 

Universo

unread,
Apr 25, 2017, 9:58:06 AM4/25/17
to YALMIP
There are also linear constraints but even then you are absolutely right. I already use a QP solver for this application but I need to demonstrate that they can be solved using an SDP solver as well. Next I will also cast it as an SOCP and use an SOCP solver on it.

Universo

unread,
Apr 25, 2017, 9:58:46 AM4/25/17
to YALMIP
Do I need to separate Q into blocks while applying Schur complement?

Johan Löfberg

unread,
Apr 25, 2017, 10:01:00 AM4/25/17
to YALMIP
Well, since it is a QP, it is trivially solvable using SOCP and SDP, since those are levels of generalizations of QP (the SDP formulation would be very ineffcient comparing to solving the original QP)

Johan Löfberg

unread,
Apr 25, 2017, 10:03:05 AM4/25/17
to YALMIP
No (but I don't even understand the premise of the question why Q would have blocks). Simply apply a Schur complement twice, or if you want, write as one quadratic term with the inner matrix [P 0;0 R]

Universo

unread,
Apr 25, 2017, 4:34:15 PM4/25/17
to YALMIP
Are these the LMIs you had in mind?
schur.PNG

Johan Löfberg

unread,
Apr 26, 2017, 1:46:38 AM4/26/17
to YALMIP
If you want to work with a second upper-bounding variable, you don't have to (cannot) have equality, but it is sufficient with Q-KRK^T >= S. You middle line does not make sense (it is a non-convex constraint if R is PSD, so it can never be transfered to an LMI, which shows up in the fact that the resulting LMI is nonsensical as -R^-1 never can be positive PSD.)

However, you can just as well apply schur on A-BC^-1B'-DE^-1D^T>=0 to arrive at [A B' D'; B C 0;D 0 E]>=0

Reply all
Reply to author
Forward
0 new messages