hmatrix-quadprogpp-0.3.0.0: Bindings to the QuadProg++ quadratic programming library

Safe HaskellNone
LanguageHaskell98

Numeric.Minimization.QuadProgPP

Synopsis

Documentation

solveQuadProg Source

Arguments

:: (Matrix Double, VS.Vector Double)

The function to minimize. It should be of the form (A, B), which represents a quadratic function x -> (1/2)x'Ax + B'x where t' denotes the transpose of t. A must be positive definite.

-> Maybe (Matrix Double, VS.Vector Double)

Optional equality constraints. When given, this argument should be of the form Just (C, D), which represents a linear equality x -> Cx + D = 0.

-> Maybe (Matrix Double, VS.Vector Double)

Optional inequality constraints. When given, this argument should be of the form Just (E, F), which represents linear inequalities x -> Ex + F >= 0.

-> Either QuadProgPPError (VS.Vector Double, Double) 

Solve a strictly convex quadratic program with optional linear constraints. It returns a pair of the optimal solution and the value of the objective function at that point. On error it returns Left.

data QuadProgPPError Source

Errors that can happen in solveQuadProg.

Constructors

QuadProgInfeasible

The problem has no feasible solution.

QuadProgSizeMismatch

The given matrices and vectors have inconsistent dimensionalities.

QuadProgOtherError String

Other errors. Currently this is used for C++ exceptions thrown by QuadProg++.