You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Thomas Neidhart (JIRA)" <ji...@apache.org> on 2013/12/15 23:13:06 UTC

[jira] [Created] (MATH-1079) Performance improvements for the SimplexSolver

Thomas Neidhart created MATH-1079:
-------------------------------------

             Summary: Performance improvements for the SimplexSolver
                 Key: MATH-1079
                 URL: https://issues.apache.org/jira/browse/MATH-1079
             Project: Commons Math
          Issue Type: Improvement
            Reporter: Thomas Neidhart


Tests with various larger models in mps format from netlib.org have shown that there is a lot of room for improvements for the SimplexSolver.

Currently, the tableau is stored in a RealMatrix, and each access to an entry uses the getEntry / setEntry methods which always does bounds checking. This is inefficient and unnecessary as we know that we access the matrix within bounds.

Suggest to access the internal array directly for various operations. The walkInXXX method of RealMatrix can not always be used for this purpose.

Also the getBasicRow() method can be a bottle-neck as it always needs to analyze the whole tableau to determine the row in which a variable is basic. It would be better to keep track of which variables are basic in which row.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)