research article a discrete hybrid difierential evolution...

33
June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu- tion Algorithm for Solving Integer Programming Problems” Engineering Optimization Vol. 00, No. 00, February 2013, 1–33 RESEARCH ARTICLE A Discrete Hybrid Differential Evolution Algorithm for Solving Integer Programming Problems Hong Li * , and Li Zhang Department of Mathematics, Xidian University, Xi’an 710071, P. R. China (Received 28 September 2012) Differential evolution (DE) is one of the most prominent new evolutionary algorithms for solving real-valued optimization problems. In this paper, a dis- crete hybrid differential evolution (DHDE) algorithm is developed to solve global numerical optimization problems with discrete variables. The orthogonal crossover is combined with DE crossover to achieve crossover operation, and the simplified quadratic interpolation (SQI) method is employed to improve the algorithm’s local search ability. A mixed truncation procedure is incorpo- rated in the operations of DE mutation and SQI to ensure that the integer restriction is satisfied. Numerical experiments on 40 test problems including seventeen large-scale problems with up to 200 variables have demonstrated the applicability and efficiency of the proposed method. Keywords: integer programming; discrete differential evolution algorithm; orthogonal crossover; discrete global optimization 1. Introduction Real-world discrete optimization problems arise in several areas such as plant operation, design, location, scheduling, etc., which involve integer decision variables (see, e.g.,Kesen et al. 2010, Muppani and Adil 2008, Se¸ckiner and Kurt 2007, Safaei et al. 2008, Tang et al. 2006). Mathematical models of these problems are known as integer programming problems, including linear or nonlinear 0-1 programming, linear or nonlinear integer programming and their mixed form. Due to its numerous and diverse applications, integer programming has received increasing attention in the literature (see Mohan and Nguyen 1999, Ng et al. 2007, Vegh et al. 2011, Zhu and Ali 2009 and the references therein). In many integer programming problems, a global optimal solution rather than a local optimal solution is desired (Ng et al. 2005). Therefore, it is necessary to develop discrete global optimization algorithms. * Corresponding author. Email: [email protected] ISSN: 0305-215X print/ISSN 1029-0273 online c 2013 Taylor & Francis DOI: 10.1080/0305215YYxxxxxxxx http://www.informaworld.com

Upload: others

Post on 06-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering OptimizationVol. 00, No. 00, February 2013, 1–33

RESEARCH ARTICLE

A Discrete Hybrid Differential Evolution Algorithm forSolving Integer Programming Problems

Hong Li∗, and Li Zhang

Department of Mathematics, Xidian University, Xi’an 710071, P. R. China

(Received 28 September 2012)

Differential evolution (DE) is one of the most prominent new evolutionaryalgorithms for solving real-valued optimization problems. In this paper, a dis-crete hybrid differential evolution (DHDE) algorithm is developed to solveglobal numerical optimization problems with discrete variables. The orthogonalcrossover is combined with DE crossover to achieve crossover operation, andthe simplified quadratic interpolation (SQI) method is employed to improvethe algorithm’s local search ability. A mixed truncation procedure is incorpo-rated in the operations of DE mutation and SQI to ensure that the integerrestriction is satisfied. Numerical experiments on 40 test problems includingseventeen large-scale problems with up to 200 variables have demonstrated theapplicability and efficiency of the proposed method.

Keywords: integer programming; discrete differential evolution algorithm;orthogonal crossover; discrete global optimization

1. Introduction

Real-world discrete optimization problems arise in several areas such as plant operation,design, location, scheduling, etc., which involve integer decision variables (see, e.g.,Kesenet al. 2010, Muppani and Adil 2008, Seckiner and Kurt 2007, Safaei et al. 2008, Tanget al. 2006). Mathematical models of these problems are known as integer programmingproblems, including linear or nonlinear 0-1 programming, linear or nonlinear integerprogramming and their mixed form. Due to its numerous and diverse applications, integerprogramming has received increasing attention in the literature (see Mohan and Nguyen1999, Ng et al. 2007, Vegh et al. 2011, Zhu and Ali 2009 and the references therein).In many integer programming problems, a global optimal solution rather than a localoptimal solution is desired (Ng et al. 2005). Therefore, it is necessary to develop discreteglobal optimization algorithms.

∗Corresponding author. Email: [email protected]

ISSN: 0305-215X print/ISSN 1029-0273 onlinec© 2013 Taylor & FrancisDOI: 10.1080/0305215YYxxxxxxxxhttp://www.informaworld.com

Page 2: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

2 H. Li et al.

Most of the ongoing researches in the global optimization fields center on the devel-opment of algorithms for solving the real parameter optimization problem, in which thedecision variables are restricted to real-valued (continuous) variables (see, e.g., Ho et al.2004, Mezura-Montes and Coello 2005, Noman and Iba 2008, Runarsson and Yao 2005,Rahnamayan et al. 2008, Tsai et al. 2004). However, it is relatively difficult to solve integerprogramming problems that involve discrete variables. This is mainly because these prob-lems pose major algorithmic challenges in the development of effective solution strategies.Especially, it is an algorithm challenge to locate the global optima of high-dimensionalinteger programming problems. Generally speaking, the efficient methods designed forreal parameter optimization problems can not be directly used to solve integer program-ming problems. Additionally, an integer programming problem with bounded discretevariables, especially binary variables, may be transformed into an equivalent continuousglobal optimization problem, such that the problem can be solved by the methods ofcontinuous global optimization (Ge and Huang 1989, Murray and Ng 2010). Unfortu-nately, the transformed problems usually have large numbers of local optima, makingthem harder to solve than typical global optimization problems (Murray and Ng 2010).

The literature on integer global optimization can be divided into two classes, determin-istic approaches and stochastic approaches (Ng et al. 2005). Deterministic approachesfor integer optimization are only applicable to problems with some analytical proper-ties, which include, for example, branch and bound techniques (Muppani and Adil 2008,Lee et al. 1994, Chan et al. 2006), Lagrangian relaxation methods (Tang et al. 2006,Fisher 1981), cutting planes techniques (Oguz 2010), and dynamic programming meth-ods (Balev et al. 2008), the filled function methods (Ng et al. 2005, 2007), etc. However,most methods can only tackle relatively small scale general integer optimization problems(Ng et al. 2007).

Stochastic or heuristic approaches can be applied to almost all discrete optimizationproblems (Zhu and Ali 2009), especially for high-dimensional cases (Zhu and Fan 2009).This is mainly because stochastic approaches need not depend on some analytical proper-ties of problems. There exist some stochastic approaches to solving discrete optimizationproblems, such as simulated annealing algorithms (Seckiner and Kurt 2007, Safaei et al.2008), evolutionary algorithms (Hua and Huang 2006, Kesen et al. 2010, Lin and Hwang2004, Li et al. 2006), tabu search algorithms (Glover 2006), particle swarm optimization(Chen et al. 2010, Parsopoulos and Vrahatis 2002), and the controlled random searchtechnique (Mohan and Nguyen 1999).

The developments in evolutionary algorithms (EAs) have seen increasing applicationsin dealing with complex global optimization problems with continuous or discrete vari-ables (see Deng et al. 2011, Hrstka et al. 2003, Kesen et al. 2010, Noman and Iba 2008,Runarsson and Yao 2005, Zhang and Leung 1999). EAs essentially are stochastic searchmethods based on the concepts of natural selection and survival of the fittest. They guidethe evolution of a set of randomly selected individuals through a number of generationsin approaching the global optimum solution. Differential evolution (DE), introduced byStorn and Price (1997), is one of the most prominent new EAs for solving real-valued opti-mization problems. DE has exclusive advantages, such as a simple and easy-to-understandconcept, ease of implementation, powerful search capability, and robustness (Noman andIba 2008). Using only a few control parameters, DE has gradually become more popularand has been used in many practical cases (Brest et al. 2006). However, many effortsneed to try for integer programming problems by using DE.

Constraint-handling techniques in EAs are a key issue for solving constrained opti-mization. There have been many methods proposed for handling constraints in EAs, in-

Page 3: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 3

cluding the penalty function methods, specialized operators, multiobjective optimizationtechniques, co-evolutionary method, repair methods, etc. (Coello 2002). Subsequently,some novel constraint-handling techniques are developed, for example, the feasibility-based comparison method (Mezura-Montes and Coello 2005), the α constrained method(Takahama and Sakai 2005), etc.

Generally speaking, all population-based stochastic optimization algorithms, no ex-ception for DE, suffer from long computational times because of their evolutionary orstochastic nature (Rahnamayan et al. 2008). Several studies have shown that incorpo-rating some form of domain knowledge can greatly improve the search capability of EAs(Noman and Iba 2008, Rahnamayan et al. 2008). In this paper, a discrete hybrid differ-ential evolution (DHDE) algorithm is developed to deal with the integer programmingproblems. The corresponding DE operators, namely, mutation, crossover, and selectionare discussed in detail. For the performance enhancement, the orthogonal crossover anda local search strategy are introduced. The performance of the proposed DHDE is as-sessed by carrying out optimization on 40 test problems including seventeen large-scaleproblems with up to 200 dimensions. In addition, DHDE is compared with six availablealgorithms (Deng et al. 2011, Mohan and Nguyen 1999, Ng et al. 2005, Parsopoulos andVrahatis 2002, Vegh et al. 2011, Zhu and Fan 2009).

This paper is organized as follows. The integer programming problem is described inthe next section. A discrete hybrid differential evolution algorithm for solving integerprogramming problems is proposed in Section 3. Computational results of the proposedalgorithm and discuss are provided in Section 4. Comparisons with other available algo-rithms are made in Section 5. Finally, conclusions are drawn and the future work prospectis given in Section 6.

2. Problem formulation

This paper considers the general integer programming problem formulated as

minimize f(x)

subject to gj(x) ≤ 0, j = 1, 2, · · · , p

x ∈ X ⊂ Zn

(1)

where Zn is the set of integer points in Rn, the set X is box constraint, i.e.

X = [l, u] = {x ∈ Zn|li ≤ xi ≤ ui, li and ui are integer constants}.

In most practical applications, the integer bounds l and u are available or can be specifiedeasily.

If problem (1) contains equality constraint h(x) = 0, it may be approximated byinequality constraint g(x) = |h(x)|− δ ≤ 0, where δ stands for the degree of violation. Inthis paper, let δ = 0.0001.

The objective function f(x) and constraint functions gj(x), j = 1, 2, · · · , p may belinear or nonlinear, noncontinuous, even nondifferentiable. The feasible integer points setF is defined by

F = {x ∈ X ⊂ Zn|gj(x) ≤ 0, j = 1, 2, · · · , p}. (2)

Page 4: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

4 H. Li et al.

An integer point x∗ ∈ F is called a discrete global optimal solution of problem (1), iff(x) ≥ f(x∗), for all x ∈ F .

3. A discrete hybrid differential evolution algorithm

In this section, a novel discrete hybrid differential evolution (DHDE) algorithm is intro-duced to deal with integer programming problems. The following several enhancementsin the DHDE are presented for global optimization with discrete variables.

• An integer coding technique is applied to optimization problems with discrete vari-ables. In the integer coding representation, each individual is encoded as a vector ofinteger numbers, with the same length as the vector of decision variables.

• The orthogonal crossover formed by two tools of the orthogonal experimental design,i.e., two-level orthogonal array and factor analysis, is combined with the DE crossoveroperator. The systematic reasoning ability of the orthogonal experimental design isused to economically identify a potentially good approximation to the best one of allcombinations by executing fewer experiments.

