# JuMP v0.19 & Ipopt: warm start (dual)

**URL:** https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745
**Category:** Specific Domains
**Tags:** jump
**Created:** [April 4, 2019, 12:23pm UTC](https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745 "2019-04-04T12:23:56Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![pracherla9](https://avatars.discourse-cdn.com/v4/letter/p/57b2e6/32.png) [@pracherla9](https://discourse.julialang.org/u/pracherla9)
#### Post date: [April 4, 2019, 12:23pm UTC](https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745/1 "2019-04-04T12:23:56Z")

</div>

Hi Miles: This is a follow-up to our discussion yesterday regarding a warm start of the dual using JuMP+Ipopt. Could you please point me to the relevant documentation on that? (Note that I’ve already taken full advantage of the primal start feature you had mentioned (i.e., `set_start_value()`). Thanks! -pavan

---

<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 4, 2019, 2:33pm UTC](https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745/2 "2019-04-04T14:33:49Z")

</div>

I’m not privy to your discussion with @miles.lubin, but I don’t think Ipopt (or JuMP) supports setting dual starts yet.

---

<div class="post-metadata">

### Author: ![miles.lubin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/miles.lubin/32/279_2.png) [@miles.lubin](https://discourse.julialang.org/u/miles.lubin)
#### Post date: [April 5, 2019, 1:37am UTC](https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745/3 "2019-04-05T01:37:32Z")

</div>

Hi @pracherla9. I opened [Support ConstraintDualStart and NLPBlockDualStart · Issue #164 · jump-dev/Ipopt.jl · GitHub](https://github.com/JuliaOpt/Ipopt.jl/issues/164) which discusses the plumbing that’s missing in order to provide dual starts from MOI and send them to Ipopt. After that, a little bit more is needed to provide a nice interface at the JuMP level. I consider this a blocking issue for JuMP 1.0 because it’s one of the reasons we made the transition from MPB to MOI and requires not much more than a few hours of work. However, I can’t make promises on how fast it will happen without external contributions.

---

<div class="post-metadata">

### Author: ![pracherla9](https://avatars.discourse-cdn.com/v4/letter/p/57b2e6/32.png) [@pracherla9](https://discourse.julialang.org/u/pracherla9)
#### Post date: [April 5, 2019, 12:59pm UTC](https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745/4 "2019-04-05T12:59:14Z")

</div>

Hi @miles.lubin: Thanks for pointing me in the right direction. I’ve taken a quick look at the pertinent code sections and agree that it shouldn’t take more than a few hours of work. I will take a stab at it myself and let you know how it goes. Thanks again! -pavan

---

<div class="post-metadata">

### Author: ![pracherla9](https://avatars.discourse-cdn.com/v4/letter/p/57b2e6/32.png) [@pracherla9](https://discourse.julialang.org/u/pracherla9)
#### Post date: [April 5, 2019, 12:59pm UTC](https://discourse.julialang.org/t/jump-v0-19-ipopt-warm-start-dual/22745/5 "2019-04-05T12:59:20Z")

</div>

PS. Since others might stumble upon this discussion at a later date, it’s worth adding this caveat emptor about “warm-starting” Ipopt: [https://www.coin-or.org/Ipopt/documentation/node32.html](https://www.coin-or.org/Ipopt/documentation/node32.html).
