24
A novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints SimoneG¨ottlich * , Kathinka Hameister * , Michael Herty May 25, 2018 Abstract The efficient numerical treatment of convex quadratic mixed-integer optimization poses a challenging problem for present branch-and-bound algorithms. We introduce a method based on the duality principle for nonlinear convex problems to derive suitable bounds that can be directly exploited to improve heuristic branching rules. Numerical results indicate that the bounds allow the branch-and-bound tree to be searched and evaluated more efficiently com- pared to benchmark solvers. An extended computational study using different performance measures is presented for small, medium and large test instances. AMS Classification: 90C11, 90C20 Keywords: nonlinear mixed-integer programming, duality, branch-and-bound 1 Introduction Convex optimization problems with quadratic objective function and linear or quadratic con- straints often appear in the mathematical modeling of real-world phenomena. Typical applica- tions range from operations management, portfolio optimization in finance to engineering science, compare [1, 5, 6, 11, 12, 23] and the references therein. MIQCQP is a special form of mixed-integer nonlinear problems (MINLP), where the nonlinear- ities are represented by quadratic functions. To solve general convex MINLP, Dakin [13] proposed the branch-and-bound (B&B) method in 1965. This method extends the well-known method for solving linear mixed-integer problems [19]. The relation between primal and dual problems in the convex case has been used to obtain lower bounds and early branching rules already in [9]. Therein, the authors suggested to use a quasi-Newton method to solve the Lagrangian saddle point problem appearing in the branching nodes. This nonlinear problem has only bound constraints. Fletcher and Leyffer [15] report on results of this approach for mixed-integer quadratic problems (MIQP) with linear constraints. In this work, we will extend those results by investigating the dual problem in more detail for an improved tree search within a B&B algorithm. The proposed bound will then be used for the node selection strategy after the branching step in the B&B algo- rithm. The numerical results show an improved convergence behavior, in particular for large-scale problems, compared with benchmark solvers. Other approaches to obtain suitable lower bounds for branching have been investigated over the last years. Also in [15] the authors described how the calculation of a lower bound is done efficiently under the assumption that the parent quadratic problem (QP) is solved with an active set method. Hoogeveen and van de Velde [18] showed that lower bounds are improved by introducing slack variables. Their main focus has been on applications to machine scheduling problems. Hahn and Grant worked on a dual lower bound for the quadratic assignment problem [17] and Van Thoai [25] extended the dual bound method to general quadratic programming problems with * University of Mannheim, Department of Mathematics, 68131 Mannheim, Germany ({goettlich,hameister}@math.uni-mannheim.de) RWTH Aachen University, Department of Mathematics, 52062 Aachen, Germany ([email protected]) 1

A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

  • Upload
    lamdan

  • View
    228

  • Download
    2

Embed Size (px)

Citation preview

Page 1: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

A novel branch-and-bound algorithm for quadratic

mixed-integer problems with quadratic constraints

Simone Gottlich∗, Kathinka Hameister∗, Michael Herty†

May 25, 2018

Abstract

The efficient numerical treatment of convex quadratic mixed-integer optimization poses achallenging problem for present branch-and-bound algorithms. We introduce a method basedon the duality principle for nonlinear convex problems to derive suitable bounds that can bedirectly exploited to improve heuristic branching rules. Numerical results indicate that thebounds allow the branch-and-bound tree to be searched and evaluated more efficiently com-pared to benchmark solvers. An extended computational study using different performancemeasures is presented for small, medium and large test instances.

AMS Classification: 90C11, 90C20Keywords: nonlinear mixed-integer programming, duality, branch-and-bound

1 Introduction

Convex optimization problems with quadratic objective function and linear or quadratic con-straints often appear in the mathematical modeling of real-world phenomena. Typical applica-tions range from operations management, portfolio optimization in finance to engineering science,compare [1, 5, 6, 11, 12, 23] and the references therein.

MIQCQP is a special form of mixed-integer nonlinear problems (MINLP), where the nonlinear-ities are represented by quadratic functions. To solve general convex MINLP, Dakin [13] proposedthe branch-and-bound (B&B) method in 1965. This method extends the well-known method forsolving linear mixed-integer problems [19]. The relation between primal and dual problems inthe convex case has been used to obtain lower bounds and early branching rules already in [9].Therein, the authors suggested to use a quasi-Newton method to solve the Lagrangian saddle pointproblem appearing in the branching nodes. This nonlinear problem has only bound constraints.Fletcher and Leyffer [15] report on results of this approach for mixed-integer quadratic problems(MIQP) with linear constraints. In this work, we will extend those results by investigating thedual problem in more detail for an improved tree search within a B&B algorithm. The proposedbound will then be used for the node selection strategy after the branching step in the B&B algo-rithm. The numerical results show an improved convergence behavior, in particular for large-scaleproblems, compared with benchmark solvers.

Other approaches to obtain suitable lower bounds for branching have been investigated overthe last years. Also in [15] the authors described how the calculation of a lower bound is doneefficiently under the assumption that the parent quadratic problem (QP) is solved with an active setmethod. Hoogeveen and van de Velde [18] showed that lower bounds are improved by introducingslack variables. Their main focus has been on applications to machine scheduling problems. Hahnand Grant worked on a dual lower bound for the quadratic assignment problem [17] and VanThoai [25] extended the dual bound method to general quadratic programming problems with

∗University of Mannheim, Department of Mathematics, 68131 Mannheim, Germany({goettlich,hameister}@math.uni-mannheim.de)†RWTH Aachen University, Department of Mathematics, 52062 Aachen, Germany ([email protected])

1

Page 2: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

quadratic constraints. An overview on solution methods for QPs is given by Van Thoai [26].Further improvements on the B&B scheme for MIQCQP or MINLP are the integrating sequentialquadratic method [22] and the outer approximation method [14] as well as improvements in theB&B framework [3, 20, 24, 27]. Bonami et al. worked on a hybrid algorithm [6], that is able touse several methods to speed up the solution time. They also developed heuristics to acceleratethe computation time of the exact algorithm [7]. The impact of different methods and solvercomponents has been also studied and documented in [5, 6, 8, 21, 28]. However, the main differenceto our proposed algorithmic framework is the straightforward exploitation of the duality principlefor nonlinear convex optimization. Although the bounds we compute from theory are not alwayssharp, they can be used within the B&B algorithm as a node selection strategy to cut off non-efficient branches in an appropriate manner. To the best of our knowledge, this idea has not beenused before.

The outline of the paper is as follows: We will introduce the relevant notation and the problemcontext in Section 2. On a theoretical level, we discuss the Lagrangian duality that can be usedto determine a lower bound for the objective value of the primal problem. The computation ofthe dual bound will be presented and included in the B&B procedure as a new branching decisionrule in Section 3. To conclude, we compare the performance of our implementation with IBM’soptimization software CPLEX on academic and benchmark test instances. The results indicatethe good performance of the novel branching heuristic, see Section 4.

2 Nonlinear mixed-integer problems

MINLPs have been studied over the last decades, see for example [6, 9, 13, 14, 25] and the referencestherein. Here, we focus on convex linear-quadratic mixed-integer problems, where concepts fromconvex optimization [16] can be applied to compute the dual problem and hence suitable lowerbounds to the primal problem. Within a tree search those bounds can be used to efficiently cut offbranches within a B&B algorithm. However, the dual problem to convex minimization problemsis usually hard to solve. Therefore, we provide approximations to the dual problem leading to aheuristic procedure that can be used to determine suitable lower bounds. The numerical resultsin Section 4 show that for a wide class of problems this heuristic improves benchmark solvers byorders of magnitude. In the following we introduce the MIQCQP as well as our approximation tothe dual problem.

A MIQCQP for strictly convex quadratic functions f : Rn → R and g : Rn → R and affinelinear functions h1 : Rn → Rm, h2 : Rn → Rm is given by

minx∈Rn

f(x)

subject to g(x) ≤ 0, h1(x) ≤ 0, h2(x) = 0,

xi ∈ Z, ∀i ∈ I, and xj ∈ R, ∀j ∈ {1, . . . , n}\I.

(2.1)

