Hi Nathann, does your code provide for returning infeasibility certificates? in case of CPLEX Python interface, it's here: <lp-problem>.solution.advanced.dual_farkas() This is something I need for our research on quantum codes; I have an industrial amount of smallish LPs, most of them infeasible, and have to understand why... I started out using Sage/cvxopt interface to GLPK, and then switched to CPLEX, as I wanted these certificates, as well as ILP solutions, when they exist.
By the way, CPLEX Python interface does allow cut generation from within Python, so claiming that Sage is the 1st do do this is a bit too strong... Cheers, Dima On Oct 1, 7:35 am, Nathann Cohen <nathann.co...@gmail.com> wrote: > Hello everybody ! > > It is getting late here, and I am just out of a patch that took me > quite some time and energy. > > It is a complete rewrite of the interface between Sage and the LP > solvers it supports (GLPK, Coin, CPLEX). It means that we now have > some abstract Cython interface to deal with all of them, and not these > ugly python calls from before which prevented us from using any > interesting solver-specific method (for example with Gurobi...). The > code is cleaner, more efficient, easier to change, and we can already > do more things with it. > > For example, constraint generation. I do not even know of any way to > dynamically generate constraints and variables when working on LP > without actually writing C code, and it is now possible directly in > Python. Or in Cython, if you want it to be faster. This means that > some new things are possible in Sage, which leads to more efficient > algorithms for Feedback Edge set #9923 or to a new one to compute the > fractional chromatic index of a graph #10044. Many others will follow, > it will just be too easy to obtain impressive speedups using it :-) > > This patch is now to be reviewed on ticket #10043, and I expect this > will take some time. It passes all tests with any solver available on > my computer, and I of course tried to think of everything, but > considering the time it is quite likely I missed a lot.... so if > anybody here is willing to help, I'll be quite glad to discuss/fix any > part of the code as soon as something odd appears... starting tomorrow > ! > > ... and I hope this will prove useful :-) > > Have fuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuun !!! > > Nathann -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org