commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Konstantin Bryazgin (JIRA)" <j...@apache.org>
Subject [jira] [Created] (MATH-1391) Simplex method intermediate solutions
Date Fri, 11 Nov 2016 15:26:59 GMT
Konstantin Bryazgin created MATH-1391:
-----------------------------------------

             Summary: Simplex method intermediate solutions
                 Key: MATH-1391
                 URL: https://issues.apache.org/jira/browse/MATH-1391
             Project: Commons Math
          Issue Type: Improvement
            Reporter: Konstantin Bryazgin


I suggest allowing access to intermediate solutions of simplex algorithm (not final vertexes
at polyhedron). It can be useful for progress illustrating or early interrupting of process.


It can be like this:
{code}
SimplexSolver simplexSolver = new SimplexSolver();

// ... prepare constraintSet and goalFunction

simplexSolver.setSimplexSolverInterceptor(new SimplexSolverInterceptor() {
            public boolean intercept(PointValuePair pointValuePair) {
                // pointValuePair is intermediate solution
                // return if the optimization must be stopped here
                return false;
            }
        });

PointValuePair pair = simplexSolver.optimize(goalFunction, constraintSet, GoalType.MINIMIZE);
{code}

I needed it, so I've done it. Commit is here: https://github.com/kosbr/commons-math/commit/20f6c3d7428b7e5d5c695af7c4f51df979245297
 

Here is the description of what I've done in my blog. https://kosbr.github.io/2016/11/07/simplex-interceptor.html

I'm able to do the same enhancement to the commons-math library respecting rules like commit
name.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message