Four years ago EU project Spine set out to build open-source tools to help modellers manage data and workflow for multiple models working at different scales across power and energy systems. The end result of that process is a set of three tools: Spine Toolbox to manage data, workflow and scenarios for multiple models; SpineOpt to go where no energy system modelling framework has gone before; and SpineInterface for quickly building up bespoke optimization models.
The Spine webinars were held September 7-10. See recordings below.
7 Sep, 14:00-15:30 CEST (8:00-9:30 EDT) - SpineOpt (with EERA JP ESI)
8 Sep, 17:00-18:30 CEST (11:00-12:30 EDT) - Spine Toolbox (with G-PST)
9 Sep, 14:00-16:00 CEST (8:00-10:00 EDT) - Case Studies
10 Sep, 14:00-15:30 CEST (8:00-9:30 EDT) - SpineInterface
SpineOpt: A flexible energy system modelling framework in Julia
Tuesday Sep 7, 14:00-15:30 CEST (8:00-9:30 EDT) - Organized together with EERA ESI
The importance of operational details in planning future energy systems has been rapidly increasing. One driver for this is the increasing role of variable power generation, which requires that the energy system models consider higher temporal granularity, longer time series and new aspects in power system stability. Another important driver is a consequence of sector coupling through the electrification of transport, space heating and industries. As the other sectors become more integrated with electricity, they need to be modelled at a granularity that is sufficient for describing the potential flexibility they can bring to the power system dominated by variable and uncertain power generation.
This webinar will present a new open source Julia based energy system modelling framework SpineOpt, which has been built with these challenges in mind. It can represent different energy sectors using representation typically available only in sector specific models and with highly adaptable temporal and stochastic structures available both for planning and operations. More information at https://spine-project.github.io/SpineOpt.jl/latest/index.html.
Basic elements of SpineOpt and the flexible spatial structure [PDF]
Adaptable temporal and stochastic structures [PDF]
Representation of different energy sectors
Attempts to make the model faster [PDF]
+ Step-by-step 10 minute demo on how to build a simple model with SpineOpt using Spine Toolbox: https://youtu.be/FiiqZNcx7Ds?t=1198
Spine Toolbox: Data, workflow and scenario management for modelling
Wednesday Sep 8, 17:00-18:30 CEST (11:00-12:30 EDT) - Organized together with G-PST
Spine Toolbox is an open source software to manage data, scenarios and workflows for modelling and simulation. You can have your local workflow, but work as a team through version control and SQL databases. This webinar gives a quick overview of the different functionalities and showcases them through two examples. More information and documentation available at https://spine-toolbox.readthedocs.io/.
|17:00-17:05||Relation to G-PST Pillar 5 (Clayton Barrows, NREL)|
Building a workflow in Spine Toolbox
[PDF], (Juha Kiviluoma, VTT)
workflow from Canada to manage lots of input sources [PDF], (Madeleine
McPherson and Jake Monroe, University of Victoria)
workflow from EU project TradeRES to serve
multiple models (Milos Cvetkovic and Jim Hommes, TU Delft)
Over the past 4 years, the EU project Spine has developed a set of open-source tools for modelling complex energy systems. This webinar demonstrates the Spine software through six selected case studies, covering topics such as sector coupling, co-optimization of operation and investments, stochastic modelling, and rolling horizon optimization. Each subsection described below consists of a brief introduction followed by a live demonstration of the particular case, where some of the outstanding features of Spine are highlighted and discussed.
Introduction to Spine:
This section uses a simple example to demonstrate the SpineOpt modelling principle. First, the user defines the different objects in their system, such as units and nodes, as well as the relationships between them, such as which units are connected to which nodes. Then, they specify values for certain pre-defined parameters such as node demand, unit capacity, cost, and conversion ratio. The resulting dataset is passed to SpineOpt which generates the corresponding optimisation model, optimizes it, and delivers the results.
This section demonstrates hydropower modelling in Spine as performed in Case study A5. The objective is to model part of the Swedish hydropower system, namely the Skellefte river with its 15 power stations, by coupling the river system with the power system. The model maximizes income from electricity supply over one week with an hourly resolution, while respecting basic hydrological constraints.
This section demonstrates building heating modelling in Spine as performed in Case study A4. The objective is to model the Finnish power and district heating system coupled with an electrically heated residential building stock. The result is a rolling unit commitment and economic dispatch model, that optimizes system performance over one year at hourly resolution.
This section demonstrates gas grid modelling in Spine as performed in Case study A2. The objective is to model a natural gas transmission system with pressure-driven gas and couple it with an electricity system to capture the flexibility provided by the gas network. The result is a dispatch model that co-optimizes operations in both systems over a day at hourly resolution.
This section demonstrates stochastic modelling in Spine using a simple example system. Three different stochastic structures are demonstrated: purely deterministic, stochastic fan, and converging fan.
Power grid investments:
This section demonstrates power grid investment modelling in Spine as performed in case study C2. The objective is twofold: (i) to model the Nordic synchronous power system (Norway, Sweden, Finland, and Denmark) with high operational detail; and (ii) to find optimal transmission line investment decisions over a long-term horizon of 10 years, for three different wind penetration scenarios.
All presentations [PDF]
Creation of new optimisation models requires a lot of work to get the data to the models and the results out of the models. Spine Toolbox is an open source data and workflow management tool to assist with these tasks and can work with models written in any language. Meanwhile, SpineInterface is a Julia package that links the data management capabilities of Spine Toolbox with Julia/JuMP modelling environment in a very direct way.
The data interfaces of Spine Toolbox together with SpineInterface simplifies the process of developing optimization models by allowing the model developer to focus on the constraint equations. The required data structures and data are defined with a graphical interface in Spine Toolbox and are immediately available to the model developer inside the constraint equation code without any action or code required by the model developer. SpineInterface supports the full range of data parameter types supported by Toolbox and provides a mechanism for representation of time and time-based data, either time series, time patterns or arbitrarily varying temporal data.
This session will be of interest to model developers and/or students who want a significant head start in developing optimization models. The sessions will also be of interest to model developers who may wish to translate existing models developed in other platforms such as GAMS, into the Spine framework using SpineInterface. The power of SpineInterface will be demonstrated in an interactive session where the full modelling workflow will be illustrated from data structure design and implementation to constraint equation development.
|14:00||Overview of SpineInterface|
|14:15||& Toolbox concepts and data structures including the Spine data API|
|14:30||& SpineInterface: convenience functions and accessing Spine Toolbox data
|14:45||Defining a model data structure in Spine Toolbox|
|15:00||& Building and solving an optimization model using SpineInterface
|15:15||Q & A|