• The simplified three-point quadratic interpolation method is taken as a local searchoperator, which is adopted to improve the algorithm’s local search ability and solutionquality, and to prevent the algorithm from getting trapped in the local optima.

• A mixed truncation procedure is incorporated in the operations of DE mutation andthe local search to ensure that the integer restrictions imposed on the decision variablesare satisfied.

By using these strategies, DHDE is proposed for solving the integer programmingproblems comprising many variables, as compared with some existing algorithms. Thedetails of the components in DHDE are provided as follows.

3.1. Individual coding and Initialization

For solving integer programming problem (1) by the DHDE, an individual is representedby an integer vector, i.e., a vector x = (x1, x2, · · · , xn) is used to express an individual,where xi is an integer, i = 1, 2, · · · , n.

Randomly generate an n-dimensional integer vector as an initial individual. By thefollowing Algorithm 1, randomly generate NP individuals to construct an initial pop-ulation, where NP denotes the population size which is restricted as an even number inthis paper.Algorithm 1: Initial population

Step 1. For i = 1, 2, · · · , n, randomly generate an integer number xi in the range [li, ui].As a result, obtain an individual x = (x1, · · · , xi, · · · , xn).

Step 2. Repeat the above step NP times and produce NP initial individuals to constitutethe initial population.

3.2. Fitness function

The penalty function method, due to its simplicity, is by far the most widely studiedand used in handling constraints (Runarsson and Yao 2005). Based on the exact penalty

Page 5: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 5

method, the fitness function fit(x) is expressed as:

fit(x) =

f(x), if x ∈ F

f(x) + Θ ·p∑

j=1max{gj(x), 0}, otherwise

(3)

where Θ (Θ > 0) is the penalty parameter.

3.3. Mutation operation

The mutant individuals generated by DE mutation operation belong to real variables.Due to the integer restriction imposed on the decision variable, real variables are thenmodified to integer variables by using a mixed truncation procedure. Consequently, eachcomponent of mutant individuals becomes an integer in its constrained range.

Denote the best individual with minimum fitness value in the G-th generation byxG

b = (xGb,1, x

Gb,2, · · · , xG

b,n).In current G-th generation, randomly select three distinct individuals, denoted by xG

r1=

(xGr1,1, x

Gr1,2, · · · , xG

r1,n), xGr2

= (xGr2,1, x

Gr2,2, · · · , xG

r2,n), and xGr3

= (xGr3,1, x

Gr3,2, · · · , xG

r3,n).For each t, t = 1, 2, · · · , NP

2 (NP is a given even number), and all i, i = 1, 2, · · · , n,one real vector xG

t = (xGt,1, x

Gt,2, · · · , xG

t,n) is generated according to

xGt,i = xG

r1,i + F · (xGb,i − xG

r1,i) + F · (xGr2,i − xG

r3,i), (4)

where random indexes r1, r2, r3 are mutually distinct integers in [1, NP ] not equal to t.The scaling factor F is a positive real-valued parameter which controls the amplificationof the difference vector, and F ∈ (0, 1]. Then it is modified to the integer by using thefollowing truncation procedure.

vGt,i = INT[xG

t,i]. (5)

For each t, t = NP2 + 1, NP

2 + 2, · · · , NP , and all i, i = 1, 2, · · · , n, another real vectorxG

t = (xGt,1, x

Gt,2, · · · , xG

t,n) is generated according to

xGt,i = xG

r1,i + F · (xGb,i − xG

r1,i) + F · (xGr2,i − xG

r3,i), (6)

where random indexes r1, r2, r3 are mutually distinct integers in [1, NP ] not equal tot, and F ∈ (0, 1]. Then it is modified to the integer by using the following truncationprocedure.

vGt,i =

