How to use CVXOPT to solve an semidefinite programming problem

630 Views Asked by At

I'm using Sage to solve a problem and would like to use cvxopt to solve a sdp problem. Specifically, I have a list of expressions of the form $$c + \sum_{i,j} a_{i,j} q_{i,j}$$ where each $c$ and all $a_{i,j}$ are constants, and $q_{i,j}$ is in some undefined matrix $Q$ at position $i,j$. That is, the $q_{i,j}$s are my variables. I want to minimize the maximum value of all of these expressions subject to the constraint that Q is positive semidefinite. If it matters, I don't expect Q to be very large or to have very many of these expressions.

I'm having trouble figuring out the documentation from the cvxopt user's manual. I think the cvxopt method "sdp" is the way to go, but I'm also open to other ways to solve this problem. I'd appreciate any help on using "sdp" here or how else to go about this problem.

${\bf Edit:}$ It seems that in Sage, cvxopt is used as the backend of the class "SemiDefiniteProgram" and its methods. So I can avoid uisng cvxopt directly and just use this class, but the conversion from my problem to the inputs require still isn't clear to me.