Click or drag to resize

ConstrainedLeastSquaresProblem Class

Class that encapsulates a constrained least squares problem.
Inheritance Hierarchy
SystemObject
  CenterSpace.NMath.CoreBoundedVariableProblem
    CenterSpace.NMath.CoreLinearConstrainedProblem
      CenterSpace.NMath.CoreConstrainedLeastSquaresProblem

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
public class ConstrainedLeastSquaresProblem : LinearConstrainedProblem, 
	ICloneable

The ConstrainedLeastSquaresProblem type exposes the following members.

Constructors
 NameDescription
Public methodConstrainedLeastSquaresProblem Constructs an empty ConstrainedLeastSquaresProblem instance.
Public methodConstrainedLeastSquaresProblem(DoubleMatrix, DoubleVector) Constructs a ConstrainedLeastSquaresProblem instance for the problem Ax = b.
Top
Properties
 NameDescription
Public propertyA Gets and sets the matrix A in the problem Ax = b.
Public propertyb Gets and sets the vector b in the problem Ax = b.
Public propertyConstraints Gets and sets the linear constraints for the problem.
(Inherited from LinearConstrainedProblem)
Public propertyNumVariables Gets the number of independent variables for 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 Bounds checks the given variable index .
(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 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)
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
Minimize ||Ax - b||^2 /// Subject to
ai'x = bi, for i in E,
ai'x >= bi, for i in I

where A is an mxn matrix, b is an m-vector, each ai is an n-vector and each bi is a scalar. ||.||^2 denotes the Euclidean norm squared.
See Also