J Optim Theory Appl (2014) 160:457–469 DOI 10.1007/s10957-013-0340-6
A Note on Convex Reformulation Schemes for Mixed Integer Quadratic Programs Eric Newby · M.M. Ali
Received: 23 April 2012 / Accepted: 13 May 2013 / Published online: 24 May 2013 © Springer Science+Business Media New York 2013
Abstract This paper examines a convex reformulation scheme for mixed integer quadratic programs, which was recently developed in the literature. A modification to the scheme, based on a linear transformation, is presented. The modification improves performance for problems which have more continuous variables than integer variables. Numerical results are presented showing the effectiveness of the modification. Keywords Mixed integer programming · Quadratic programming · Linear transformation · Non-convex optimization · Semidefinite programming
1 Introduction In this paper, we consider convex reformulation schemes for linearly constrained mixed integer quadratic programs (MIQPs). More specifically, we consider problems with nonconvex objective functions, which become convex if all of the integer variables are fixed, i.e. the continuous part of the Hessian is positive semidefinite. The development of improved solution techniques for MIQPs is important since they have a number of applications, a list of examples is given in Billionnet et al. [1]. A number of papers consider the case with binary rather than general integer variables, for a good overview see Misener and Floudas [2], Burer [3] and the references contained therein. Fewer papers consider the general integer case. A good review of the convex relaxations and valid inequalities that have been developed for this problem can be found in Burer and Saxena [4]. In addition, the gap inequalities E. Newby () · M.M. Ali School of Computational and Applied Mathematics, University of the Witwatersrand, Wits 2050, South Africa e-mail:
[email protected]
458
J Optim Theory Appl (2014) 160:457–469
for the max-cut problem [5] have recently been generalised to MIQPs with nonconvex objective functions [6]. In Buchheim and Wiegele [7], a branch and bound method using semidefinite programming (SDP) relaxations is developed for unconstrained MIQPs. In Billionnet et al. [1], a convex reformulation scheme for nonconvex MIQPs, with the special structure described in the previous paragraph, is developed using SDP; this scheme is known as Mixed Integer Quadratic Convex Reformulation (MIQCR). Nonconvex MIQPs can also be solved using general nonconvex mixed integer nonlinear programming solvers such as BARON [8], Couenne [9], SCIP [10] and LINDO [11, 12]. Finally, nonconvex MIQPs can be solved using the mixed integer quadratically constrained quadratic programming solver GloMIQO [2, 13]. We note that here, and in the remainder of the paper, we use the terms ‘convex mixed integer program’ and ‘nonconvex mixed integer programs’ to refer to mixed integer programs with convex and nonconvex objective functions, respectively. Since the continuous part of the Hessian is positive semidefinite, the MIQP considered in this paper can be reformulated as an equivalent problem with a convex objective function [1]. We propose a modification to MIQCR which gives improved solution times for problems with more continuous variables than integer variables. The modification is based on a linear transformation which reduces the number of bilinear terms in the objective function. A related transformation based approach for solving quadratic integer programs is developed in Zheng et al. [14]; transformation matrices which are almost unimodular are used to generate lower bounding problems without bilinear terms. The rest of the paper is organised as follows. In Sect. 2, we review MIQCR. In Sect. 3, the modification to MIQCR is developed. The computational results are presented in Sect. 4. Concluding remarks are made in Sect. 5.
2 Review of MIQCR In this section, we review MIQCR. MIQCR can be applied to MIQPs with the following form 1 min f (x) = x T H x + g T x x 2 s.t.
Ax ≤ b, Dx = e, l ≤ x ≤ u, T T T x = xc , xd ∈ Rnc × Znd ,
(1)
where H ∈ Sn (space of symmetric matrices of order n), g ∈ Rn , A ∈ Rm×n , b ∈ Rm , D ∈ Rp×n and e ∈ Rp . The numbers of discrete and continuous variables are denoted by nd and nc , respectively. As noted in Sect. 1, H is indefinite and the nc th principal leading submatrix of H is positive semidefinite. We assume, without loss of generality, that the origin has been shifted such that the lower bound on each variable is 0. The details of the method described in this section are all taken from Billionnet et al. [1]. Let ui denote the upper bound on xi .
J Optim Theory Appl (2014) 160:457–469
459
Now, define the following sets of indices; J = {1, 2, . . . , nc }, I = {nc + 1, nc + 2, . . . , n}, P = (i, j ) ∈ I 2 ∪ (I × J ) ∪ (J × I ) , E = (i, k) : i ∈ I, k = 0, . . . , log2 (ui ) . Problem (1) is convexified by adding to the problem new variables wij and new linear constraints which ensure that wij = xi xj . If equality constraints are present in problem (1), the following term is also added to the objective function n
2 p α (D)ri xi − er , r=1
(2)
i=1
where (D)ri is the element in the rth row and ith column of D, and α ∈ R is a parameter whose value is discussed later in this section. Clearly, (2) is zero in the feasible region so its addition will have no effect on the objective function value. More specifically, the convex reformulation is performed by considering the following perturbed objective function fα,β (x, w) = f (x) +
n
2 p βij (xi xj − wij ) + α (D)ri xi − er .
(i, j )∈P
r=1
(3)
i=1
Clearly, fα,β (x, w) = f (x) in the feasible region if we enforce the equality constraint wij = xi xj . Now, the following problem, which has (3) as its objective function, is equivalent to problem (1): min fα,β (x, w) x,w
s.t.
Ax ≤ b,
Dx = e,
l ≤ x ≤ u,
log2 ui
xi =
2k tik ,
wii ≥ xi ,
i ∈ I,
k=0
tik ∈ {0, 1}, zij k ≤ uj tik ,
(i, k) ∈ E, zij k ≤ xj ,
zij k ≥ xj − uj (1 − tik ),
zij k ≥ 0,
(i, k) ∈ E, j ∈ I ∪ J,
(i, k) ∈ E, j ∈ I ∪ J,
log2 ui
wij =
2k zij k ,
(i, j ) ∈ I × (I ∪ J ),
k=0
wij = wj i , wij ≤ ui xj ,
wij ≥ xi uj + xj ui − ui uj , (i, j ) ∈ I × J.
(i, j ) ∈ P ,
(4)
460
J Optim Theory Appl (2014) 160:457–469
The parameters α and βij are constrained to values which result in a convex objective function (3). MIQCR finds the values of α and βij which give the maximum value for the minimum of the continuous relaxation of problem (4). Denote these values by α ∗ and βij∗ . These values of α and βij are chosen since they will allow a tight initial lower bound to be obtained when solving the problem with a branch and bound algorithm. It is shown in Billionnet et al. [1] that the values of α ∗ and βij∗ can be found using the following theorem. Theorem 2.1 α ∗ and βij∗ can be deduced from the optimal values of the dual variables of the following semidefinite program: min x,X
s.t.
Tr(H X) + g T x Ax ≤ b,
Dx = e,
(5a) l ≤ x ≤ u,
0 ≤ xi ≤ ui , i ∈ J, n
m m n (D)ri (D)rj Xij − 2(D)ri er xi = − er2 , r=1 i=1
j =1
(5b)
r=1
Xij ≤ uj xi ,
(i, j ) ∈ P ,
(5c)
Xij ≤ ui xj ,
(i, j ) ∈ P ,
(5d)
Xij ≥ uj xi + ui xj − ui uj , Xij ≥ 0,
(i, j ) ∈ P ,
(5e)
(i, j ) ∈ P ,
(5f)
Xii ≥ xi , i ∈ I, 1 x 0, x ∈ R n , X ∈ Sn . xT X
(5g) (5h)
The value of α ∗ is equal to the optimal value of the dual variable associated with constraint (5b). The coefficients βij∗ are given by the following equation βij∗ =
⎧ ⎨βij1∗ + βij2∗ − βij3∗ − βij4∗ ,
i = j,
⎩β 1∗ + β 2∗ − β 3∗ − β 4∗ − β 5∗ , i = j, ij ij ij ij ij
(6)
where βij1∗ , βij2∗ , βij3∗ , βij4∗ and βii5∗ are the optimal values of the dual variables associated with constraints (5c)–(5g), respectively. Substituting the values of α ∗ and βij∗ obtained using Theorem 2.1 into problem (4), we obtain a convex MIQP which is equivalent to problem (1). The equivalent MIQP, problem (4), can be solved efficiently due to the tight lower bound given by the continuous relaxation of the problem. MIQCR can be applied to any problem where the nc th principal leading submatrix is positive semidefinite.
J Optim Theory Appl (2014) 160:457–469
461
In the case when problem (1) has inequality constraints and no equality constraints, it is desirable to reformulate the problem in such a way that we can use α to tighten the lower bound obtained for the continuous relaxation [1]. This can be done by using slack variables to convert the inequality constraints to equality constraints.
3 A Modification of MIQCR In this section, we combine a linear transformation [15] with the ideas developed in Sect. 2. We call this reformulation technique Mixed Integer Quadratic Transformation and Convex Reformulation (MIQTCR). We introduce the following notation for the different parts of the Hessian Hcc Hcd , H= T Hcd Hdd where Hcc ∈ Snc , Hdd ∈ Snd and Hcd ∈ Rnc ×nd . Unlike MIQCR, MIQTCR can only be applied to problems for which Hcc is positive definite. Now, consider a matrix V of the following form Ucd Ucc , (7) V= 0nd ,nc Ind where Ucc ∈ Rnc ×nc is an arbitrary invertible matrix, Ucd ∈ Rnc ×nd is an arbitrary matrix, 0nd ,nc is an nd × nc matrix of zeros and Ind is an nd × nd identity matrix. Since both Ucc and Ind are invertible V is invertible [16]. Since V is invertible the linear transformation x = V y can be applied. Under this transformation problem (1) is equivalent to the following problem: 1 min f (V y) = y T V T H V y + g T V y y 2 s.t. AV y ≤ b, DV y = e, l ≤ V y ≤ u, T T T y = yc , yd ∈ Rnc × Znd ,
(8a) (8b) (8c)
where (8c) follows from the fact that Ucc yc + Ucd yd ∈ R nc ⇒ yc ∈ R nc and Ind yd = yd . Now, set Ucc to be the matrix whose columns are the normalised eigenvectors of Hcc and choose the elements of Ucd such that Hcc Ucd = −Hcd . Since Hcc is positive definite this equation can always be satisfied. With this choice of the elements of V we obtain the following equivalent MIQP: 1 T yc Θcc yc + ydT Θdd yd + g T V y 2 (8c),
min f (V y) = y
s.t.
(8b),
(9)
462
J Optim Theory Appl (2014) 160:457–469
T T H U and Θ −1 where Θcc = Ucc cc cc dd = Hdd − Hcd Hcc Hcd . Clearly, Θcc is diagonal and positive definite [16]. Problem (1) has been transformed into an equivalent problem which has no terms containing both continuous and integer variables, has an objective function which is fully separable in the continuous variables and has at most 12 (n2c − nc ) + nc nd fewer terms in the objective function than problem (1) [15]. This has been achieved without adding any additional variables or constraints to the problem, the only detrimental effect is that the bound constraints have become linear constraints. The bounds on the variables in the problem (9) are given by yiL ≤ yi ≤ yiU , where L yi and yiU can be found as follows [14]. Let
yiL0 = min V −1 i x : Ax ≤ b, Dx = e, l ≤ x ≤ u , x
yiU 0
= max V −1 i x : Ax ≤ b, Dx = e, l ≤ x ≤ u , x
where (V −1 )i is the ith row of V −1 . The bounds on the variables are given by ⎧ ⎨yiL = yiL0 ,
yiU = yiU 0
⎩y L = y L0 , i
i
if i ∈ J,
yiU = yiU 0 if i ∈ I.
Using these bounds we can rewrite problem (9) as follows: min f (V y) = y
s.t.
(8b),
1 T yc Θcc yc + ydT Θdd yd + g T V y 2
(10a)
(8c),
yiL ≤ yi ≤ yiU ,
∀i ∈ J ∪ I.
(10b)
We now assume, without loss of generality, that the origin of the transformed problem has been shifted such that yiL = 0 ∀i ∈ J ∪ I . This allows us to apply the methods developed in Sect. 2. The objective function of our transformed problem has no terms containing both continuous and integer variables. In addition, the continuous terms in the objective function, ycT Θcc yc , are convex. If we can perturb the discrete terms, ydT Θdd yd , in such a way that the discrete part of the objective function is convex the entire resulting objective function will be convex. Therefore, we consider a modification of / I 2. the method described in Sect. 2, in which we set the parameters βij = 0∀(i, j ) ∈ Consider the following perturbed function
fα,β (y, w) = f (y) +
(i,j )∈I 2
n
2 p βij (yi yj − wij ) + α (DV )ri yi − er . r=1
i=1
J Optim Theory Appl (2014) 160:457–469
463
Now, the following problem, which has this expression as its objective function, is equivalent to problem (1): min fα,β (y, w) y,w
s.t.
(8b),
(10b), log2 yiU
yi =
2k tik ,
wii ≥ yi ,
i ∈ I,
k=0
tik ∈ {0, 1},
(i, k) ∈ E,
zij k ≤ yjU tik ,
(11)
zij k ≤ yj ,
zij k ≥ yj − yjU (1 − tik ),
zij k ≥ 0,
(i, k) ∈ E, j ∈ I,
(i, k) ∈ E, j ∈ I,
log2 yiU
wij =
2k zij k ,
(i, j ) ∈ I 2 ,
k=0
wij ≥ yi yjU + yj yiU − yiU yjU ,
wij = wj i ,
(i, j ) ∈ I 2 .
We see that problem (11) has fewer variables than problem (4). We use the following trivial adaption of Theorem 2.1 to find α ∗ and βij∗ . Theorem 3.1 α ∗ and βij∗ can be deduced from the optimal values of the dual variables of the following semidefinite program: min y,X
s.t.
Tr(H X) + g T V y
(12a)
(8b), 0 ≤ yi ≤ yiU , i ∈ J, n
m m n (DV )ri (DV )rj Xij − 2(DV )ri er yi = − er2 , r=1 i=1
j =1
(12b) (12c)
r=1
Xij ≤ yjU yi ,
(i, j ) ∈ I 2 ,
(12d)
Xij ≤ yiU yj ,
(i, j ) ∈ I 2 ,
(12e)
Xij ≥ yjU yi + ui yj − yiU yjU , Xij ≥ 0,
(i, j ) ∈ I 2 ,
(i, j ) ∈ I 2 ,
Xii ≥ yi , i ∈ I, 1 y 0, y ∈ R n , X ∈ Sn . yT X
(12f) (12g) (12h) (12i)
464
J Optim Theory Appl (2014) 160:457–469
The value of α ∗ is equal to the optimal value of the dual variable associated with constraint (12c). The coefficients βij∗ are given by (6). In this case βij1∗ , βij2∗ , βij3∗ , βij4∗ and βii5∗ are the optimal values of the dual variables associated with constraints (12d)– (12h), respectively. Substituting the values of α ∗ and βij∗ obtained using Theorem 3.1 into problem (11), we obtain a convex MIQP which is equivalent to problem (1). The lower bound given by the continuous relaxation of problem (11) is generally not as tight as the bound of problem (4). This is due to the fact that each βij term used to perturb the objective function is used to tighten the continuous relaxation of the objective function and MIQTCR uses fewer βij terms than MIQCR. However, due to this reduction in the number of βij terms, problem (11) has fewer variables than problem (4). This may allow problem (11) to be solved more efficiently than problem (4). In addition, we note that the transformation might allow us to solve problem (12a)–(12i) faster than problem (5a)–(5h). In the case when problem (1) has inequality constraints and no equality constraints, we make use of α as described at the end of Sect. 2. We note that the slack variable transformation must be applied to problem (10a), (10b) as adding slack variables to problem (1) will make Hcc positive semidefinite.
4 Computational Results The effectiveness of the convex reformulations developed in Sects. 2 and 3 was tested on randomly generated MIQPs with Hcc 0. Problems with Hcc positive semidefinite rather than positive definite were not considered since MIQCR is the only scheme applicable in this case, so it is obviously the preferred reformulation for such problems. When comparing approaches the superior approach is taken to be the one with the shortest computation time. All tests were performed on a PC with an Intel Core i5 CPU at 3.2 GHz with 4 GB of RAM running 64-bit Windows 7. Whenever two different algorithms were used to solve the same problem, the second algorithm was begun as soon as the first algorithm was terminated. This was done to ensure a similar computational load. All solutions were checked for feasibility. If an algorithm ran for more than 10000 seconds on a problem it was stopped and declared unsuccessful for that problem. In the following discussion of the problem generation method, the random numbers were generated using MATLAB 7.11. The method described in [7] was used to generate symmetric random matrices with a specified percentage p of positive eigenvalues. The Hessians of our test problems were generated as follows: 1. 2. 3. 4.
Generate an n × n matrix H˜ with p = 50 %. Generate an nc × nc matrix Hcc with p = 100 %. Generate H by replacing the nc th principal leading submatrix of H˜ with Hcc . If H 0 discard H and go to step 1, otherwise return H .
The elements of the vector g were chosen uniformly at random from ]−1, 1[.
J Optim Theory Appl (2014) 160:457–469
465
Three types of constraints were considered in the test problems, 1. Bound constraints: only bound constraints, l ≤ x ≤ u, were present in the original problem. 2. Sparse linear inequality constraints: only linear inequality constraints, Ax ≤ b, were present in the original problem and the matrix A was sparse. 3. Dense linear inequality constraints: only linear inequality constraints, Ax ≤ b, were present in the original problem and the matrix A was dense. The sparse linear inequality constraints were generated using the following method: 1. Generate a random 2 × 2 matrix a with elements in ]0, 2[. 2. If n is even generate an n × n matrix A1 by making each 2 × 2 block diagonal element a and setting all other elements to zero. If n is odd then generate an by making each 2 × 2 block diagonal element a and (n + 1) × (n + 1) matrix A1 by removing the (n + 1)th setting all other elements to zero. Form A1 from A1 row and (n + 1)th column from A1. 3. Let A be the following 2n × n matrix, A = [A1T , −A1T ]T . 4. Generate a random n × 1 vector β with integer elements between 1 and 3. 5. Let b be the following 2n × 1 vector, b = [β T , β T ]T . The sparsity of A decreases from 1 for n = 2 to 0.0667 for n = 30. The dense linear inequality constraints were generated using the following method: 1. 2. 3. 4.
Generate a random n × n matrix A1 with elements in ]0, 1[. Let A be the following 2n × n matrix, A = [A1T , −A1T ]T . Generate a random n × 1 vector β with integer elements between 1 and 3. Let b be the following 2n × 1 vector, b = [β T , β T ]T .
The A matrices generated using this method contain no zero elements so they all have a sparsity of 1. These constraints will always result in a feasible, bounded problem as they can be thought of as the result of transforming the constraints of a bound constrained problem with the variables constrained to lie between −β and β. When solving problems with constraints of type 1 we use −2 ≤ x ≤ 2. The computational results are presented in the form of performance profiles [17] using the ratio of the computing time of an algorithm over the best time of all of the algorithms as the performance metric. Let tp,s be the time taken by algorithm s to solve problem p. The performance ratio ρp,s is then given by ρp,s =
tp,s , min{tp,s : s ∈ S}
(13)
where S is the set of algorithms. Denote the fraction of performance ratios that are less than a factor τ ≥ 1 by P (ρp,s ≤ τ : s ∈ S). The performance profile is a plot, for each algorithm, of P (ρp,s ≤ τ : s ∈ S) vs τ . To allow the entire performance profile to be viewed in detail, a logarithmic scale is used for τ . We now discuss the comparison of MIQCR and MIQTCR. The reformulated MIQPs were solved using CPLEX 12.1 and the SDPs in Theorems 2.1 and 3.1 were solved using SeDuMi 1.3 [18]. Both CPLEX and SeDuMi were called from MATLAB and were run with their default settings; the default convergence tolerance of
466
J Optim Theory Appl (2014) 160:457–469
Fig. 1 Performance profile comparing MIQCR and MIQTCR for nc = nd
SeDuMi is 10−9 , the default absolute and relative convergence tolerances of CPLEX are 10−6 and 10−4 , respectively. When solving problems with constraints of types 2 and 3, the first inequality constraint is converted to an equality constraint using a slack variable. This allows α to be used in the reformulation. The first set of results presented compare MIQCR and MIQTCR when nc = nd . The set of test problems was constructed using various values of n for each type of constraint; for type 1, 2 and 3 constraints, we used n = 4, 8, 16, 24, 32, n = 4, 8, 12, 16, 20 and n = 4, 6, 8, 10, 12, respectively. For each value of n, ten random problems were generated, creating a test set of 150 problems. Different values of n are used for different constraint types in an attempt to obtain problems with a similar level of difficulty for each type of constraint; for example, problems with type 1 constraints are much easier to solve than problems with type 3 constraints so a larger range of n values is used for these constraints. The results are presented in the form of a performance profile [17], using computing time as the performance measure, in Fig. 1. The computation time includes the solution times of both CPLEX and SeDuMi. MIQCR and MIQTCR appear to be roughly equivalent for this set of test problems. We see from Fig. 1 that while MIQTCR solves the greatest number of problems in the shortest time it takes much longer than MIQCR for a number of problems. When nc = nd it appears that the reduction in the number of variables generated by MIQTCR is balanced by the tighter relaxation gap generated by MIQCR. It should be clear from the discussion in Sect. 3 that as nc increases the difference in the number of variables required by MIQTCR and MIQCR should increase. This behaviour is illustrated in Table 1, which gives the average relaxation gap and number of variables in the reformulated problems when nc is varied with n = 8 for problems with constraints of type 2. For each value of nc , five test problems were generated and the values given in the table are the averages of the results obtained for the five problems. We see that the percentage of the number of variables required by MIQTCR relative to MIQCR decreases from 82 % to 27 % as nc increases from 1 to 7. For the same range of nc , the percentage of the relaxation gap in the problems generated by MIQCR relative to MIQTCR only varied between 68 % and 43 %. Similar behaviour is observed for all three types of constraints. Observing this behaviour, it seems reasonable to compare MIQCR and MIQTCR for nc > nd . The set of test problems used
J Optim Theory Appl (2014) 160:457–469
467
Table 1 The average relaxation gap and number of variables for problems with constraints of type 2 when nc is varied with n = 8. The ratio in the fourth column is the relaxation gap of MIQCR over that of MIQTCR. The ratio in the seventh column is the number of variables used by MIQTCR over the number used by MIQCR nc
1 2 3
Relaxation gap
Number of variables
MIQCR
MIQTCR
Ratio
854.71
1399.4
0.611
414
340.4
0.822
0.475
297
196.2
0.661
0.437
310
175.6
0.566
103
21.987 257.09
4
26.621
5
88.929
46.252 588.40 59.940 191.43
MIQCR
MIQTCR
Ratio
0.444
221
0.465
182
69.2 46.6
0.305
18
0.273
6
27.858
41.272
0.675
153
7
18.973
27.846
0.681
66
0.466 0.380
Fig. 2 Performance profile comparing MIQCR and MIQTCR for nc > nd
to make this comparison was constructed as follows. Similarly to nc = nd , for type 1, 2 and 3 constraints we used n = 8, 16, 24, 32, n = 8, 12, 16, 20 and n = 8, 10, 12, 14, respectively. For each value of n, four values of nc were used. The values were chosen to evenly divide the interval [n/2 + 1, n − 1]; for example, for n = 24 we have nc = 13, 16, 20, 23. For n = 8, nc = 4 was also to construct the test set. We do not consider nc = n since the resulting problem is a continuous convex quadratic program. For each pair of values of n and nc , five test problems were generated creating a test set of 240 problems. The results obtained when solving the test problems using MIQCR and MIQTCR are presented in the form of a performance profile in Fig. 2. Considering Fig. 2 we see that MIQTCR has a clear advantage over MIQCR for problems of the type considered here with nc > nd . This advantage is due to the fact that for nc > nd the reduction in the number of variables generated by MIQTCR has a greater effect than the tighter relaxation gap generated by MIQCR. As noted before, these results obviously only apply when Hcc 0. When Hcc is positive semidefinite rather than positive definite, MIQCR is the only applicable reformulation scheme.
468
J Optim Theory Appl (2014) 160:457–469
Fig. 3 Performance profile comparing MIQCR and MIQTCR for nc < nd
For completeness we also give results for nd > nc . The test set was constructed using type 1, 2 and 3 constraints with n = 8, 11, 14, 17, n = 8, 10, 12, 14 and n = 8, 9, 10, 11, respectively. As before, four values of nc were chosen for each n to evenly divide the interval [1, n/2 − 1] with nc = 4 also being used for n = 8. Smaller values of n were used than when testing nc > nd as the difficulty of the problems increases as nd increases. The results for this set of problems are given in Fig. 3. We see that, as expected, MIQCR is the superior reformulation scheme when nd > nc .
5 Conclusions We have proposed a modification of the reformulation scheme developed by Billionnet et al. [1]. Numerical results have been presented which show that the modification gives improved solution times for problems with more continuous variables than integer variables. The modification uses a linear transformation to reduce the number of bilinear terms in the objective function. This reduces the solution time because each bilinear terms requires extra variables and constraints to be added to the reformulated problem, increasing the solution time. The greater the number of continuous variables in the problem the greater the reduction in the number of bilinear terms. It appears that the point at which this reduction becomes large enough to reduce the solution time is when there are more continuous variables in the original problem than integer variables. We also note that during the computational testing it was found that, for problems with fewer than six variables, it can be more efficient to solve the original problem directly rather than applying a convex reformulation. This behaviour is caused by the contribution of the solution time of the semidefinite program to the solution time of convex reformulation. For small problems the semidefinite program makes a large contribution to the solution time. For large problems the cost of the semidefinite program becomes negligible compared to the solution time of the reformulation. Acknowledgements The authors would like to thank the anonymous reviewers for their helpful comments. The second author would also like to thank Professor Tapio Westerlund of Åbo Academi, Turku,
J Optim Theory Appl (2014) 160:457–469
469
Finland, for introducing him to the research area. Financial support was supplied by the National Research Foundation of South Africa under Grant CPR2010030300009918.
References 1. Billionnet, A., Elloumi, S., Lambert, A.: Extending the QCR method to general mixed-integer programs. Math. Program. 131, 381–401 (2012) 2. Misener, R., Floudas, C.: GloMIQO: Global mixed-integer quadratic optimizer. J. Glob. Optim. (2012). doi:10.1007/s10898-012-9874-7 3. Burer, S.: On the copositive representation of binary and continuous nonconvex quadratic programs. Math. Program. 120, 479–495 (2009) 4. Burer, S., Saxena, A.: The MILP road to MIQCP. In: Lee, J., Leyffer, S. (eds.) Mixed Integer Nonlinear Programming, pp. 373–405. Springer, New York (2012) 5. Laurent, M., Poljak, S.: Gap inequalities for the cut polytope. Eur. J. Comb. 17, 233–254 (1996) 6. Galli, L., Kaparis, K., Letchford, A.N.: Gap inequalities for non-convex mixed-integer quadratic programs. Oper. Res. Lett. 39, 297–300 (2011) 7. Buchheim, C., Wiegele, A.: Using semidefinite programming for solving non-convex mixed-integer quadratic problems. In: Proceedings of the European Workshop on Mixed Integer Nonlinear Programming (2010) 8. Sahinidis, N.B.: A general purpose global optimization software package. J. Glob. Optim. 8, 201–205 (1996) 9. Belotti, P., Lee, J., Liberti, L., Margot, F., Wachter, A.: Branching and bounds tightening techniques for non-convex MINLP. Optim. Methods Softw. 24, 597–634 (2009) 10. Achterberg, T.: SCIP: Solving constraint integer programs. Math. Program. Comput. 1, 1–41 (2009) 11. Gau, C.Y., Schrage, L.E.: Implementation and testing of a branch-and-bound based method for deterministic global optimization: Operations research applications. In: Floudas, C.A., Pardalos, P.M. (eds.) Frontiers in Global Optimization, pp. 145–164. Kluwer Academic Publishers, Dordrecht (2003) 12. Lin, Y., Schrage, L.E.: The global solver in the LINDO API. Optim. Methods Softw. 24, 657–668 (2009) 13. Misener, R., Floudas, C.: GloMIQO: Global optimization of mixed-integer quadratically-constrained quadratic programs (MIQCQP) through piecewise-linear and edge-concave relaxations. Math. Program., Ser. B 136, 155–182 (2012) 14. Zheng, X.J., Sun, X.L., Li, D.: Separable relaxation for nonconvex quadratic integer programming: integer diagonalization approach. J. Optim. Theory Appl. 146, 463–489 (2010) 15. Newby, E.: General solution methods for mixed integer quadratic programming and derivative free mixed integer non-linear programming problems. Ph.D. dissertation, University of the Witwatersrand (2013, submitted) 16. Horn, R.A., Johnson, C.R.: Matrix Analysis. Cambridge University Press, Cambridge (1985) 17. Dolan, E.D., Moré, J.J.: Benchmarking optimization software with performance profiles. Math. Program. 91, 201–213 (2002) 18. Sturm, J.F.: Using SeDuMi 1.02, a MATLAB toolbox for optimization over symmetric cones. Technical Report, Department of Econometrics, Tilburg University (2001)