Add ChangeTable method which can automatically suggest new higher-voltage lines
danielolsen opened this issue · 0 comments
Describe the workflow you want to enable
From the user's perspective, a function would evaluate the list of branch upgrades currently in the change table--possibly also evaluating congestion from a reference scenario--and suggest (or implement) changes which replace/augment some lower-voltage branch upgrades with higher-voltage branch additions/upgrades.
E.g. if we have a highly-upgraded or heavily congested 69 kV line between two substations that have 138 kV buses, we could add a new 138 kV branch, rather than just assuming that congestion will always be solved by adding parallel branches of the same voltage (effectively what we're doing now by linearly scaling rating and impedance). Or similarly, if there are several 69 kV lines in series between two substations with 138 kV buses (i.e., several hops away), and they are all congested in the same direction (not due to power originating from or flowing to within the 69 kV segments), then we add a new 138 kV line that bypasses the low-voltage branches entirely.
This issue is a follow-up to #439, since the third bullet there is the most challenging and deserves its own separate issue for brainstorming.
Describe your proposed implementation
- The
ChangeTable
class should have a new method, e.g.add_higher_voltage_branches
which would be the user-facing implementation. - The logic itself would probably live in
powersimdata.design.transmission
.