# Powermodels.jl SDP relaxation

**URL:** <https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165>\
**Category:** Optimization (Mathematical)\
**Created:** [March 15, 2021, 4:28am UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165 "2021-03-15T04:28:08Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![aaldik](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aaldik](https://discourse.julialang.org/u/aaldik)\
**Post date:** [March 15, 2021, 4:28am UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/1 "2021-03-15T04:28:08Z")

</div>

Dears

I have a question regrading the Powermodels.jl package. Does it support the SDP relaxation? I have seen that it was mentioned in the documentation that it is supported (SDPWRMPowerModel). However, it didn’t work even though I have used SDP solvers like SeDuMi and SCS. I would appreciate your update in this regard.

Regards

---

<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:** [March 15, 2021, 5:39am UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/2 "2021-03-15T05:39:25Z")

</div>

> Does it support the SDP relaxation?

Yes. Use `SDPWRMPowerModel`.

> it didn’t work

What was the error?

---

<div class="post-metadata">

**Author:** ![aaldik](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aaldik](https://discourse.julialang.org/u/aaldik)\
**Post date:** [March 15, 2021, 1:27pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/3 "2021-03-15T13:27:14Z")

</div>

Thanks for the reply. The error that I have received is

LoadError: MethodError: no method matching setsolver(::JuMP.Model, ::SeDuMi.Optimizer)

Closest candidates are:

setsolver(::JuMP.Model, !Matched::MathProgBase.SolverInterface.AbstractMathProgSolver) at C:\Users\Abd-PC.juliapro\JuliaPro\_v1.0.3.1\packages\JuMP\I7whV\src\JuMP.jl:271

in expression starting at C:\Users\Abd-PC\Desktop\testing PowerModels\testing\_PowerModels\_2:14

setsolver(::GenericPowerModel{SDPWRMForm}, ::SeDuMi.Optimizer) at base.jl:168

#solve\_generic\_model#141(::Function, ::Function, ::GenericPowerModel{SDPWRMForm}, ::SeDuMi.Optimizer) at base.jl:228

(::getfield(PowerModels, Symbol(“#kw##solve\_generic\_model”)))(::NamedTuple{(:solution\_builder,),Tuple{typeof(PowerModels.get\_solution)}}, ::typeof(solve\_generic\_model), ::GenericPowerModel{SDPWRMForm}, ::SeDuMi.Optimizer) at none:0

#run\_generic\_model#138(::Function, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::Dict{String,Any}, ::Type, ::SeDuMi.Optimizer, ::Function) at base.jl:195

run\_generic\_model(::Dict{String,Any}, ::Type, ::SeDuMi.Optimizer, ::Function) at base.jl:191

#run\_generic\_model#137(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::String, ::Type, ::SeDuMi.Optimizer, ::Function) at base.jl:186

run\_generic\_model(::String, ::Type, ::SeDuMi.Optimizer, ::Function) at base.jl:185

#run\_opf#618(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::String, ::Type, ::SeDuMi.Optimizer) at opf.jl:15

run\_opf(::String, ::Type, ::SeDuMi.Optimizer) at opf.jl:15

top-level scope at none:0

---

<div class="post-metadata">

**Author:** ![aaldik](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aaldik](https://discourse.julialang.org/u/aaldik)\
**Post date:** [March 16, 2021, 1:25pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/4 "2021-03-16T13:25:46Z")

</div>

Any update?

---

<div class="post-metadata">

**Author:** ![ccoffrin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ccoffrin/32/400_2.png) [@ccoffrin](https://discourse.julialang.org/u/ccoffrin)\
**Post date:** [March 16, 2021, 1:55pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/5 "2021-03-16T13:55:13Z")

</div>

The log you show indicates an issue with the solver interface. I recommend trying SCS or Mosek, these are the ones I have used to developing and testing the SDP formulations.

---

<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:** [March 16, 2021, 8:28pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/6 "2021-03-16T20:28:09Z")

</div>

What version of PowerModels are you using (`import Pkg; Pkg.status()`). `setsolver` looks like it is for an old version of JuMP.

---

<div class="post-metadata">

**Author:** ![aaldik](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aaldik](https://discourse.julialang.org/u/aaldik)\
**Post date:** [March 16, 2021, 8:54pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/7 "2021-03-16T20:54:56Z")

</div>

PowerModels v0.9.8

SCS worked, but Sedumi didn’t

---

<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:** [March 16, 2021, 9:12pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/8 "2021-03-16T21:12:25Z")

</div>

The latest release of PowerModels is 0.18.0. Your version is two years old.

I would suggest that you don’t use JuliaPro, and just install the latest point release of Julia instead: [Download Julia](https://julialang.org/downloads/#current_stable_release)

---

<div class="post-metadata">

**Author:** ![aaldik](https://avatars.discourse-cdn.com/v4/letter/a/7cd45c/32.png) [@aaldik](https://discourse.julialang.org/u/aaldik)\
**Post date:** [April 6, 2021, 2:52pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/9 "2021-04-06T14:52:16Z")

</div>

> [@ccoffrin](#):
>
> Mosek

How to call Mosek for solving the SDP problem in PowerModels?

---

<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:** [April 6, 2021, 7:29pm UTC](https://discourse.julialang.org/t/powermodels-jl-sdp-relaxation/57165/10 "2021-04-06T19:29:17Z")

</div>

I answered your other question: [Using Gurobi with PowerModels - #2 by odow](https://discourse.julialang.org/t/using-gurobi-with-powermodels/58688/2)

`using MosekTools` and `Mosek.Optimizer`.
