New HiGHS: oemof.solph v0.6.5

We have just released oemof.solph v0.6.5 (GitHub, ZenodoPyPIRTD), which brings not only a number of bug fixes but also support for the solver “HiGHS“. To use it, make sure you have it installed and call model.solve(solver="highs") after you have created the energy system model. The solver should be installed automatically as a dependency without any manual action. Based on feedback we receive in the next time, it might become our new default. So, what is your experience with HiGHS?

Bug fixes and other changes are mostly relevant for users of Flows with a binary status variable (using NonConvex) and TSAM users, but not only:

  • The constraint limit_active_flow_count ignored Flows with an investment option.
  • The minimum_uptime/minimum_downtime might be ignored for the first time steps the unit was allowed to deviate from the initial status.
  • In TSAM result disaggregation, per-timestep variables were silently dropped from the output.
  • The TSA-disaggregated storage SOC result is now consistently named storage_content.
  • We updated examples and tutorials to the current TSAM API (v3).
  • The re-assignment of sequences using scalar variables now works as expected (e.g. flow.variable_costs = 5 failed when constructing the model).

Special thanks to our first-time contributors, Diana Maldonado Castro and Dylan Pulver, who did not only provide visible improvements but allowed considerable simplifications to our code.

Leave a Reply

Your email address will not be published. Required fields are marked *