English

Juniper: An Open-Source Nonlinear Branch-and-Bound Solver in Julia

Optimization and Control 2018-06-27 v1

Abstract

Nonconvex mixed-integer nonlinear programs (MINLPs) represent a challenging class of optimization problems that often arise in engineering and scientific applications. Because of nonconvexities, these programs are typically solved with global optimization algorithms, which have limited scalability. However, nonlinear branch-and-bound has recently been shown to be an effective heuristic for quickly finding high-quality solutions to large-scale nonconvex MINLPs, such as those arising in infrastructure network optimization. This work proposes Juniper, a Julia-based open-source solver for nonlinear branch-and-bound. Leveraging the high-level Julia programming language makes it easy to modify Juniper's algorithm and explore extensions, such as branching heuristics, feasibility pumps, and parallelization. Detailed numerical experiments demonstrate that the initial release of Juniper is comparable with other nonlinear branch-and-bound solvers, such as Bonmin, Minotaur, and Knitro, illustrating that Juniper provides a strong foundation for further exploration in utilizing nonlinear branch-and-bound algorithms as heuristics for nonconvex MINLPs.

Keywords

Cite

@article{arxiv.1804.07332,
  title  = {Juniper: An Open-Source Nonlinear Branch-and-Bound Solver in Julia},
  author = {Ole Kröger and Carleton Coffrin and Hassan Hijazi and Harsha Nagarajan},
  journal= {arXiv preprint arXiv:1804.07332},
  year   = {2018}
}

Comments

CPAIOR 2018

R2 v1 2026-06-23T01:29:11.097Z