# SimplexSolver Class

**Solver Foundation 3.0**

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Defines a branch-and-bound search for optimizing mixed integer problems.

System.Object

Microsoft.SolverFoundation.Services.RowVariableModel

Microsoft.SolverFoundation.Services.LinearModel

Microsoft.SolverFoundation.Solvers.SimplexSolver

Microsoft.SolverFoundation.Services.RowVariableModel

Microsoft.SolverFoundation.Services.LinearModel

Microsoft.SolverFoundation.Solvers.SimplexSolver

**Namespace:**Microsoft.SolverFoundation.Solvers

**Assembly:**Microsoft.Solver.Foundation (in Microsoft.Solver.Foundation.dll)

The SimplexSolver type exposes the following members.

Name | Description | |
---|---|---|

SimplexSolver() | Initializes a new instance of the SimplexSolver class. | |

SimplexSolver(IEqualityComparer(Object)) | Initializes a new instance of the SimplexSolver class using the specified comparer. | |

SimplexSolver(ISolverEnvironment) | Initializes a new instance of the SimplexSolver class. |

Name | Description | |
---|---|---|

AlgorithmUsed | Gets the type of algorithm that is used by a solver. | |

BranchCount | Gets the number of branches performed when the branch-and-bound algorithm is applied to a mixed integer linear problem. | |

CoefficientCount | Gets the number of non-zero coefficients in a linear model. (Inherited from LinearModel.) | |

CostingUsedDouble | Gets the costing used for double arithmetic. | |

CostingUsedExact | Gets the costing used for exact arithmetic. | |

FactorCount | Gets the number of basis matrix LU factorizations performed during a solve attempt. | |

FactorCountDouble | Gets the number of basis matrix LU factorizations performed for double arithmetic. | |

FactorCountExact | Gets the number of basis matrix LU factorizations performed for exact arithmetic. | |

Gap | Gets the difference between an integer solution and a relaxed solution. | |

GoalCount | Gets the number of goals in a linear model. (Inherited from LinearModel.) | |

Goals | Gets the goal collection of a linear model. (Inherited from LinearModel.) | |

Indices | Gets the collection of row and variable indexes for a model. (Inherited from RowVariableModel.) | |

InnerIndexCount | Gets the number of user and row variables used internally when a linear model is being solved. | |

InnerIntegerIndexCount | Gets the number of integer user and row variables used internally when a linear model is being solved. | |

InnerRowCount | Gets the number of rows used internally when a linear model is being solved. | |

InnerSlackCount | Gets the number of row variables used internally when a linear model is being solved. | |

IntegerIndexCount | Gets the number of integer variables in a model. (Inherited from RowVariableModel.) | |

IsMipModel | Gets a value that indicates whether a model is a mixed integer programming (MIP) model. (Inherited from RowVariableModel.) | |

IsQuadraticModel | Gets a value that indicates whether a model has a quadratic term on the objective function. (Inherited from LinearModel.) | |

IsSpecialOrderedSet | Gets a value that indicates whether a linear model is a special ordered set. (Inherited from LinearModel.) | |

KeyComparer | Gets the object that is used to compare keys for rows or variables. (Inherited from RowVariableModel.) | |

KeyCount | Gets the number of keys that are in a model. (Inherited from RowVariableModel.) | |

Keys | Gets the variable key and row key collection. (Inherited from RowVariableModel.) | |

LpResult | Gets the result of solving a linear programming (LP) relaxation. | |

MipBestBound | Gets the best result from the mixed integer programming solver (MIP) solver. | |

MipResult | Gets a result of solving a model after considering integrality conditions. | |

PivotCount | Gets the number of simplex pivots performed during a solve attempt. | |

PivotCountDegenerate | Gets the number of degenerated pivots performed during a solve attempt. | |

PivotCountDouble | Gets the number of pivots performed for double arithmetic. | |

PivotCountDoublePhaseOne | Gets the number of phase one pivots performed for double arithmetic. | |

PivotCountDoublePhaseTwo | Gets the number of phase two pivots performed for double arithmetic. | |

PivotCountExact | Gets the number of pivots performed for exact arithmetic. | |

PivotCountExactPhaseOne | Gets the number of phase one pivots performed for exact arithmetic. | |

PivotCountExactPhaseTwo | Gets the number of phase two pivots performed for exact arithmetic. | |

Result | Gets the result of a solve attempt. | |

RowCount | Gets the number of rows in a model. (Inherited from RowVariableModel.) | |

RowIndices | Gets the collection of row indexes of a linear model. (Inherited from LinearModel.) | |

RowKeys | Gets the collection of row keys. (Inherited from RowVariableModel.) | |

SolutionQuality | Gets the quality level of a solution. | |

SolvedGoalCount | Gets the number of goals being solved. | |

UseDouble | Gets a value that indicates whether a solve attempt is instructed to use double arithmetic. | |

UseExact | Gets a value that indicates whether a solve attempt is instructed to use exact arithmetic. | |

VariableCount | Gets the number of variables in a model. (Inherited from RowVariableModel.) | |

VariableIndices | Gets the collection of variable indexes. (Inherited from RowVariableModel.) | |

VariableKeys | Gets the collection of variable keys. (Inherited from RowVariableModel.) |

Name | Description | |
---|---|---|

AddGoal | Creates an ILinearGoal object and adds it to the goal list in a model. (Inherited from LinearModel.) | |

AddListener | Adds a tracing listener for solve attempts.. | |

AddRow(Object, Int32) | Adds a row to a linear model. (Inherited from LinearModel.) | |

AddRow(Object, SpecialOrderedSetType, Int32) | Adds a reference row for a special ordered set to a linear model. (Inherited from LinearModel.) | |

