Table of Contents
Fetching ...

Extreme Strong Branching for QCQPs

Santanu S. Dey, Dahye Han, Yang Wang

TL;DR

This paper addresses the challenge of extending strong branching from MIPs to nonlinear problems, specifically QCQPs, by proposing extreme strong branching that exhaustively searches branching points for continuous variables using binary search and couples it with bound tightening. The method evaluates left and right relaxations $R_k(x_i \leq \alpha)$ and $R_k(x_i \geq \alpha)$ to compute $obj_L(\alpha)$ and $obj_R(\alpha)$ and uses a branching score to select $(i^*,\alpha^*)$. A custom branch-and-bound framework in Julia is built, leveraging BARON for incumbents and McCormick relaxations for dual bounds, with NLP and LP solvers for relaxations. Computational results on benchmark QCQP instances, especially bilinear bipartite problems, and a structural FEM model updating problem show that extreme strong branching outperforms certain commercial solvers and other spatial-branching rules in terms of time, node counts, and remaining gaps. The work suggests that extreme strong branching can substantially improve MINLP/QCQP solving for BBP-type problems and motivates future work on reliability-based variants and deeper analysis of why BBP instances benefit most.

Abstract

For mixed-integer programs (MIPs), strong branching is a highly effective variable selection method to reduce the number of nodes in the branch-and-bound algorithm. Extending it to nonlinear problems is conceptually simple but practically limited. Branching on a binary variable fixes the variable to 0 or 1, whereas branching on a continuous variable requires an additional decision to choose a branching point. Previous extensions of strong branching predefine this point and then solve $2n$ relaxations where $n$ is the number of candidate variables to branch. We propose extreme strong branching, which evaluates multiple branching points per variable and jointly selects both the branching variable and point based on the objective value improvement. This approach resembles the success of strong branching for MIPs while additionally exploiting bound tightening as a byproduct. For certain types of quadratically constrained quadratic programs (QCQPs), computational experiments show that the extreme strong branching rule outperforms existing commercial solvers.

Extreme Strong Branching for QCQPs

TL;DR

This paper addresses the challenge of extending strong branching from MIPs to nonlinear problems, specifically QCQPs, by proposing extreme strong branching that exhaustively searches branching points for continuous variables using binary search and couples it with bound tightening. The method evaluates left and right relaxations and to compute and and uses a branching score to select . A custom branch-and-bound framework in Julia is built, leveraging BARON for incumbents and McCormick relaxations for dual bounds, with NLP and LP solvers for relaxations. Computational results on benchmark QCQP instances, especially bilinear bipartite problems, and a structural FEM model updating problem show that extreme strong branching outperforms certain commercial solvers and other spatial-branching rules in terms of time, node counts, and remaining gaps. The work suggests that extreme strong branching can substantially improve MINLP/QCQP solving for BBP-type problems and motivates future work on reliability-based variants and deeper analysis of why BBP instances benefit most.

Abstract

For mixed-integer programs (MIPs), strong branching is a highly effective variable selection method to reduce the number of nodes in the branch-and-bound algorithm. Extending it to nonlinear problems is conceptually simple but practically limited. Branching on a binary variable fixes the variable to 0 or 1, whereas branching on a continuous variable requires an additional decision to choose a branching point. Previous extensions of strong branching predefine this point and then solve relaxations where is the number of candidate variables to branch. We propose extreme strong branching, which evaluates multiple branching points per variable and jointly selects both the branching variable and point based on the objective value improvement. This approach resembles the success of strong branching for MIPs while additionally exploiting bound tightening as a byproduct. For certain types of quadratically constrained quadratic programs (QCQPs), computational experiments show that the extreme strong branching rule outperforms existing commercial solvers.
Paper Structure (12 sections, 6 equations, 1 figure, 6 tables, 3 algorithms)

This paper contains 12 sections, 6 equations, 1 figure, 6 tables, 3 algorithms.

Figures (1)

  • Figure 1: Illustrative example of extreme strong branching for a single variable $x_i$. The x-axis represents candidate branching points $\alpha \in [0,1]$, and the y-axis shows the objective function value of the relaxed subproblem when branching at that point. The horizontal dashed line is the current best upper bound of the branch-and-bound tree, $obj_{UB}$. The procedure begins by exploring the left side $(x_i \leq \alpha)$. At iter L1, the left side problem is solved at the midpoint $\alpha = 0.5$. Because the problem is feasible and $obj_L(0.5) < obj_{UB}$, the algorithm continues to the left for a smaller $\alpha$ value. Hence, at iter L2, the left side is solved for the midpoint between 0 and the previous $\alpha$ value 0.5 is solved. We note that $obj_L(0.25) > obj_{UB}$, which implies $x_i \geq 0.25$. Hence, the left shaded area updates the lower bound of $x_i$. Per the algorithm, the direction is switched so we explore a larger value of $\alpha$. At iter L3 with $\alpha = (0.25 + 0.5)/2 = 0.375$, $obj_{L}(0.375) < obj_{UB}$ again, so at iter L4, we explore a smaller value of $\alpha = (0.25 + 0.375)/2 = 0.3125$. Once the left-side search terminates, the algorithm proceeds to the right side $(x_i \geq \alpha)$. The first right side iteration also starts at $\alpha = 0.5$ and subsequently moves towards larger $\alpha$ values whenever the right side problem remains feasible and below the upper bound. Otherwise, we evaluate smaller $\alpha$ values and tighten the upper bound of the variable. Shaded regions indicate these tightened bounds. After completing both left and right side binary searches, we have a set of candidate branching points. Finally, we solve the left or right child problems for these candidate points if they have not been solved before. These are marked by dashed lines around the dot.

Theorems & Definitions (1)

  • Remark 1