-
Notifications
You must be signed in to change notification settings - Fork 41
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
Possible issue with SOCWRPowerModel #145
Comments
Hey Marta, What do you mean with 'pg at the transformer'? Greetings, |
The implemented SOC relaxations are not equivalent.
Because the implemented SOCWRPowerModel only considers at the diagonal of S_ij, a lot of structure is lost, therefore the relaxation is much weaker. A better BIM SOC relaxation (equivalent to the above BFM) can be developed, by starting from the unbalanced SDP BIM (e.g. the matrix form as published by Gan and Low '14) and then relaxing to the complex-value SDP constraints to SOCs. As you may have noticed, solving polynomial equivalent of SOCConicUBFPowerModel, i.e. SOCNLPUBFPowerModel, with Ipopt is tricky. You may need to play with the baseMVA and Ipopt setting to obtain reliable results. Some old results (won't run if you have JuMP 0.19):
Does this help? Other than updating the documentation to clarify this, should we close the issue? |
Thank you and sorry, I thought they were mathematically equivalent formulations. I'll close the issue :) |
Hello all,
I was trying to run an OPF with the SOCWR formulation and obtained unexpected results:
After checking the sum of the to and fr losses, it appears that it is a negative number.
I wondered whether it is actually a bug in the code or a property of the relaxation that I fail to understand.
The SOC conic formulation, on the other hand, returns results which are very close to those of the AC one and it seems fine.
You can find a script that displays the issue below.
``
using PowerModels
using ThreePhasePowerModels
using InfrastructureModels
using Ipopt
using JuMP
using Mosek
data = ThreePhasePowerModels.parse_file(".\test\data\opendss\case3_unbalanced.dss")
result_ACOPF = run_tp_opf(data, ACPPowerModel, IpoptSolver())
result_SOCOPF = run_tp_opf(data, SOCWRPowerModel, IpoptSolver())
result_SOCOPF_conic = run_tp_opf_bf(data, SOCConicUBFPowerModel, MosekSolver())
print(result_ACOPF["objective"])
print("\n")
print(result_SOCOPF["objective"])
print("\n")
print(result_SOCOPF_conic["objective"])
result_ACOPF_obj = 0.021481101490431413
result_SOCOPF_obj = -2.851668441519614
result_SOCOPF_conic_obj = 0.02117942578643128
The text was updated successfully, but these errors were encountered: