Skip to content

feat: add 'cost' method to upgrade prioritization#452

Merged
danielolsen merged 1 commit intodevelopfrom
daniel/congestion_cost_upgrade
Apr 22, 2021
Merged

feat: add 'cost' method to upgrade prioritization#452
danielolsen merged 1 commit intodevelopfrom
daniel/congestion_cost_upgrade

Conversation

@danielolsen
Copy link
Copy Markdown
Contributor

@danielolsen danielolsen commented Apr 20, 2021

Purpose

Allow user to prioritize branch upgrades based on estimated cost in the numerator (where the denominator remains the congestion shadow price at a certain quantile). See #439 for details.

What the code is doing

The main logic is in the if method == "cost": block: we calculate the cost of upgrading each of the congested branches by 1x their original value, and then we divide the congestion metric by these values to get the branch upgrade ranking.

We also do a little simplification of the code where we calculate the bidirectional congestion, and move the application of the composite_allow_list filter up higher for better efficiency (so that we don't calculate quantiles for branches we know we're not going to select anyway), but these should have no effect on the results of the code.

Time estimate

10 minutes. Most of the work to enable this feature was actually contained in #450.

@danielolsen danielolsen self-assigned this Apr 20, 2021
Comment thread powersimdata/design/transmission/upgrade.py Outdated
Copy link
Copy Markdown
Collaborator

@BainanXia BainanXia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice. Thanks.

@danielolsen danielolsen force-pushed the daniel/congestion_cost_upgrade branch from b22a208 to 1fb66b0 Compare April 22, 2021 02:25
@danielolsen danielolsen merged commit 7e13d82 into develop Apr 22, 2021
@danielolsen danielolsen deleted the daniel/congestion_cost_upgrade branch April 22, 2021 16:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants