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

Reproducible results of the stochastic model #127

Closed
JW-Kraft opened this issue Apr 3, 2024 · 2 comments
Closed

Reproducible results of the stochastic model #127

JW-Kraft opened this issue Apr 3, 2024 · 2 comments
Labels
enhancement New feature or request

Comments

@JW-Kraft
Copy link
Collaborator

JW-Kraft commented Apr 3, 2024

In todays dev meeting we discussed the issue of being able to exactly reproduce RAMP's results. This has multiple motivations:

  1. Reviewers of the JOSS paper submission requested code to reproduce figure 1.
    [REVIEW]: RAMP: stochastic simulation of user-driven energy demand time series openjournals/joss-reviews#6418 (comment)
    I'm not sure if only the raw data of the plotted load profile is requested or the complete code sample to run the displayed test in RAMP and model the plotted load profile (starting with the input file).
    If it's case 2, this will not be possible without setting the random seed, since the stochastic model will return different results on different runs.

  2. @FraSanvit mentioned this would be helpful for testing.

  3. Setting and noting random seeds of stochastic models is good practice to allow for reproducibility. We should give RAMP users the ability to do that. This way they can submit a complete code sample which exactly reproduces the results presented in their papers.

I will look into how to implement this in the next days. My first idea was to just add a optional seed argument to the UseCase class.
What do you think?

@Bachibouzouk
Copy link
Collaborator

My first idea was to just add a optional seed argument to the UseCase class.
What do you think?

I think it would make sense. Now a User instance not connected to a UseCase instance gets a default one as soon as generate_single_load_profile() method is called without providing a peak_time_range argument.

We should maybe look what happens if an Appliance instance is created without being linked to a User. I think the user and usecase should be created, if not provided, only when a method to generate load profiles is used

@Bachibouzouk
Copy link
Collaborator

Closed in #128

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants