Is your feature request related to a problem? Please describe.
I would like to have SCIP as a solver for CVXPY, so that I do not have to use native PySCIPOpt to optimize MILP problem sets.
Describe the solution you'd like
Self-explanatory - please add SCIP lib to the current list of supported solvers.
Describe alternatives you've considered
Using PySCIPOpt directly is an option, but its difficult to do, mainly because of the extra libs that I'm wanting to use in CVXPY that don't seem usable if I'm not also using CVXPY to do the solving.
Additional context
None.
Generally solver interfaces are contributed by the community. Perhaps you could add this interface or reach out to someone who can. This PR did a great job of adding a solver interface, so you could follow what they did: https://github.com/cvxgrp/cvxpy/pull/776
Hey Steven -- Thanks for getting back to me. We need it, but I'm not sure i'm a
sophisticated enough of a developer to do this. I don't understand most of
the code in the PR that you sent, and I barely understand enough of CVXPY
to even use it. We got something working with CVXPY and GUROBI, but we
can't use GUROBI because it costs money. We really need to use SCIP, which
is the leading open source (free) MILP solver, but we really need help with
having it be supported in CVXPY. Anyone who can maybe assist us with this
task, or any other path forward you might suggest? It's not about laziness - it's about capability.
@wfrece my advice would be to ask one of SCIP's developers to take the lead on this. Right now CVXPY does not connect to a good open-source MIP solver, and SCIP might be a great place to look (since it is under very active development, and has so many people involved in the project).
SCIP developers are listed here: https://scip.zib.de/index.php#developers. If you can get the attention of someone on their python side of things (e.g. Matthias Miltenberger, Felipe Serrano), then we can work with them to get an interface in CVXPY.
Hi, did you ever manage to find someone to do this? I am a developer who studied maths/operations research at university. This looks really interesting, I had a look at #776 and I think I could replicate for SCIP, if you are still looking for someone to help out?
That would be fantastic Rachel.
I was still hoping this would be possible - so any help you may
provide would be greatly appreciated!!
@rimaddo we'd love a SCIP interface! I'm actually in the process of writing up documentation to help people write new solver interfaces. You can find the working draft of that documentation at this link.
I'll note that GitHub renders that document in a strange way (since it's designed for Markdown, rather than reStructuredText) but the content is still human-readable.
Edit: updated link
Great I'll give it a go then, thanks for the pointer to the documentation!
Sorry for the delay on this, I've created a PR here, will require a little bit more work but I think (/hope) quite a bit of it is there.
Resolved by #1035. See #1078 for follow-up work regarding dual variables.