-
Notifications
You must be signed in to change notification settings - Fork 38
Enable AC polar formulation for OPF #122
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
Conversation
|
Two years after it is finally time to merge this! 🥳 @hhijazi and/or @JaromilNajman can you double check it and convince @simonbowly it is a must have please? |
3bbbfd1 to
5e55b58
Compare
5e55b58 to
5748962
Compare
|
Woohoo, it's time!? We should also take a look at the parameter settings for the other model types. I'm guessing for |
|
Yes good point. We should probably revise all possibilities in view of v13. Pinging the ACOPF gurus @hhijazi and @JaromilNajman |
| useef = True | ||
| usejabr = False | ||
| polar = False | ||
| default_solver_params = { |
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.
I would change the settings to
"OptimalityTarget": 1
"SolutionLimit": 1
We have to set a solution limit for the case when we have branch switching, because then we have binaries in the model.
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.
wouldn't OptimalityTarget 1 throw an error for a MIP?
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.
yes, it would. We would need to do something else when we have branch switching on.
|
|
||
| # use aclocal to run Gurobi as a local solver (stops at the first feasible solution) | ||
| if opftype.lower() == "aclocal": | ||
| opftype = "ac" |
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.
I would remove aclocal and introduce acreclocal and acpolarlocal which are the same, but with the difference that for rec we use
useef = True
usejabr = False
polar = False
and for polar we use
useef = False
usejabr = False
polar = True
|
We need to adjust the polar formulation to use nlconstrs. Right now it still manually disaggregates the model and uses |
, solver parameters, and unit tests
|
Can we close this one and transition to #176? |
I can do that. What exactly is left to be done? EDIT: I think I know now what has to be done. |
Todo: