# PowerModelsDistribution.jl defining new objective

**URL:** <https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269>\
**Category:** Optimization (Mathematical)\
**Created:** [December 30, 2024, 6:54am UTC](https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269 "2024-12-30T06:54:35Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Glon](https://avatars.discourse-cdn.com/v4/letter/g/ccd318/32.png) [@Glon](https://discourse.julialang.org/u/Glon)\
**Post date:** [December 30, 2024, 6:54am UTC](https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269/1 "2024-12-30T06:54:36Z")

</div>

Hello all,

What if I want to define a new objective for running OPF in PowerModelsDistribution.jl? How can I do this? If someone can share me an example, I would really appreciate it.

Thank you!

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [December 30, 2024, 7:25pm UTC](https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269/2 "2024-12-30T19:25:52Z")

</div>

You can create model without optimising as follows:

```julia
pm = instantiate_mc_model(case, SOCConicUBFPowerModel, build_mc_opf);

```

Inside `pm` is a JuMP model that you can then access and modify as needed:

```julia
pm.model

```

---

<div class="post-metadata">

**Author:** ![Glon](https://avatars.discourse-cdn.com/v4/letter/g/ccd318/32.png) [@Glon](https://discourse.julialang.org/u/Glon)\
**Post date:** [January 1, 2025, 9:04am UTC](https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269/3 "2025-01-01T09:04:44Z")

</div>

so I can write and add constraints and variables as required?

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [January 1, 2025, 7:35pm UTC](https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269/4 "2025-01-01T19:35:08Z")

</div>

Yes. If you run into problems, please make a post with a reproducible example of what you are trying to do. It always helps to have a specific question rather than a generic “can I do X” 😄

---

<div class="post-metadata">

**Author:** ![Glon](https://avatars.discourse-cdn.com/v4/letter/g/ccd318/32.png) [@Glon](https://discourse.julialang.org/u/Glon)\
**Post date:** [January 1, 2025, 9:42pm UTC](https://discourse.julialang.org/t/powermodelsdistribution-jl-defining-new-objective/124269/5 "2025-01-01T21:42:50Z")

</div>

will do, thank you!