{INT[xG

t,i] + 1, if xGt,i ≥ 0

INT[xGt,i]− 1, otherwise

(7)

The above-mentioned operator INT[·] is expressed as the integer part of the real number.In order to make the integer obtained by Equations (5) and (7) satisfy the box con-

straint, the following repair operator is used.If vG

t,i /∈ [li, ui], then randomly select an integer in [li, ui] to substitute it. Otherwise,vGt,i remains unchanged.

Page 6: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

6 H. Li et al.

Therefore, the total NP mutant individuals vGt = (vG

t,1, vGt,2, · · · , vG

t,n) can be generated.The first half of the population and the latter half of population utilize different trunca-tion operations so as to obtain a potentially optimal integer solution, and increase thediversity of the population.Algorithm 2: Mutation operation

Step 1. Determine the best individual with minimum fitness value in the G-th generation.Step 2. Randomly choose three different individuals in the current population.Step 3. Generate a mutant individual by using Equations (4)-(7) and the repair operator.Step 4. Repeat Step 2 and Step 3 NP times to produce NP mutant individuals.

3.4. Crossover operation

In classic DE algorithms, the crossover offspring is randomly generated by randomlyselecting the components of parent or mutation individual with a certain probability. Inorder to improve the effect of crossover, the orthogonal crossover based on orthogonalexperimental design is combined with the DE crossover. The orthogonal crossover isconsidered as a determinate combination method in that the best combination generatedby the orthogonal crossover is not worse than its parents.

A two-level orthogonal array similar to that in Tsai et al. (2004) is used in this paper.The general symbol for two-level standard orthogonal arrays is LN (2N−1), where N isthe number of experimental runs, N − 1 denotes the number of factors. Let n ≤ N − 1.If n = N − 1, the standard orthogonal array LN (2N−1) is directly adopted. If n < N − 1,only the first n columns of the standard orthogonal array LN (2N−1) is adopted. Thealgorithm of constructing orthogonal arrays can be found in Leung and Wang (2001).Several orthogonal arrays can also be available in Fang and Ma (2001) or Sloane (2007).

After evaluation of each one in the N combinations, the summarized data are analyzedusing factor analysis. Factor analysis can evaluate the effects of individual factors on thefitness value, rank the most effective factors, and determine the better level for eachfactor. In this paper, the factor analysis in Ho et al. (2004) is adopted in this algorithm.Let fiti denote a fitness value of the combination corresponding to the experiment i,i = 1, 2, · · · , N , where N is the total number of experiments. Define the main effect offactor j with level k as Ejk where j = 1, 2, · · · , n and k = 1, 2:

Ejk =N∑

i=1fiti · χi (8)

where χi = 1 if the level of factor j of experiment i is k; otherwise, χi = 0. Consideringthe case that the problem is to be minimized (smaller-the-better), the level 1 of factorj makes a better contribution to the fitness value than level 2 of factor j does whenEj1 < Ej2, so the better level is level 1 for factor j. If Ej1 > Ej2, level 2 is the betterone. If Ej1 = Ej2, levels 1 and 2 have the same contribution.

After an improved level for each factor is selected, a best individual can also be ob-tained. This best individual has the lowest fitness value among those of parents and Ncombinations of factor levels, where N is the total number of experiments. The pur-pose for the use of the orthogonal experimental design is to produce a potentially bestindividual from randomly selected pair of individuals.

To illustrate the application of the orthogonal crossover, the following simple exampleis used:

Page 7: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 7

Table 1. Orthogonal array L4(23).

Experiment Factor ji 1 2 3

1 1 1 12 1 2 23 2 1 24 2 2 1

Table 2. Corresponding factors ofs1 and s2.

Level Factor jk 1 2 3

Level 1 (s1) 1 4 7Level 2 (s2) 3 6 10

min f(x) = −3x21 + 2x2

2 + x3

s. t. 1 ≤ x1 ≤ 3, 4 ≤ x2 ≤ 6, 7 ≤ x3 ≤ 10xi is integer, i = 1, 2, 3

In this problem, a variable vector x = (x1, x2, x3) represents an individual, wherex1 ∈ {1, 2, 3}, x2 ∈ {4, 5, 6}, x3 ∈ {7, 8, 9, 10}. Randomly select a pair of individualss1 and s2 for the orthogonal crossover. Let s1 = (1, 4, 7) with fit(s1) = 36 and s2 =(3, 6, 10) with fit(s2) = 55. Consequently, this minimization problem can be regarded asan experimental design problem of three factors, with two levels each. Let factors 1, 2,and 3 be variables x1, x2, and x3, respectively. The two-level orthogonal array L4(23) isused, as shown in Table 1.

Let each value of individual s1 be the level 1 of each factor; that of individual s2 is thelevel 2 of each factor. That is, the values of three factors in the individual s1 are 1, 4, and7, which are regarded as level 1; those in the individual s2 are 3, 6, and 10, which areregarded as level 2. Then, the three components in the individuals s1 and s2 correspondto the factors 1, 2, and 3, respectively, as shown in Table 2.

Next, as shown in Table 3, the values of level 1 and level 2 are assigned to the levelcells in the orthogonal array L4(23), and then four specific combinations can be obtained.

Using factor analysis, the best combination (3, 4, 7) is determined from analyzing theresults of the four specific combinations, described in Table 3. This best combination (3,4, 7) with fitness value 12 is just the best individual, with the lowest fitness value amongthose of 36 combinations. It is obvious that, instead of executing all 36 combinations, theorthogonal crossover can offer an efficient approach toward finding the best individualby only executing 4 experiments.

Now a hybrid crossover by means of combination of the orthogonal crossover and DEcrossover is provided as follows.Algorithm 3: Hybrid crossover operation

Page 8: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

8 H. Li et al.

Table 3. Generating a best individual from two parents by using the orthogonalcrossover.

Experiment Factor j Fitness valuei 1 2 3 fiti

1 1 4 7 362 1 6 10 793 3 4 10 154 3 6 7 52

Ej1 115 51 88Ej2 67 131 94

Better level 2 1 1

Best combination (Best individual) 3 4 7 12

Step 1. Randomly generate an integer index I ∈ {1, 2, · · · , NP}.Step 2. For t = 1, 2, · · · , NP , if t = I, the parent individual xG

I and mutant individ-ual vG

I are selected to execute the orthogonal crossover, and a potentially bestcombination uG

I = (uGI,1, · · · , uG

I,k, · · · , uGI,n) with the better factor level is finally

obtained.Step 3. For t = 1, 2, · · · , NP , if t 6= I, execute DE crossover for the parent in-

dividual xGt and mutant individual vG

t corresponding to the other indicesexcept for t = I by using Equation (9), and generate (NP − 1) individualsuG

t = (uGt,1, · · · , uG

t,k, · · · , uGt,n).

uGt,k =

{vGt,k, if Rk ≤ CR or k = rn(t)

xGt,k, otherwise

(9)

where Rk ∈ (0, 1) is a uniform random number, rn(t) ∈ {1, 2, · · · , n} is therandomly selected index chosen once for each t, and CR is a real-valued crossoverrate constant in the range (0,1).

Step 4. Generate NP individuals in total by using orthogonal crossover and DE crossover,and evaluate their fitness values.

3.5. Local search operation

In this subsection, the simplified three-point quadratic interpolation method (Mohan andNguyen 1999) is introduced again, which is adopted to improve the local search ability ofthe main algorithm and solution quality, and to prevent the main algorithm from gettingtrapped in the local optima.

Sort all the crossover offspring in the current population in ascending order of theirfitness values. Denote the best individual by uG

1 = (uG1,1, · · · , uG

1,n) with fit1 = fit(uG1 ),

and the worst individual by uG3 = (uG

3,1, · · · , uG3,n) with fit3 = fit(uG

3 ), then chooserandomly an individual uG

2 = (uG2,1, · · · , uG

2,n) with fit2 = fit(uG2 ) between the best and

the worst individual. Finally, determine an approximate minimum real-valued individualuG

a = (uGa,1, · · · , uG

a,n) using the three-point quadratic interpolation formula:

Page 9: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 9

For i = 1, 2 · · · , n, do

uGa,i =

Ai

2Bi(10)

where Ai = [(uG2,i)

2 − (uG3,i)

2]fit1 + [(uG3,i)

2 − (uG1,i)

2]fit2 + [(uG1,i)

2 − (uG2,i)

2]fit3, andBi = (uG

2,i − uG3,i)fit1 + (uG

3,i − uG1,i)fit2 + (uG

1,i − uG2,i)fit3.

If Bi = 0, let Bi = ε. In this paper, ε = 10−6.In order to make uG

a,i satisfy the integer restriction, uGa,i is modified using the mixed

truncation procedure, and two integers yG1,i and yG

2,i are generated:

yG1,i = INT[uG

a,i] (11)

yG2,i =

{INT[uG

a,i] + 1, if uGa,i ≥ 0

INT[uGa,i]− 1, otherwise

(12)

where INT[·] is expressed as the integer part of the real number.To make the integers yG

1,i and yG2,i be within [li, ui], perform the above-mentioned repair

operator:If yG

1,i /∈ [li, ui] or yG2,i /∈ [li, ui], then randomly select two integers in the range [li, ui] to

substitute them; If yG1,i ∈ [li, ui] and yG

2,i ∈ [li, ui], then they remain unchanged.Compute the fitness values of yG

1 = (yG1,1, · · · , yG

1,n) and yG2 = (yG

2,1, · · · , yG2,n), and let

uGa =

{yG1 , if fit(yG

1 ) < fit(yG2 )

yG2 , otherwise

(13)

Finally, compare the fitness value of uGa with that of the worst individual in current

population generated by crossover operation. If uGa is better than the worst individ-

ual, then replace the worst individual with uGa . Otherwise, the population generated by

crossover operation remains unchanged.Algorithm 4: Local search operation

Step 1. Rearrange all the individuals generated by crossover operation in ascending orderof their fitness values.

Step 2. Find the best individual uG1 with minimum fitness value fit(uG

1 ), and the worstindividual uG

3 with maximum fitness value fit(uG3 ). Randomly choose one indi-

vidual between the best and the worst individual, denoted by uG2 with fit(uG

2 ).Step 3. For some i ∈ {1, 2, · · · , n}, if Bi = 0, let Bi = ε.Step 4. Obtain uG

a by using the Equations (10)-(13), and its fitness value fit(uGa ).

Step 5. If fit(uGa ) < fit(uG

3 ), then replace the worst individual in current populationformed by crossover offspring with uG

a ; Otherwise, keep the current populationunchangeable.

3.6. Selection operation

To decide the population for the next generation, for t = 1, 2, · · · , NP , the trial vectoruG

t and the parent vector xGt are compared. The individual of the next generation xG+1

t

Page 10: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

10 H. Li et al.

is decided according to the following rule for the function minimization:

xG+1t =

{uG

t , if fit(uGt ) < fit(xG

t )xG

t , otherwise(14)

3.7. Stopping criteria

If |fit(xGb ) − f∗| < ε, where fit(xG

b ) denotes the fitness value of the best individualin the G-th population, f∗ denotes the known global optimal value, and ε = 10−6,then algorithm stops and outputs the result. Otherwise, the algorithm is executed tothe maximum number of generations MaxG, then algorithm stops and outputs the result.

Now the discrete hybrid differential evolution (DHDE) algorithm for problem (1) ispresented as follows and illustrated by the flow chart in Figure 1.

Algorithm 5: DHDE algorithm

Step 0. Parameter settingChoose population size NP , scaling factor F , crossover rate CR, two-level stan-dard orthogonal array LN (2N−1), penalty parameter Θ, accuracy threshold ε, andmaximum number of generations MaxG.

Step 1. InitializationLet G = 0, an initial population is generated by the Algorithm 1, and evaluatetheir fitness values.

Step 2. Mutation operationMutant individuals are produced by the Algorithm 2.

Step 3. Crossover operationCrossover individuals are produced by the Algorithm 3.

Step 4. Local search operationAccording to Algorithm 4, perform the local search.

Step 5. Selection operationAccording to selection rule, form the next population.

Step 6. Stopping criteriaIf the stopping criteria is met, then stop, and output the result. Otherwise, setG = G + 1, and go to Step 2.

4. Computational experiences and discussion

To demonstrate feasibility and efficiency of the proposed DHDE algorithm, 40 integerprogramming problems including seventeen large-scale problems with up to 200 variablesare tested. The test problems are selected from the literature (Deng et al. 2011, Mohanand Nguyen 1999, Ng et al. 2005, Parsopoulos and Vrahatis 2002, Vegh et al. 2011, Zhuand Fan 2009), covering a broader range for the purpose to demonstrate the robustnessand reliability of the proposed algorithm. The details of these problems are provided inthe Appendix.

The proposed algorithm is programmed in Matlab 7.0, running on a notebook computerwith Intel Core(TM)2 Duo CPU P8700, 2.53 GHz CPU and 1.94GB RAM.

During the simulations, the following parameter settings of the DHDE are adopted for

Page 11: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 11

StartStart

Parameter settingParameter setting

Set G=0Set G=0

InitializationInitialization

Mutation

operation

Mutation

operation

Crossover

operation

Crossover

operation

Local search

operation

Local search

operation

Selection

operation

Selection

operation

Stopping criterion

satisfied?

Stopping criterion

satisfied?NoNo

G=G+1G=G+1

Output resultsOutput results

YesYes

EndEnd

Figure 1. The flow chart of the discrete hybrid differential evolution algorithm.

Page 12: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

12 H. Li et al.

Table 4. Statistical results of different individuals in different evolutionarygenerations for problems 1-4 with 200 dimensions.

Problem NP G = 20 G = 40 G = 60 G = 80 G = 100

1 200 200 200 145 5 22 200 200 200 111 6 23 200 195 171 73 18 124 200 167 156 139 105 68

each test problem.

• Population Size: NP = 50 for n < 50; NP = n for n ≥ 50;• Scaling Factor: F = 0.6 + rand(0, 1) · 0.3, where rand(0, 1) denotes random number

within the interval (0, 1);• Crossover Rate: CR = 0.9;• Penalty Parameter: Θ = 10000;• Maximum Number of Generations: MaxG = 2000;• Accuracy Threshold: ε = 10−6;• Two-level orthogonal arrays used in this paper are provided as follows:

L4(23) for the 2-dimensional or 3-dimensional problem; L8(27) for the 4-dimensionalor 5-dimensional problem; L12(211) for the 8-dimensional or 10-dimensional problem;L16(215) for the 13-dimensional problem; L24(223) for the 20-dimensional problem;L28(227) for the 25-dimensional problem; L32(231) for the 30-dimensional problem;L64(263) for the 40-dimensional or 50-dimensional problem; L200(2100) for the problemwith 100 dimensions; L400(2200) for the problem with 200 dimensions.

The performance of the DHDE is assessed based on the optimization results on the40 test problems as compared with some existing discrete optimization algorithms. Foreach test problem, 50 independent runs with different seeds from the random numbergenerator are performed to observe the consistency of the outcome. In order to examinethe performance of the DHDE in handling large-scale problems, the algorithm is used toperform optimization for seventeen problems having a dimension as high as 200.

For the purpose of investigating the diversity of population and repeated individualsgenerated by the mixed truncation procedure, the number of different individuals in thepopulation is counted for different evolutionary generations G. Problems 1-4 with 200dimensions are used as the examples to illustrate this case. When G = 20, G = 40,G = 60, G = 80, and G = 100, the statistical results are shown in Table 4. It should benoted that population size is 200. For problems 1-3, the global optimal solutions havebeen obtained when G = 60. For problem 4, the global optimal solution has been founduntil G = 100. From this table, it can be seen that the number of different individuals in apopulation or the diversity of population decreases as evolutionary generation increases.It also shows that more and more repeated individuals appear in the population asevolutionary generation increases gradually.

The computational results of DHDE are measured by using the following two perfor-mance measure.

• Success rate (SR), i.e., the proportion of convergence to the global optimum, whichcan be used to evaluate the stability and robustness of proposed algorithm.

• Mean number of fitness evaluations (FES), which can be used to assess the computa-tional cost or efficiency of proposed algorithm.

Page 13: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 13

Table 5. Comparison of DHDE with the the mixed truncation procedure andDHDE with the rounding method for problems 1-4 with 200 dimensions.

Mixed truncation procedure Rounding methodProblem Dimension SR FES SR FES

1 200 100% 35,610 4% 1,177,0002 200 100% 31,564 52% 688,7303 200 100% 31,251 100% 267,1404 200 100% 51,490 38% 1,160,142

Table 6. Comparative results of DHDE with DEOX, and DESQI for test problems 1−20with different dimensions.

DHDE DEOX DESQIProblem Dimension SR FES SR FES SR FES

1 25 100% 1,949 100% 3,036 100% 1,2811 50 100% 3,504 100% 5,431 100% 1,8351 100 100% 12,989 100% 17,908 100% 4,7721 200 100% 35,610 100% 43,304 100% 12,3972 25 100% 1,911 100% 2,830 100% 1,3742 50 100% 3,201 100% 5,189 100% 1,7112 100 100% 12,941 100% 17,032 100% 4,5822 200 100% 31,564 100% 40,784 100% 11,8763 25 100% 1,692 100% 2,456 100% 1,1433 50 100% 2,867 100% 5,098 100% 1,4403 100 100% 11,208 100% 17,530 100% 4,2113 200 100% 31,251 100% 44,972 100% 11,2494 25 100% 2,493 100% 3,819 100% 1,5994 50 100% 5,015 100% 7,921 100% 2,1864 100 100% 18,963 100% 28,138 100% 6,3954 200 100% 51,490 100% 72,296 100% 17,2935 25 100% 3,125 100% 4,131 100% 2,6085 50 100% 5,170 100% 7,556 100% 3,2035 100 100% 23,209 100% 28,582 100% 10,9065 200 100% 67,768 100% 77,912 100% 32,3346 25 100% 5,568 96% 14,889 100% 4,0596 50 100% 8,908 100% 15,100 100% 3,7716 100 100% 41,510 100% 57,892 100% 22,2636 200 100% 122,210 100% 166,592 100% 62,8937 25 100% 7,615 98% 10,727 6% 98,4897 50 100% 14,627 98% 18,748 0% 104,0507 100 100% 58,422 100% 58,438 0% 204,1007 200 100% 200,501 100% 195,776 0% 404,2008 25 100% 1,455 100% 1,891 100% 1,0588 50 100% 2,658 100% 3,445 100% 1,5358 100 100% 10,495 100% 12,538 100% 4,1078 200 100% 26,134 100% 31,688 100% 10,9959 5 100% 3,434 100% 3,579 100% 3,20410 10 100% 14,632 100% 14,017 100% 15,00311 13 100% 419 100% 1,048 100% 33112 3 100% 1,147 100% 1,029 100% 1,06613 4 100% 811 100% 948 100% 66414 2 100% 1,581 100% 1,618 100% 1,45215 2 100% 1,717 100% 1,695 100% 1,56616 4 100% 3,075 100% 3,238 100% 2,66517 2 100% 1,662 100% 1,625 94% 7,67218 3 100% 825 100% 943 100% 76019 5 86% 24,273 82% 24,378 90% 14,79520 8 84% 25,304 44% 71,836 34% 71,569

Page 14: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

14 H. Li et al.

Table 7. Comparative results of DHDE with DEOX, and DESQI for test problems 21− 40with different dimensions.

DHDE DEOX DESQIProblem Dimension SR FES SR FES SR FES

21 25 100% 3,680 100% 5,771 100% 3,18921 50 100% 7,012 100% 10,378 100% 3,76721 100 100% 32,511 100% 40,432 100% 15,56121 200 100% 90,849 100% 116,060 100% 50,21922 25 100% 4,252 100% 5,794 100% 3,26722 50 100% 7,170 100% 10,164 100% 3,88322 100 100% 29,303 100% 39,664 100% 14,08822 200 100% 89,982 100% 111,776 100% 45,39123 5 100% 2,391 100% 2,515 100% 2,04824 2 100% 655 98% 2,786 96% 4,72125 2 100% 523 100% 575 100% 49226 2 100% 744 100% 814 100% 75927 4 100% 1,556 100% 1,632 100% 1,31928 25 100% 8,096 100% 130,759 100% 4,66728 50 100% 13,615 0% 228,050 100% 4,80528 100 100% 59,757 0% 600,100 100% 26,66528 200 100% 250,161 0% 1,200,200 100% 103,15529 100 66% 599,310 62% 600,100 64% 201,63430 30 100% 1,589 100% 1,601 100% 1,24031 10 100% 603 100% 577 100% 80932 40 100% 38,017 100% 37,250 0% 104,05033 25 100% 7,378 100% 7,402 90% 19,66933 50 100% 14,692 100% 15,926 4% 101,36933 100 100% 85,892 100% 84,178 0% 204,10033 200 100% 290,690 100% 335,864 0% 404,20034 25 100% 8,263 100% 8,291 98% 13,94434 50 100% 18,123 100% 18,012 38% 82,88034 100 100% 93,660 100% 91,840 8% 203,22134 200 100% 364,001 100% 365,276 0% 404,20035 25 100% 9,908 100% 9,538 72% 40,64435 50 100% 21,431 100% 20,946 0% 104,05035 100 100% 102,340 100% 109,654 0% 204,10035 200 100% 421,347 100% 419,204 0% 404,20036 5 100% 1,724 100% 1,860 100% 1,60237 4 100% 1,042 100% 1,110 100% 90638 25 100% 7,378 100% 7,402 90% 19,66938 50 100% 16,517 100% 15,926 4% 101,36938 100 100% 85,892 100% 84,178 0% 204,10038 200 100% 332,937 100% 335,864 0% 404,20039 25 96% 16,700 92% 22,283 56% 60,88639 50 100% 21,754 100% 22,410 0% 104,05039 100 100% 108,390 100% 107,524 0% 204,10039 200 100% 416,989 100% 414,920 0% 404,20040 25 98% 14,196 96% 17,304 44% 65,97140 50 96% 35,177 92% 40,513 0% 104,05040 100 100% 146,135 100% 147,082 0% 204,10040 200 100% 505,326 100% 519,248 0% 404,200

In order to explain the effectiveness of the mixed truncation procedure, it is comparedwith the rounding method in which a real number is rounded to the nearest integer. Inthe DHDE, the rounding method is incorporated in the operations of DE mutation andthe local search, and the other operators as well as parameters are not changeable. Thecomparison of DHDE with the mixed truncation procedure and DHDE with the rounding

Page 15: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 15

method for problems 1-4 with 200 dimensions are provided in Table 5. As described inthis table, the mixed truncation procedure used in DHDE is significantly better than therounding method in terms of success rate and mean number of fitness evaluations.

To investigate the effect of the components in the DHDE, i.e., the orthogonal crossoverand SQI method, DHDE is compared with the following two algorithms, in which sameframework, parameters and stopping criteria as those in the DHDE are adopted:

• DEOX: a DE algorithm with the orthogonal crossover (OX) and without the SQImethod in the DHDE.

• DESQI: a DE algorithm with the SQI method and without the orthogonal crossoverin the DHDE.

Computational cost of evolutionary algorithm, no exception for DE, is measured gen-erally in terms of the number of fitness evaluations. In each generation of DHDE, a loopneeds to evaluate NP individuals for selection operation, N combinations of factor levelsin orthogonal crossover operation (N is the number of columns in orthogonal array),and two approximate minimum integer individuals in SQI operation. Namely, there areNP +N +2 fitness evaluations to be performed in one loop of DHDE. Certainly, DEOXrequires NP + N fitness evaluations in one loop, and DESQI requires NP + 2 fitnessevaluations in one loop or generation. Thus, if the global optimal solution is achievedafter a fixed number of generations G, then the number of fitness evaluations of DHDE,DEOX or DESQI is (NP + N + 2)×G, (NP + N)×G, (NP + 2)×G, respectively.

The comparative results of three algorithms are summarized in Tables 6 and 7. It isobvious that DHDE outperforms other algorithms in terms of success rate. Also, DEOXhas higher success rate than DESQI. For seventeen large-scale problems 1− 8, 19, 20, 26,33 − 35, 38 − 40 with 200 dimensions, DHDE is able to locate the global optima with100% success rate. It indicates that DHDE is robust and stable in finding an optimalsolution, meanwhile, it also shows that the orthogonal crossover and SQI method are ef-fective. Regarding computational cost, the mean number of fitness evaluations performedby DHDE is lower than the DEOX. But it is noted that DESQI requires smallest com-putational cost among three algorithms for such problems that can be solved by DESQIwith 100% success rate. On the whole, DHDE exhibits a consistent and satisfactory per-formance in terms of the quality of the resulting solutions, the stability of the globalconvergence. Especially, DHDE maintains a superior efficiency and effectiveness for thelarge-scale problems. In order to evaluate the overall performance of three algorithms,the average values (Mean) of SR and FES, as well as their standard deviations (Std) over40 problems are provided for three algorithms. The statistical results are shown in Table8. The results obtained by three algorithms are analyzed on the use of a nonparametricone-way ANOVA, i.e. the Kruskal-Wallis test, with a level of significance 0.05 by means ofMATLAB statistics toolbox according to the method suggested by Garcıa et al. (2009).

• The p-value obtained with Kruskal-Wallis test for SR of three algorithms is p =3.791e − 8. Given the p-value is lower than the level of significance 0.05, there aresignificant differences in SR among DHDE, DEOX, and DESQI.

• The p-value obtained with Kruskal-Wallis test for FES of three algorithms is p = 0.460.The Kruskal-Wallis test dose not consider the existence of difference in FES amongDHDE, DEOX and DESQI.

From Table 8, it is shown that DHDE is the best one among three algorithms in termsof mean value of SR.

In the integer programming fields, there are some exact solvers (e.g., CPLEX or

Page 16: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

16 H. Li et al.

Table 8. Comparison of three algorithms’ performance.

SR FESAlgorithm Mean Std Mean Std

DHDE 99.19% 0.04 58203.97 116308.93DEOX 95.14% 0.19 82641.27 176024.42DESQI 72.40% 0.42 68597.48 114409.69

LINGO) that have excellent optimization performance. All test problems have beensolved by LINGO solver and its computational results are compared with those of DHDE,DEOX, and DESQI so as to evaluate the potential of the evolutionary algorithms. Suc-cess rate (SR) and elapsed runtime (ER) in Second are provided in Table 9. In this table,NA means the result is not available (the global optimal solution can not be obtained orsolved). Values of ER in DHDE, DEOX, and DESQI are mean values in 50 independentruns.

From Table 9, it can be seen that not all problems are suitable for LINGO to solve. Forsome problems, the global optimal solutions can not be obtained or solved. However, forsome other problems, LINGO have a good optimization ability, for example, problems3, 10, 19, 21, 22, 28, 29, 31-33, 35. It is, therefore, concluded that DHDE is a promisingtechnique in performing discrete global optimization for future practical applications.

5. Comparison with other algorithms in the literature

The proposed approach is compared against the following six approaches:

• Discrete Dynamic Convexized Method (DDCM) in Zhu and Fan (2009): An auxiliaryfunction is constructed, which has the same discrete global minimizers as the problem.The minimization of the function using a discrete local search method can escapefrom previously converged discrete local minimizers by taking increasing values of aparameter. The algorithm called discrete dynamic convexized method is proposed fororiginal problem by minimizing the auxiliary function.

• Particle Swarm Optimization (PSO) in Parsopoulos and Vrahatis (2002): PSO is awidely used evolutionary computing scheme; it explores the insect swarm behavior.Each particle of the swarm was truncated to the closest integer, after the determinationof its new position.

• Structure-Encoding Differential Evolution (SEDE) in Deng et al. (2011): In the SEDEalgorithm, each decision variable of every individual consists of two domains. Onedomain is float-encoding which is confined in a narrow range [0, 1]. The other domain isinteger-encoding which is used to represent the problem space. The boundary-handlingoperator was used to ensure each result generated by the mutation operator falling intothe range [0, 1]. The mapping operator was constructed to generate integer numberfrom the real domain.

• Discrete Filled Function Method (DFFM) in Ng et al. (2005): It is a direct approachwith the user-provided initial point, and the minimization on a discrete path is consid-ered. A discrete global optimization problem is solved via a two-phase cycle. In Phase1 (Local Search), the algorithm starts from a given point and uses the discrete steepestdescent method to find a local minimizer; In Phase 2 (Global Search), a discrete filled

Page 17: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 17

Table 9. Comparative results of DHDE, DEOX, and DESQI with LINGO for test problems 1 − 40(NA means the result is not available).

DHDE DEOX DESQI LINGOProblem Dimension SR ER SR ER SR ER SR ER

1 200 100% 14.19 100% 17.50 100% 9.70 NA NA2 200 100% 12.72 100% 16.36 100% 9.27 NA NA3 200 100% 19.38 100% 27.73 100% 11.21 100% 0.004 200 100% 37.74 100% 53.71 100% 19.23 NA NA5 200 100% 42.12 100% 48.24 100% 32.46 NA NA6 200 100% 75.32 100% 101.96 100% 92.11 NA NA7 200 100% 154.51 100% 157.41 0% 480.90 NA NA8 200 100% 11.46 100% 13.87 100% 8.90 NA NA9 5 100% 0.31 100% 0.40 100% 0.39 100% 0.0010 10 100% 1.07 100% 0.83 100% 1.35 100% 0.0011 13 100% 0.05 100% 0.12 100% 0.04 100% 0.0012 3 100% 0.10 100% 0.08 100% 0.10 NA NA13 4 100% 0.05 100% 0.06 100% 0.04 100% 0.0014 2 100% 0.09 100% 0.10 100% 0.10 100% 0.0015 2 100% 0.21 100% 0.13 100% 0.13 100% 0.0016 4 100% 0.19 100% 0.20 100% 0.20 100% 0.0017 2 100% 0.14 100% 0.12 94% 0.48 100% 0.0018 3 100% 0.05 100% 0.05 100% 0.06 100% 0.0019 5 86% 1.54 82% 2.09 90% 1.33 100% 0.0020 8 84% 2.80 44% 7.85 34% 9.04 NA NA21 200 100% 21.68 100% 27.29 100% 31.18 100% 0.0022 200 100% 20.75 100% 25.82 100% 27.80 100% 0.0023 5 100% 0.18 100% 0.22 100% 0.17 NA NA24 2 100% 0.03 98% 0.17 96% 0.29 100% 0.0025 2 100% 0.03 100% 0.03 100% 0.03 100% 0.0026 2 100% 0.04 100% 0.05 100% 0.06 100% 0.0027 4 100% 0.10 100% 0.10 100% 0.10 100% 0.0128 200 100% 145.50 0% 697.08 100% 100.71 100% 0.0029 100 66% 183.90 62% 178.90 64% 99.25 100% 0.0030 30 100% 0.23 100% 0.16 100% 0.17 100% 0.0031 10 100% 0.09 100% 0.06 100% 0.09 100% 0.0032 40 100% 3.73 100% 3.63 0% 17.52 100% 0.0033 200 100% 115.28 100% 132.52 0% 314.86 100% 0.0034 200 100% 148.46 100% 148.17 0% 319.78 NA NA35 200 100% 171.23 100% 171.23 0% 313.75 100% 0.0036 5 100% 0.12 100% 0.12 100% 0.15 NA NA37 4 100% 0.06 100% 0.07 100% 0.07 100% 0.0038 200 100% 234.29 100% 224.90 0% 334.08 NA NA39 200 100% 365.15 100% 382.69 0% 402.55 NA NA40 200 100% 457.94 100% 318.11 0% 404.48 NA NA

function is constructed and a minimum of the discrete filled function on a discretepath is searched via some special search directions. This process repeats until the timewhen minimizing the discrete filled function does not yield a better solution.

• Controlled Random Search Technique Incorporating the Simulated Annealing Concept(RST2ANU algorithm) in Mohan and Nguyen (1999): This algorithm, which is pri-marily based on the original controlled random search approach of Price, incorporatesa simulated annealing type acceptance criterion in its working so that not only down-hill moves but also occasional uphill moves can be accepted. In its working it employsa special truncation procedure which not only ensures that the integer restrictionsimposed on the decision variables are satisfied, but also creates greater possibilities for

Page 18: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

18 H. Li et al.

the search leading to a global optimal solution.• A Variant of Differential Evolution (VDE) in Vegh et al. (2011): A variant of differen-

tial evolution (the framework is based on DE/rand/1/bin), termed as unique discretedifferential evolution (udDE), is proposed for discrete optimization problems requir-ing mutually distinct variables. udDE adopts the unique index mapping method togenerate mutually distinct integer variables. In order to evaluate the proposed udDEoptimization methodology, the authors also compare it with the discrete differentialevolution (dDE) described in Price, Storn and Lampinen (2005). udDE can be thoughtof as an extension to dDE.

Since the 40 test problems including distinct types of examples in this paper are comefrom different literature, the comparison will be made accordingly. The comparativeresults are summarized in Tables 10-14. In these tables, the mean values of SR and FES,as well as their standard deviations (Std) are also provided.

5.1. Comparison with the DDCM:

From Zhu and Fan (2009), the optimization results using the DDCM are available only fortwenty of the 40 test problems, which are problems 1−20. For high-dimensional problems1− 8, DHDE can optimize the problems with up to 200 dimensions, but DDCM did theproblems with up to 100 dimensions except for problems 2 and 4. The comparison oftheir results is shown in Table 10.

From this table, it can be seen that DHDE can achieve global optimization results forhigh-dimensional problems 1−8 with 100% success rate, while the required computationaleffort is small when problem size increases. However, DDCM reached the global optimalsolutions with relatively much higher computational cost than DHDE. For example, for100-dimensional problems, the computational effort of DDCM as compared with DHDEincreases by 7 to 82 times in terms of the mean number of fitness evaluations.

For low-dimensional problems 9− 20 in Table 10, DHDE is also able to obtain globalminimum solutions with low computational cost except for problems 10, 12, 13. It shouldbe noted that DHDE has a lower success rate than DDCM for problems 19 and 20.Meanwhile, DHDE performs perfectly for problems 9, 11, 14-18.

Generally speaking, DHDE is capable of solving high-dimensional problems with agood efficiency. From average point of view, DHDE has a slightly worse SR than DDCM,but it requires a significantly lower FES than DDCM.

5.2. Comparison with the PSO and SEDE:

From Parsopoulos and Vrahatis (2002) and Deng et al. (2011), the optimization resultsusing PSO and SEDE are available only for seven of the 40 test problems which areproblems 21 − 27. In all experiments the initial population was only taken randomlyinside [−100, 100]n by the DHDE, where n is the corresponding dimension of problem.

Table 11 presents the optimization results obtained by the DHDE in comparison withthose from the PSO and SEDE. As can be seen, the DHDE is able to find the globaloptimal solutions for the 7 test problems with 100% success rate, indicating that thealgorithm is both effective and statistically stable. Compared with the PSO, the DHDEachieves generally much higher success rate, while the required computational effort isreduced considerably. DHDE has the same success rate as SEDE, but it requires muchlower computational burden than SEDE for almost all cases.

Page 19: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 19

Table 10. Comparative results of DHDE with DDCM for test problems 1− 20with different dimensions.

DHDE DDCMProblem Dimension SR FES SR FES

1 25 100% 1,949 100% 14,4851 50 100% 3,504 100% 69,5101 100 100% 12,989 100% 273,8402 25 100% 1,911 100% 6,5302 50 100% 3,201 100% 24,7402 100 100% 12,941 100% 88,6402 200 100% 31,564 100% 434,4003 25 100% 1,692 100% 19,6703 50 100% 2,867 100% 157,9003 100 100% 11,208 100% 1,203,4804 25 100% 2,493 100% 28,0904 50 100% 5,015 100% 180,3684 100 100% 18,963 100% 1,559,7044 200 100% 51,490 100% 10,234,5845 25 100% 3,125 100% 36,8685 50 100% 5,170 100% 143,9525 100 100% 23,209 100% 567,9846 25 100% 5,568 100% 538,3686 50 100% 8,908 100% 873,8286 100 100% 41,510 100% 594,5207 25 100% 7,615 100% 17,8787 50 100% 14,627 100% 72,6407 100 100% 58,422 100% 255,3128 25 100% 1,455 100% 5,1468 50 100% 2,658 100% 19,9608 100 100% 10,495 100% 78,4169 5 100% 3,434 100% 24,67910 10 100% 14,632 100% 13,65511 13 100% 419 100% 65812 3 100% 1,147 100% 69013 4 100% 811 100% 75314 2 100% 1,581 100% 756,94115 2 100% 1,717 100% 12,780,83916 4 100% 3,075 100% 16,622,28617 2 100% 1,662 100% 55,68618 3 100% 825 100% 7,05519 5 86% 24,273 100% 77,12320 8 84% 25,304 100% 52,001

Mean value 99.21% 11,142.87 100% 1,260,346.82Std 0.03 14,248.71 0 3,641,600.21

Especially, for problems 21 and 22 with the intervals [−100, 100]n, the PSO and SEDEoptimized the functions with up to 30 variables, however, the DHDE can do the prob-lems with up to 200 variables. Moreover, the mean number of fitness evaluations ofthe 200-dimensional or 100-dimensional problems required by the DHDE is much lessthan those of 25-dimensional problems by the PSO and SEDE, respectively. For 25-dimensional problems, the DHDE saves the computational effort by more than 10 timeswhen compared with SEDE.

For the remaining problems with low dimensions, the DHDE is able to obtain perfectoptimization results. Meanwhile, the efficiency of DHDE as compared with PSO or SEDEis improved in terms of number of fitness evaluations.

Page 20: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

20 H. Li et al.

Table 11. Comparative results of DHDE with PSO and SEDE for 7 test problems.

DHDE PSO SEDEProblem Dimension SR FES SR FES SR FES

21 25 100% 3,680 100% 171,110 100% 49,62822 25 100% 4,252 100% 171,610 100% 42,92823 5 100% 2,391 80% 75,060 100% 25,86524 2 100% 655 100% 8,066 100% 1,95425 2 100% 523 100% 8,322 100% 27926 2 100% 744 100% 8,388 100% 3,98027 4 100% 1,556 92% 18,477 100% 2,753

Mean value 100% 1,971.57 96% 65,861.86 100% 18,198.14Std 0 1,516.92 0.08 75,877.32 0 21,149.70

Mean values of SR and FES for 7 problems show that the performance of DHDE issuperior to that of the PSO or SEDE.

5.3. Comparison with the DFFM:

From Ng et al. (2005), the optimization results using DFFM are available only for thirteenof the 40 test problems which are problems 1 − 4, and 9 − 17. For all experiments theDHDE randomly generates an initial population, but DFFM must provide certain initialpoint for a user.

From the results shown in Table 12, it is clear that DHDE exhibits satisfactory opti-mization results, while its computational effort is much less than that required by DFFM.

For problems 1 − 4 with up to 200 variables, the DHDE is able to obtain globaloptimization results. Meanwhile, the number of fitness evaluations is much less than thatrequired by DFFM. Note that the DHDE exhibits a superior performance for all theproblems having a dimension as high as 200.

For small-scale problems 9 − 17, the DHDE can achieve satisfactory optimization re-sults, while the DHDE requires the lower mean numbers of fitness evaluations than theDFFM. For problem 17 with the search space [−2000, 2000]2, the DFFM identified theglobal minimum solution x∗ = (0,−1) with f(x∗) = 3, but the DHDE obtained theglobal minimum solution x∗ = (0.085, 2) (j = (85, 2000)) with f(x∗) = −210795.6.

Furthermore, the DHDE also exhibits a superior performance over the DFFM in termsof mean values of SR and FES for all listed problems.

5.4. Comparison with RST2ANU algorithm:

From Mohan and Nguyen (1999), the optimization results using RST2ANU are availableonly for nine of the 40 test problems which are problems 9−12, 28−32. The comparisonof results is shown in Table 13. The results indicated that DHDE can achieve satisfactoryoptimization results for the listed problems. The computational cost required by DHDEis much less than that required by RST2ANU except for three problems (10, 12, 29).

For problem 28, RST2ANU only optimized the problem up to moderate dimensions(up to 50 dimensions), however, DHDE can handle large-scale problem with up to 200dimensions. The DHDE maintains a consistent and satisfactory performance in terms ofsuccess rate and the computational cost. For problem 10, RST2ANU reported a maxi-

Page 21: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 21

Table 12. Comparative results of DHDE with DFFM for 13 test problems.

DHDE DFFMProblem Dimension SR FES SR FES

1 25 100% 1,949 100% 346,7381 50 100% 3,504 100% 1,976,9941 100 100% 12,989 100% 22,013,1972 25 100% 1,911 100% 320,6102 50 100% 3,201 100% 2,422,9602 100 100% 12,941 100% 19,293,0803 25 100% 1,692 100% 362,0163 50 100% 2,867 100% 2,947,1413 100 100% 11,208 100% 23,320,0194 25 100% 2,493 100% 107,1594 50 100% 5,015 100% 798,1554 100 100% 18,963 100% 6,895,9234 200 100% 51,490 100% 56,542,6089 5 100% 3,434 100% 8,42610 10 100% 14,632 100% 122,49711 13 100% 419 100% 79312 3 100% 1,147 100% 3,90413 4 100% 811 100% 4,26314 2 100% 1,581 100% 939,21015 2 100% 1,717 100% 3,562,77116 4 100% 3,075 100% 7,337,20817 2 100% 1,662 100% 111,126

Mean value 100% 7,213.68 100% 6,792,581.73Std 0 11,224.81 0 13,304,297.01

Table 13. Comparative results of DHDE with RST2ANU for 9 test problems.

DHDE RST2ANUProblem Dimension SR FES SR FES

9 5 100% 3,434 100% 187,79410 10 100% 14,632 100% 2,69511 13 100% 419 100% 7,88712 3 100% 1,147 70% 20628 25 100% 8,096 100% 20,40728 50 100% 13,615 100% 111,30429 100 66% 599,310 100% 46,61730 30 100% 1,589 100% 26,04231 10 100% 603 100% 279,25532 40 100% 38,017 100% 150,562

Mean value 96.60% 68,086.20 97.00% 83,276.90Std 0.10 187,006.13 0.09 95,623.28

mum solution with function value 209, 205, 232, and the optimal function value obtainedby the DHDE is 216, 300, 719. For problem 32, RST2ANU provided the known maxi-mum function value 1, 030, 361, and the DHDE can identify the maximum function value1, 352, 439 with high success rate. It should be noted that for problem 29, the best func-tion values in 50 runs obtained by the DHDE are different (larger than 304,147,000),but they are better than the known maximum function value 303, 062, 432 provided by

Page 22: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

22 H. Li et al.

Table 14. Comparative results of DHDE with VDE for 8 test problems.

DHDE dDE udDE(modified)Problem Dimension NP SR FES SR FES SR FES

33 10 20 100% 796 100% 993 100% 51133 20 40 100% 3,969 100% 5,439 100% 4,14933 50 100 100% 29,642 100% 43,777 100% 44,28034 10 20 100% 1,005 100% 1,289 100% 95934 20 40 100% 4,704 100% 5,736 100% 4,86734 50 100 100% 31,822 100% 44,627 100% 39,66735 10 20 100% 953 100% 1,207 100% 64035 20 40 100% 5,146 100% 6,436 100% 4,76335 50 100 100% 43,398 100% 55,933 100% 61,32736 5 10 67% 47,244 100% 160,729 100% 32,47736 5 20 100% 1,257 100% 4,343 100% 3,89536 5 50 100% 1,724 100% 4,277 100% 4,38537 4 10 100% 303 100% 27,763 100% 5,15437 4 20 100% 411 100% 3,244 100% 1,08337 4 30 100% 512 100% 1,142 100% 75838 10 50 100% 1,665 100% 2,350 100% 1,24538 20 100 100% 10,020 100% 13,643 100% 10,21038 50 250 100% 81,641 100% 113,433 100% 117,80839 10 20 37% 43,836 100% 1,698 100% 1,48539 20 40 93% 14,509 100% 7,724 100% 6,22939 50 100 100% 41,982 100% 57,473 100% 48,59340 10 20 90% 8,273 100% 2,052 100% 1,47440 20 40 100% 9,432 100% 8,190 100% 6,66840 50 100 100% 42,242 100% 59,230 100% 52,013

Mean value 95.29% 17,770.25 100% 26,363.67 100% 18,943.33Std 0.14 21,973.01 0 40,174.04 0 28,744.93

RST2ANU. The DHDE can determine the maximum function value 304, 148, 583. Forthe remaining problems, once again, the DHDE exhibits a superior performance.

From average results of SR and FES shown in the last two rows of Table 13, DHDEhas a slightly worse SR, but requires a lower FES than RST2ANU.

5.5. Comparison with VDE algorithm:

From Vegh et al. (2011), the optimization results using VDE are available only for eightof the 40 test problems which are problems 33 − 40. These problems have mutuallydistinct integer variables. For problems 33 − 35 and 38 − 40, VDE has only tested theproblems with 10, 20, and 50 variables, however, the DHDE can optimize the problemswith up to 200 variables. For fair comparison with dDE and udDE, same population size(NP ) and variable ranges as those in Vegh et al. (2011) are adopted, and our results arecompared with the results of dDE and udDE algorithms. The comparative results arelisted in Table 14.

Due to small population size, DHDE can’t achieve satisfactory optimization results interms of success rate for problems 36, 39 (10 and 20 dimensions) and 40 (10 dimensions).With respect to computational cost, DHDE has smaller number of fitness evaluationsthan dDE except for problems 39 and 40 (10 and 20 dimensions). udDE requires largernumber of fitness evaluations than DHDE for 50-dimensional problems, but requiressmaller number of fitness evaluations than DHDE for 10-dimensional problems.

Page 23: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 23

Therefore, DHDE can optimize this type of integer programming problems requiringmutually distinct variables. From average results of SR and FES shown in the last tworows of Table 14, DHDE has a worse SR, but requires a lower FES than dDE, and udDE.

In summary, the results obtained by DHDE are very competitive when compared withrespect to above-mentioned six approaches in the literature according to the followingtwo criteria:

• DHDE can locate the global optimal solution with high success rate for almost all ofthe problems. Especially, DHDE has satisfied optimization performance for the large-scale problems.

• The computational cost (measured by mean number of fitness evaluations) of DHDEis lower than the cost required by the other techniques compared.

6. Conclusion and future work

In this paper, a discrete hybrid differential evolution algorithm is developed to globallysolve integer programming problems, including nonlinear integer programming problems,linear integer programming problems as well as 0-1 integer programming problems. Thebehavior of the the proposed algorithm seems to be stable even for high dimensionalcases, exhibiting fairly high success rates. Experiments on 40 test problems includingseventeen large-scale problems with up to 200 variables show that the proposed algorithmis able to find the global optimal solution in all cases. Compared with other algorithms,the proposed algorithm achieves a considerable reduction of the computational effort.Experimental results also indicate that the proposed algorithm is an efficient and robustmethod and should be considered as a good alternative to handle integer programmingproblems.

One issue that deserves some further study is the sensitivity of our approach to pa-rameters such as population size, scaling factor, and crossover rate. Another path offuture research consists of modifying relevantly this discrete hybrid differential evolutionalgorithm to solve mixed integer programming problems. Additionally, it is also worthtrying to apply our approach to the solution of real-world optimization problems.

Acknowledgements

This work was supported by the Fundamental Research Funds for the Central Universities(K50511700004).

The authors also very grateful to the anonymous reviewers for their valuable commentsand suggestions to improve the quality of this paper.

References

Brest, J., et al, 2006. Self-adapting control parameters in differential evolution: A com-parative study on numerical benchmark problems. IEEE Trans. Evol. Comput., 10,646–657.

Balev, S., Yanev, N., Freville, A., Andonov, R., 2008. A dynamic programming based re-

Page 24: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

24 Taylor & Francis and I.T. Consultant

duction procedure for the multidimensional 0-1 knapsack problem. European Journalof Operational Research, 186, 63–76.

Coello, C.A.C., 2002. Theoretical and numerical constraint-handling techniques usedwith evolutionary algorithms: A survey of the state of the art. Comput. MethodsAppl. Mech. Eng., 191, 1245–1287.

Chan, D.Y., Ku, C.Y., Li, M.C., 2006. A method to improve integer linear programingproblem with branch-and-bound procedure. Applied Mathematics and Computation,179, 484–493.

Chen, W.N., Zhang, J., Chung, H.S.H., et al, 2010. A novel set-based particle swarm op-timization method for discrete optimization problems. IEEE Trans. Evol. Comput.,14, 278–300.

Deng, C., Liang, C., Zhao, B., et al, 2011. Structure-encoding differential evolution forinteger programming. Journal of Software, 6(1), 140–147.

Fisher, M.L., 1981. The Lagrangian relaxation method for solving integer programmingproblems. Manage. Sci., 27, 1–18.

Fang, K.T., Ma, C.X., 2001. Orthogonal and Uniform Experimental Design, SciencePress, Beijing, China.

Ge, R., Huang, H., 1989. A continuous approach to nonlinear integer programming.Applied Mathematics and Computation, 34, 39–60.

Glover, F., 2006. Parametric tabu-search for mixed integer programs. Computers & Op-erations Research, 33, 2449–2494.

Garcıa, S., Molina, D., Lozano, M., Herrera, F., 2009. A study on the use of non-parametric tests for analyzing the evolutionary algorithms’ behaviour: a case studyon the CEC’2005 Special Session on Real Parameter Optimization. Journal ofHeuristics, 15, 617–644.

Hrstka, O., Kucerova, A., Leps, M., Zeman, J., 2003. A competitive comparison of dif-ferent types of evolutionary algorithms. Computers and Structures, 81, 1979–1990.

Ho, S.Y., Shu, L.S., Chen, J.H., 2004. Intelligent evolutionary algorithms for large pa-rameter optimization problems. IEEE Trans. Evol. Comput., 8, 522–540.

Hua, Z., Huang, F., 2006. A variable-grouping based genetic algorithm for large-scaleinteger programming. Information Sciences, 176, 2869–2885.

Kesen, S.E., Das, S.K., Gungor, Z., 2010. A genetic algorithm based heuristic for schedul-ing of virtual manufacturing cell(VMCs). Computers & Operations Research, 37,1148–1156.

Lee, W.J., Cabot, A.V., Venkataramanan, M.A., 1994. A branch and bound algorithm forsolving separable convex integer programming problems. Computers and OperationsResearch, 91, 1011–1024.

Leung Y.W., Wang, Y., 2001. An orthogonal genetic algorithm with quantization forglobal numerical optimization. IEEE Trans. Evol. Comput., 5, 41–53.

Lin, Y.C., Hwang, K.S., 2004. A mixed-coding scheme of evolutionary algorithms to solvemixed-integer nonlinear programming problems. Computers and Mathematics withApplications, 47, 1295–1307.

Li, H., Jiao, Y.C., Zhang, L., Gu, Z.W., 2006. Genetic Algorithm Based on the Orthogo-nal Design for Multidimensional Knapsack Problems. Advances in Natural Computa-tion, Part 1, Proceedings, Lecture Notes in Computer Science, 4221, Springer-Verlag,696–705.

Mohan, C., Nguyen, H.T., 1999. A controlled random search technique incorporating thesimulated annealing concept for solving integer and mixed integer global optimiza-tion Problems. Comput. Optim. Appl., 14, 103–132.

Page 25: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 25

Mezura-Montes, E., Coello, C. A. C., 2005. A simple multimembered evolution strategyto solve constrained optimization problems. IEEE Trans. Evol. Comput., 9, 1–17.

Muppani, V.R., Adil, G.K., 2008. A branch and bound algorithm for class based storagelocation assignment. European Journal of Operational Research, 189, 492–507.

Murray, W., Ng, K.M., 2010. An algorithm for nonlinear optimization problems withbinary variables. Comput. Optim. Appl., 47, 257–288.

Ng, C.K., Zhang, L.S., Li, D., Tian, W.W., 2005. Discrete filled function method fordiscrete global optimization. Comput. Optim. Appl., 31, 87–115.

Ng, C.K., Li, D., Zhang, L.S., 2007. Discrete global descent method for discrete globaloptimization and nonlinear integer programming. J. Glob. Optim., 37, 357–379.

Noman, N., Iba, H., 2008. Accelerating differential evolution using an adaptive localsearch. IEEE Trans. Evol. Comput., 12, 107–125.

Oguz, O., 2010. Cutting plane algorithms for 0-1 programming based on cardinality cuts.European Journal of Operational Research, 205, 273–279.

Parsopoulos, K.E., Vrahatis, M.N., 2002. Recent approaches to global optimization prob-lems through Particle Swarm Optimization. Natural Computing, 1, 235–306.

Price, K.V., Storn, R.M., Lampinen, J.A., 2005. Differential evolution: A practical ap-proach to global optimization, Springer.

Runarsson, T.P., Yao, X., 2005. Search Biases in Constrained Evolutionary Optimization.IEEE Trans. Syst., Man, Cybern. C, Appl. Rev., 35, 233–243.

Rahnamayan, S., Tizhoosh, H.R., Salama, M.M.A., 2008. Opposition-based differentialevolution. IEEE Trans. Evol. Comput., 12, 64–79.

Storn, R., Price, K., 1997. Differential evolution-A simple and efficient heuristic for globaloptimization over continuous spaces. J. Global Optimiz., 11, 341–359.

Seckiner, S.U., Kurt, M., 2007. A simulated annealing approach to the solution of jobrotation scheduling problems. Applied Mathematics and Computation, 188, 31–45.

Safaei, N., Saidi-Mehrabad, M., Jabal-Ameli, M.S., 2008. A hybrid simulated annealingfor solving an extended model of dynamic cellular manufacturing system. EuropeanJournal of Operational Research, 185, 563–592.

Sloane, N.J.A. A library of orthogonal arrays. http://www2.research.att.com/ njas/oadir/.Tsai, J.T., Liu, T.K., Chou, J.H., 2004. Hybrid Taguchi-genetic algorithm for global

numerical optimization. IEEE Trans. Evol. Comput., 8, 365–377.Takahama, T., Sakai, S., 2005. Constrained optimization by applying the α constrained

method to the nonlinear simplex method with mutations. IEEE Trans. Evol. Com-put., 9, 437–451.

Tang, L., Xuan, H., Liu, J., 2006. A new lagrangian relaxation algorithm for hybridflowshop scheduling to minimize total weighted completion time. Computers & Op-erations research, 33, 3344–3359.

Vegh, V., Pierens G.K., Tieng, Q.M., 2011. A variant of differential evolution for discreteoptimization problems requiring mutually distinct variables. International Journalof Innovative computing, Information and Control, 7, 897–914.

Zhang, Q., Leung, Y.W., 1999. An orthogonal genetic algorithm for multimedia multicastrouting. IEEE Trans. Evol. Comput., 3, 53–62.

Zhu, W.X., Ali, M.M., 2009. Discrete dynamic convexized method for nonlinearly con-strained nonlinear integer programming. Computer & Operations Research, 36,2723–2728.

Zhu, W.X., Fan, H., 2009. A discrete dynamic convexized method for nonlinear integerprogramming. Journal of Computational and Applied Mathematics, 223, 356–373.

Page 26: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

26 Taylor & Francis and I.T. Consultant

Appendix: Test problems

Problem 1(Ng et al. 2005, Zhu and Fan 2009):

min f(x) = (x1 − 1)2 + (xn − 1)2 + nn−1∑i=1

(n− i)(x2i − xi+1)2

s. t. −5 ≤ xi ≤ 5, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 1, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 2(Ng et al. 2005, Zhu and Fan 2009):

min f(x) =n−1∑i=1

[100(xi+1 − x2i )

2 + (1− xi)2]

s. t. −5 ≤ xi ≤ 5, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 1, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 3(Ng et al. 2005, Zhu and Fan 2009):

min f(x) =n∑

i=1x4

i + (n∑

i=1xi)2

s. t. −5 ≤ xi ≤ 5, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 4(Ng et al. 2005, Zhu and Fan 2009):

min f(x) = x>Qx

s. t.n∑

i=1

x2i

9n+i ≤ 1,n∑

i=1ixi ≥ n/2

−5 ≤ xi ≤ 5, xi ∈ Z, i = 1, 2, · · · , n

where Q = [Qij ], Qii = 2, Qij = 1 for i 6= j. The global minimum solution is x∗ =(0, · · · , 0,−1, 0, · · · , 0, 1, 0, · · · , 0)with f(x∗) = 2, where x∗i = −1, x∗j = 1, j ≥ dn/2e+ 1,i ≤ j − dn/2e for all n.

Problem 5(Zhu and Fan 2009):

min f(x) = −20 exp(−0.02

√n−1

n∑i=1

x2i )− exp(n−1

n∑i=1

cos(2πxi) + 20 + e

s. t. −30 ≤ xi ≤ 30, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 6(Zhu and Fan 2009):

min f(x) = 1 + 14000

n∑i=1

x2i −

n∏i=1

cos( xi√i)

s. t. −600 ≤ xi ≤ 600, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.

Page 27: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 27

Problem 7(Zhu and Fan 2009):

min f(x) = πn{10 sin2(πy1) +

n−1∑i=1

(yi − 1)2[1 + 10 sin2(πyi+1)] + (yn − 1)2}s. t. yi = 1 + 1

4(xi + 1), i = 1, 2, · · · , n−10 ≤ xi ≤ 10, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = −1, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 8(Zhu and Fan 2009):

min f(x) = 10n +n∑

i=1[x2

i − 10 cos(2πxi)]

s. t. −5 ≤ xi ≤ 5, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 9(Mohan and Nguyen 1999, Ng et al. 2005, Zhu and Fan 2009):

min f(x) = x21 + x2

2 + 3x23 + 4x2

4 + 2x25 − 8x1 − 2x2 − 3x3 − x4 − 2x5

s. t. x1 + 2x2 + 2x3 + x4 + 6x5 ≤ 800, 2x1 + x2 + 6x3 ≤ 200,x3 + x4 + 5x5 ≤ 200, x1 + x2 + x3 + x4 ≥ 48, x2 + x4 + x5 ≥ 34,6x1 + 7x5 ≥ 104, 55 ≤ x1 + x2 + x3 + x4 + x5 ≤ 400,0 ≤ xi ≤ 99, xi ∈ Z, i = 1, 2, 3, 4, 5,

The global minimum solution is x∗ = (16, 22, 5, 5, 7) with f(x∗) = 807.Problem 10(Mohan and Nguyen 1999, Ng et al. 2005, Zhu and Fan 2009):

max f(x) = x21 + x1x2 − x2

2 + x3x1 − x23 + 8x2

4 − 17x25 + 6x3

6

+x4x5x6x7 + x38 + x4

9 − x510 − x10x5 + 18x3x7x6

s. t. 0 ≤ xi ≤ 99, xi ∈ Z, i = 1, 2, · · · , 10

The global maximum solution is x∗ = (99, 49, 99, 99, 99, 99, 99, 99, 99, 0) with f(x∗) =216300719.

Problem 11(Mohan and Nguyen 1999, Ng et al. 2005, Zhu and Fan 2009):

min f(u, v) = c>u− 12u>Qu + d>v

s. t. 2u1 + 2u2 + v6 + v7 ≤ 10, 2u1 + 2u3 + v6 + v8 ≤ 10,2u2 + 2u3 + v7 + v8 ≤ 10, −2u4 − v1 + v6 ≤ 0,−2v2 − v3 + v7 ≤ 0, −2v4 − v5 + v8 ≤ 0,−8ui + vi+5 ≤ 0, i = 1, 2, 3uj , vk ∈ {0, 1}, j = 1, 2, 3, 4, k = 1, 2, 3, 4, 5, 9vl ∈ {0, 1, 2, 3}, l = 6, 7, 8

where c> = (5, 5, 5, 5), Q = 10 · I4, d> = (−1, · · · ,−1), x = (u, v).The global minimum solution is x∗ = (1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 1) with f(x∗) = −15.

Problem 12(Mohan and Nguyen 1999, Ng et al. 2005, Zhu and Fan 2009):

min f(x) =∑9

i=1{exp[− (ui−x2)x3

x1]− i

100}2

s. t. 1 ≤ x1 ≤ 100, 0 ≤ x2 ≤ 25, xi ∈ Z, i = 1, 2x3 = j/2, 0 ≤ j ≤ 10, j ∈ Z

Page 28: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

28 Taylor & Francis and I.T. Consultant

where ui = 25 + [−50 log(i/100)]2/3. The global minimum solution is x∗ = (50, 25, 1.5)with f(x∗) ≈ 0.

Problem 13(Ng et al. 2005, Zhu and Fan 2009):

minf(x) = 100(x2 − x21)

2 + (1− x1)2 + 90(x4 − x23)

2 + (1− x3)2

+10.1[(x2 − 1)2 + (x4 − 1)2] + 19.8(x2 − 1)(x4 − 1)s. t. −10 ≤ xi ≤ 10, xi ∈ Z, i = 1, 2, 3, 4

The global minimum solution is x∗ = (1, 1, 1, 1) with f(x∗) = 0.Problem 14(Ng et al. 2005, Zhu and Fan 2009):

minf(x) = [1.5− x1(1− x2)]2 + [2.25− x1(1− x22)]

2

+[2.625− x1(1− x32)]

2

s. t. xi = 0.001j, −104 ≤ j ≤ 104, j ∈ Z, i = 1, 2

The global minimum solution is x∗ = (3, 0.5) with f(x∗) = 0.Problem 15(Ng et al. 2005, Zhu and Fan 2009):

min f(x) = 100(x2 − x21)

2 + (1− x1)2

s. t. x21 + x2

2 ≥ 0.25, −13x1 + x2 ≥ −0.1,

xi = ji × 10−4, 0 ≤ ji ≤ 105, ji ∈ Z, i = 1, 2

The global minimum solution is x∗ = (1, 1) with f(x∗) = 0.Problem 16(Ng et al. 2005, Zhu and Fan 2009):

min f(x) = (x1 + 10x2)2 + 5(x3 − x4)2 + (x2 − 2x3)4 + 10(x1 − x4)4

s. t. xi = 0.001j, −104 ≤ j ≤ 104, j ∈ Z, i = 1, 2, 3, 4

The global minimum solution is x∗ = (0, 0, 0, 0) with f(x∗) = 0.Problem 17(Ng et al. 2005, Zhu and Fan 2009):

min f(x) = g(x)h(x)s. t. xi = 0.001j, −2000 ≤ j ≤ 2000, j ∈ Z, i = 1, 2

where g(x) = 1 + (x1 + x2 + 1)2(19− 14x1 + 3x21 − 14x2 + 6x1x2 + 3x2),

h(x) = 30 + (2x1 − 3x2)2(18− 32x1 + 12x21 + 48x2 − 36x1x2 + 27x2

2).The global minimum solution reported in Ng et al. (2005) is x∗ = (0,−1) with f(x∗) = 3.

Problem 18(Zhu and Fan 2009):

min f(x) = 33.7539x1

+ 1.4430x2

+ 1.3885x3

s. t. x1 + x2 + x3 = 241 ≤ x1 ≤ 16, 1 ≤ x2 ≤ 20, 1 ≤ x3 ≤ 28, xi ∈ Z, i = 1, 2, 3

The global minimum solution is x∗ = (16, 4, 4) with f(x∗) = 2.817494.

Page 29: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 29

Problem 19(Zhu and Fan 2009):

min f(x) = −x3 − x4 − x5

s. t. 20x1 + 30x2 + x3 + 2x4 + 2x5 ≤ 18030x1 + 20x2 + 2x3 + x4 + 2x5 ≤ 150,−60x1 + x3 ≤ 0,−75x2 + x4 ≤ 0,0 ≤ xi ≤ 1, i = 1, 2; 0 ≤ xi ≤ 75, i = 3, 4, 5xi ∈ Z, i = 1, 2, 3, 4, 5

The global minimum solution is x∗ = (1, 1, 24, 52, 0) with f(x∗) = −76.Problem 20(Zhu and Fan 2009):

min f(x) = x1x2x3 + x1x4x5 + x2x4x6 + x6x7x8 + x2x5x7

s. t. 2x1 + 2x4 + 8x8 ≥ 1211x1 + 7x4 + 13x6 ≥ 41,6x2 + 9x4x6 + 5x7 ≥ 60,3x2 + 5x5 + 7x8 ≥ 42,6x2x7 + 9x3 + 5x5 ≥ 53,4x3x7 + x5 ≥ 13,2x1 + 4x2 + 7x4 + 3x5 + x7 ≤ 69,9x1x8 + 6x3x5 + 4x3x7 ≤ 47,12x2 + 8x2x8 + 2x3x6 ≤ 73,x3 + 4x5 + 2x6 + 9x8 ≤ 31,0 ≤ xi ≤ 7, i = 1, 3, 4, 6, 8; 0 ≤ xi ≤ 15, i = 2, 5, 7xi ∈ Z, i = 1, 2, · · · , 8

The global minimum solution is x∗ = (5, 4, 1, 1, 6, 3, 2, 0) with f(x∗) = 110.Problem 21(Parsopoulos and Vrahatis 2002):

min f(x) = |x1|+ |x2|+ · · ·+ |xn|s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 22(Parsopoulos and Vrahatis 2002):

min f(x) = x21 + x2

2 + · · ·+ x2n

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 23(Parsopoulos and Vrahatis 2002):

min f(x) = −

1527361812

>

x + x>

35 −20 −10 32 −10−20 40 −6 −31 32−10 −6 11 −6 −1032 −31 −6 38 −20−10 32 −10 −20 31

x

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2, 3, 4, 5

The global minimum solutions are x∗ = (0, 11, 22, 16, 6)> and

Page 30: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

30 Taylor & Francis and I.T. Consultant

x∗ = (0, 12, 23, 17, 6)>, with f(x∗) = −737.Problem 24(Parsopoulos and Vrahatis 2002):

min f(x) = (x21 + x2 − 11)2 + (x1 + x2

2 − 7)2

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2

The global minimum solution is x∗ = (3, 2) with f(x∗) = 0.Problem 25(Parsopoulos and Vrahatis 2002):

min f(x) = (9x21 + 2x2

2 − 11)2 + (3x1 + 4x22 − 7)2

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2

The global minimum solution is x∗ = (1, 1) with f(x∗) = 0.Problem 26(Parsopoulos and Vrahatis 2002):

min f(x) = 100(x2 − x21)

2 + (1− x1)2

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2

The global minimum solution is x∗ = (1, 1) with f(x∗) = 0.Problem 27(Parsopoulos and Vrahatis 2002):

min f(x) = (x1 + 10x2)2 + 5(x3 − x4)2 + (x2 − 2x3)4 + 10(x1 − x4)4

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2, 3, 4

The global minimum solution is x∗ = (0, 0, 0, 0) with f(x∗) = 0.Problem 28(Mohan and Nguyen 1999):

min f(x) =n∑

i=1x2

i + (n∑

i=1

i2xi)6

s. t. −100 ≤ xi ≤ 100, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 0, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 29(Mohan and Nguyen 1999):

maxf(x) = 50x1 + 150x2 + 100x3 + 92x4 + 55x5 + 12x6 + 11x7 + 10x8

+8x9 + 3x10 + 114x11 + 90x12 + 87x13 + 91x14 + 58x15 + 16x16

+19x17 + 22x18 + 21x19 + 32x20 + 53x21 + 56x22 + 118x23

+192x24 + 52x25 + 204x26 + 250x27 + 295x28 + 82x29 + 30x30

+29x231 − 2x2

32 + 9x233 + 94x34 + 15x3

35 + 17x236 − 15x37 − 2x38

+x39 + 3x440 + 52x41 + 57x2

42 − x243 + 12x44 + 21x45 + 6x46

+7x47 − x48 + x49 + x50 + 119x51 + 82x52 + 75x53 + 18x54

+16x55 + 12x56 + 6x57 + 7x58 + 3x59 + 6x60 + 12x61 + 13x62

+18x63 + 7x64 + 3x65 + 19x66 + 22x67 + 3x68 + 12x69 + 9x70

+18x71 + 19x72 + 12x73 + 8x74 + 5x75 + 2x76 + 16x77 + 17x78

+11x79 + 12x80 + 9x81 + 12x82 + 11x83 + 14x84 + 16x85 + 3x86

+9x87 + 10x88 + 3x89 + x90 + 12x91 + 3x92 + 12x93 − 2x294 − x95

+6x96 + 7x97 + 4x98 + x99 + 2x100

s. t.∑100

i=1 xi ≤ 7500,∑50

i=1 10xi +∑100

i=1 xi ≤ 420000 ≤ xi ≤ 99, xi ∈ Z, i = 1, 2, · · · , 100

Page 31: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 31

The best known function value given in Mohan and Nguyen (1999) is f(x∗) = 303062432.Problem 30(Mohan and Nguyen 1999):

min f(x) = 1− exp[(−1/60)30∑i=1

x2i ]

s. t. 0 ≤ xi ≤ 5, xi ∈ Z, i = 1, 2, · · · , 30

The global minimum solution is x∗ = (0, 0, · · · , 0) with f(x∗) = 0.Problem 31(Mohan and Nguyen 1999):

min f(x) = C>x− 0.5x>Qxs. t. Ax ≤ B, xi ∈ {0, 1}, i = 1, 2, · · · , 10

where A =

−2 −6 −1 0 −3 −3 −2 −6 −2 −26 −5 8 −3 0 1 3 8 9 −3−5 6 5 3 8 −8 9 2 0 −99 5 0 −9 1 −8 3 −9 −9 −3−8 7 −4 −5 −9 1 −7 −1 3 −2

,

B> = (−4, 22,−6,−23,−12), Q = 100× I10,C> = (48, 42, 48, 45, 44, 41, 47, 42, 45, 46).The global minimum solution is x∗ = (1, 0, 0, 1, 1, 1, 0, 1, 1, 1) with f(x∗) = −39.

Problem 32(Mohan and Nguyen 1999):

max f(x) = 215x1 + 116x2 + 670x3 + 924x4 + 510x5 + 600x6 + 424x7

+942x8 + 43x9 + 369x10 + 408x11 + 52x12 + 319x13 + 214x14

+851x15 + 394x16 + 88x17 + 124x18 + 17x19 + 779x20 + 278x21

+258x22 + 271x23 + 281x24 + 326x25 + 819x26 + 485x27 + 454x28

+297x29 + 53x30 + 136x31 + 796x32 + 114x33 + 43x34 + 80x35

+268x36 + 179x37 + 78x38 + 105x39 + 281x40

s. t. 9x1 + 11x2 + 6x3 + x4 + 7x5 + 9x6 + 10x7 + 3x8 + 11x9 + 11x10

+2x11 + x12 + 16x13 + 18x14 + 2x15 + x16 + x17 + 2x18 + 3x19

+4x20 + 7x21 + 6x22 + 2x23 + 2x24 + x25 + 2x26 + x27 + 8x28

+10x29 + 2x30 + x31 + 9x32 + x33 + 9x34 + 2x35 + 4x36 + 10x37

+8x38 + 6x39 + x40 ≤ 25000,5x1 + 3x2 + 2x3 + 7x4 + 7x5 + 3x6 + 6x7 + 2x8 + 15x9 + 8x10

+16x11 + x12 + 2x13 + 2x14 + 7x15 + 7x16 + 2x17 + 2x18 + 4x19

+3x20 + 2x21 + 13x22 + 8x23 + 2x24 + 3x25 + 4x26 + 3x27 + 2x28

+x29 + 10x30 + 6x31 + 3x32 + 4x33 + x34 + 8x35 + 6x36 + 3x37

+4x38 + 6x39 + 2x40 ≤ 25000,3x1 + 4x2 + 6x3 + 2x4 + 2x5 + 3x6 + 7x7 + 10x8 + 3x9 + 7x10

+2x11 + 16x12 + 3x13 + 3x14 + 9x15 + 8x16 + 9x17 + 7x18 + 6x19

+16x20 + 12x21 + x22 + 3x23 + 14x24 + 7x25 + 13x26 + 6x27 + 16x28

+3x29 + 2x30 + x31 + 2x32 + 8x33 + 3x34 + 2x35 + 7x36 + x37 + 2x38

+6x39 + 5x40 ≤ 25000,10 ≤ xi ≤ 99(i = 1, 2, · · · , 20), 20 ≤ xi ≤ 99(i = 21, 22, · · · , 40)

The best known function value given in Ng et al. (2005) is f(x∗) = 1030361.

Page 32: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

32 Taylor & Francis and I.T. Consultant

Problem 33(Vegh et al. 2011):

min f(x) =n∑

i=1(xi − i)2

s. t. −n ≤ xi ≤ n, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = i, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 34(Vegh et al. 2011):

min f(x) =n∑

i=1|xi − 2i|

s. t. −2n ≤ xi ≤ 2n, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 2i, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 35(Vegh et al. 2011):

min f(x) =n∑

i=1i2(xi − i)2

s. t. −n ≤ xi ≤ n, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = i, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 36(Vegh et al. 2011):

minf(x) = 737− (15, 27, 36, 18, 12)(x− e1)

+(x− e1)>

35 −20 −10 32 −10−20 40 −6 −31 32−10 −6 11 −6 −1032 −31 −6 38 −20−10 32 −10 −20 31

(x− e1)

s. t. −30 ≤ xi ≤ 30, xi ∈ Z, i = 1, 2, · · · , 5

where e1 = (1, 0, 0, 0, 0)>.The global minimum solutions are x∗ = (1, 11, 22, 16, 6)> and x∗ = (1, 12, 23, 17, 6)>,with f(x∗) = 0.

Problem 37(Vegh et al. 2011):

minf(x) = (x1 + 10x2 − 28)2 + 5(x3 − x4 + 12)2 + (x2 − 2x3 + 8)2

+10(x1 − x4 + 9)2

s. t. −20 ≤ xi ≤ 20, xi ∈ Z, i = 1, 2, · · · , 4

The global minimum solution is x∗ = (8, 2, 5, 17) with f(x∗) = 0.Problem 38(Vegh et al. 2011):

min f(x) = 10n +n∑

i=1[(xi − i)2 − 10 cos(2π(xi − i))]

s. t. −n ≤ xi ≤ n, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = i, i = 1, 2, · · · , n, with f(x∗) = 0.

Page 33: RESEARCH ARTICLE A Discrete Hybrid Difierential Evolution ...web.xidian.edu.cn/lihong/files/20020101_065447.pdf · tion Algorithm for Solving Integer Programming Problems" 2 H. Li

June 17, 2013 22:0 Engineering Optimization ”A Discrete Hybrid Differential Evolu-tion Algorithm for Solving Integer Programming Problems”

Engineering Optimization 33

Problem 39(Vegh et al. 2011):

min f(x) = 1 +n∑

i=1

(xi−3i)2

4000 −n∏

i=1cos(xi−3i√

3i)

s. t. −3n ≤ xi ≤ 3n, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 3i, i = 1, 2, · · · , n, with f(x∗) = 0.Problem 40(Vegh et al. 2011):

minf(x) = −20 exp(−0.02

√n−1

n∑i=1

(xi − 4(n− i + 1)2)

− exp(n−1n∑

i=1cos(xi − 4(n− i + 1)) + 20 + e

s. t. 0 ≤ xi ≤ 4n, xi ∈ Z, i = 1, 2, · · · , n

The global minimum solution is x∗i = 4i, i = 1, 2, · · · , n, with f(x∗) = 0.