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

Add functionality to select the solver to be used #97

Closed
danielolsen opened this issue Jan 23, 2021 · 1 comment · Fixed by #99
Closed

Add functionality to select the solver to be used #97

danielolsen opened this issue Jan 23, 2021 · 1 comment · Fixed by #99
Assignees
Labels
feature request Request for a new feature. (Only lives in Backlog)
Milestone

Comments

@danielolsen
Copy link
Contributor

Currently, we are hard-coded for Gurobi. We would like to support at least one open-source solver (though performance will be slow), and potentially other commercial solvers as well.

@danielolsen danielolsen added the feature request Request for a new feature. (Only lives in Backlog) label Jan 23, 2021
@danielolsen danielolsen added this to the Hey Joe milestone Jan 26, 2021
@danielolsen
Copy link
Contributor Author

I think there are a couple of different ways we could go about this. If we expect that the user will be interacting with the Julia code directly, then we can have an optional parameter to REISE.run_scenario that takes a MathOptInterfact.ModelLike to create a model with (see https://jump.dev/JuMP.jl/dev/reference/models/#JuMP.direct_model).

If we want the different solvers to be accessible from the python side, this becomes more difficult, because we will need to instantiate the ModelLike objects (e.g. a CPLEX solver) within the REISE.jl code directly, which means that we will need to have e.g. CPLEX.jl already installed. It seems that how to support 'optional dependencies' is still an active discussion, see JuliaLang/Pkg.jl#1285.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Request for a new feature. (Only lives in Backlog)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants