Click or drag to resize

LinearConstraintsProjector Class

Projects a point onto the feasible set of parameters x defined by: A·x = b (equality constraints) C·x <= d (inequality constraints) Any other linear constraint form can be reduced to these two: C·x >= d → -C·x <= -d lb <= x[i] → -x[i] <= -lb[i] x[i] <= ub → x[i] <= ub[i] (directly) The projection solves the convex QP: min ½ ||x - p||² s.t. A·x = b, C·x <= d using an Active Set method. The active set at convergence identifies which constraints are binding and therefore which parameters are constrained vs. free. Requires MathNet.Numerics.
Inheritance Hierarchy
SystemObject
  Altaxo.Calc.OptimizationLinearConstraintsProjector

Namespace: Altaxo.Calc.Optimization
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3618.0 (4.8.3618.0)
Syntax
C#
public class LinearConstraintsProjector : IConstraintsProjector

The LinearConstraintsProjector type exposes the following members.

Constructors
 NameDescription
Public methodLinearConstraintsProjectorInitializes a new instance of the LinearConstraintsProjector class
Top
Properties
 NameDescription
Public propertyAreAllParametersFixed Gets a value indicating whether all parameters have been assigned fixed values by constraints.
Public propertyAreAllParametersFullyFree Gets a value indicating whether all parameters are fully free (thus this LinearConstraintsProjector has no constraints at all and therefore is not needed).
Public propertyNumberOfParameters Gets the number of parameters required by the operation or function.
Public propertyNumberOfParametersFixed Gets the number of parameters that are fixed to a single value throughout the feasible set by the constraints.
Public propertyNumberOfParametersFullyFree Gets the number of parameters that are fully free, meaning they do not occur in any constraint and can vary without affecting feasibility.
Public propertyNumberOfParametersNeitherFixedNorFullyFree Gets the number of parameters that are neither fixed by constraints nor fully free, meaning they occur in at least one constraint but are not fixed to a single value throughout the feasible set.
Public propertyNumberOfParametersThatCanVary Gets the number of parameters whose values are not fixed by constraints and can vary.
Public propertyValuesFixedByConstraints Gets the values to which parameters are fixed throughout the feasible set.
Top
Methods
 NameDescription
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodIsFeasible Determines whether the specified point satisfies all constraints within the given tolerance.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Public methodProject(VectorDouble) Projects the specified point onto the feasible set and returns only the projected point.
Public methodProject(VectorDouble, VectorDouble, SpanBoolean) Projects the specified input vector onto a target space, applying constraints as indicated.
Public methodProjectWithInfo Projects the specified point onto the feasible set and returns full constraint-activity information.
Public methodToProjectorWithoutFixedParameters Creates a new linear constraint projector with all fixed parameters eliminated from the constraints.
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Public methodTryConvertToBoxConstraints Attempts to convert the current set of linear constraints to simple lower and upper boundary constraints for each parameter.
Public methodStatic memberTryCreate Attempts to create a new instance of the LinearConstraintsProjector using the specified equality and inequality constraints.
Top
See Also