TLDR: PARBALANS is a novel parallel extension of the BALANS meta-solver designed to accelerate the solution of complex Mixed-Integer Programming (MIP) problems. It achieves this by simultaneously employing both solver-level (e.g., Gurobi’s multi-threading) and algorithmic-level parallelism (running multiple diverse BALANS configurations). Experimental results show that PARBALANS delivers competitive performance, often outperforming the commercial solver Gurobi on challenging synthetic and real-world optimization benchmarks, particularly as the degree of parallelization increases. This approach effectively leverages the diversity of algorithmic configurations to find high-quality solutions faster.
Solving complex optimization problems, particularly those categorized as Mixed-Integer Programming (MIP), often demands significant computational power. These problems are combinatorial in nature, meaning the number of possible solutions grows exponentially, making them incredibly difficult to solve efficiently. To tackle this challenge, parallelization – the act of running multiple computations simultaneously – has emerged as a crucial strategy to speed up solution times and improve scalability for large and intricate instances.
A recent innovation in this field is BALANS, a meta-solver that combines Large Neighborhood Search (LNS) with a multi-armed bandit (MAB) controller. LNS is a heuristic method that explores a solution space by iteratively destroying and repairing parts of a current solution, while MAB is a machine learning technique used for decision-making under uncertainty, allowing BALANS to adaptively select the most effective search strategies. BALANS has shown competitive performance against leading commercial solvers like Gurobi and SCIP, and its modular design inherently supports parallel exploration of different parameter settings.
However, the full potential of BALANS’s parallelization capabilities had not been thoroughly investigated until now. To bridge this gap, researchers have introduced PARBALANS, an advanced extension that harnesses both solver-level and algorithmic-level parallelism. This dual approach significantly boosts performance on challenging MIP instances.
How PARBALANS Achieves Parallelism
PARBALANS leverages modern multi-core architectures through two distinct layers of parallelization:
- Solver-Level Parallelism: This involves utilizing the native multi-threading capabilities of underlying MIP solvers, such as Gurobi, by adjusting parameters like the number of threads.
- Algorithmic-Level Parallelism: This layer runs multiple independent BALANS ‘workers’ concurrently, each initialized with a unique configuration. This allows for a broad exploration of the hyperparameter space.
These two layers work in tandem, complementing each other to maximize computational efficiency. The total parallelism is a product of the number of processes and the number of threads per process.
Exploring the Configuration Space
The BALANS framework is highly configurable, offering a diverse pool of settings. Each configuration is defined by a unique set of parameters, including choices for ‘destroy operators’ (how parts of a solution are modified), ‘accept criteria’ (rules for accepting new solutions), and ‘learning policies’ (how the multi-armed bandit learns). PARBALANS experiments considered 180 different configurations, generated through a lightweight random sampling procedure that ensures diversity and avoids redundant settings.
Experimental Validation and Results
The researchers conducted extensive experiments on Amazon SageMaker, using hard problem instances from Distributional MIPLIB (D-MIPLIB), a standardized library of MIP problems. They compared PARBALANS against parallel Gurobi, focusing on two key questions:
- How does PARBALANS, using multiple single-threaded processes, compare to Gurobi with an equivalent number of threads?
- How does PARBALANS, using multiple processes each running Gurobi with several threads, compare to Gurobi with a total equivalent number of threads?
The results were compelling. For synthetic instances, Gurobi initially outperformed PARBALANS at lower parallelization levels, but PARBALANS closed the gap and even surpassed Gurobi as parallelization increased. For real-world instances, PARBALANS consistently outperformed Gurobi at higher parallelization levels. A notable observation was that Gurobi’s performance didn’t always improve with more threads, whereas PARBALANS showed consistent gains. This is attributed to the diverse nature of BALANS configurations, where different settings excel on different problems, and parallel execution effectively leverages this diversity.
Further analysis showed that PARBALANS also benefits significantly from solver-level parallelism. When Gurobi’s internal thread count was increased within PARBALANS, it continued to demonstrate strong performance, often outperforming parallel Gurobi, especially on real-world instances. This flexibility allows for careful configuration design to further enhance performance.
Also Read:
- Enhancing Trust and Performance in Problem Solving with Implicit Hitting Sets
- Enhanced Local Search for Distributed Optimization: A New Framework for Multi-Agent Systems
Conclusion
The introduction of PARBALANS marks a significant step forward in solving complex Mixed-Integer Programming problems. By effectively combining solver-level and algorithmic-level parallelism, PARBALANS demonstrates competitive performance against state-of-the-art commercial solvers like Gurobi on a range of challenging benchmarks. This research highlights that parallel meta-solvers, as exemplified by PARBALANS, offer a promising complement to existing parallel exact-solver strategies, opening new avenues for scalable MIP solving. For more details, you can read the full research paper here.


