It sounds like this is a worthwhile upgrade to the performance of the
Simplex solvers. I agree with Gilles that from a design perspective, the
class is accomplishing the same task only with an internal modification
difference, so if possible it should be set with an argument rather than a
whole new class.

Eric



On Fri, Jan 25, 2019 at 7:24 PM Bill Igoe <billi...@gmail.com> wrote:

> Hi Gang,
>
> I recently alter the code for both SimplexSolver and SimplexTableau to use
> the OpenMapRealMatrix object rather than the Array2DRowRealMatrix.  Most
> large Linear Programming programming problems in fact have a very sparse
> Simplex Tableau --- lots of zeros  -- perhaps 90 percent of the matrix is
> zeros!.  When using Array2DRealMatrix,  one invariable runs into a heap
> space problem quite quickly.  Instead, by using the OpenMapRealMatrix the
> code not physically allocate space for a complete K by N matrix as does the
> Array2DRealMatrix.  The modifications to existing code were quite modest.
> I think this approach is quite valuable for practitioners of large scale
> linear programming problems.  There is a reduction in speed as the
> System.arraycopy procedure is no longer employed.  The cost however
> provides users with a vastly larger sandbox of memory for problem solving.
>
>
> My code is thus:
> LargeSimplexSolver.java
> LargeSImplexTableau.java
>  LargeSolutionCallback.java
> and
> SimplexMapMatrix a minor  extension of OpenMaprealMatrix.
>
> I am willing to share the modifications if the math common group  thinks
> such an effort is worthwhile.
>
> Cheers to you all and keep up the good work.
>
> Bill Igoe
>

Reply via email to