QuadraticProgramming Class |
Namespace: Imsl.Math
The QuadraticProgramming type exposes the following members.
Name | Description | |
---|---|---|
QuadraticProgramming |
Solve a quadratic programming problem.
|
Name | Description | |
---|---|---|
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetDualSolution |
Returns the dual (Lagrange multipliers).
| |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetSolution |
Returns the solution.
| |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
NoMoreProgress |
Contains status of true or false if computer rounding error
is inhibiting improvement in the objective function.
|
Class QuadraticProgramming is based on M.J.D. Powell's implementation of the Goldfarb and Idnani dual quadratic programming (QP) algorithm for convex QP problems subject to general linear equality/inequality constraints (Goldfarb and Idnani 1983); i.e., problems of the form
subject to
given the vectors , , and g, and the matrices H, , and . H is required to be positive definite. In this case, a unique x solves the problem or the constraints are inconsistent. If H is not positive definite, a positive definite perturbation of H is used in place of H. For more details, see Powell (1983, 1985).
If a perturbation of H, , is used in the QP problem, then also should be used in the definition of the Lagrange multipliers.
If the constraints are infeasible an exception is thrown. See Example 3 where the exception is caught and printed.