lanl-ansi / PowerModels.jl

A Julia/JuMP Package for Power Network Optimization
https://lanl-ansi.github.io/PowerModels.jl/stable/
Other
388 stars 145 forks source link

Add Swtich Support to Power Flow Problems #703

Open panciatici opened 4 years ago

panciatici commented 4 years ago

It seems that "switches" are not really supported in "pf.jl"

I got the following message: "[error | PowerModels]: active power decision variables appear to be missing for switch components ERROR: LoadError: active power decision variables appear to be missing for switch components"

Perhaps something similar to "expression_branch_flow_yt_from(pm, i)" is missing.

Patrick (RTE)

ccoffrin commented 4 years ago

That is correct, this is PowerModels' no so clear message that means "this is not currently supported".

Switches are a relatively new component, so support has not made its way into all of the problems and I am still working on the best formulations. As an example of how switches can be used in OPF you can have a look at these testing formulations,

OPF with fixed switch status https://github.com/lanl-ansi/PowerModels.jl/blob/master/src/prob/test.jl#L54

OPF with controllable switches https://github.com/lanl-ansi/PowerModels.jl/blob/master/src/prob/test.jl#L100

OPF for a node-breaker style of model https://github.com/lanl-ansi/PowerModels.jl/blob/master/src/prob/test.jl#L149

So far, I have only tested these features on some toy models, https://github.com/lanl-ansi/PowerModels.jl/blob/master/test/data/matpower/case5_sw.m https://github.com/lanl-ansi/PowerModels.jl/blob/master/test/data/matpower/case5_sw_nb.m

But it appears to be working.

If switch support in PF is a high priority feature for you I can look into adding it.

panciatici commented 4 years ago

Thank you! Yes, switch support in PF is a high priority feature for us. This is essential for our competition on RL for optimal switching. We just need an OPF with fixed switch status. I can have a look to : https://github.com/lanl-ansi/PowerModels.jl/blob/master/src/prob/test.jl#L54

ccoffrin commented 4 years ago

Ok great. If that formulation does not meet your needs just let me know. Adding switches with a "fixed state" to any problem specification should not be too difficult.