Click or drag to resize

QuadraticProgrammingProblem Class

Class QuadraticProgrammingProblem encapsulates a quadratic programming (QP) problem.
Inheritance Hierarchy

Namespace:  CenterSpace.NMath.Core
Assembly:  NMath (in NMath.dll) Version: 7.3
Syntax
[SerializableAttribute]
public class QuadraticProgrammingProblem : LinearConstrainedProblem, 
	ICloneable

The QuadraticProgrammingProblem type exposes the following members.

Constructors
  NameDescription
Public methodQuadraticProgrammingProblem
Default constructor. Behavior of resulting object is undefined.
Public methodQuadraticProgrammingProblem(DoubleMatrix, DoubleVector)
Constructs a QuadraticProgrammingProblem object for minimizing the quadratic
x'Hx + x'g
Top
Properties
  NameDescription
Public propertyc
Gets and sets the vector c in the objective function x'Hx + x'c
Public propertyConstraints
Gets and sets the linear constraints for the problem.
(Inherited from LinearConstrainedProblem.)
Public propertyH
Gets and sets the matrix H in the objective function x'Hx + x'c
Public propertyNumVariables
Gets the number of variables in the problem.
(Overrides BoundedVariableProblemNumVariables.)
Public propertyVariableBounds
Gets and sets variable bounds for the problem.
(Inherited from BoundedVariableProblem.)
Top
Methods
  NameDescription
Public methodAddBounds(Int32, Double, Double)
Adds upper and lower bound constraints to a variable.
(Inherited from BoundedVariableProblem.)
Public methodAddBounds(Int32, Double, Double, Double)
Adds upper and lower bound constraints to a variable.
(Inherited from BoundedVariableProblem.)
Public methodAddConstraint(LinearConstraint)
Adds the given constraint to the problem.
(Inherited from LinearConstrainedProblem.)
Public methodAddConstraint(DoubleVector, Double, Double)
Adds a linear inequality constraint of the form lowerBound <= coefficients'x < upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddConstraint(ILinearConstraintCoefficients, Double, Double)
Adds a linear inequality constraint of the form lowerBound <= coefficients'x < upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddConstraint(DoubleVector, Double, Double, Double)
Adds a linear inequality constraint of the form lowerBound <= coefficients'x < upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddConstraint(ILinearConstraintCoefficients, Double, Double, Double)
Adds a linear inequality constraint of the form lowerBound <= coefficients'x < upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddEqualityConstraint(DoubleVector, Double)
Adds an equality constraint of the form coefficients'x = rightHandSide
(Inherited from LinearConstrainedProblem.)
Public methodAddEqualityConstraint(ILinearConstraintCoefficients, Double)
Adds an equality constraint of the form coefficients'x = rightHandSide
(Inherited from LinearConstrainedProblem.)
Public methodAddLowerBound(Int32, Double)
Adds an lower bound constraint on the variable at the given index.
(Inherited from BoundedVariableProblem.)
Public methodAddLowerBound(Int32, Double, Double)
Adds an lower bound constraint on the variable at the given index.
(Inherited from BoundedVariableProblem.)
Public methodAddLowerBoundConstraint(DoubleVector, Double)
Adds a linear inequality constraint of the form coefficients'x >= lowerBound
(Inherited from LinearConstrainedProblem.)
Public methodAddLowerBoundConstraint(ILinearConstraintCoefficients, Double)
Adds a linear inequality constraint of the form coefficients'x >= lowerBound
(Inherited from LinearConstrainedProblem.)
Public methodAddLowerBoundConstraint(DoubleVector, Double, Double)
Adds a linear inequality constraint of the form coefficients'x >= lowerBound
(Inherited from LinearConstrainedProblem.)
Public methodAddLowerBoundConstraint(ILinearConstraintCoefficients, Double, Double)
Adds a linear inequality constraint of the form coefficients'x >= lowerBound
(Inherited from LinearConstrainedProblem.)
Public methodAddUpperBound(Int32, Double)
Adds an upper bound constraint on the variable at the given index.
(Inherited from BoundedVariableProblem.)
Public methodAddUpperBound(Int32, Double, Double)
Adds an upper bound constraint on the variable at the given index.
(Inherited from BoundedVariableProblem.)
Public methodAddUpperBoundConstraint(DoubleVector, Double)
Adds a linear inequality constraint of the form coefficients'x <= upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddUpperBoundConstraint(ILinearConstraintCoefficients, Double)
Adds a linear inequality constraint of the form coefficients'x <= upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddUpperBoundConstraint(DoubleVector, Double, Double)
Adds a linear inequality constraint of the form coefficients'x <= upperBound
(Inherited from LinearConstrainedProblem.)
Public methodAddUpperBoundConstraint(ILinearConstraintCoefficients, Double, Double)
Adds a linear inequality constraint of the form coefficients'x <= upperBound
(Inherited from LinearConstrainedProblem.)
Protected methodCheckVariableIndex
Checks that the given variable index is valid. Must be between 0 and number of variables - 1.
(Overrides BoundedVariableProblemCheckVariableIndex(Int32).)
Public methodClone
Returns a deep copy of self.
Public methodEvaluateConstraints
Evaluates each of the constraints at the specified point and returns the results.
(Inherited from LinearConstrainedProblem.)
Public methodIsLinear
Performs a check to see if in fact the problem is a linear programming problem. Or, equivalently, if all the entries in the matrix H are zero.
Public methodPointIsFeasible(DoubleVector)
Function for determining the feasibility of a give point. A point x is feasible if it satisfies all the constraints of the problem.
(Inherited from LinearConstrainedProblem.)
Public methodPointIsFeasible(DoubleVector, Double)
Function for determining the feasibility of a give point.
(Inherited from LinearConstrainedProblem.)
Public methodToString
Creates a string representation of the problem.
(Overrides ObjectToString.)
Top
Fields
  NameDescription
Protected fieldconstraints_
Problem constraints.
(Inherited from LinearConstrainedProblem.)
Protected fieldvariableBounds_
Map containing variable bounds. Key is the variable ID, the value is the bounds.
(Inherited from BoundedVariableProblem.)
Top
Remarks
A QP problem has the following 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.

See Also