op 09-02-14 19:12, john_perry_usm schreef:

Actually, I was thinking of doing it when I have time. This should be quite
useful for what I need, but I wanted to investigate just how he's going
about it.

And, as you point out, it isn't a problem to add a feature that works with
only one solver; we simply add an optional argument (or more), right?

For warm restart functionality, the GLPK simplex solver needs to be given a valid basis after it has been modified (by adding/removing/changing variables/constraints/bounds; changes to the objective does not require any attention to the basis). Furthermore, the new basis matrix needs to be factorized; this is easiest to do using the warm_up routine.

In the epyglpki code, the necessary logic is captured in the 'basis' method of the SimplexSolver class.

The specification of the basis requires insight of the modeler; as far as I know, no automatic creation of a valid basis guarantees preserved feasibility, so manually adapting the basis settings are necessary. Therefore I do not think this is simply adding an extra parameter (variable statuses need to be read out and applied, factorization routine run). But given that the solver object is solver-specific in the Sage numerical module, I now think there is little risk of getting in the way of the other solvers if one wishes to implement this in the GLPK backend only.


Erik

--
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to