Quadratically constrained quadratic program

From Wikipedia, the free encyclopedia

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

 \begin{align}
& \text{minimize} && \tfrac12 x^\top P_0 x + q_0^\top x \\
& \text{subject to} && x^\top P_i x + q_i^\top x + r_i \leq 0 \quad \text{for } i = 1,\dots,m , \\
&&& Ax = b, 
\end{align}

where P0, … Pn are n-by-n matrices and xRn is the optimization variable.

If P1, … Pn are all zero, then the constraints are in fact linear and the problem is a quadratic program.

Contents

[edit] Hardness

Solving the general case is an NP-hard problem. To see this, note that the two constraints x1(x1 − 1) ≤ 0 and x1(x1 − 1) ≥ 0 are equivalent to the constraint x1(x1 − 1) = 0, which is in turn equivalent to the constraint x1 ∈ {0, 1}. Hence, any 0–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.

[edit] 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.

[edit] Special cases

There are two main relaxations of QCQP: using semidefinite programming (SDP), and using the reformulation- linearization technique (RLT).

[edit] Semidefinite programming

When P0, … Pn are all positive-definite matrices, the problem is convex and can be readily solved using interior point methods, as done with semidefinite programming.

[edit] References


This applied mathematics-related article is a stub. You can help Wikipedia by expanding it.