Skip to content

Instantly share code, notes, and snippets.

@ccoffrin
Created January 13, 2020 14:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ccoffrin/cf17514db200b3e4f597aec3af4380d1 to your computer and use it in GitHub Desktop.
Save ccoffrin/cf17514db200b3e4f597aec3af4380d1 to your computer and use it in GitHub Desktop.
Some OPF Examples
# JuMP v0.18
using PowerModels
using Foo
using Bar
# quick test
result = run_opf("network.m", ACPPowerModel, FooSolver(...))
# compare formulations, keep solver constant
solver_1 = FooSolver(...)
result_a = run_opf("network.m", ACPPowerModel, solver_1)
result_b = run_opf("network.m", SOCWRPowerModel, solver_1)
result_c = run_opf("network.m", DCPPowerModel, solver_1)
# keep formulation constant, compare solvers
solver_1 = FooSolver(...)
solver_2 = BarSolver(...)
result_1 = run_opf("network.m", ACPPowerModel, solver_1)
result_2 = run_opf("network.m", ACPPowerModel, solver_2)
# JuMP v0.19 (note, "with_optimizer" is exported by PowerModels)
using PowerModels
using Foo
using Bar
# quick test
result = run_opf("network.m", ACPPowerModel, with_optimizer(Foo.Optimizer, ...))
# compare formulations, keep solver constant
solver_1 = with_optimizer(Foo.Optimizer, ...)
result_a = run_opf("network.m", ACPPowerModel, solver_1)
result_b = run_opf("network.m", SOCWRPowerModel, solver_1)
result_c = run_opf("network.m", DCPPowerModel, solver_1)
# keep formulation constant, compare solvers
solver_1 = with_optimizer(Foo.Optimizer, ...)
solver_2 = with_optimizer(Bar.Optimizer, ...)
result_1 = run_opf("network.m", ACPPowerModel, solver_1)
result_2 = run_opf("network.m", ACPPowerModel, solver_2)
# JuMP#master (note, not implemented yet, just postulating)
using PowerModels
using Foo
using Bar
# quick test
result = run_opf("network.m", ACPPowerModel, Foo.Optimizer, solver_parameters=[...])
# compare formulations, keep solver constant
solver_1 = Foo.Optimizer
solver_1_parameters = [...]
result_a = run_opf("network.m", ACPPowerModel, solver_1, solver_parameters=solver_1_parameters)
result_b = run_opf("network.m", SOCWRPowerModel, solver_1, solver_parameters=solver_1_parameters)
result_c = run_opf("network.m", DCPPowerModel, solver_1, solver_parameters=solver_1_parameters)
# keep formulation constant, compare solvers
solver_1 = with_optimizer(Foo.Optimizer, ...)
solver_2_parameters = [...]
solver_2 = with_optimizer(Bar.Optimizer, ...)
solver_2_parameters = [...]
result1 = run_opf("network.m", ACPPowerModel, solver_1, solver_parameters=solver_1_parameters)
result2 = run_opf("network.m", ACPPowerModel, solver_2, solver_parameters=solver_2_parameters)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment