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

New PeakPeriodSchedulesShift measure #57

Open
wants to merge 32 commits into
base: develop
Choose a base branch
from

Conversation

joseph-robertson
Copy link
Collaborator

@joseph-robertson joseph-robertson commented Mar 22, 2023

Closes #58.

This PR creates a new model measure called PeakPeriodSchedulesShift. Its purpose is to shift schedules based on a defined weekday (or weekday/weekend) peak period. Both ScheduleRuleset and ScheduleFile schedules are supported (i.e., they are subject to modifications).

Arguments:

  • schedules_peak_period (str)
    • A weekday (or weekday/weekend) "peak" time period.
  • schedules_peak_period_delay (int)
    • The number of hours after the end of the peak period to start the shift. Defaults to 0.
  • schedules_peak_period_allow_stacking (bool)
    • Whether schedules can stack events. Defaults to true.
  • schedules_peak_period_weekdays_only (bool)
    • Whether shift applies to weekdays only or all days. Defaults to true.
  • schedules_peak_period_schedule_rulesets_names (str; comma-separated)
    • A comma-separated list of ScheduleRuleset names for which the peak period shift applies.
  • schedules_peak_period_schedule_files_column_names (str; comma-separated)
    • A comma-separated list of ScheduleFile names for which the peak period shift applies.

Constraints:

  • All schedule shifts must occur within one calendar day (i.e., no shifting into the next day)

Some notes/suggestions after 6/27 meeting:

  • Update measure description(s) to describe intent/testing for the measure.
  • Should we allow negative schedules_peak_period_delay values? I.e., shift to before the peak period?
  • Should schedule names match argument values exactly? Or perhaps just be contained in actual schedule names? (Think units of a whole building where the schedule names are slightly different, e.g., have suffixes appended.)
  • Update README.md with a graphic. Here is an example.

Other notes:

  • Let's ignore the unchecked items above, for now.
  • Joe to talk to Scott about testing this measure in BEopt. Maybe schedule meeting between Joe/Jeff/Scott.
    • Can this measure be called multiple times so as to apply different peak periods to different schedules?
    • We should propose which categories this applies to, along with example inputs (perhaps different inputs for different appliances?) Target: Jeff will create github issue around this by Fri Jul 21. (Next BEopt release is Aug 14.)
    • Should we consider any sort of penetration of events that are affected? E.g., only 40% of the time (i.e., days) schedules actually get shifted.

@joseph-robertson joseph-robertson self-assigned this Mar 22, 2023
@joseph-robertson joseph-robertson changed the title New GEBAppliancesPeakPeriodShift measure New PeakPeriodSchedulesShift measure Apr 6, 2023
@shorowit shorowit mentioned this pull request Apr 18, 2023
3 tasks
@DavidGoldwasser
Copy link
Collaborator

@joseph-robertson do you still intend for this to be draft, or do we want to get this in upcoming measure release?

@joseph-robertson
Copy link
Collaborator Author

@DavidGoldwasser I believe this should remain draft. We will likely be including this measure in future analyses, and so would assist in additional testing of the measure.

@joseph-robertson joseph-robertson marked this pull request as ready for review May 20, 2024 19:50
@DavidGoldwasser DavidGoldwasser added this to the Measures For OS 3.9.0 milestone Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

Modeling GEB appliances
2 participants