Can I add some Inequality constraints into a semidefinite programming problem?

(wangrq) #1
Summary

This text will be hiddenThis text will be hidden

okay,now a specific problem is written as follows:
cvx_ begin sdp
cvx_solver mosek
variable G(12,12) herimitian
maximize((trace(G’*H))
subject to
G>=0
a == trace(G’*H_1)
b == trace(G’*H_2)
diag(G) <= upbnd
cvx_end
where,a,b is scarlar,upbnd is a vector
what I want to konw is whether it is right to add unequality constraints to this problem

(Mark L. Stone) #2

Inequality constraints (whether semidefinte or not) which are compliant with CVX’s rules can be added to your program. Keep in mind that the interpretation (i.e., treatment) of inequalities by CVX depends on whether sdp mode is specified via cvx_begin. http://cvxr.com/cvx/doc/sdp.html

If you have questions about a specific problem or program, please provide the detailed information which will facilitate their being answrered.

(wangrq) #3

Thank you!okay,I have updated the problem,a standard sdp problem does not contain unequality constraints in theory(in this book《Convex Optimization》Chapter 4.6.2 author:Stephen Boyd and Lieven Vandenberghe)

(Mark L. Stone) #4

The program you are now showing has the inequality constraint diag(G) <= upbnd in addition to the semidefinite constraint G >= 0. It is perfectly fine to include that inequality constraint if that is what you want.