PowerModels.jl icon indicating copy to clipboard operation
PowerModels.jl copied to clipboard

Reactive power costs & generator capability curves

Open KSepetanc opened this issue 6 years ago • 3 comments

Proposition to implement one or both Matpower generator features:

  • Reactive power costs
  • Generator capability curves

KSepetanc avatar Oct 12 '19 17:10 KSepetanc

Generator capability curves are surely a feature that I would like to see in PowerModels, and it would be fairly easy to incorporate Matpower's model for this into PowerModels. A PR would be welcome on this and I can provide some high level instructions for how to implement it.

Reactive power costs is a more delicate point. First, addition of Matpower's version of this feature will require significant code updates, in the matpwer parser and objective function building. Data validation is also an issue. For example, reactive power costs only make sense to me for very specific functions (e.g. qg^2 or abs(qg)). In contrast to active power cost functions, I think it is much easier to make nonsensical test cases when applying generic cost functions to reactive power. For these reasons I think it would be better to handle reactive power costs in PowerModels via a matpower data extension (see https://lanl-ansi.github.io/PowerModels.jl/stable/network-data/#Working-with-Matpower-Data-Files-1) that targets a specific kind of reactive cost model, followed by a custom objective function that leverages this extended dataset. Does that make sense?

ccoffrin avatar Oct 12 '19 18:10 ccoffrin

Thank you for suggestion. I didn't know I could change Matpower input file and load that easily in the PowerModels. It is good solution in short-medium term that is also applicable on capability curves.

I can try to implement capability curves. However, I haven't coded jet much in Julia besides custom OPF models and PowerModels data output script to Excel (for GAMS).

KSepetanc avatar Oct 12 '19 19:10 KSepetanc

If you have a working solution in the near term I would suggest just waiting for a few months. Most likely we will have some support for capability curves soon.

You might also find these Julia scripts useful for quickly testing some variants of OPF problems,

https://github.com/lanl-ansi/PowerModelsAnnex.jl/tree/master/src/model

ccoffrin avatar Oct 12 '19 20:10 ccoffrin

Closing in favor of #614.

ccoffrin avatar Aug 13 '23 01:08 ccoffrin