Click or drag to resize

NonlinearProgrammingProblem Class

Class NonlinearProgrammingProblem represents a nonlinear programming problem.
Inheritance Hierarchy

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
public class NonlinearProgrammingProblem : BoundedVariableProblem

The NonlinearProgrammingProblem type exposes the following members.

Constructors
 NameDescription
Public methodNonlinearProgrammingProblem Constructs an empty NonlinearProgrammingProblem object.
Public methodNonlinearProgrammingProblem(DoubleFunctional) Constructs a NonlinearProgrammingProblem object with the given objective function.
Public methodNonlinearProgrammingProblem(DoubleFunctional, IEnumerableConstraint) Constructws a NonlinearProgrammingProblem object with the given objective function and constraints.
Public methodNonlinearProgrammingProblem(Int32, FuncDoubleVector, Double) Constructws a NonlinearProgrammingProblem object with the given objective function and constraints.
Public methodNonlinearProgrammingProblem(Int32, FuncDoubleVector, Double, IEnumerableConstraint) Constructws a NonlinearProgrammingProblem object with the given objective function and constraints.
Top
Properties
 NameDescription
Public propertyConstraints Gets the constraints.
Public propertyNumVariables Number of variables for the problem.
(Overrides BoundedVariableProblemNumVariables)
Public propertyObjectiveFunction Gets and sets the objective funtion to minimize.
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(Constraint) Adds the given constraint to the problem.
Public methodAddConstraint(DoubleFunctional, Double, Double) Adds an inequality constraint of the form lowerBound <= constraintFunction(x) < upperBound
Public methodAddConstraint(Int32, FuncDoubleVector, Double, Double, Double) Adds an inequality constraint of the form lowerBound <= constraintFunction(x) < upperBound
Public methodAddEqualityConstraint(DoubleFunctional, Double) Adds an equality constraint of the form constraintFunction(x) = rightHandSide
Public methodAddEqualityConstraint(Int32, FuncDoubleVector, Double, Double) Adds an equality constraint of the form constraintFunction(x) = rightHandSide
Public methodAddLinearConstraint(LinearConstraint) Adds the given linear constraint to the problem.
Public methodAddLinearConstraint(DoubleVector, Double, Double) Adds a linear inequality constraint of the form lowerBound <= coefficients'x < upperBound
Public methodAddLinearEqualityConstraint Adds an equality constraint of the form coefficients'x = rightHandSide
Public methodAddLinearLowerBoundConstraint Adds a linear inequality constraint of the form coefficients'x >= lowerBound
Public methodAddLinearUpperBoundConstraint Adds a linear inequality constraint of the form coefficients'x <= upperBound
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(DoubleFunctional, Double) Adds an inequality constraint of the form constraintFunction(x) >= lowerBound
Public methodAddLowerBoundConstraint(Int32, FuncDoubleVector, Double, Double) Adds an inequality constraint of the form constraintFunction(x) >= lowerBound
Public methodAddNonlinearConstraint Adds the given nonlinear constraint to the problem.
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(DoubleFunctional, Double) Adds an inequality constraint of the form constraintFunction(x) <= upperBound
Public methodAddUpperBoundConstraint(Int32, FuncDoubleVector, Double, Double) Adds an inequality constraint of the form constraintFunction(x) <= upperBound
Protected methodCheckVariableIndex Checks that the given variable index is valid.
(Overrides BoundedVariableProblemCheckVariableIndex(Int32))
Public methodEvaluateConstraints Evalutes each of the constraints at the specified point and returns the results.
Public methodIsFeasiblePoint Function for determining the feasibility of a give point. A point x is feasible if it satisfies all the constraints of the problem.
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 BoundedVariableProblem)
Public methodPointIsFeasible(DoubleVector, Double) Function for determining the feasibility of a give point. A point x is feasible if it satisfies all the constraints of the problem within a specified tolerance.
(Inherited from BoundedVariableProblem)
Top
Fields
 NameDescription
Protected fieldvariableBounds_ Map containing variable bounds. Key is the variable ID, the value is the bounds.
(Inherited from BoundedVariableProblem)
Top
Remarks
Nonlinear programming problems are of the form

minimize f(x) subject to
ci(x) == 0, for i in E,
ci(x) >= 0 for i in I,

where f is the objective function and the constraint functions ci are all smooth, real-valued functions on a subset of Rn, and I and E are finite index subsets of inequality and equality constraints, respectively.

See Also