A Sequential Benders-based Mixed-Integer Quadratic Programming Algorithm

Andrea Ghezzi,Wim Van Roy,Sebastian Sager,Moritz Diehl
2024-04-18
Abstract:For continuous decision spaces, nonlinear programs (NLPs) can be efficiently solved via sequential quadratic programming (SQP) and, more generally, sequential convex programming (SCP). These algorithms linearize only the nonlinear equality constraints and keep the outer convex structure of the problem intact. The aim of the presented sequential mixed-integer quadratic programming (MIQP) algorithm for mixed-integer nonlinear problems (MINLPs) is to extend the SQP/SCP methodology to MINLPs and leverage the availability of efficient MIQP solvers. The algorithm employs a three-step method in each iterate: First, the MINLP is linearized at a given iterate. Second, an MIQP with its feasible set restricted to a specific region around the current linearization point is formulated and solved. Third, the integer variables obtained from the MIQP solution are fixed, and only an NLP in the continuous variables is solved. The outcome of the third step is compared to previous iterates, and the best iterate so far is used as a linearization point in the next iterate. Crucially, the objective values and derivatives from all previous iterates are used to formulate the polyhedral region in the second step. The linear inequalities that define the region build on concepts from generalized Benders' decomposition for MINLPs. Although the presented MINLP algorithm is a heuristic method without any global optimality guarantee, it converges to the exact integer solution when applied to convex MINLP with a linear outer structure. The conducted numerical experiments demonstrate that the proposed algorithm is competitive with other open-source solvers for MINLP. Finally, we solve two mixed-integer optimal control problems (MIOCPs) transcribed into MINLPs via direct methods, showing that the presented algorithm can effectively deal with nonlinear equality constraints, a major hurdle for generic MINLP solvers.
Optimization and Control
What problem does this paper attempt to address?
### Problems the Paper Aims to Solve This paper proposes a new Mixed-Integer Quadratic Programming (MIQP) algorithm to address Mixed-Integer Nonlinear Programming (MINLP) problems. Specifically, the algorithm aims to extend Sequential Quadratic Programming (SQP) methods in the continuous decision space to MINLP and leverage efficient MIQP solvers. #### Main Objectives: 1. **Extend SQP/SCP Methods**: Extend SQP/SCP methods from continuous optimization to mixed-integer nonlinear problems. 2. **Efficiently Solve MINLP**: Efficiently solve MINLP problems, especially those with nonlinear equality constraints, through a three-step iterative method. 3. **Prove Convergence**: For convex MINLP problems, the algorithm can converge to a global optimal solution; for non-convex MINLP problems, it provides effective heuristic methods. 4. **Solve Mixed-Integer Optimal Control Problems (MIOCP)**: Transcribe MIOCP into MINLP using direct methods and solve them efficiently. #### Algorithm Features: - **Three-Step Iterative Method**: Each step includes linearization, solving MIQP, and solving NLP after fixing integer variables. - **Benders Region Construction**: Construct Benders regions using cutting planes generated by generalized Benders decomposition to restrict the search space. - **Heuristic Modifications**: Introduce heuristic methods for non-convex MINLP problems to improve cutting planes. #### Experimental Validation: - Compared with existing open-source solvers (such as SHOT and Bonmin), the algorithm demonstrates faster and better solutions in many instances. - Applied to two mixed-integer optimal control problem examples, showcasing its advantages in speed and solution quality. #### Open-Source Implementation: - Provides a Python open-source implementation based on CasADi, allowing users to choose different solver interfaces to solve NLP and MIP problems. In summary, this paper aims to develop an efficient MINLP solving algorithm suitable for nonlinear equality constraints and validates its effectiveness in various application scenarios through experiments.