-
Couldn't load subscription status.
- Fork 20
Implement the ShiftingMatryoshka algorithm for the PowerManager
#1146
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
Merged
Merged
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
4dd9c15
Revert "Rename parameter `in_shifting_group` → `set_operating_point` …
shsms 27fc177
Revert "Support power requests from shifting actors in the PowerManag…
shsms edd4fd8
Rename `_add_bounds_tracker` → `_add_system_bounds_tracker`
shsms 8d45fc9
Clone the Matryoshka implementation and name it ShiftingMatryoshka
shsms 93236a3
Implement the adding of powers and shifting/limiting of bounds
shsms 34814cf
Unittest the shifting matryoshka algorithm
shsms e9271ac
Integrate new `ShiftingMatryoshka` algorithm into the PowerManager
shsms b43c45c
Make `ShiftingMatryoshka` the default power manager algorithm
shsms f9b884b
Update microgrid documentation with new power manager behaviour
shsms 89978e0
Update `propose_power` docs to refer to microgrid docs
shsms 41e0a3a
Update release notes
shsms 5caf4ae
Apply exclusion bounds only after the target power is calculated
shsms 07b1c1b
Add _get_nearest_possible_power function
shsms cafa563
Don't bypass proposals with out-of-bounds power requests
shsms 95e326c
Add code comments explaining the `ShiftingMatryoshka` implementation
shsms File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All (or at least some of) the old documentation here should still be useful for people interested in the old
Matryoshkaalgorithm, so not sure if replacing it is the best choice. I wonder if the docs shouldn't be moved to the algorithms themselves, and either referenced here (or see if there is a way to include it with mkdocs, but this won't work/look nice when reading the docs from the editor). Maybe in here we can just say more generically that there are 2 available algorithms, say which is the default, and then just link to the algorithm docs for details? If the plan is to remove the old algo soon, I guess it is fine to move forward as it is, but if we really want to support more than one algorithm, the docs should be structured in a way that we can explain all of them and switch the default easily without rewriting the whole__init__.pydocs.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code for the old algorithm is still there, but users cannot choose it. Chances are we'll not need the old algorithm anymore. We could introduce new algorithms in the future just for specific component types, like EVs, etc. But we don't have to change the docs structure until we offer multiple algorithms for them to choose from.