[
https://issues.apache.org/jira/browse/MATH-842?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13769852#comment-13769852
]
Thomas Neidhart commented on MATH-842:
--------------------------------------
The reason why there is still cycling is identified: Bland's rule was not
correctly implemented.
I will revert my changes so far, as I will not be able to complete them in the
next 2 weeks.
The full fix should be as follows (similar to other lp solvers):
* support selection of different pivot selection rules
** Dantzig (the standard selection rule, which is implemented now)
** Bland (first index selection)
** Steepest edge
** Devex
* support adaptive mode: revert to Bland only when cycling is detected
There are many more things other solvers like lp_solve or glpk support, and we
should consider creating an Options object that bundles all solver related
settings so that a user can easily adapt the behavior for his/her purpose.
> Investigate why Bland's rule in Simplex Solver still creates cycles
> -------------------------------------------------------------------
>
> Key: MATH-842
> URL: https://issues.apache.org/jira/browse/MATH-842
> Project: Commons Math
> Issue Type: Improvement
> Affects Versions: 3.1
> Reporter: Thomas Neidhart
> Assignee: Thomas Neidhart
>
> As a consequence of MATH-828, Bland's rule has been introduced to prevent
> cycling. Now there are cases where cycles can still occur (see
> testMath828Cycle in SimplexSolverTest). These cases have for now been solved
> with a simple heuristic:
> * after maxIterations / 2 -> ignore Bland's rule
> This issue has been created to further investigate the problem and come up
> with a cleaner solution.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira