Click or drag to resize
DenseLP Class
Solves a linear programming problem using an active set strategy.
Inheritance Hierarchy
SystemObject
  Imsl.MathDenseLP

Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.2.0
Syntax
[SerializableAttribute]
public class DenseLP

The DenseLP type exposes the following members.

Constructors
Methods
  NameDescription
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetDualSolution
Returns the dual solution.
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetSolution
Returns the solution x of the linear programming problem.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodSetConstraintType
Sets the types of general constraints in the matrix a.
Public methodSetLowerBound
Sets the lower bound, x_l on the variables.
Public methodSetUpperBound
Sets the upper bound, x_u on the variables.
Public methodSetUpperLimit
Sets the upper limit of the constraints.
Public methodSolve
Solves the problem using an active set strategy.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Properties
  NameDescription
Public propertyIterationCount
Returns the number of iterations used.
Public propertyObjectiveValue
Returns the optimal value of the objective function.
Public propertyRefinementType
The type of refinement used, if any.
Top
Remarks

Class DenseLP uses an active set strategy to solve linear programming problems, i.e., problems of the form

\mathop {\min }\limits_{x\; \in \;R^n } c^T x

subject to

b_l  \le Ax  \le b_u

\,\,x_l  \le x \le x_u

where c is the objective coefficient vector, A is the coefficient matrix, and the vectors b_l, b_u, x_l
            , and x_u are the lower and upper bounds on the constraints and the variables, respectively.

If the linear constraints are infeasible an L_1 solution to the constraints are used as a replacement for the stated constraints. An exception is thrown but a generalized solution is computed and available using methods GetSolution or GetDualSolution. Similar comments hold for any of the three additional conditions:

  1. There are multiple solutions;
  2. some constraints are discarded, or
  3. cycling in the algorithm is identified.

Refer to the following paper for further information: Krogh, Fred, T. (2005), An Algorithm for Linear Programming, http://mathalacarte.com/fkrogh/pub/lp.pdf , Tujunga, CA.

See Also