AddVariable | Adds a user variable to a model. (Inherited from RowVariableModel.) | |

ClearGoals | Clears all the goals in a linear model. (Inherited from LinearModel.) | |

Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |

Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |

GetBasic | Returns a value that indicates whether a variable is a basic variable. (Inherited from LinearModel.) | |

GetBounds | Returns the bounds for a variable. (Inherited from RowVariableModel.) | |

GetCoefficient(Int32, Int32) | Returns the coefficient of the A matrix in a linear model. (Inherited from LinearModel.) | |

GetCoefficient(Int32, Int32, Int32) | Returns the coefficient of the Q matrix on the objective row. (Inherited from LinearModel.) | |

GetGoalFromIndex | Returns a goal entry if the row index is associated with a goal. (Inherited from LinearModel.) | |

GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |

GetIgnoreBounds | Returns a value that indicates whether the bounds of a variable are ignored. (Inherited from RowVariableModel.) | |

GetIndexFromKey | Returns the index that is associated with a specified key. (Inherited from RowVariableModel.) | |

GetIntegrality | Returns a value that indicates whether a variable is an integer variable. (Inherited from RowVariableModel.) | |

GetKeyFromIndex | Returns the key that is associated with the specified variable index. (Inherited from RowVariableModel.) | |

GetProperty | Returns the value of a specified property. (Overrides RowVariableModel.GetProperty(String, Int32).) | |

GetReport(LinearSolverReportType) | Gets a sensitivity report associated with a solve attempt. | |

GetReport(SolverContext, Solution, SolutionMapping) | Gets a report associated with a solve attempt. | |

GetRowEntries | Returns the collection of non-zero variable entries. (Inherited from LinearModel.) | |

GetRowEntryCount | Returns the number of non-zero coefficients for the given row index. (Inherited from LinearModel.) | |

GetRowQuadraticEntries | Returns a collection of non-zero variable entries on a quadratic row. (Inherited from LinearModel.) | |

GetSolutionValue | Returns the objective value of a goal. | |

GetSolvedGoal | Returns the information that is associated with a solved goal. | |

GetSpecialOrderedSetTypeRowIndexes | Returns a list of rows for a special ordered set. (Inherited from LinearModel.) | |

GetType | Gets the Type of the current instance. (Inherited from Object.) | |

GetValue | Returns the value that is associated with the specified variable index. (Inherited from RowVariableModel.) | |

GetValueState | Returns the value state for a variable. (Inherited from LinearModel.) | |

GetVariableEntries | Returns a collection of non-zero column entries. (Inherited from LinearModel.) | |

GetVariableEntryCount | Returns the number of non-zero coefficients for a given column variable index. (Inherited from LinearModel.) | |

InitModel | Allocates data structures for a new model. (Overrides LinearModel.InitModel(IEqualityComparer(Object), Int32, Int32, Int32).) | |

IsGoal(Int32) | Returns a value that indicates whether a row identifier is a goal row. (Inherited from LinearModel.) | |

IsGoal(Int32, ILinearGoal) | Returns a value that indicates whether a row identifier is a goal row. (Inherited from LinearModel.) | |

IsQuadraticVariable | Returns a value that indicates whether a variable is in any quadratic row. (Inherited from LinearModel.) | |

IsRow | Returns a value that indicates whether a variable index corresponds to a row. (Inherited from RowVariableModel.) | |

LoadLinearModel | Loads the information from one linear model into another model. (Inherited from LinearModel.) | |

MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |

Preallocate | Allocates data structures for a new linear model. (Inherited from LinearModel.) | |

RemoveGoal | Removes a goal row. (Inherited from LinearModel.) | |

RemoveListener | Removes a tracing listener. | |

SetBasic | Sets the basic status for a variable. (Inherited from LinearModel.) | |

SetBounds | Sets the bounds for a row. (Inherited from RowVariableModel.) | |

SetCoefficient(Int32, Int32, Rational) | Sets the coefficient of the A matrix in a linear model. (Inherited from LinearModel.) | |

SetCoefficient(Int32, Rational, Int32, Int32) | Sets the coefficient of the Q matrix on the objective row. (Inherited from LinearModel.) | |

SetIgnoreBounds | Specifies whether the bounds of a variable should be respected or ignored during a solve attempt. (Inherited from RowVariableModel.) | |

SetIntegrality | Specifies whether a variable is an integer variable. (Inherited from RowVariableModel.) | |

SetLowerBound | Sets the lower bound of a variable. (Inherited from RowVariableModel.) | |

SetProperty | Sets the value of a property. (Overrides RowVariableModel.SetProperty(String, Int32, Object).) | |

SetUpperBound | Sets the upper bound of a variable. (Inherited from RowVariableModel.) | |

SetValue | Sets the value for the specified variable index. (Inherited from RowVariableModel.) | |

Shutdown | Stops a solver instance. | |

Solve(ISolverParameters) | Runs a solver using the specified solver parameters. | |

Solve(SimplexSolverParams[]) | Runs a solver using one thread for each SimplexSolverParams object. | |

SolveRelaxation | Solves a relaxation problem. | |

ToString | Returns a string that represents the current object. (Inherited from Object.) | |

TryGetIndexFromKey | Attempts to return the variable index that is associated with the specified key. (Inherited from RowVariableModel.) |

Name | Description | |
---|---|---|

m_cvidBasic | Represents the number of variables that are marked as basic. (Inherited from LinearModel.) | |

m_cvidInt | Represents the number of integer variables. (Inherited from RowVariableModel.) | |

m_mpkeyvid | Represents the mapping from key to variable index. (Inherited from RowVariableModel.) | |

m_qpRowVar | The goal variable that has the QP form. (Inherited from LinearModel.) |

Show: