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

Review/expand manuscript #145

Merged
merged 4 commits into from
May 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified joss_paper/example_output.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
53 changes: 53 additions & 0 deletions joss_paper/paper.bib
Original file line number Diff line number Diff line change
Expand Up @@ -220,3 +220,56 @@ @misc{ramp_zenodo:2023
year = {2023},
doi = {10.5281/zenodo.10275752},
}

@article{crest_model:2015,
author = "McKenna, Eoghan and Thomson, Murray and Barton, John",
title = "{CREST Demand Model}",
year = "2015",
month = "9",
url = "https://repository.lboro.ac.uk/articles/dataset/CREST_Demand_Model_v2_0/2001129",
doi = "10.17028/rd.lboro.2001129.v8"
}


@article{mandelli_lpg:2016,
title = {Novel procedure to formulate load profiles for off-grid rural areas},
volume = {31},
issn = {0973-0826},
doi = {https://doi.org/10.1016/j.esd.2016.01.005},
journal = {Energy for Sustainable Development},
author = {Mandelli, Stefano and Merlo, Marco and Colombo, Emanuela},
year = {2016},
keywords = {Electric consumptions, Load model, Off-grid energy systems, Renewables, Rural electrification, Stochastic model},
pages = {130--142},
}

@article{barsanti_demod:2021,
title = {Socio-technical modeling of smart energy systems: a co-simulation design for domestic energy demand},
volume = {4},
issn = {2520-8942},
doi = {10.1186/s42162-021-00180-6},
number = {3},
urldate = {2024-05-22},
journal = {Energy Informatics},
author = {Barsanti, Matteo and Schwarz, Jan Sören and Gérard Constantin, Lionel Guy and Kasturi, Pranay and Binder, Claudia R. and Lehnhoff, Sebastian},
month = sep,
year = {2021},
keywords = {Co-simulation, Domestic energy demand, Granularity, Modularity, Scalability, Smart energy system, Socio-technical simulation, Transparency},
pages = {12},
}


@article{pflugradt_loadprofilegenerator:2022,
title = {{LoadProfileGenerator}: {An} {Agent}-{Based} {Behavior} {Simulation} for {Generating} {Residential} {Load} {Profiles}},
volume = {7},
issn = {2475-9066},
url = {https://joss.theoj.org/papers/10.21105/joss.03574},
doi = {10.21105/joss.03574},
number = {71},
urldate = {2024-05-22},
journal = {Journal of Open Source Software},
author = {Pflugradt, Noah and Stenzel, Peter and Kotzur, Leander and Stolten, Detlef},
month = mar,
year = {2022},
pages = {3574},
}
26 changes: 18 additions & 8 deletions joss_paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ authors:
corresponding: true # (This is how to denote the corresponding author)
affiliation: 1
- name: Pierre-François Duc
orcid:
orcid:
affiliation: 2
- name: Mohammad Amin Tahavori
orcid: 0000-0002-7753-0523
Expand All @@ -22,21 +22,27 @@ authors:
affiliation: "4,7"
- name: Sarah Eckhoff
orcid: 0000-0002-6168-4835
affiliation: 5
affiliation: 5
- name: Maria C.G. Hart
orcid: 0000-0002-1031-9782
affiliation: 5
affiliation: 5
- name: Francesco Sanvito
orcid: 0000-0002-9152-9684
affiliation: 1
- name: Gregory Ireland
orcid:
orcid:
affiliation: "2,6"
- name: Sergio Balderrama
orcid:
orcid:
affiliation: 7
- name: Johann Kraft
orcid:
affiliation: 2
- name: Gokarna Dhungel
orcid:
affiliation: 2
- name: Sylvain Quoilin
orcid:
orcid:
affiliation: 4
affiliations:
- name: TU Delft, Faculty of Technology, Policy and Management, Delft, The Netherlands
Expand Down Expand Up @@ -64,12 +70,16 @@ The urgency of the energy transition is leading to a rapid evolution of energy s

# Statement of need

RAMP is an open-source, Python-based software suite that enables the stochastic simulation of any user-driven energy demand time series based on few simple inputs. In fact, the software is designed to require only a basic understanding of the expected user activity patterns and owned appliances as inputs, to be provided in tabular (`.xlsx`) format. Then, it leverages stochasticity (using the `random` package) to make up for the lack of more detailed information and to account for the unpredictability of human behaviour (see Figure \ref{fig:example}). This way, RAMP allows generating and visualising synthetic data wherever metered data does not exist, such as when designing systems in remote areas [@lombardi_generating:2019] or when looking at future electric-vehicle fleets [@mangipinto_impact:2022]. Moreover, it features several degrees of customisations, allowing users to explicitly simulate radically different but equally plausible behaviour scenarios as a key ingredient to robust system design.
RAMP is an open-source, Python-based software suite that enables the stochastic simulation of any user-driven energy demand time series based on few simple inputs. In fact, the software is designed to require only a basic understanding of the expected user activity patterns and owned appliances as inputs, to be provided in tabular (`.xlsx`) format. For instance, a minimal definition of a user type (e.g., a certain category of households) requires only information about which energy-consuming devices they own, when, on a typical day, they tend to use them, and for how long in total. Then, the software leverages stochasticity (using the `random` package) to make up for the lack of more detailed information and to account for the unpredictability of human behaviour (see Figure \ref{fig:example}). This way, RAMP allows generating and visualising synthetic data wherever detailed metered data does not exist, such as when designing systems in remote areas [@lombardi_generating:2019] or when looking at future electric-vehicle fleets [@mangipinto_impact:2022].

This reliance on simple inputs distinguishes RAMP from comparable tools. For instance, other popular open-source demand simulation tools, such as CREST [@crest_model:2015] and demod [@barsanti_demod:2021], are based on extensive and context-specific input datasets from the UK and Germany, respectively, which populate the occupancy model at the core of their approach. Similarly, the Load Profile Generator model [@pflugradt_loadprofilegenerator:2022], also openly available, implements a desire-driven behavioural simulation grounded on a psychological model based on German household data. Due to their data-driven nature, these models are not readily applicable to other similar contexts, such as different European countries, and are arguably inapplicable to cases, such as remote areas, with unique characteristics. Moreover, the heavy reliance on historical data serves poorly the need to accommodate the modelling of future, entirely new behaviours or devices. RAMP trades off the capability of providing detailed information about users' occupancy and activity, typical of the above data-driven models, for substantially greater modelling flexibility and context adaptability. Previous attempts at generating demand time series based on a similar approach as RAMP exist [@mandelli_lpg:2016], but they are neither open-source nor capable of simulating non-electric or more sophisticated energy uses.

In fact, RAMP features several degrees of customisation, enabling modellers to switch on or off features tailored to the needs of specific energy uses. For example, to represent the highly variable load profile of cooking appliances, which changes completely depending on which meal is cooked, the software allows defining many possible meal types with an associated cooking cycle; then, it leverages stochasticity to diversity which meals are cooked when. For heat-related energy uses that may be influenced by weather parameters, such as outdoor or groundwater temperature, it is possible to provide a time series of such parameters and define how they affect the default energy consumption. These and many other customisation options allow users to explicitly simulate radically different but equally plausible behaviour scenarios, including behaviours that may happen in the future and that have no relationship with past data, as a key ingredient to robust system design.

RAMP has already been used in many scientific publications, for instance, for the simulation of electricity [@dimovski_holistic:2023], heating [@stevanato_modeling:2020], cooking [@stevanato_long-term:2020] and electric mobility [@secchi_smart:2023] demand time series at scales ranging from districts [@pasqui_new:2023] or villages [@villarroel-schneider_open-source:2023] to continents [@pickering_diversity:2022]. It has dozens of users globally and has recently become a multi-institution software development effort, actively contributed by TU Delft, VITO, Sympheny, the Reiner Lemoine Institut, the University of Liège and the Leibniz University Hannover. The joint development process has brought major improvements to the code structure, syntax and efficiency, more extensive documentation, and a web-based graphical user interface for users with no Python experience [@hart_gui:2023].

RAMP is developed openly on GitHub [@ramp_github] and each new release is archived on Zenodo [@ramp_zenodo:2023].

![Example output (normalised by peak demand) for the simulation of the electricity load of three households in a small village over five days. The thick blue line represents the five-day average, while individual days are plotted in a lighter colour. \label{fig:example}](example_output.png)

# References
# References
Loading