- Quadratically constrained quadratic program
In mathematics, a quadratically constrained quadratic program (QCQP) is an optimization problem in which both the objective function and the constraints are quadratic functions. It has the form
:
where "P"0, … "P""n" are "n"-by-"n" matrices and "x" ∈ R"n" is the optimization variable.
If "P"1, … "P""n" are all zero, then the constraints are in fact linear and the problem is a
quadratic program .Hardness
Solving the general case is an
NP-hard problem. To see this, note that the two constraints "x"1("x"1 − 1) ≤ 0 and "x"1("x"1 − 1) ≥ 0 are equivalent to the constraint "x"1("x"1 − 1) = 0, which is in turn equivalent to the constraint "x"1 ∈ {0, 1}. Hence, any0–1 integer program (in which all variables have to be either 0 or 1) can be formulated as a quadratically constrained quadratic program. But 0–1 integer programming is NP-hard, so QCQP is also NP-hard.Example
Max Cut is a problem in graph theory, which is NP-hard. Given a graph, the problem is to divide the vertices in two sets, so that as many edges as possible go from one set to the other. Max Cut can be easily formulated as a QCQP, which allows obtaining good lower bounds using SDP realization of the dual.
Special cases
There are two main relaxations of QCQP: using
semidefinite programming (SDP), and using the reformulation- linearization technique (RLT).Semidefinite programming
When "P"0, … "P""n" are all positive-definite matrices, the problem is
convex and can be readily solved usinginterior point method s, as done withsemidefinite programming .References
* Stephen Boyd and Lieven Vandenberghe, [http://www.stanford.edu/~boyd/cvxbook/ Convex Optimization] (book in pdf)
Wikimedia Foundation. 2010.