Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an incomplete¹ PR that addresses #119 by adding
ixmp.model.pyomo.PyomoModel
, a class that solves models via Pyomo. Pyomo offers the option of using some supported open-source solvers.The Pyomo docs use the phrase algebraic modeling language (AML) to refer to an information/data model that includes equations, parameters, variables, etc. Because
ixmp
was geared towards GAMS, another AML, it already aligns well to these concepts, so the implementation is not too awkward or complex. (The same would apply to other AMLs like AMPL, linopy, and perhaps others.)¹ it is provided for exploration, discussion, and to clarify the work that would be involved to complete it.
How to review
To be added.
PR checklist
ixmp_source
) or a new backend, e.g. Add Python DB API backend #400.ItemType.equ
) and variables (ItemType.var
). This is necessary to store the model solution produced by Pyomo.