TL;DR
Juniper is an open-source Julia solver for nonlinear branch-and-bound algorithms, offering a flexible platform for solving large-scale nonconvex MINLPs with competitive performance.
Contribution
It introduces Juniper, a Julia-based solver that facilitates easy modification and extension of nonlinear branch-and-bound methods for nonconvex MINLPs.
Findings
Juniper's performance is comparable to established solvers like Bonmin and Knitro.
The Julia implementation allows for flexible algorithm modifications.
Numerical experiments validate Juniper's effectiveness as a heuristic.
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
