Quadratically constrained quadratic program

In mathematical optimization, 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 P0, , Pm are n-by-n matrices and x Rn is the optimization variable.

If P0, , Pm are all positive semidefinite, then the problem is convex. If these matrices are neither positive nor negative semidefinite, the problem is non-convex. If P1, ,Pm 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 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. Since 0–1 integer programming is NP-hard in general, QCQP is also NP-hard.

Relaxation

There are two main relaxations of QCQP: using semidefinite programming (SDP), and using the reformulation-linearization technique (RLT). For some classes of QCQP problems (precisely, QCQPs with zero diagonal elements in the data matrices), second-order cone programming (SOCP) and linear programming (LP) relaxations providing the same objective value as the SDP relaxation are available.[1]

Nonconvex QCQPs with non-positive off-diagonal elements can be exactly solved by the SDP or SOCP relaxations,[2] and there are polynomial-time-checkable sufficient conditions for SDP relaxations of general QCQPs to be exact.[3] Moreover, it was shown that a class of random general QCQPs has exact semidefinite relaxations with high probability as long as the number of constraints grows no faster than a fixed polynomial in the number of variables.[3]

Semidefinite programming

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

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 formulated as a QCQP, and SDP relaxation of the dual provides good lower bounds.

Solvers and scripting (programming) languages

Name Brief info
Artelys KnitroKnitro is a solver specialized in nonlinear optimization, but also solves linear programming problems, quadratic programming problems, second-order cone programming, systems of nonlinear equations, and problems with equilibrium constraints.
FICO XpressA commercial optimization solver for linear programming, non-linear programming, mixed integer linear programming, convex quadratic programming, convex quadratically constrained quadratic programming, second-order cone programming and their mixed integer counterparts.
AMPL
CPLEXPopular solver with an API for several programming languages. Free for academics.
GurobiSolver with parallel algorithms for large-scale linear programs, quadratic programs and mixed-integer programs. Free for academic use.
MOSEKA solver for large scale optimization with API for several languages (C++,java,.net, Matlab and python)
TOMLABSupports global optimization, integer programming, all types of least squares, linear, quadratic and unconstrained programming for MATLAB. TOMLAB supports solvers like Gurobi, CPLEX, SNOPT and KNITRO.
gollark: Bees wouldn't do this, though. Bees are incorruptible. Bees don't care if a lobbyist gives them money.
gollark: I vote that all politics be replaced with bees.
gollark: Also, it could still be hackerized a bit.
gollark: Well, I could do that, but I would have to mirror literally every user interaction (or at least quite a lot of them) to simulated pages on the server.
gollark: It's unpossible.

References

  1. Kimizuka, Masaki; Kim, Sunyoung; Yamashita, Makoto (2019). "Solving pooling problems with time discretization by LP and SOCP relaxations and rescheduling methods". Journal of Global Optimization. 75 (3): 631–654. doi:10.1007/s10898-019-00795-w. ISSN 0925-5001.
  2. Kim, Sunyoung; Kojima, Masakazu (2003). "Exact Solutions of Some Nonconvex Quadratic Optimization Problems via SDP and SOCP Relaxations". Computational Optimization and Applications. 26 (2): 143–154. doi:10.1023/A:1025794313696.
  3. Burer, Samuel; Ye, Yinyu (2019-02-04). "Exact semidefinite formulations for a class of (random and non-random) nonconvex quadratic programs". Mathematical Programming. 181: 1–17. arXiv:1802.02688. doi:10.1007/s10107-019-01367-2. ISSN 0025-5610.
  • Boyd, Stephen; Lieven Vandenberghe (2004). Convex Optimization. Cambridge: Cambridge University Press. ISBN 978-0-521-83378-3.

Further reading

In statistics

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.