# JuMPeR and Grisu

**URL:** <https://discourse.julialang.org/t/jumper-and-grisu/102258>\
**Category:** Optimization (Mathematical)\
**Tags:** question\
**Created:** [July 29, 2023, 9:38pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258 "2023-07-29T21:38:55Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![edwinmeriaux](https://avatars.discourse-cdn.com/v4/letter/e/c4cdca/32.png) [@edwinmeriaux](https://discourse.julialang.org/u/edwinmeriaux)\
**Post date:** [July 29, 2023, 9:38pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/1 "2023-07-29T21:38:56Z")

</div>

Hello! I am very new to Julia and I just downloaded it today!

I’m trying to use JuMPeR for robust optimization cases. But JuMPeR requires Grisu which i understand it no longer used. So I found the work around but it doesn’t seem to be working:

using Pkg  
Pkg.add(“JuMPeR”)

Pkg.add(“Grisu”)

if isdefined(Base, :Grisu)  
import Base.Grisu  
else  
import Grisu  
end

using JuMPeR

Am i using this incorrectly? Please let me know.

---

<div class="post-metadata">

**Author:** ![longemen3000](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/longemen3000/32/7298_2.png) [@longemen3000](https://discourse.julialang.org/u/longemen3000)\
**Post date:** [July 30, 2023, 5:10am UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/2 "2023-07-30T05:10:29Z")

</div>

Welcome to the julia discourse!

i think that the package is too old to be used with recent versions of julia. one signal is that the package’s repo does not have a project.toml file.

> **[GitHub - IainNZ/JuMPeR.jl: Julia for Mathematical Programming - extension for...](https://github.com/IainNZ/JuMPeR.jl)**
>
> Julia for Mathematical Programming - extension for Robust Optimization - GitHub - IainNZ/JuMPeR.jl: Julia for Mathematical Programming - extension for Robust Optimization

---

<div class="post-metadata">

**Author:** ![blegat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/blegat/32/217090_2.png) [@blegat](https://discourse.julialang.org/u/blegat)\
**Post date:** [July 30, 2023, 11:38am UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/3 "2023-07-30T11:38:04Z")

</div>

Yes, this package would need some work to be updated to JuMP v0.19 as well since we made the transition from MathProgBase to MathOptInterface

---

<div class="post-metadata">

**Author:** ![edwinmeriaux](https://avatars.discourse-cdn.com/v4/letter/e/c4cdca/32.png) [@edwinmeriaux](https://discourse.julialang.org/u/edwinmeriaux)\
**Post date:** [July 30, 2023, 1:38pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/4 "2023-07-30T13:38:31Z")

</div>

Hello! Thank you for your time! So is there no way to use this package? Would a downgrade to my Julia Version be the only way forward?

If the line “if isdefined” isn’t useful then why is it the “solution” to this problem? Or is this only for older versions of Julia?

---

<div class="post-metadata">

**Author:** ![edwinmeriaux](https://avatars.discourse-cdn.com/v4/letter/e/c4cdca/32.png) [@edwinmeriaux](https://discourse.julialang.org/u/edwinmeriaux)\
**Post date:** [July 30, 2023, 1:39pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/5 "2023-07-30T13:39:06Z")

</div>

Hello! Thank you for your time aswell! 🙂 So if I downgrade Julia would it work?

---

<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:** [July 30, 2023, 6:30pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/6 "2023-07-30T18:30:33Z")

</div>

Glad you’re trying out Julia! Just to be clear, JuMPeR is unmaintained and unsupported. You will undoubtedly have a bad experience getting it to work and dealing with compatibility issues. That said, you can try installing Julia 1.0 with JuMP 0.18.

---

<div class="post-metadata">

**Author:** ![edwinmeriaux](https://avatars.discourse-cdn.com/v4/letter/e/c4cdca/32.png) [@edwinmeriaux](https://discourse.julialang.org/u/edwinmeriaux)\
**Post date:** [July 30, 2023, 11:21pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/7 "2023-07-30T23:21:51Z")

</div>

Ok That works thanks! Would you know if there are any supported and maintained robust optimization Julia libraries? All the ones I find seem to be no longer supported.

---

<div class="post-metadata">

**Author:** ![blob](https://avatars.discourse-cdn.com/v4/letter/b/ebca7d/32.png) [@blob](https://discourse.julialang.org/u/blob)\
**Post date:** [July 31, 2023, 6:08am UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/8 "2023-07-31T06:08:30Z")

</div>

Maybe you can use [InfiniteOpt](https://infiniteopt.github.io/InfiniteOpt.jl/stable/)? As far as I know it doesn’t provide solvers, but still, it allows setting up infinite dimensional problems in JuMP.

---

<div class="post-metadata">

**Author:** ![mike\_k](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mike_k/32/211864_2.png) [@mike\_k](https://discourse.julialang.org/u/mike_k)\
**Post date:** [July 31, 2023, 12:57pm UTC](https://discourse.julialang.org/t/jumper-and-grisu/102258/9 "2023-07-31T12:57:40Z")

</div>

I think the best (and most tractable) way to tackle robust optimization problems is to formulate their [robust counterpart](https://en.wikipedia.org/wiki/Robust_optimization#Robust_counterpart), and to solve the latter with your favorite appropriate solver. This approach is (as far as I know) the state-of-the-art.