including one quadratic constraint only. We assume I = {1, . . . , `} and m < n. The set I containsthe indices of the integer components of x ∈ Rn. In order to simplify the notation we introducethe subset X ⊂ Rn as

X = {x ∈ Rn | xi ∈ Z, ∀ i ∈ I}.

Due to the given assumptions we may write

f(x) =1

2xTQ0x+ cT0 x, g(x) =

1

2xTQ1x+ cT1 x, h1(x) = A1x− b1, h2(x) = A2x− b2. (2.2)

The matrices Qi are positive definite and symmetric. We also assume that the matrices A1 ∈Rm1×n and A2 ∈ Rm2×n with m = m1 + m2 have maximal column rank to avoid technicaldifficulties, cf. [2].

In the algorithmic framework of the B&B method we need to solve relaxed problems, whereX is replaced by Rn. In order to select suitable branching nodes we require lower bounds on

2

Page 3: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

the relaxation problem. Those will be calculated using a dual formulation. For f, g as before weconsider the relaxed problem

minx∈Rn

f(x)

subject to g(x) ≤ 0, h1(x) ≤ 0, h2(x) = 0,(2.3)

where integer restrictions and box constraints are included within the linear constraints of h1 andh2, changing possibly the dimensions of m1 and m2, respectively. The setting of problem (2.3)allows to derive a dual formulation due to the convexity assumptions [16]. The correspondingLagrange function is given by

L(x, α, λ, µ) = f(x) + αg(x) + λTh1(x) + µTh2(x),

where α ∈ Rp+, λ ∈ Rm1+ and µ ∈ Rm2 . Note that for the setting of one quadratic constraint

only, we have p = 1. Provided that the functions f and g are continuously differentiable, the dualproblem can be stated by the first order optimality conditions.

Definition 2.1 (Dual problem). [16, p.315] The function q : Rp+ × Rm1+ × Rm2 → R

q(α, λ, µ) = infx∈Rn

L(x, α, λ, µ)

is called the dual function. The optimization problem

maxα,λ,µ

q(α, λ, µ) s.t. α, λ ≥ 0 (2.4)

is the dual problem.

Weak duality ensures that we can use the Lagrange function to calculate a bound for theobjective function. The corresponding theoretical result is given e.g. in [16].

Theorem 2.2 (Weak duality). [16, p.320] Let x ∈ Rn be a feasible solution of the primal problem(2.3) and let (α, λ, µ) ∈ Rm × Rp be a feasible solution of the dual problem (2.4). Then

q(α, λ, µ) ≤ f(x)

is fulfilled and the optimal values of both problems satisfy the following inequality

sup{q(α, λ, µ) | α ≥ 0, λ ≥ 0} ≤ inf{f(x) | x ∈ Rn, g(x) ≤ 0, h1(x) ≤ 0, h2(x) = 0}.

The inequality shows that the dual function serves as lower bound to the objective function ofthe primal problem provided we have a feasible solution. Therefore we introduce a B&B methodusing the dual function to estimate lower bounds for the branching. Let us denote by x∗ ∈ Rn theoptimal solution to the relaxed problem (2.3) and by α∗, λ∗, µ∗ its Lagrange multipliers.

For the minimization problem on the feasible set of the relaxed problem we assume thatinfx∈Rn L(x, α, λ, µ) is attained at x = x(α, λ, µ) ∈ X for given and fixed values of the multipliersα, λ, µ. Then, the previous Theorem 2.2 states for any (α, λ, µ) with α, λ ≥ 0 and any x ∈ Rn

q(α, λ, µ) = L(x, α, λ, µ) ≤ q(α∗, λ∗, µ∗) = L(x, α∗, λ∗, µ∗) = f(x∗) ≤ f(x), (2.5)

where x∗ = x(α∗, λ∗, µ∗) is the optimal solution to the problem (2.3). Since x is the minimizer ofthe dual function, we obtain the first order optimality condition by differentiating the Lagrangefunction and assuming a constraint qualification:

∇f(x) + α∗∇g(x) +

m1∑j=0

λ∗j∇h1,j(x) +

m2∑j=0

µ∗j∇h2,j(x) = 0. (2.6)

3

Page 4: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

The objective is to present a simple computation of dual bounds based on equation (2.5) usingsuitable choices for the multipliers similar to [9, 26]. Contrary to [9, 26], we do not apply a quasi-Newton method to calculate (2.6), but directly compute its unique minimizer x dependent on themultipliers as

x(α∗, λ∗, µ∗) =− (Q0 + α∗Q1)−1(c0 + α∗c1 +AT1 λ∗ +AT2 µ

∗). (2.7)

This allows to obtain a closed form of the dual function in terms of the (unknown, optimal)multipliers α∗, λ∗ and µ∗. However, we are interested in an efficient computation of a lowerbound for f(x) to obtain a node selection rule. Since a maximization on dual variables (α, λ, µ)appearing in the equation (2.7) is usually too expensive, we propose to fix the choice of onemultiplier λ and to maximize over all other ones. Due to equation (2.5), this choice then providesa lower bound for f(x∗).

Lemma 2.1. Under the assumptions of Theorem 2.2 and for any α ≥ 0, the value

L = L(x, α, 0, µ)

provides a lower bound for f(x), x ∈ X, with

x = −M(c+AT2 µ),

µ = −(ZAT2 − 2BAT2 )−1(Zc− 2Bc− b),M−1 = (Q0 + αQ1), Z = A2M

T (Q0 + αQ1)M, B = A2MT , c = c0 + αc1.

Some remarks are in order. The formulas are obtained by maximizing with respect to µ andsetting λ = 0. For fixed values of α all matrices can be computed offline and prior to the B&B al-gorithm. The choice α = 0 simplifies the computation of the bound. In practice, we obtain betterresults for a positive small value of α. The computation of the lower bound requires the inversionof the positive definite matrix M that is efficiently computed using Cholesky decomposition.

Proof. Note that for any choice of (α, λ, µ) with α, λ ≥ 0 the function q with x given by equation(2.7) provides a lower bound for f(x) due to weak duality on X = Rn. We set λ = 0. Further notethat due to the symmetry and positive definiteness of the matrices Q0 and Q1, the matrix M iswell-defined, symmetric and positive definite. This implies that the matrix

A2MT (Q0 + αQ1)MAT2 − 2A2M

TAT2 = ZAT2 − 2BAT2

is symmetric and positive definite provided A2 has full column rank. Therefore, µ is well-defined.By definition of x in (2.7), we obtain

∂µx(α, 0, µ) = −(Q0 + αQ1)−1AT2 .

Finally, we observe that q(α, 0, µ) = L(x, α, 0, µ) is a quadratic function in µ. Its gradient withrespect to µ is given by

∇µq(α, 0, µ) =∂µxT (Q0 + αQ1)x+ ∂µx

T (c0 + αc1) +A2x+ ∂µxTAT2 µ− b2

=A2MT QM (c+AT2 µ)−A2M

T c−A2M (c+AT2 µ)−A2MTAT2 µ− b2

= (A2MT QMAT2 − 2A2M

TAT2 )µ+A2MT QMc− 2A2M

T c− b2.

Then, µ is obtained as zero of the partial derivative of q with respect to µ. This finishes the proof.

In many applications, the resulting optimization problem consists of more than one quadraticconstraint. Therefore, we also propose an extension of Lemma 2.1 and consider a mixed-integerquadratic problem with p quadratic constraints. The objective function and the linear constraintare the same as before. The MIQCQP is given by (2.8) with x ∈ X.

4

Page 5: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

minx∈Rn

f(x) =1

2xTQ0x+ cT0 x

s.t. h(x) = Ax− b ≤ 0

gi(x) =1

2xTQix+ cTi x ≤ ri for i = 1, . . . , p.

(2.8)

Here, Q0 and Qi, i = 1, . . . , p, are positive definite matrices. As before the integer restriction andbox constraints of the relaxed problem are included to the linear constraints h in each branchingnode of the B&B tree. Then we have x ∈ Rn and the Lagrangian of the problem of (2.8) is givenby

L(x, α1, . . . , αp, λ, µ) = f(x) +

p∑i=1

αigi(x) + (λ, µ)Th(x).

The following Lemma is an extension of the previous result with p quadratic constraints.

Lemma 2.2. Let α ∈ Rp+. Then, the value L provides a lower bound for the relaxed minimizationproblem of (2.8).

L = L(x, α1, . . . , αp, 0, µ)

provides a lower bound for f(x), x ∈ X, where

x(α1, . . . , αp, 0, µ) = −M(c+AT2 µ),

µ = −(ZAT2 − 2BAT2 )−1(Zc− 2Bc− b2),

M−1 = (Q0 +

n∑i=1

αiQi), Z = A2MT (Q0 +

n∑i=1

αiQi)M,

B = A2MT , c = (c0 +

n∑i=1

αici).

Proof. Before we verify the Lagrangian multipliers, it is necessary to show, that x is the minimizerof the relaxed problem to (2.8). Therefore we solve the following equation for x:

∇xL(x, α1, . . . , αp, λ, µ) = ∇f(x) +

n∑i=1

αi∇gi(x) + (λT , µT )∇h(x) = 0.

This gives the unique minimizer x in dependence of the multipliers α1, . . . , αp, λ, µ

x(α1, . . . , αp, 0, µ) = −(Q0 +

n∑i=1

αiQi)−1(c0 +

n∑i=1

αici +AT2 µ),

where the multiplier λ for the linear inequalities is zero. This allows to obtain the closed formof the dual function in terms of the multipliers. Calculating the gradient with respect to µ, weobtain µ as the zero of the partial derivative of the dual function with respect to µ. We end upwith

µ = −(A2MT QMAT2 − 2A2M

TAT2 )−1(A2MT QMc− 2A2M

T c− b2)

as a Lagrangian multiplier with Q = Q0 +∑ni=1 αiQi, M = (Q0 +

∑ni=1 αiQi)

−1 and c = (c0 +∑ni=1 αici). This finishes the proof.In the next section we explain how Lemma 2.1 and 2.2 are used to design an efficient B&B

algorithm. We will specify a node selection strategy that helps to detect branches that do notimprove the solution. As we will see in Section 4, this strategy leads to a good performance evenin the case of large problem sizes and furthermore to very good first integer feasible solutions.

5

Page 6: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

3 Solution procedure

Starting from a general description of the B&B algorithm, we present a new node selection strategyafter the branching step. This rule is integrated in a depth-first search strategy. In total, we obtaina new tree search strategy for the B&B algorithm. There exist a few examples, where a dual lowerbound has been used to cut off branches by the Lagrangian dual problem, cf. [9, 15, 26]. However,so far such bounds have not been exploited for the node decision inside the B&B scheme. Wecombine the node selection with the bound computation presented above as novel heuristic strategyfor a B&B algorithm. Similar ideas have been also used in [10] to pre-compute some boundinginformation a priori.

We focus on solving the MIQCQP using a classical B&B algorithm [2, 13, 19]. The B&Balgorithm searches a tree structure for feasible integer solutions, where the nodes correspond tothe relaxed quadratic constraint quadratic problems (QCQP) and the edges to branching decisions.

3.1 A tailored branch-and-bound algorithm

Assuming full information, we may find a way through the B&B tree directly to the optimalsolution of the main optimization problem. This gives rise to the following definition.

Definition 3.1 (Optimal search path). Given a linear or nonlinear mixed-integer problem (MIP),we define the optimal search path through the B&B tree as the direct path from the full relaxedproblem to the optimal solution of the main problem. The optimal path is characterized by a listof all visited subproblems.

This is also the smallest possible search tree. Due to the fact that we do not know the solutionassociated with a node in advance, we have to look for alternative strategies to find a suitable paththrough the B&B tree. Gathering all decision rules will lead to the so-called B&B dual algorithm.

Tree search strategy. All appearing nodes of the tree are visited according to a depth-first-search. The algorithm will therefore go downwards in the tree by choosing subproblems defined bya node selection strategy. It will go up again when a feasible solution is found or an infeasibilityarises on the branch. By climbing up the tree the algorithm will cut off all nodes whose boundsare higher than the objective value of the best current solution.

Node selection strategy. Solving the subproblems before the branch selection is potentiallycostly. Therefore, we calculate a bound on the objective value f(x) of the arising subproblems.We intend to save computational costs by solving only one of the two subproblems. Thanks toLemma 2.1, we are able to decide which branch should be solved first by comparing the valuesof the dual bound of corresponding child nodes. We continue on the branch with the lower dualbound, i.e. the best-of-two node selection rule or best lower bound strategy [8].

Selection of the branching variable. After applying the pruning rules, the first decisionis to choose the fractional variable for the branching. Possible rules are for instance the mostfractional component or highest pseudo costs, see [8]. We take the first fractional component.

3.2 Implementation

We describe the implementation of the algorithmic framework presented before. The pseudo codeof the B&B dual scheme is given in Algorithm 1.

The routine requires the matrices and vectors as defined in Section 2 as well as box constraintsfor the integer variables and (not necessarily) a start solution. For simplicity, we set x0 = 0. Theoutput of the algorithm is the integer optimal solution x ∈ X and the objective function valuef = f(x) of the computed solution. Additional information about the solution process, e.g. thenumber of solutions that has been found or the number of calculated nodes in the B&B tree arealso provided.

Within the first call of the code, the upper bound UB for the optimal objective function valueis initialized to plus infinity. The lines 2 to 33 in Algorithm 1 describe the recursive part of thecode. After the exit condition of the recurrence scheme and the update for the upper bound

6

Page 7: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

UB, the branching will be on one fractional component of the variable. The dual bound for theobjective value of the resulting relaxed subproblems is calculated. In the node decision, the lowerdual bound is considered first, but only if its dual bound is lower than the upper bound for theoptimal objective function value.

If the recurrences of all child nodes have been closed, the code returns the best found solution tothe next upper recurrence level provided the first and last level of the recursive hierarchy has beensolved. The B&B scheme pursues a depth-first-search strategy caused by the recursive structure.

The performance of the B&B dual algorithm correlates with the choice of Lagrangian multi-plier α, which influences the accuracy of the dual bound. To achieve an accurate bound at eachnode, the value of the dual function is evaluated for different feasible values of α. The dual boundused for the algorithmic framework is chosen as the maximum of the calculated dual function val-ues. Therefore the trade off between the computational costs for the dual function values and theimprovement of the solution process, caused by a more accurate dual bound, has to be considered.

Algorithm 1: The recursive B&B dual algorithm

Require: MIQCQP, x0 initial solutionEnsure: Integer optimal solution x and objective value f of solution1: initialize upper bound UB =∞2: % Start of recursive part of the code3: solve relaxed QCQP, let x∗ be the optimal solution4: if QCQP is infeasible or objective value f(x) > UB then5: cut off this branch6: end if7: if QCQP is integer feasible then8: set UB = f(x∗), x = x∗

9: end if10: % Branching on one variable xi with fractional value11: if bx∗i c exists then12: for α1, . . . , αn do13: GenerateNewBounds(xi), let MIQCQP left be the new subproblem14: CalculateMultipliers(MIQCQP left) % see Section 215: CalculatedualBound(MIQCQP left)=L1(αi)16: end for17: choose L1 = max{L1(αi)|i = 1, . . . , n}18: else if dx∗i e exists then19: %analogously to the first part of the branch construction20: [. . .]21: end if22: if L1 < L2 and L1 < UB then23: recursive call beginning in line 2 on problem MIQCQP left24: if new integer solution found then25: update UB, x = x∗

26: end if27: if L2 < L1 then28: recursive call beginning in line 2 on problem MIQCQP right29: end if30: else if L1 < L2 and L2 < UB then31: %analogously to the first part of the node selection32: [. . .]33: end if34: return best found integer solution x and f(x)

7

Page 8: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

4 Computational results

To test the performance of the B&B algorithm described in Section 3, we recursively implementedthe algorithm without any parallelism in MATLAB Release 2013b based on a software for solvingMINLP1. Furthermore, we use IBM’s ILOG CPLEX Interactive Optimizer 12.6.3. to solve therelaxed subproblems. This means, that all arising QCQP during the B&B dual algorithm aresolved by CPLEX. We compare the B&B dual implementation to CPLEX Version 12.6.3. as abenchmark solver. To make sure that both algorithms are running as a sequential B&B algorithmwith two different search strategies, the MIP parameters of CPLEX2 have been fixed as follows:

cplex.Param.threads.Cur = 1,

cplex.Param.mip.strategy.search.Cur = 1,

cplex.Param.mip.strategy.nodeselect.Cur = 1.

Therefore the implementation of our algorithm and CPLEX mainly differ in the decisions madeduring the optimization process of the B&B tree. All tests have been performed on a Unix PCequipped with 512GB Ram, Intelr Xeonr CPU E5-2630 v2 @ 2.80GHz.

4.1 Performance measures

We start with the introduction of performance measures inspired by [4] for the comparison ofCPLEX and our implementation of Algorithm 1. The most intuitive way to measure the perfor-mance of two different methods is to document the progress of the solution at different stages.Therefore, we compare the time needed to find the first integer solution x1 and the optimal solu-tion xopt as well as the time needed to prove optimality. To show the quality of the first foundinteger solution, we also record the objective function value of the first and the optimal solution,i.e., f(x1) and f(xopt).

Let x be again an integer optimal solution and xopt the optimum. We define tmax ∈ R+ as thetime limit of the solution process. Then, the primal gap γ ∈ [0, 1] of x is given by

γ(x) :=

0, if |f(xopt)| = |f(x)| = 0,

1, if f(xopt) · f(x) < 0,|f(xopt)−f(x)|

max{|f(xopt)|,|f(x)|} , else.

(4.1)

The monotone decreasing step function p : [0, tmax]→ [0, 1] defined as

p(t) :=

{1, if no increment until point t,

γ(x(t)), with x(t) increment at point t

is called primal gap function. The latter changes its value whenever a new increment is found.Furthermore, it holds that p(0) = 1 and p(t) = 0 for all t ≥ topt. Hence, the primal gap functionvisualizes the normalized difference between the current integral and the optimal solution. Next,we define the measure P (T ) called the primal integral P (T ) for T ∈ [0, tmax] as

P (T ) :=

∫ T

0

p(t) dt =

K∑k=1

p(tk−1) · (tk − tk−1), (4.2)

where T ∈ R+ is the total computation time of the procedure and tk ∈ [0, T ], k ∈ 1, . . . ,K−1 witht0 = 0, tK = T. Note that the primal integral P (T ) is beneficial to detect good solutions early andto identify each update of the increment.

As a further performance indicator, we document the total number of found integral solutions.This number is equal to the increments of the primal gap function.

1Documentation and download: http://www.mathworks.com/matlabcentral/fileexchange/96-fminconset2For further Information see: https://www.ibm.com/support/knowledgecenter/en/SSSA5P_12.6.3/ilog.odms.

cplex.help/CPLEX/homepages/CPLEX.html

8

Page 9: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

4.2 One quadratic constraint

We generate test instances of the mixed-integer quadratic constraint quadratic problem (2.1) byusing the integer random number generator of MATLAB. The optimal solution of these problemsare computed by the algorithm described in Section 3 and the results are compared to those ofCPLEX.

For our optimization purposes, we consider (2.1) constrained by (2.2) and additional boxconstraints lb ≤ x ≤ ub, where x, ul, ub ∈ Rn.

The matrices Q0 and Q1 are of the form CDCT with D being a diagonal matrix with entriesdj,j ∈ [1, 4]. The components cj,k of the matrix C are cj,k ∈ [−1, 1] for scenario type one andcj,k ∈ [0, 2] for scenario type two, respectively. All other entries of matrices and vectors have beenchosen randomly according to

c0 : (c0)j ∈ [0, 6], c1 : (c1)j ∈ [−n,N ], A1 : ai,j ∈ [−1, 2], A2 : ai,j ∈ [−1, 3],

b1 : (b1)j ∈ [−2, 4], b2 : (b2)j ∈ [0, 6], xi, i = 1, . . . , l : xi ∈ [−2, 5].

The continuous components of x are not restricted by any box constraints. To generate suf-ficiently large enough problem instances, we compute three different kind of problems regardingthe number of variables. For each of these classes we generate 10 different examples by changingthe random seed of the MATLAB random number generator randi, seed ∈ [2, 4, 6, 8, 10, 12, 14, 16].The random seed is the number that initializes the random number generator in such a way thatthe constructed matrices are repeatable. For the matrix Q1 and the vector c1 the seed is fixed tothree to guarantee that they are not the same as Q0 and c0 in the objective function.

To increase the size of the problem under consideration, we increase the amount of integervariables and constraints step by step. For example, the smallest configuration consists of 150variables in total, 30 integer variables, 30 linear equalities and 50 inequalities. If the number ofthe total variables is doubled, the problem size increases in the same way. While the number oflinear equalities and inequalities increases there will be one quadratic constraint only. Our duallower bound strategy can be easily extended to more quadratic constraints. This will be shown inSection 4.3 for some generated MIQCQPs with multiple quadratic constraints. A final comparisonto relevant benchmark problems of different size will be finally presented in Section 4.4.

For the following computations we set the Lagrangian multipliers to

α ∈ {0.2, 0.4, 0.6, 0.95}, λ = 0 and µ = −(ZAT2 − 2BAT2 )−1(Zc− 2Bc− b).

The choice of α ∈ R+ for fixed λ, µ results from an extended numerical study, where we haveobserved that for α ≥ 1 the performance gets worse.

This means that we do not expect that the lower dual bound of each subproblem is sharpin the sense of minimizing the size of the B&B tree. We remark that, even though this boundmight be weak, the resulting tree search strategy described in Section 3 gives very good results,in particular for large scale problems.

4.2.1 Summary of main results

To give a first impression of the numerical results, we present in Table 1 a small extract of somesamples taken from Tables 8 to 13 in the Appendix A. The first column characterizes the problemsize that has been computed by the solvers Bonmin-BB3, B&B dual and CPLEX 12.6.3. The firstnumber indicates the number of integer variables, the second one the total number of variables ofthe problem. All instances in the Appendix are sorted by their size, whereby the first column givesthe seed used to generate the instance. The data which has been measured during the optimizationprocess is presented in columns 3 to 9. Here, OFV means objective function value, P (T ) is theprimal integral defined in (4.2) and T denotes the total computational time. MIP Sols gives thenumber of solutions that have been recorded by the software.

3https://www.inverseproblem.co.nz/OPTI/index.php/DL/DownloadOPTI

9

Page 10: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

size solver time in sec. OFV P (T ) MIPt1 topt T f(x1) f(xopt) Sols

30/150 Bonmin-BB 828 828 829 123.2 123.2 828.09 1B&B dual 37 37 72 123.2 123.2 37.35 1CPLEX 12.6.3 19 126 132 804.21 123.2 75.76 9

60/300 Bonmin-BB - - 6003†

B&B dual 290 290 636 177.71 177.71 290.22 1CPLEX 12.6.3 246 1885 2037 2352.58 177.72 1301.51 9

90/450 B&B dual 959 3040 3288 315.46 273.79 1234 2CPLEX 12.6.3 2921 10173 12859 8767.03 273.82 8262.96 4

Table 1: Extract of results (see Appendix A): different problem sizes of scenario type two withseed = 6. The symbol † states that the solution process has been stopped at this point.

The optimization process using Bonmin-BB (version 1.64) has been executed on a Windows 7machine equipped with 16GB RAM and IntelrCore(TM) i5-4690 CPU @ 3.50GHz. Obviously,the performance of the Bonmin-BB solver is not comparable to the other approaches since mediumsize problems (60/300) cannot be solved reliable anymore. We therefore decided to focus on theperformance of B&B dual and CPLEX 12.6.3 only.

From Table 1 we observe that for MIQCQPs with a large number of variables our approach isquite promising. Let us analyze more detailed this observation in the following.

For each sample (consisting of 20 instances), we calculate the mean time needed by the twoapproaches to find the optimal solution and the mean time to finish the solution process, seeFigure 1. The problem sizes 15/75, 45/225 and 75/375 have been additionally computed to havesix data points for the interpolation.

Figure 1: Mean computational time to find the optimal solution (left) and the mean value of totalcomputing time (right).

The comparison of the time evolutions gives a similar picture: For the smaller problem in-stances CPLEX is more efficient in finding the optimal solution and finishing the solution process.However, this behavior changes significantly when the problems become larger.

Figure 2 shows the mean of the primal gap function for 20 instances ranging from small (30/150)to large (90/450) test instances. Here, we sum up the primal gap function and scale the result bythe total number of instances. For all 20 instances of size 30/150 CPLEX is able to find an integralsolution faster than the B&B dual algorithm. This results in an earlier decrease of the primal gapfunction. However, in 11 out of 20 cases, the B&B dual implementation finds the optimal solution

4For more information see https://www.coin-or.org/Bonmin/

10

Page 11: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

before CPLEX. For most cases (15 out of 20) the integral value of the primal gap function forthe B&B dual algorithm is below the CPLEX performance, compare intersection point after 36sec. This is due to the fact that B&B dual algorithm detects fewer feasible solutions (see alsoTable 2 and Figure 3), but with a lower primal gap and a better quality. For the large probleminstance 90/450 the mean of the primal gap function for the B&B algorithm is fully below theone of CPLEX. While our B&B implementation is able to solve the first instance after 1438 sec.and computed the optimal solution of all instances after 10670 sec., CPLEX needs the same timeto solve 2 out of 20 instances. There is only one instance, where CPLEX is able to finish slightlyfaster than the B&B dual approach (see Table 13, seed = 4).

Figure 2: Mean of the primal gap function for 20 instances: small instance (30/150) on the leftand large instance (90/450) on the right.

Table 2 shows a quantitative evaluation of the collected number of integer solutions of bothmethods during the solution process. Except for one run of the sample 30/150, CPLEX alwaysneeds at least two integer solutions to find the optimum. This becomes even more significant forincreasing problem sizes (60/300 and 90/450). For instance, CPLEX finds more than 8 solutionsin 9 out of 20 instances.

algorithm B&B dual CPLEX

# var l/n

# Sols= 1 ∈ [2, 4] ≥ 5 = 1 ∈ [2, 4] ∈ [5, 7] ≥ 8

30/150 10 10 0 1 3 12 4

60/300 11 9 0 0 4 9 7

90/450 12 8 0 0 3 8 9

Table 2: Summary of randomly generated test instances: number of integer solutions.

In contrast, our approach is able to detect the optimal integer solution in fewer than 3 recordedsolutions, independent of the problem size. This means particularly, in 10 out of 20 instances ofsmall size (30/150), and in 12 out of 20 instances of the large size (90/450), the first solution foundis already optimal.

Figure 3 illustrates the behavior of the algorithms from Table 2. Obviously, the average numberof integer feasible solutions increases with the problem size applying CPLEX while this numberremains constant for the B&B dual algorithm.

From Table 2, we also recognize that the B&B dual algorithm is able to find the optimal searchpath in the B&B tree in 33 out of 60 instances. In other words, the first solution found is optimalin 33 instances. As indicated in Table 2 and Tables 8–13 the second feasible solution found is

11

Page 12: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

Figure 3: Mean number of integer solutions documented for different problem sizes.

optimal in 27 instances. In summary, the performance of the B&B dual algorithm outperformsCPLEX regarding the search path in almost all test instances. There is solely one instance, whereCPLEX and the B&B dual approach get the optimal solution directly.

We have already mentioned that the B&B dual approach only needs up to two integer solutionsto find the optimum. Let us now comment on the quality of the first found integer solution. Thetime needed to compute the first integer solution and the quality of its primal gap is presentedin Table 3. As known from Figure 2, the B&B dual approach outperforms CPLEX especially forlarge problem instances.

algorithm B&B dual CPLEX

# var l/n mean t1 mean p(t1) mean t1 mean p(t1)

30/150 40 sec. 0.074 18 sec. 0.766

60/300 285 sec. 0.027 415 sec. 0.9340

90/450 1040 sec. 0.076 2481 sec. 0.964

Table 3: Mean time needed to compute the first integer feasible solution and its mean primal gap.

The worst and best case values of t1 and p(t1) are added to the mean values from Table 3 inFigure 4. The time plot (Figure 4 on the left) shows that the worst and best case for the B&Bdual approach are quite close. This implies a stable performance of our approach independentof the problem size. However, this behavior changes for CPLEX, where we can observe a widerspread of worst and best case values for t1. A similar observation can be made for the quality ofthe primal gap for the first solution, see Figure 4 on the right. The worst case value for the firstfound primal gap p(t1) is for the B&B dual approach significantly smaller compared to CPLEXfor the medium and large scale instance.

Note that typically the performance of the B&B dual algorithm correlates with the choice ofparameters. This means our approach provides a good way to compute reliable solutions, eventhough the search tree cannot be minimized for all test cases for a priori defined fixed Lagrangianmultipliers. However, there is still freedom to improve the dual bounds using more involvedmultipliers.

4.3 Multiple quadratic constraints

In addition to the numerical examples presented in Subsection 4.2, we further test the performanceof the B&B dual approach for MIQCQPs consisting of more than one quadratic constraint. Wemainly use the results from Lemma 2.2 to extend the B&B dual approach to problems with multiple

12

Page 13: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

Figure 4: Time for the first found integer feasible solution (left) and its primal gap (right).

quadratic constraints. The instances under consideration are again of different size and generatedin a similar way as before and consist now of 4 quadratic constraints. The samples include 11optimization problems with 30 integer variables, 11 with 60 and 11 with 90. For the computationwe have chosen α = {0.05, 0.1, 0.15, 0.2, 0.25}. The computational results are listed in AppendixB, where QC is used for quadratic and LC for linear constraints. While our algorithmic frameworkhas solved 32 instances to optimality, CPLEX has only solved 54.54% of the instances at the sametime. However, one of the generated instances did not have a feasible integer solution.

The benefits of the B&B dual algorithm for problems with only one quadratic constraint canbe also observed for multiple quadratic constrained problems, compare Figures 1 and 5. Ourexperiments show that especially for large scale problems our approach gets more powerful. Forinstance, the B&B dual approach has proven the optimal solution for a scenario of size 90/450after 75 minutes while CPLEX needs 750 minutes.

Figure 5: Mean computational time to find the optimal solution.

Figure 6 shows the mean primal gap functions of two samples consisting of 11 generatedproblems each and four quadratic constraints. For both cases, the 30/150 and the 90/450 sample,the mean primal gap value of the B&B dual algorithm is below CPLEX. Since our implementationalways finds an integer solution faster than CPLEX, the mean of the corresponding primal gapfunctions drops accordingly. After the computation of all optimal solutions after 148 sec. for the30/150 instances, CPLEX still needs to find the optimal solution of 6 instances, see Figure 6 onthe left. This difference is stressed when the problem size becomes larger. While our algorithmterminates each of the 32 solution processes with 90/450 variables after one hour and 15 minutes,

13

Page 14: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

CPLEX is not able to find an integer feasible solution for only one instance during that time.

Figure 6: Mean of primal gap function for 20 instances with four quadratic constraints: smallinstance (30/150) on the left and large instance (90/450) on the right.

In Table 4 we see again that the number of recorded solutions does not exceed 2 for the B&Bdual approach while CPLEX has at most 2 solutions in only 25 of the 43 computed instances. Aspointed out before in the case of one quadratic constraint, we have seen that one key characteristicof our approach is the quality and computational time of the first found integer solution.

algorithm B&B dual CPLEX

# var l/n

# Sols= 1 ∈ [2, 4] ≥ 5 = 1 ∈ [2, 4] ∈ [5, 7] ≥ 8

30/150 2 9 0 1 9 1 0

60/300 5 6 0 3 7 1 0

90/450 4 7 0 0 9 2 0

Table 4: Summary of randomly generated test instances: number of solutions.

This is still true for problems with multiple quadratic constraints, see Table 5 and Figure 7on the left, with the only difference that the variation of the primal gap and the mean value ofthe primal gap is higher than in the study before. However, the quality of the first solution of theB&B dual algorithm is slightly better than the mean value for CPLEX even in the worst case, seeFigure 7 on the right. As before, the best and worst case concerning the computational time arevery close (about 200 sec.) for our implementation, whereas this difference is about 1200 sec. forCPLEX for the problem instance 90/450, cf. Figure 7 on the left.

Summarizing, there is no instance out of 33 ones, where CPLEX reaches the optimal solutionfaster than our B&B scheme.

4.4 Tests for data sets from academic literature

For further validation of our approach, we take six instances from the MINLPLib2 library5 (com-pare problem descriptions in Table 6). All instances are convex and consist of at least one quadraticconstraint. The first instances under consideration are the so-called CLay problems that are con-strained layout problems. From literature we know that these problems are ill-posed in the sensethat there is no feasible solution near the optimal solution of the continuous relaxation, see [6]. As

5http://www.gamsworld.org/minlp/minlplib2/html/

14

Page 15: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

algorithm B&B dual CPLEX

# var l/n mean t1 mean p(t1) mean t1 mean p(t1)

30/150 47 sec. 0.199 60 sec. 0.496

60/300 386 sec. 0.115 1124 sec. 0.341

90/450 1435 sec. 0.064 5099 sec. 0.307

Table 5: Mean time needed to calculate the first integer feasible solution and mean primal gap atthe first solution.

Figure 7: Time measure at the first documented integer feasible solution on the left side andprimal gap measure on the right side

a second application we consider portfolio optimization problems (called portfol classical). Thoseproblems arise by adding a cardinality constraint to the mean-variance portfolio optimizationproblem, see [27].

We aim to compare the performance of the B&B dual algorithm with CPLEX and Bonmin-BB while focusing on the quality of the first solutions found. We consider the quality measurescomputing times t1, topt, primal integral P (t), primal gap γ(x1) and total number of integer solu-tions MIP Sols. Apparently, CPLEX and Bonmin-BB benefit from additional internal heuristicsto prove optimality, cf. computing times in Table 6. In particular, CPLEX is able to find goodinteger solutions reasonably fast, independent of the problem size and the number of quadraticconstraints. However, as mentioned before, the performance of the B&B dual algorithm heavilydepends on the choice of the Lagrangian multiplier α. From computational tests we know that forproblems with many quadratic constraints (e.g. the CLay problems), it is reasonable to choosethe multipliers close to zero. Hence, for the CLay problems the Lagrangian multiplier α has beenchosen as α ∈ (0, 1p ), where p is the number of quadratic constraints. In contrast, in case of the

portfolio optimization problems, α has been selected from the set {0.5, 0.6, 0.7, 0.8, 0.9} and asmall random number has been added to prevent symmetric solutions.

The first four columns in Table 6 describe the problems. QC and LC count the amount ofquadratic and linear constraints of the initial problem. We document the solution times, theprimal integral P (T ) and integer MIP solutions. It turns out that CPLEX performs best for allinstances. However, the primal gap of the first integer solution γ(x1) is fairly good for the B&Bdual implementation, in particular in comparison with CPLEX, compare Table 7.

Figure 8 shows the evolution of the primal and dual bound for the recorded MIP solutionsof the CLay0205m (left) and the portfol classical050 1 problem (right) over time. Comparingthe two types of problems, we point out the main difference related to their structure. For the

15

Page 16: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

instance # var l/n QC LC solver time in sec. P (T ) MIP

t1 topt T Sols

CLay0204m 32/52 32 58 B&B dual 11 140 1197 15.66 4

Bonmin-BB <1 2.8 149 2.07 3

CPLEX 1 22 41 2.92 8

CLay0205m 50/80 40 95 B&B dual 64 448 54000† 236.71 6

Bonmin-BB 7 12682 54000† 166.22 6

CPLEX 2 831 2693 15.87 9

CLay0303m 21/33 36 30 B&B dual 8 8 343 8.41 1

Bonmin-BB 1.8 2.4 49 2.02 2

CPLEX 1 15 15 1.67 5

CLay0305m 55/85 60 95 B&B dual 106 5557 54000† 652.35 9

Bonmin-BB 8 - 54000† (716.81) (4)

CPLEX 4 1669 4749 9.38 8

portfol 50/150 1 102 B&B dual 23 32025 43996 937.35 20

classical050 1 Bonmin-BB <1 26‡ 30 1.77 4

CPLEX <1 4 4 0.31 3

portfol 200/600 1 402 B&B dual 398 - 54000† 1184.34 12

classical200 2 Bonmin-BB 15 15‡ 30 16.42 1

CPLEX 7 5548 54000† 34.14 6

Table 6: Examples taken from MINLPLib2. The symbol † states that the solution process hasbeen stopped after 15 hours. If the solution found by the solver is different from the one given byMINLPLib2, we marked topt with the symbol ‡.

solver CLay0204m CLay0205m CLay0303m CLay0305m

B&B dual 0.2839 0.7171 0 0.6898

Bonmin-BB 0.9119 0.3329 0.3610 0.0676

CPLEX 0.9046 0.6832 0.3636 0.4730

solver portfol classical050 1 portfol classical200 2

B&B dual 0.1254 0.2444

Bonmin-BB 0.0154 0.0852

CPLEX 0.0070 0.0072

Table 7: Primal gap γ(x1) of the first integer feasible solution.

portfolio optimization problem the MIP solutions are near to the optimal solution of the continuousrelaxation. In contrast, the integer feasible solutions of the CLay problems are scattered on a widerrange of the feasible region. This is a possible explanation for the fact that the dual bounds providemore information independent of the choice of α.

5 Conclusion

We have presented a promising algorithm based on duality concepts for convex problems to tackleMINLPs equipped with quadratic constraints. The new approach is efficient and outperforms the

16

Page 17: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

Figure 8: B&B dual algorithm: primal and dual bounds for the current best integer solution incase of the CLay0205m problem (left) and the portfol classical050 1 problem (right).

CPLEX solver for problems with a reasonable large amount of (integer) variables. Concerning thenumber of visited nodes in the B&B tree, we remark that the dual bound for pruning is not sharpto cut off all subproblems. However, this leads to an efficient strategy to get at least good (oroptimal) solutions very quickly. Future work includes the investigation of techniques to strengthenthe dual bounds and a sensitivity analysis for the Lagrangian multipliers α.

Acknowledgment

This work has been supported by the BMBF project ENets and the DFG projects GO 1920/4-1,HE 5386/14-1, HE 6954/4-1.

References

[1] E. Ammar and H. A. Khalifa, Fuzzy portfolio optimization a quadratic programming ap-proach, Chaos, Solitons & Fractals, 18 (2003), pp. 1045–1054.

[2] P. Belotti, C. Kirches, S. Leyffer, J. Linderoth, J. Luedtke, and A. Mahajan,Mixed-integer nonlinear optimization, Acta Numerica, 22 (2013), pp. 1–131.

[3] P. Belotti, J. Lee, L. Liberti, F. Margot, and A. Wachter, Branching and boundstightening techniques for non-convex MINLP, Optimization Methods and Software, 24 (2009),pp. 597–634.

[4] T. Berthold, Measuring the impact of primal heuristics, Operations Research Letters, 41(2013), pp. 611–614.

[5] A. Bley, A. M. Gleixner, T. Koch, and S. Vigerske, Comparing MIQCP Solvers toa Specialised Algorithm for Mine Production Scheduling, Springer Berlin Heidelberg, Berlin,Heidelberg, 2012, pp. 25–39.

[6] P. Bonami, L. T. Biegler, A. R. Conn, G. Cornuejols, I. E. Grossmann, C. D.Laird, J. Lee, A. Lodi, F. Margot, N. Sawaya, and A. Wachter, An algorithmicframework for convex mixed integer nonlinear programs, Discrete Optimization, 5 (2008),pp. 186–204.

17

Page 18: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

[7] P. Bonami and J. P. M. Goncalves, Heuristics for convex mixed integer nonlinear pro-grams, Computational Optimization and Applications, 51 (2012), pp. 729–747.

[8] P. Bonami, M. Kilinc, and J. Linderoth, Algorithms and Software for Convex MixedInteger Nonlinear Programs, Springer, New York, 2012, pp. 1–39.

[9] B. Borchers and J. E. Mitchell, An improved branch and bound algorithm for mixedinteger nonlinear programs, Computers & Operations Research, 21 (1994), pp. 359–367.

[10] C. Buchheim, A. Caprara, and A. Lodi, An effective branch-and-bound algorithm forconvex quadratic integer programming, Mathematical Programming, 135 (2012), pp. 369–395.

[11] R. E. Burkard, E. Cela, P. M. Pardalos, and L. S. Pitsoulis, The Quadratic As-signment Problem, Springer US, Boston, MA, 1999, pp. 1713–1809.

[12] J. F. Campbell, Integer programming formulations of discrete hub location problems, Euro-pean Journal of Operational Research, 72 (1994), pp. 387–405.

[13] R. J. Dakin, A tree-search algorithm for mixed integer programming problems, The ComputerJournal, 8 (1965), pp. 250–255.

[14] R. Fletcher and S. Leyffer, Solving mixed integer nonlinear programs by outer approx-imation, Mathematical Programming, 66 (1994), pp. 327–349.

[15] R. Fletcher and S. Leyffer, Numerical experience with lower bounds for MIQP branch-and-bound, SIAM Journal on Optimization, 8 (1998), pp. 604–616.

[16] C. Geiger and C. Kanzow, Theorie und Numerik restringiererter Optimierungsaufgaben,Springer, Berlin, 2002.

[17] P. Hahn and T. Grant, Lower bounds for the quadratic assignment problem based upon adual formulation, Operations Research, (1998), pp. 912–922.

[18] J. A. Hoogeveen and S. L. van de Velde, Stronger lagrangian bounds by use of slack vari-ables: Applications to machine scheduling problems, Mathematical Programming, 70 (1995),pp. 173–190.

[19] A. H. Land and A. G. Doig, An automatic method of solving discrete programming prob-lems, Econometrica, 28 (1960), p. 497.

[20] R. Lazimy, Mixed-integer quadratic programming, Mathematical Programming, 22 (1982),pp. 332–349.

[21] T. Lehmann, On Efficient Solution Methods for Mixed-Integer Nonlinear and Mixed-IntegerQuadratic Optimization Problems, PhD thesis, Univertity of Bayreuth, 2013.

[22] S. Leyffer, Integrating SQP and branch-and-bound for mixed integer nonlinear program-ming, Computational Optimization and Applications, 18 (2001), pp. 295–309.

[23] R. Misener and C. A. Floudas, GloMIQO: Global Mixed-Integer Quadratic Optimizer,Journal of Global Optimization, 57 (2013), pp. 3–30.

[24] I. Nowak, A new semidefinite programming bound for indefinite quadratic forms over asimplex, Journal of Global Optimization, 14 (1999), pp. 357–364.

[25] N. van Thoai, Duality bound method for the general quadratic programming problem withquadratic constraints, Journal of Optimization Theory and Applications, 107 (2000), pp. 331–354.

18

Page 19: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

[26] N. Van Thoai, Solution Methods for General Quadratic Programming Problem with Contin-uous and Binary Variables: Overview, Springer International Publishing, Heidelberg, 2013,pp. 3–17.

[27] J. P. Vielma, S. Ahmed, and G. L. Nemhauser, A lifted linear programming branch-and-bound algorithm for mixed-integer conic quadratic programs, INFORMS Journal on Comput-ing, 20 (2008), pp. 438–450.

[28] S. Vigerske, S. Heinz, A. Gleixner, and T. Berthold, Analyzing the computationalimpact of MIQCP solver components, Numerical Algebra, Control and Optimization, 2 (2012),pp. 739–748.

19

Page 20: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

A Appendix: one quadratic constraint

seed solver time in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

2 B&B dual 40 40 72 44.45 44.45 39.97 1

2 CPLEX 12.6.3 19 112 119 411.59 44.45 80.91 8

4 B&B dual 39 39 66 67.79 67.79 39.27 1

4 CPLEX 12.6.3 16 76 88 434.1 67.79 55.53 6

6 B&B dual 43 89 93 101.25 91.09 47.68 2

6 CPLEX 12.6.3 19 87 100 269.51 91.09 55.79 5

8 B&B dual 43 101 104 102.87 80.48 55.38 2

8 CPLEX 12.6.3 18 75 82 434.15 80.48 44.15 5

10 B&B dual 43 91 94 87.62 84.54 44.96 2

10 CPLEX 12.6.3 21 161 173 958.57 84.54 108.31 12

12 B&B dual 37 95 96 91.88 76.02 47.32 2

12 CPLEX 12.6.3 21 97 99 559.55 76.02 64.92 5

14 B&B dual 41 41 63 59.7 59.7 40.52 1

14 CPLEX 12.6.3 20 120 128 1184.92 59.7 92.67 7

16 B&B dual 39 39 78 68.12 68.12 39.33 1

16 CPLEX 12.6.3 18 114 122 509.38 68.12 82.81 9

18 B&B dual 41 82 86 100.23 82.62 48.16 2

18 CPLEX 12.6.3 19 74 81 483.84 82.62 48.03 5

20 B&B dual 40 86 86 114.4 80.19 53.34 2

20 CPLEX 12.6.3 18 50 60 232.25 80.2 35.59 3

Table 8: Type one, 30 linear equality and 50 linear inequality constraints, 30/150 variables.

seed solver time in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

2 B&B dual 293 733 782 134.8 124.23 327.35 2

2 CPLEX 12.6.3 649 3442 3907 1663.38 124.23 2560.18 6

4 B&B dual 270 597 645 148.68 147.22 273.05 2

4 CPLEX 12.6.3 520 3807 4375 1911.54 147.22 2563.98 7

6 B&B dual 268 268 622 160.11 160.11 267.52 1

6 CPLEX 12.6.3 577 2291 2691 2148.92 160.11 1720.56 4

8 B&B dual 262 262 472 125.17 125.17 261.82 1

8 CPLEX 12.6.3 444 2468 2796 2161.45 125.17 1637.66 6

10 B&B dual 278 278 532 132.75 132.75 278.49 1

10 CPLEX 12.6.3 537 1623 2048 2291.79 132.76 1486.9 4

12 B&B dual 291 627 675 158.09 144.84 318.9 2

12 CPLEX 12.6.3 505 1515 2020 2952.09 144.84 1274.96 4

14 B&B dual 269 600 647 153.4 133.18 312.72 2

14 CPLEX 12.6.3 558 5080 5108 1735.94 133.18 3456.39 9

16 B&B dual 287 803 854 153.51 140.15 331.66 2

16 CPLEX 12.6.3 558 2105 2599 2387.22 140.15 1803.72 5

18 B&B dual 313 717 763 157.67 140.04 357.94 2

18 CPLEX 12.6.3 448 3287 3505 3019.09 140.04 2056.29 8

20 B&B dual 329 329 402 92.81 92.81 329.42 1

20 CPLEX 12.6.3 707 4330 4415 4283.71 92.81 3306.6 7

Table 9: Type one, 60 linear equality and 100 linear inequality constraints, 60/300 variables.

20

Page 21: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

seed solver time in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

2 B&B dual 1072 1072 2587 183.86 183.86 1072.19 1

2 CPLEX 12.6.3 3013 44680 45999 4899.82 183.87 28826.04 11

4 B&B dual 1096 6370 6604 343.79 213.2 3099.28 2

4 CPLEX 12.6.3 2811 16021 17926 2776.11 213.2 12516.36 6

6 B&B dual 1000 2608 2850 281.78 230.25 1294.18 2

6 CPLEX 12.6.3 2182 21604 22329 4620.1 230.26 13001.74 7

8 B&B dual 1022 1022 2653 187.26 187.26 1022.22 1

8 CPLEX 12.6.3 1944 24115 26228 2468.15 187.26 18733.03 12

10 B&B dual 1091 1091 2193 172.22 172.22 1091.42 1

10 CPLEX 12.6.3 2272 13560 15845 6104.65 172.23 10262.1 6

12 B&B dual 1030 2285 2514 229.09 201.42 1182.05 2

12 CPLEX 12.6.3 2369 37029 37872 4775.54 201.42 24584.48 12

14 B&B dual 1067 2306 2536 202.92 198.56 1093.29 2

14 CPLEX 12.6.3 1944 8950 10790 3663.6 198.56 6547.27 5

16 B&B dual 1016 1016 2038 170.49 170.49 1016.06 1

16 CPLEX 12.6.3 2477 14042 16177 6029.96 170.5 10577.95 6

18 B&B dual 1033 2325 2561 203.41 158.18 1320.37 2

18 CPLEX 12.6.3 2483 34328 34345 6426.16 158.19 22974.08 9

20 B&B dual 959 959 1438 146.07 146.07 959.22 1

20 CPLEX 12.6.3 2146 15894 17355 4403.88 146.07 12371.01 6

Table 10: Type one, 90 linear equality and 150 linear inequality constraints, 90/450 variables.

seed solver time in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

2 B&B dual 40 40 55 44.27 44.27 39.95 1

2 CPLEX 12.6.3 19 96 100 250.23 44.27 70.6 6

4 B&B dual 41 41 75 87.39 87.39 41.26 1

4 CPLEX 12.6.3 20 97 100 1122.36 87.39 64.65 6

6 B&B dual 37 37 72 123.2 123.2 37.35 1

6 CPLEX 12.6.3 19 126 132 804.21 123.2 75.76 9

8 B&B dual 39 100 108 109.41 107.16 40.65 2

8 CPLEX 12.6.3 19 59 81 627.33 107.16 51.72 4

10 B&B dual 40 40 74 97.64 97.64 40.17 1

10 CPLEX 12.6.3 15 15 30 97.64 97.64 14.58 1

12 B&B dual 39 95 96 92.47 80.65 46.44 2

12 CPLEX 12.6.3 19 84 92 205.83 80.65 49.6 5

14 B&B dual 38 38 77 81.12 81.12 37.66 1

14 CPLEX 12.6.3 14 54 67 151.97 81.12 29.83 4

16 B&B dual 36 36 55 72.49 72.49 36.31 1

16 CPLEX 12.6.3 18 65 78 664.7 72.49 51.73 5

18 B&B dual 39 81 83 105.72 91.13 45.24 2

18 CPLEX 12.6.3 16 81 94 797.08 91.13 60.07 6

20 B&B dual 40 95 95 119.74 97.45 49.95 2

20 CPLEX 12.6.3 15 81 89 408.14 97.45 59.09 5

Table 11: Type two, 30 linear equality and 50 linear inequality constraints, 30/150 variables.

21

Page 22: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

seed solver time in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

2 B&B dual 285 285 704 134.41 134.41 285.19 1

2 CPLEX 12.6.3 241 1402 1697 2598.79 134.42 1028.28 8

4 B&B dual 253 253 628 182.21 182.21 253.48 1

4 CPLEX 12.6.3 274 1523 1665 2906.86 182.22 1032.01 7

6 B&B dual 290 290 636 177.71 177.71 290.22 1

6 CPLEX 12.6.3 246 1885 2037 2352.58 177.72 1301.51 9

8 B&B dual 259 259 380 133.8 133.8 259.37 1

8 CPLEX 12.6.3 265 2018 2100 2327.07 133.81 1414.44 9

10 B&B dual 290 290 409 153.41 153.41 290.08 1

10 CPLEX 12.6.3 221 1136 1278 1613.15 153.42 838.01 5

12 B&B dual 285 285 669 159.05 159.05 284.8 1

12 CPLEX 12.6.3 232 1668 1931 1857.4 159.05 1157.91 9

14 B&B dual 299 646 683 170.89 164.48 312.17 2

14 CPLEX 12.6.3 250 1515 1707 3837.47 164.48 934.56 6

16 B&B dual 286 752 824 153.17 153.16 285.76 2

16 CPLEX 12.6.3 216 1651 1954 1670.07 153.16 1105.17 8

18 B&B dual 291 291 655 160.96 160.96 290.79 1

18 CPLEX 12.6.3 247 1655 1851 6107.25 160.97 1279.71 7

20 B&B dual 304 304 419 109.5 109.5 303.77 1

20 CPLEX 12.6.3 609 1414 1624 5342.25 109.51 1397.04 3

Table 12: Type two, 60 linear equality and 100 linear inequality constraints, 60/300 variables.

seed solver time in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

2 B&B dual 1049 1049 2414 184.53 184.53 1048.79 1

2 CPLEX 12.6.3 2250 9475 11975 7864.56 184.54 7833.87 4

4 B&B dual 1120 10672 11157 384.09 271.3 3925.34 2

4 CPLEX 12.6.3 2569 8875 10721 10142.01 271.31 8507.42 4

6 B&B dual 959 3040 3288 315.46 273.79 1234 2

6 CPLEX 12.6.3 2921 10173 12859 8767.03 273.82 8262.96 4

8 B&B dual 1004 1004 2224 190.69 190.69 1004.48 1

8 CPLEX 12.6.3 2651 24457 25623 5466.38 190.7 16257.1 7

10 B&B dual 1111 1111 1867 176.4 176.4 1110.65 1

10 CPLEX 12.6.3 2655 33928 34744 7489.77 176.41 23643.66 11

12 B&B dual 1035 1035 2431 235.82 235.82 1034.69 1

12 CPLEX 12.6.3 2431 22523 24617 7887.09 235.82 14330.57 9

14 B&B dual 1048 1048 2038 205.06 205.06 1047.63 1

14 CPLEX 12.6.3 2568 40937 41405 8381.94 205.08 29628.03 14

16 B&B dual 1025 1025 1762 176.95 176.95 1025.28 1

16 CPLEX 12.6.3 2519 26385 27382 4186.88 176.96 18285.09 11

18 B&B dual 1006 2217 2446 241.34 200.21 1212.29 2

18 CPLEX 12.6.3 2513 12441 14742 13841.45 200.23 11232.24 5

20 B&B dual 1053 1053 1638 159.08 159.08 1052.59 1

20 CPLEX 12.6.3 2900 25479 25479 13316.24 159.09 18241.36 9

Table 13: Type two, 90 linear equality and 150 linear inequality constraints, 90/450.

22

Page 23: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

B Appendix: multiple quadratic constraints

seed QC LC solvertime in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

10 4 80 B&B dual 48 120 121 440 332.07 65.92 2

CPLEX 12.6.3 76 134 206 440.05 332.07 90.37 2

11 4 80 B&B dual 47 104 110 456.86 335.92 62.41 2

CPLEX 12.6.3 51 274 337 929.38 335.96 169.22 4

12 4 80 B&B dual 49 97 98 303.18 245 58.12 2

CPLEX 12.6.3 68 415 476 846.69 245.01 227.14 4

13 4 80 B&B dual 47 102 109 424.3 375.43 53.28 2

CPLEX 12.6.3 62 156 240 652.26 375.44 101.82 2

14 4 80 B&B dual 44 148 154 598.01 314.05 93.35 2

CPLEX 12.6.3 64 324 377 1131.07 314.07 206.26 3

15 4 80 B&B dual 47 107 107 363.58 305.63 56.27 2

CPLEX 12.6.3 61 115 196 836.88 305.63 95.4 2

16 4 80 B&B dual 46 96 97 274.03 206.42 58.07 2

CPLEX 12.6.3 58 292 347 1024.75 206.42 201.75 4

17 4 80 B&B dual 46 46 84 306.1 306.1 45.93 1

CPLEX 12.6.3 54 170 237 597.89 306.14 110.67 2

18 4 80 B&B dual 46 126 131 580.44 402.05 70.45 2

CPLEX 12.6.3 52 109 170 1946.51 402.06 96.92 2

19 4 80 B&B dual 43 43 61 238.93 238.93 42.72 1

CPLEX 12.6.3 62 62 128 238.93 238.93 62.27 1

20 4 80 B&B dual 51 102 102 360.02 295.89 59.8 2

CPLEX 12.6.3 54 401 456 1661.67 295.92 284.22 5

Table 14: Generated Examples, 30/150 variables.

23

Page 24: A novel branch-and-bound algorithm for quadratic mixed ... novel branch-and-bound algorithm for quadratic mixed-integer problems with quadratic constraints Simone G ottlich, Kathinka

seed QC LC solvertime in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

10 4 160 B&B dual 378 378 559 415.61 415.61 378.43 1

CPLEX 12.6.3 1235 3976 5013 1028.52 415.62 2458.63 3

11 4 160 B&B dual 356 356 572 378.47 378.47 356.35 1

CPLEX 12.6.3 1134 1134 2350 378.48 378.48 1133.63 1

12 4 160 B&B dual 404 905 915 526.49 427.37 498.24 2

CPLEX 12.6.3 1108 2654 4367 967.9 427.48 1971.17 2

13 4 160 B&B dual 390 891 902 584.68 402.81 546.2 2

CPLEX 12.6.3 1028 2089 3463 1923.11 402.84 1866.5 2

14 4 160 B&B dual 390 891 902 584.68 402.81 546.2 2

CPLEX 12.6.3 1193 5771 6887 1340.87 556.06 3344.57 3

15 4 160 B&B dual 396 396 664 427.5 427.5 396.21 1

CPLEX 12.6.3 1172 1172 2761 427.52 427.52 1172.3 1

16 4 160 B&B dual 380 380 877 429.31 429.31 379.7 1

CPLEX 12.6.3 1092 1092 2984 429.31 429.31 1092.44 1

17 4 160 B&B dual 397 906 936 634.38 554.59 461.11 2

CPLEX 12.6.3 1074 3347 4218 634.34 554.59 1359.48 2

18 4 160 B&B dual 374 858 876 642.18 467.14 506.07 2

CPLEX 12.6.3 1367 8920 9714 1002.83 467.29 4898.47 5

19 4 160 B&B dual 419 913 947 556.8 464.49 500.62 2

CPLEX 12.6.3 987 5267 6493 952.41 464.52 2778.24 3

20 4 160 B&B dual 368 368 618 443.18 443.18 367.71 1

CPLEX 12.6.3 977 3309 4871 973.37 443.2 2247.21 2

Table 15: Generated Examples, 60/300 variables.

seed QC LC solvertime in sec. OFV P (T ) MIP

t1 topt T f(x1) f(xopt) Sols

10 4 240 B&B dual 1538 3429 3492 726.71 696.61 1616.54 2

CPLEX 12.6.3 5480 17371 21290 726.72 696.65 5971.62 2

11 4 240 B&B dual 1450 3671 3866 797.48 779.1 1500.75 2

CPLEX 12.6.3 5156 21658 34269 1675.82 779.25 13597.12 3

12 4 240 B&B dual 1451 3242 3380 844.98 755.33 1641.07 2

CPLEX 12.6.3 4828 14981 18757 845.04 755.38 5905.06 2

13 4 240 B&B dual 1436 3255 3349 876.02 707.64 1785.46 2

CPLEX 12.6.3 5287 31338 37208 1741.13 707.66 17448.65 5

14 4 240 B&B dual 1358 1358 2579 595.84 595.84 1358.23 1

CPLEX 12.6.3 4969 20992 26146 2677.62 595.88 15709.79 4

15 4 240 B&B dual 1439 3175 3294 708.56 706.22 1445.14 2

CPLEX 12.6.3 4730 28807 33064 1422.91 706.31 12566.7 4

16 4 240 B&B dual 1387 1387 2357 580.69 580.69 1387.06 1

CPLEX 12.6.3 5655 25028 30518 1310.22 580.74 14226.09 3

17 4 240 B&B dual 1428 1428 2640 837.76 837.76 1427.79 1

CPLEX 12.6.3 5272 17095 22724 1735.4 837.89 8885.63 3

18 4 240 B&B dual 1398 3038 3094 694.22 631.78 1545.6 2

CPLEX 12.6.3 4401 9109 14691 694.33 631.81 4825.31 2

19 4 240 B&B dual 1457 4414 4488 806.75 607.06 2189.16 2

CPLEX 12.6.3 4864 43987 45492 1611.28 607.14 23929.94 7

20 4 240 B&B dual 1438 1438 1646 491.87 491.87 1438.14 1

CPLEX 12.6.3 5448 16744 21798 1111.61 491.91 11745.43 2

Table 16: Generated Examples, 90/450 variables.

24