Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MILP: Add CyLP backend #19219

Open
mkoeppe opened this issue Sep 15, 2015 · 3 comments
Open

MILP: Add CyLP backend #19219

mkoeppe opened this issue Sep 15, 2015 · 3 comments

Comments

@mkoeppe
Copy link
Contributor

mkoeppe commented Sep 15, 2015

CyLP is a Cython interface to COIN-OR’s Linear and mixed-integer program solvers (CLP, CBC, and CGL).

We should add a MILP backend that goes through CyLP, because the interface is much more complete than Sage's current COIN interface. In particular, quoting from CyLP's README:

"CyLP’s unique feature is that you can use it to alter the solution process of the solvers from within Python. For example, you may define cut generators, branch-and-bound strategies, and primal/dual Simplex pivot rules completely in Python."

https://github.com/coin-or/CyLP

Of course, CyLP has an incompatible license (CPL), but it does not matter because COIN has that license already.

Update: CyLP has various outstanding issues (https://github.com/coin-or/CyLP/issues) that need working around or fixing

CC: @nathanncohen @dimpase

Component: numerical

Issue created by migration from https://trac.sagemath.org/ticket/19219

@mkoeppe mkoeppe added this to the sage-6.9 milestone Sep 15, 2015
@nathanncohen
Copy link
Mannequin

nathanncohen mannequin commented Sep 16, 2015

comment:1

I don't have anything against what you plan to do, but why exactly do you want to add a CyLP backend? It may be true that CyLP has more features exposed than our current interface, but then the same thing remains: in the backend, you will have to expose the features that are exposed in CyLP, exactly how we have to do now by exposing in the coin backend the features that are exposed in the C++ Api.

Nathann

@dimpase
Copy link
Member

dimpase commented Sep 16, 2015

comment:2

Matthias builds a database of ILP cutting planes constructions (Actually I talked to him yesterday about it at length).

He wants his cuts to be as painless as possible:)

@mkoeppe

This comment has been minimized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants