Sponsored Links

Rabu, 03 Januari 2018

Sponsored Links

Lecture 18: Equality Constrained Quadratic Programming - YouTube
src: i.ytimg.com

Quadratic programming (QP) is the process of solving a special type of mathematical optimization problem--specifically, a (linearly constrained) quadratic optimization problem, that is, the problem of optimizing (minimizing or maximizing) a quadratic function of several variables subject to linear constraints on these variables. Quadratic programming is a particular type of nonlinear programming.


Video Quadratic programming



Problem formulation

The quadratic programming problem with n variables and m constraints can be formulated as follows. Given:

  • a real-valued, n-dimensional vector c,
  • an n × n-dimensional real symmetric matrix Q,
  • an m × n-dimensional real matrix A, and
  • an m-dimensional real vector b,

the objective of quadratic programming is to find an n-dimensional vector x, that will

where xT denotes the vector transpose of x {\displaystyle \mathbf {x} } . The notation Ax <= b means that every entry of the vector Ax is less than or equal to the corresponding entry of the vector b.

A related programming problem, quadratically constrained quadratic programming, can be posed by adding quadratic constraints on the variables.


Maps Quadratic programming



Solution methods

For general problems a variety of methods are commonly used, including

  • interior point,
  • active set,
  • augmented Lagrangian,
  • conjugate gradient,
  • gradient projection,
  • extensions of the simplex algorithm.

In the case in which Q is positive definite, the problem is a special case of the more general field of convex optimization.

Equality constraints

Quadratic programming is particularly simple when Q is positive definite and there are only equality constraints; specifically, the solution process is linear. By using Lagrange multipliers and seeking the extremum of the Lagrangian, it may be readily shown that the solution to the equality constrained problem

Minimize 1 2 x T Q x + c T x {\displaystyle {\text{Minimize}}\quad {\tfrac {1}{2}}\mathbf {x} ^{\mathrm {T} }Q\mathbf {x} +\mathbf {c} ^{\mathrm {T} }\mathbf {x} }
subject to E x = d {\displaystyle {\text{subject to}}\quad E\mathbf {x} =\mathbf {d} }

is given by the linear system

[ Q E T E 0 ] [ x ? ] = [ - c d ] {\displaystyle {\begin{bmatrix}Q&E^{T}\\E&0\end{bmatrix}}{\begin{bmatrix}\mathbf {x} \\\lambda \end{bmatrix}}={\begin{bmatrix}-\mathbf {c} \\\mathbf {d} \end{bmatrix}}}

where ? {\displaystyle \lambda } is a set of Lagrange multipliers which come out of the solution alongside x {\displaystyle \mathbf {x} } .

The easiest means of approaching this system is direct solution (for example, LU factorization), which for small problems is very practical. For large problems, the system poses some unusual difficulties, most notably that problem is never positive definite (even if Q {\displaystyle Q} is), making it potentially very difficult to find a good numeric approach, and there are many approaches to choose from dependent on the problem.

If the constraints don't couple the variables too tightly, a relatively simple attack is to change the variables so that constraints are unconditionally satisfied. For example, suppose d = 0 {\displaystyle \mathbf {d} =0} (generalizing to nonzero is straightforward). Looking at the constraint equations:

E x = 0 {\displaystyle E\mathbf {x} =0}

introduce a new variable y {\displaystyle \mathbf {y} } defined by

Z y = x {\displaystyle Z\mathbf {y} =\mathbf {x} }

where y {\displaystyle \mathbf {y} } has dimension of x {\displaystyle \mathbf {x} } minus the number of constraints. Then

E Z y = 0 {\displaystyle EZ\mathbf {y} =0}

and if Z {\displaystyle Z} is chosen so that E Z = 0 {\displaystyle EZ=0} the constraint equation will be always satisfied. Finding such Z {\displaystyle Z} entails finding the null space of E {\displaystyle E} , which is more or less simple depending on the structure of E {\displaystyle E} . Substituting into the quadratic form gives an unconstrained minimization problem:

