SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.optimization.constrained.linearprogramming
Interface LpSolver

All Known Implementing Classes:
Phase2ByFerrisMangasarianWright, StandardSimplex

public interface LpSolver

This interface represents the various stages in solving a Linear Programming (LP) problem. E.g., both phases 1 and 2 are LpSolver in the sense that they process the original table to produce a resultant table that gets closer to a solution.


Method Summary
 Tableau getResultantTableau()
          Get a copy of the Tableau after the solve operation.
 int lambdaCol()
          Get the column index for which there is no row that passes the ratio test.
 LpSolution solve()
          Solve the Linear Programming (LP) problem.
 

Method Detail

solve

LpSolution solve()
                 throws LpProblem.Infeasible
Solve the Linear Programming (LP) problem.

Returns:
a (partial) solution
Throws:
LpProblem.Infeasible

getResultantTableau

Tableau getResultantTableau()
Get a copy of the Tableau after the solve operation. The table can be passed to other operations, e.g., other LpSolver, for further processing.

Returns:
a Tableau as a result of the solve operation

lambdaCol

int lambdaCol()
Get the column index for which there is no row that passes the ratio test. That is, the problem is unbounded.

To check whether a problem is bounded, we can do:

 lambdaCol() == 0;
 

Returns:
0 if LP problem is bounded; +ve column index otherwise

SuanShu, a Java numerical and statistical library

Copyright © 2011 Numerical Method Inc. Ltd. All Rights Reserved.