# Particle Swarm Optimization solver and JuMP?

**URL:** <https://discourse.julialang.org/t/particle-swarm-optimization-solver-and-jump/32025>\
**Category:** Optimization (Mathematical)\
**Tags:** question, jump\
**Created:** [December 8, 2019, 6:40pm UTC](https://discourse.julialang.org/t/particle-swarm-optimization-solver-and-jump/32025 "2019-12-08T18:40:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![bienpierre](https://avatars.discourse-cdn.com/v4/letter/b/8c91f0/32.png) [@bienpierre](https://discourse.julialang.org/u/bienpierre)\
**Post date:** [December 8, 2019, 6:40pm UTC](https://discourse.julialang.org/t/particle-swarm-optimization-solver-and-jump/32025/1 "2019-12-08T18:40:59Z")

</div>

Hello,

I would like to solve a non linear optimisation problem which is non smooth. I programmed the problem with JuMP and I tried to solve it with Ipopt solver. However, Ipopt is not able to solve it. I had a look about global solver and metaheursitic. I see the [PSO](https://www.researchgate.net/profile/Xin-She_Yang/publication/235979455_Nature-Inspired_Metaheuristic_Algorithms/links/0c96051520ff6131a0000000/Nature-Inspired-Metaheuristic-Algorithms.pdf) (particle swarm optimization), and I searched if there is one with julia and JuMP interface, however I haven’t found any. I saw blackboxoptim.jl, but without PSO and JuMP interface.

Does someone has any information about global optimizer (PSO) and JuMP ?

Warmest regards

---

<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:** [December 8, 2019, 6:48pm UTC](https://discourse.julialang.org/t/particle-swarm-optimization-solver-and-jump/32025/2 "2019-12-08T18:48:45Z")

</div>

Before jumping to PSO have you tried giving a global optimization solver a try? For example, Couenne, Baron, Alpine? For small to medium sized problems these can be quite effective.

---

<div class="post-metadata">

**Author:** ![bienpierre](https://avatars.discourse-cdn.com/v4/letter/b/8c91f0/32.png) [@bienpierre](https://discourse.julialang.org/u/bienpierre)\
**Post date:** [December 10, 2019, 6:58am UTC](https://discourse.julialang.org/t/particle-swarm-optimization-solver-and-jump/32025/3 "2019-12-10T06:58:37Z")

</div>

Thanks M. Coffrin for answering,

I try to follow your guidance:

First, I had a look with Alpine, however the non-linear problem has exp(x) and log(x), it is written on [github Alpine page](https://github.com/lanl-ansi/Alpine.jl) that it is not supported. Second, I do not have Baron license nor my lab, and I am not working with the affiliate universities.

Finally, I tried Couenne with [AmplNLWriter.jl](https://github.com/JuliaOpt/AmplNLWriter.jl). Unfortunately, after couple of hours of computation, there are still no outputs (more than 1 day). To compare, Ipopt return “Exit: Converged to a point of local infeasibility. Problem may be infeasible” after 24 minutes computing.

I had a look at [optim.jl](https://github.com/JuliaNLSolvers/Optim.jl), there is a Particle Swarm Algorithm. Is there a way to translate JuMP model to be able to be optimize through Optim.jl?

Warmest regards
