NMath Reference Guide

## Active |

Class ActiveSetQPSolver solves convex quadratic programming (QP) problems.

Inheritance Hierarchy

Syntax

The ActiveSetQPSolver type exposes the following members.

Constructors

Name | Description | |
---|---|---|

ActiveSetQPSolver | Constructs an ActiveSetQPSolver object. |

Properties

Name | Description | |
---|---|---|

ActiveSet |
Gets the set of active constraint Indices for the solution.
If algorithm did not converge it returns
these Indices for the final iteration.
(Overrides IActiveSetQPSolverActiveSet) | |

Iterations |
The number of iterations performed before the algorithm terminated.
(Overrides IActiveSetQPSolverIterations) | |

LagrangeMultiplier |
Gets the values of the Lagrange multipliers for the solution
if the algorithm converged. If it did not converge it returns
the values of the Lagrange multiplier for the final iteration.
(Overrides IActiveSetQPSolverLagrangeMultiplier) | |

MaxIterations |
Gets and sets the maximum number of iterations to perform.
(Overrides IActiveSetQPSolverMaxIterations) | |

MaxSeconds |
Gets and sets the maximum number of seconds to spend in the inequality constrained QP solver.
(Overrides IActiveSetQPSolverMaxSeconds) | |

OptimalObjectiveFunctionValue |
If the solver was successful, OptimalObjectiveFunctionValue
returns the minimum value of the objective function.
(Overrides IActiveSetQPSolverOptimalObjectiveFunctionValue) | |

OptimalX |
If the solver was successful, OptimalX returns the point
at which the objective function is minimized.
(Overrides IActiveSetQPSolverOptimalX) | |

SolveException | If an unexpected exception was encountered during the most recent call to the Solve method and the Status property has the value AlgorithmStatus.UnexpectedException, this property will return the Exception object that was caught. Otherwise this property has the value of null. | |

Status |
Gets the status of the solver for the most recent solution attempt.
(Overrides IActiveSetQPSolverStatus) | |

StepSizeEpsilon | Gets and sets the smallest step size considered to be non-zero. This step size should be small when compared with the approximate magintude of the solution. |

Methods

Name | Description | |
---|---|---|

Solve(QuadraticProgrammingProblem) |
Solves the given convex quadratic programming problem.
(Overrides IActiveSetQPSolverSolve(QuadraticProgrammingProblem)) | |

Solve(QuadraticProgrammingProblem, DoubleVector) |
Solves the given convex quadratic programming problem.
(Overrides IActiveSetQPSolverSolve(QuadraticProgrammingProblem, DoubleVector)) |

Remarks

QP problems are of the form:

Minimize 0.5*x'Hx + x'c

Subject to

ai'x = bi, for i in E,

ai'x >= bi, for i in I

where H is a symmetric matrix (sometimes called the Hessian) and E and I are finite sets of Indices, using an active-set method. This method is applicable only to convex problems, in which the matrix H is positive semidefinite.

Algorithm based on: Numerical Optimization, 2nd Edition, Jorge Nocedal, Stephen J. Wright, ISBN 978-0-387-30303-1, Chapter 16, Algorithm 16.3.

Minimize 0.5*x'Hx + x'c

Subject to

ai'x = bi, for i in E,

ai'x >= bi, for i in I

where H is a symmetric matrix (sometimes called the Hessian) and E and I are finite sets of Indices, using an active-set method. This method is applicable only to convex problems, in which the matrix H is positive semidefinite.

Algorithm based on: Numerical Optimization, 2nd Edition, Jorge Nocedal, Stephen J. Wright, ISBN 978-0-387-30303-1, Chapter 16, Algorithm 16.3.

See Also