1 2 x T Q x + c T x => 1 2 y T Z T Q Z y + ( Z T c ) T y {\displaystyle {\tfrac {1}{2}}\mathbf {x} ^{T}Q\mathbf {x} +\mathbf {c} ^{T}\mathbf {x} \quad \Rightarrow \quad {\tfrac {1}{2}}\mathbf {y} ^{T}Z^{T}QZ\mathbf {y} +(Z^{T}\mathbf {c} )^{T}\mathbf {y} }

the solution of which is given by:

Z T Q Z y = - Z T c {\displaystyle Z^{T}QZ\mathbf {y} =-Z^{T}\mathbf {c} }

Under certain conditions on Q {\displaystyle Q} , the reduced matrix Z T Q Z {\displaystyle Z^{T}QZ} will be positive definite. It is possible to write a variation on the conjugate gradient method which avoids the explicit calculation of Z {\displaystyle Z} .


Quadratic programming - YouTube
src: i.ytimg.com


Lagrangian duality

The Lagrangian dual of a QP is also a QP. To see that let us focus on the case where c = 0 {\displaystyle c=0} and Q is positive definite. We write the Lagrangian function as

L ( x , ? ) = 1 2 x T Q x + ? T ( A x - b ) . {\displaystyle L(x,\lambda )={\tfrac {1}{2}}x^{T}Qx+\lambda ^{T}(Ax-b).}

Defining the (Lagrangian) dual function g ( ? ) {\displaystyle g(\lambda )} , defined as g ( ? ) = inf x L ( x , ? ) {\displaystyle g(\lambda )=\inf _{x}L(x,\lambda )} , we find an infimum of L {\displaystyle L} , using ? x L ( x , ? ) = 0 {\displaystyle \nabla _{x}L(x,\lambda )=0} and positive-definiteness of Q:

x * = - Q - 1 A T ? . {\displaystyle x^{*}=-Q^{-1}A^{T}\lambda .}

Hence the dual function is

g ( ? ) = - 1 2 ? T A Q - 1 A T ? - ? T b , {\displaystyle g(\lambda )=-{\tfrac {1}{2}}\lambda ^{T}AQ^{-1}A^{T}\lambda -\lambda ^{T}b,}

and so the Lagrangian dual of the QP is

 maximize - 1 2 ? T A Q - 1 A T ? - ? T b {\displaystyle {\text{ maximize}}\quad -{\tfrac {1}{2}}\lambda ^{T}AQ^{-1}A^{T}\lambda -\lambda ^{T}b}

Besides the Lagrangian duality theory, there are other duality pairings (e.g. Wolfe, etc.).


Sequential Quadratic Programing - YouTube
src: i.ytimg.com


Complexity

For positive definite Q, the ellipsoid method solves the problem in polynomial time. If, on the other hand, Q is indefinite, then the problem is NP-hard. In fact, even if Q has only one negative eigenvalue, the problem is NP-hard.


SVMs, cont'd Intro to Bayesian learning. Quadratic programming ...
src: images.slideplayer.com


Solvers and scripting (programming) languages


Optimization in MATLAB An Introduction to Quadratic Programming ...
src: i.ytimg.com


See also

  • Support vector machine
  • Sequential quadratic programming
  • Linear programming

Optimization in MATLAB: An Introduction to Quadratic Programming ...
src: www.mathworks.com


References

Notes

Bibliography

  • Cottle, Richard W.; Pang, Jong-Shi; Stone, Richard E. (1992). The linear complementarity problem. Computer Science and Scientific Computing. Boston, MA: Academic Press, Inc. pp. xxiv+762 pp. ISBN 0-12-192350-9. MR 1150683. 
  • Garey, Michael R.; Johnson, David S. (1979). Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman. ISBN 0-7167-1045-5.  A6: MP2, pg.245.
  • Gould, Nicholas I. M.; Toint, Philippe L. (2000). "A Quadratic Programming Bibliography" (PDF). RAL Numerical Analysis Group Internal Report 2000-1. 

Lecture 19: Inequality-constrained Quadratic Programming (IQP ...
src: i.ytimg.com


External links

  • A page about QP
  • NEOS Optimization Guide: Quadratic Programming
  • Solve an example Quadratic Programming (QP) problem

Source of the article : Wikipedia

Comments
0 Comments