Opposition-based Memetic Search for the Maximum Diversity Problem

0 downloads 0 Views 244KB Size Report
tion, opposition-based learning, memetic search, tabu search. I. INTRODUCTION. GIVEN a set N of n elements where any pair of elements are separated by a ...
1

Opposition-based Memetic Search for the Maximum Diversity Problem Yangming Zhou, Jin-Kao Hao, and B´eatrice Duval IEEE Transactions on Evolutionary Computation, DOI: 10.1109/TEVC.2017.2674800

Abstract—As a usual model for a variety of practical applications, the maximum diversity problem (MDP) is computational challenging. In this paper, we present an opposition-based memetic algorithm (OBMA) for solving MDP, which integrates the concept of opposition-based learning (OBL) into the wellknown memetic search framework. OBMA explores both candidate solutions and their opposite solutions during its initialization and evolution processes. Combined with a powerful local optimization procedure and a rank-based quality-and-distance pool updating strategy, OBMA establishes a suitable balance between exploration and exploitation of its search process. Computational results on 80 popular MDP benchmark instances show that the proposed algorithm matches the best-known solutions for most of instances, and finds improved best solutions (new lower bounds) for 22 instances. We provide experimental evidences to highlight the beneficial effect of opposition-based learning for solving MDP. Index Terms—Maximum diversity, learning-based optimization, opposition-based learning, memetic search, tabu search.

I. I NTRODUCTION IVEN a set N of n elements where any pair of elements are separated by a distance, the maximum diversity problem (MDP) aims to select a subset S of m (m is given and m < n) elements from N in such a way that the sum of pairwise distances between any two elements in S is maximized. Let N = {e1 , e2 , . . . , en } be the given set of elements and dij ∈ R be the distance between ei and ej (dij = dji ). Formally, MDP can be formulated as the following quadratic binary problem [28].

G

n

max s.t.

f (x) = n X

n

1 XX dij xi xj 2 i=1 j=1

(1)

xi = m

(2)

x ∈ {0, 1}n

(3)

i=1

where the binary variable xk = 1 (k = 1, . . . , n) if element ek ∈ N is selected; and xk = 0 otherwise. Equation (2) ensures that a feasible solution x exactly contains m elements. MDP belongs to a large family of diversity or dispersion problems whose purpose is to identify a subset S from a set N of elements while optimizing an objective function defined Y. Zhou, J.K. Hao (corresponding author) and B. Duval are with the Department of Computer Science, LERIA, Universit´e d’Angers, 2 Boulevard Lavoisier, 49045 Angers 01, France, J.K. Hao is also affiliated with the Institut Universitaire de France (E-mail: [email protected]; [email protected] and [email protected]).

over the distances between the elements in S [39]. Over the past three decades, MDP has been widely studied under different names, such as max-avg dispersion [46], edge-weighted clique [32], dense k-subgraph [15], maximum edge-weighted subgraph [33] and equitable dispersion [39]. In addition, MDP also proves to be a useful model to formulate a variety of practical applications including facility location, molecular structure design, agricultural breeding stocks, composing jury panels and product design [22], [35]. In terms of computational complexity, MDP is known to be NP-hard [18]. Given the interest of MDP, a large number of solution methods for MDP have been investigated. These methods can be divided into two main categories: exact algorithms and heuristic algorithms. In particular, exact algorithms like [3], [34] are usually effective on small instances with n < 150. To handle larger instances, heuristic algorithms are often preferred to find sub-optimal solutions in an acceptable time frame. Existing heuristic algorithms for MDP include construction methods [18], [22], greedy randomized adaptive search procedure (GRASP)[2], [13], [47], iterative tabu search (ITS) [38], variable neighborhood search (VNS) [4], [8], fine-tuning iterated greedy algorithm (TIG) [30], memetic and hybrid evolutionary algorithms (MSES [11], G SS [17], MAMDP [53] and TS/MA [52]). Comprehensive surveys and comparisons of some important heuristic algorithms prior to 2012 for MDP can be found in [4], [35]. Recently, research into enhancing search algorithms via machine learning techniques has gained increasing interest in artificial intelligence and operations research. Machine learning is one of the most promising and salient research areas in artificial intelligence, which has experienced a rapid development and has become a powerful tool for a wide range of applications. Researchers have made much effort on using machine learning techniques to design, analyze, and select heuristics to solve large-scale combinatorial search problems [6], [26], [29], [45], [55]. Among the existing heuristics for MDP, two methods involve hybridization of heuristics and machine learning techniques. In [47], the proposed GRASP DM algorithm combines GRASP with data mining technique (i.e., frequent itemset mining). After each GRASP phase, the data mining process extracts useful patterns from recorded elite solutions to guide the following GRASP iterations. These patterns correspond to items that are shared by a significant number of elite solutions. Another learning-based heuristic is LTS EDA [51], which uses data mining techniques (kmeans clustering and estimation of distribution algorithms) to extract useful information from the search history of tabu

2

search in order to guide the search procedure to promising search regions. These learning-based methods have reported competitive results when they were published. In this paper, we propose a new learning-based optimization method for solving MDP. The proposed “oppositionbased memetic algorithm (OBMA)” integrates the concept of opposition-based learning into the popular memetic algorithm (MA) framework. OBMA brings several improvements into the original MA framework. First, we employ oppositionbased learning (OBL) to reinforce population initialization as well as the evolutionary search process, by simultaneously considering a candidate solution and its corresponding opposite solution. Second, we apply a tabu search procedure for local optimization which relies on an improved parametric constrained neighborhood. Third, we propose a rank-based quality-and-distance pool updating strategy to maintain a healthy population diversity. We identify the main contributions of this work as follows. • From an algorithmic perspective, we explore for the first time the usefulness of opposition-based learning to enhance a popular method (i.e., MA) for combinatorial optimization. We investigate how OBL can be beneficially integrated into the MA framework and show the effectiveness of the approach within the context of solving the maximum diversity problem. • From a computational perspective, we compare the proposed OBMA algorithm with state-of-the-art results on several sets of 80 large size MDP benchmark instances with 2, 000 to 5, 000 elements. Our results indicate that OBMA matches most of the best-known results and in particular finds improved best solutions (new lower bounds) for 22 instances. These new bounds are valuable for the assessment of new MDP algorithms. These computational results demonstrate the competitiveness of OBMA and the benefit of using OBL to enhance a memetic algorithm. The reminder of the paper is organized as follows. After a brief introduction of opposition-based learning and memetic search in Section II, we present in Section III the proposed opposition-based memetic algorithm. Sections IV and V show computational results and comparisons as well as an experimental study of key issues of the proposed algorithm. Conclusions and perspective are provided in Section VI. II. BACKGROUND This section introduces the concept of opposition-based learning and the general memetic search framework, which are then combined in the proposed approach. A. Opposition-based Learning Opposition-based learning (OBL) was originally proposed as a machine intelligence scheme for reinforcement learning [49]. The main idea behind OBL is the simultaneous consideration of a candidate solution and its corresponding opposite solution. To explain the concept of opposition, we consider a real number x ∈ [a, b], then the opposite number x is defined as x = a + b − x. For the case of MDP, we define the concept

of opposite solution in Section III. OBL is a fast growing research field in which a variety of new theoretical models and technical methods have been studied to deal with complex and significant problems [1], [40], [50], [54]. Recently, the idea of OBL has also been used to reinforce several global optimization methods such as differential evolution, particle swarm optimization, biogeography-based optimization, artificial neural network, bee and ant colony optimization [54], [5]. To apply OBL to solve an optimization problem, one needs to answer a fundamental question: given a solution from the search space, why is it more advantageous to consider an opposite solution of the current solution than a second pure random solution? For one dimensional search space, a proof and an empirical evidence confirmed how much an opposite solution is better than a uniformly generated random solution [41]. This result was further generalized to the N-dimensional search spaces for black-box (continuous) problems in [42]. We observe that existing studies on OBL-based optimization concerns only global optimization with two exceptions. In 2008, Ventresca and Tizhoosh [50] proposed a diversity maintaining population-based incremental learning algorithm for solving the traveling salesman problem (TSP), where the concept of opposition was used to control the amount of diversity within a given sample population. In 2011, Ergezer and Simon [14] hybridized open-path opposition and circular opposition with biogeography-based optimization for solving the graph coloring problem and TSP. The main difficulty of these applications is how to define and evaluate opposite solutions in a discrete space. OBL being a generally applicable technique, its efficiency depends on the matching degree between the definition of OBL and the solution space of the considered problem, as well as the rationality justifying a combination of OBL with a search algorithm [54]. B. Memetic Algorithm The memetic algorithm framework (MA) [36], [27] is a well-known hybrid search approach combining populationbased search and local optimization. MA has been successfully applied to tackle numerous classical NP-hard problems [9], [24], such as graph coloring [31], graph partitioning [7], [16] and generalized quadratic multiple knapsack [10] as well as the maximum diversity problem [11], [53]. A typical MA algorithm (Algorithm 1) begins with a set of random or constructed solutions (initial population). At each generation, MA selects two or more parent solutions from the population, and performs a recombination or crossover operation to generate one or more offspring solutions. Then a local optimization procedure is invoked to improve the offspring solution(s). Finally, a population management strategy is applied to decide if each improved offspring solution is accepted to join the population. The process repeats until a stopping condition is satisfied. We show below how OBL and MA can be combined to obtain a powerful search algorithm for the highly combinatorial maximum diversity problem. III. O PPOSITION - BASED MEMETIC ALGORITHM FOR MDP We describe in this section the proposed opposition-based memetic algorithm for MDP. We start with the issues of so-

3

Algorithm 1 The general memetic algorithm framework 1: Input: a problem instance and population size p 2: Output: the best solution S ∗ found

// Build an initial population 3: P = {S 1 , S 2 , . . . , S p } ← PoolInitialization ()

4: 5: 6: 7: 8: 9: 10: 11: 12: 13:

// We suppose it is a maximization problem, record the best solution found so far S ∗ = arg max{f (S i )|i = 1, 2, . . . , p} while a stopping condition is not reached do (S i , . . . , S j ) ← ParentsSelection (P ) // Generate an offspring solution S o ← CrossoverOperator(S i , . . . , S j ) // Improve the offspring solution S o ← LocalImprovement(S o ) // Accept or discard the improved solution P ← UpdatePopulation (P, S o ) // Update the best solution found if f (S o ) > f (S ∗ ) then S∗ ← So end if end while

lution representation and search space, followed by a detailed presentation of the ingredients of the proposed approach. A. Solution Representation and Search Space Given a MDP instance with set N = {e1 , e2 , . . . , en } and integer m, any subset S ⊂ N of size m is a feasible solution. A candidate solution S can then be represented by S = {eS(1) , eS(2) , . . . , eS(m) } such that S(i) is the index of element i in N or equivalently by a binary vector of size of n such that exactly m variables receive the value of 1 and the other n − m variables receive the value of 0. The quality of a candidate solution S is assessed by the objective function f of Equation (1). Given a MDP instance, the search space Ω is composed of all the m-element subsets of N , i.e., ⊂ N : |S| = m}.  Ω = {S n n! and increases = m!(n−m)! The size of Ω is given by m extremely fast with n and m. B. Main Scheme The proposed OBMA algorithm for MDP is based on opposition learning, which relies on the key concept of opposite solution in the context of MDP, which is defined as follows. Definition 1 (Opposite solution): Given a MDP instance with set N and integer m, let S be a feasible solution of Ω represented by its binary n-vector x, an opposite solution S corresponds to a feasible binary vector x whose components match the complement1 of x as closely as possible. According to this definition, if m < n2 , S corresponds to any subset of elements of size of m from N \S. If m = n2 , the unique opposite solution is given by S = N \ S. If m > n2 , S is any subset of n − m elements from N \ S, completed by other 2m − n elements from S. We observe that a diversification framework introduced in [21] also yields the type of opposite solution provided by our definition and applies to constraints more general than 1 Let x ∈ {0, 1}n , its complement x is an n-vector such that x[i] = 1 if x[i] = 0; x[i] = 0 if x[i] = 1.

the constraint defined by Equation (2). We make two related comments. First, as we observe in Section IV, the MDP benchmark instances in the literature correspond to the case m 6 n2 . Second, in practice, when an opposite solution is required while there are multiple opposite solutions, we can just select one solution at random among the candidate opposite solutions. Algorithm 2 Opposition-based memetic algorithm for MDP 1: Input: a n × n distance matrix (dij ), and an integer m < n 2: Output: the best solution S ∗ found

// Build an initial population, Section III-C 3: P = {S 1 , S 2 , . . . , S p } ← OppositionBasedPoolInitialize() 4: S ∗ ← arg max{f (S i ) : i = 1, 2, . . . , p} 5: while a stopping condition is not reached do 6: Randomly select two parent solutions S i and S j from P

7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:

// Generate an offspring solution and its opposite solution by crossover, Section III-E S o , S o ← BackboneBasedCrossover(S i , S j ) // Perform a double trajectory search, Section III-D S o ← TabuSearch(S o )/∗trajectory 1: search around S o ∗/ if f (S o ) > f (S ∗ ) then S∗ = So end if // Insert or discard the improved solution, Section III-F P ← RankBasedPoolUpdating (P, S o ) S o ← TabuSearch(S o )/∗trajectory 2: search around S o ∗/ if f (S o ) > f (S ∗ ) then S∗ = So end if // Insert or discard the improved solution, Section III-F P ← RankBasedPoolUpdating (P, S o ) end while

The proposed OBMA algorithm consists of four key components: an opposition-based population initialization procedure, a backbone-based crossover operator, an opposition-based double trajectory search procedure and a rank-based qualityand-distance pool updating strategy. OBMA starts from a collection of diverse elite solutions which are obtained by the opposition-based initialization procedure (Section III-C). At each generation, two parent solutions are selected at random from the population, and then the backbone-based crossover operator (Section III-E) is applied to the selected parents to generate an offspring solution and a corresponding opposite solution. Subsequently, the opposition-based double trajectory search procedure (Section III-D) is invoked to search simultaneously from the offspring solution and its opposite solution. Finally, the rank-based pool updating strategy (Section III-F) decides whether these two improved offspring solutions should be inserted into the population. This process repeats until a stopping condition (e.g., a time limit) is satisfied. The general framework of the OBMA algorithm is shown in Algorithm 2 while its components are described in the following sections. C. Opposition-based Population Initialization The initial population P is composed of p diverse and high quality solutions. Unlike traditional population initialization, our population initialization procedure integrates the concept of OBL. As shown in Algorithm 3, the OBL-based initialization procedure considers not only a random candidate solution

4

but also a corresponding opposite solution. Specifically, we first generate a pair of solutions, i.e., a random solution Sr ∈ Ω and a corresponding opposite solution S r according to Definition (1) of Section III-B (if multiple opposite solutions exist, one of them is taken at random). These two solutions are then improved by the tabu search procedure described in Section III-D. Finally, the better one of the two improved solutions S ′ is inserted into the population if S ′ is not the same as any existing individual of the population. Otherwise, we modify S ′ with the swap operation (see Section III-D1) until S ′ becomes different from all individuals in P before inserting it into the population. This procedure is repeated until the population is filled up with p solutions. With the help of this initialization procedure, the initial solutions of P are not only of good quality, but also of high diversity. Algorithm 3 Opposition-based population initialization 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:

Input: population size p Output: an initial population P = {S 1 , S 2 , . . . , S p } count = 0 while count < p do /∗ Generate a random solution S r and its opposite solution S r ∗/ S r ← TabuSearch (S r ) S r ← TabuSearch (S r ) /∗ Identify the better solution between S r and S r ∗/ S ′ ← arg max{f (S r ), f (S r )} /∗ Insert S ′ into the population P or modify it ∗/ if S ′ is different from any solutions in the P then Add S ′ into the population P directly else Modify S ′ and add it into the population P count ← count + 1 end if end while

D. Opposition-based Double Trajectory Search Procedure In the proposed OBMA algorithm, we use an oppositionbased double trajectory search procedure (ODTS) for local optimization. ODTS simultaneously searches around an offspring solution S o and one opposite solution S o . The local optimization procedure used here is an improved constrained neighborhood tabu search. Tabu search is a well-known metaheuristic that guides a local search heuristic to explore the solution space beyond local optimality [20]. The original constrained neighborhood tabu search algorithm was proposed in [53], which is specifically designed for MDP by using a constrained neighborhood and a dynamic tabu tenure management mechanism. Compared with this tabu search algorithm, our improved tabu search procedure (see Algorithm 4) distinguishes itself by its parametric constrained neighborhood which allows the search process to explore more promising candidate solutions. In the following, we present the key ingredients of this local optimization procedure including the parametric constrained neighborhood, the fast neighborhood evaluation technique and the dynamic tabu tenure management scheme. 1) Parametric constrained neighborhood: In general, local search for MDP starts from an initial solution S and subsequently swaps an element of S and an element of N \ S

Algorithm 4 Parametric constrained neighborhood tabu search 1: Input: a starting solution S, the maximum allowed iterations 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:

M axIter Output: the best solution S ∗ found S∗ ← S iter ← 0 Initialize the tabu list Calculate the gain(ei ) for each element ei ∈ N according to Eq. (4) while iter < M axIter do minGain ← min{gain(ei ) : ei ∈ S} Determine subset USc according to Eq. (6) maxGain ← max{gain(ei ) : ei ∈ N \ S} c Determine subset UN \S according to Eq. (7) Choose a best eligible swap(eu , ev ) (see Sect. III-D3) S ← S \ {eu } ∪ {ev } Update the tabu list and gain(ei ) for each element ei ∈ N according to Eq. (8) if f (S) > f (S ∗ ) then S∗ ← S end if iter ← iter + 1 end while

according to some specific transition rule (e.g., accepting the first or the best improving transition). Clearly, the size of this neighborhood is bound by O(m(n − m)) and an exhaustive exploration of all the possible swap moves is too time-consuming for the large values of n. To reduce the size of the swap neighborhood, we employ an extension of a candidate list strategy sometimes called a neighborhood decomposition strategy [19] or a successive filtration strategy [44], and which we refer to as a constrained swap strategy [53]. As it is shown in the experimental analysis of Section V-A, although this constrained swap strategy accelerates the search process, it imposes a too strong restriction and may exclude some promising swap moves for the tabu search procedure. In this work, we introduce the parametric constrained neighborhood which adopts the idea of the constrained neighborhood, but weakens the imposed constraint by introducing a parameter ρ (ρ > 1) to control the size of the explored neighborhood. Both constrained neighborhoods rely on the notion of move gain of each element ei with respect to the objective value of the current solution S defined as follows. X gain(ei ) = dij , i = 1, 2, . . . , m (4) ej ∈S

Let swap(eu , ev ) denote the swap operation which exchanges an element eu ∈ S against an element ev ∈ N \ S. swap(eu ,ev )

Once a swap S −−−−−−−−→ S ′ is made, it provides a new solution S ′ = S \ {eu } ∪ {ev } and the move gain ∆uv of this swap can be calculated according to the following formula. ∆uv = f (S ′ ) − f (S) = gain(ev ) − gain(eu ) − duv

(5)

Equation (5) suggests that in order to maximize the move gain, it is a good strategy to consider swap moves that replaces in the current solution S an element eu with a small gain by an element ev out of S with a large gain. In other words, the search process can only consider swap moves that involve

5

an element eu∗ from S with the minimal gain value and an element ev∗ in N \ S with a maximal gain value. However the move gain also depends on the distance du∗ v∗ between eu∗ and ev∗ . These remarks lead to the following definition for the parametric constrained neighborhood. For a current solution S, let minGain = min{gain(ei ) : ei ∈ S} and maxGain = max{gain(ei ) : ei ∈ N \ S} and dmax = max{dij : 1 6 i < j 6 n}. The parametric constrained neighborhood relies on the two following sets. ρ USc = {ei ∈ S : gain(ei ) 6 minGain + dmax } 2

(6)

and ρ c UN \S = {ei ∈ N \ S : gain(ei ) > maxGain − dmax } 2 (7) ′ Therefore, a constrained neighbor solution S can be obtained from S by swapping one element eu ∈ USc and another c element ev ∈ UN \S . Clearly, the evaluation of all constrained c neighboring solutions can be achieved in O(|USc | × |UN \S |). Conveniently, we can adjust the value of parameter ρ (ρ > 1) to control the size of the constrained neighborhood. One notices that the neighborhood of [53] is a special case of the above neighborhood when ρ = 2. In general, a larger ρ value leads to a less constrained neighborhood compared to the neighborhood of [53], allowing thus additional promising candidate solutions to be considered by the tabu search procedure. The experimental analysis of Section V-A confirms the effectiveness of this parametric constrained neighborhood. 2) Fast neighborhood evaluation technique: Once a swap(eu , ev ) move is performed, we need to update the gains gain(ei ) affected by the move. To rapidly determine the gain of each element ei , we resort to the fast neighborhood evaluation technique used in [2], [4], [53].   gain(ei ) + div gain(ei ) = gain(ei ) − diu   gain(ei ) + div − diu

if ei = eu if ei = ev if ei 6= eu and ei 6= ev . (8) Updating the gains of n elements requires O(n) time. Therefore, the time to update the parametric constrained neighborc hood at each iteration is bounded by O(n)+O(|USc |×|UN \S |). 3) Dynamic tabu tenure management scheme: Starting with a solution S, tabu search iteratively visits a series of neighboring solutions generated by the swap operator. At each iteration, a best swap (i.e., with the maximum move gain ∆uv ) is chosen among the eligible swap moves to transform the current solution even if the resulting solution is worse than the current solution. To prevent the search from cycling among visited solutions, tabu search typically incorporates a short-term history memory H, known as the tabu list [20]. Initially, all elements are eligible for a swap operation. Once a swap(eu , ev ) is performed, we record it in the tabu list H to mark element eu as tabu, meaning that element eu is forbidden to join again solution S during the next Tu iterations (Tu is called the tabu tenure). Similarly, element ev is also marked as tabu for the next Tv iterations and thus cannot be removed

from S during this period. The tabu status of an element is disabled if the swap operation with this element leads to a solution better than any already visited solution (this rule is called the aspiration criterion in tabu search). An eligible swap move involves only elements that are not forbidden by the tabu list or satisfy the aspiration criterion. It is important to determine a suitable tabu tenure for the elements of a swap. Yet, there does not exist a universally applicable tabu tenure management scheme. In this paper, we adopt a dynamic tabu list management technique which was proposed in [16] and proved to work well for MDP [53]. The tabu tenure Tx of an element ex taking part in a swap operation is determined according to a periodic step function T (iter), where iter is the number of iterations. Specifically, T (iter) takes the value of α (a parameter set to 15 in this work), 2×α, 4×α and 8×α according to the value of iter, and each T (iter) value is kept for 100 consecutive iterations (see [16], [53] for more details). Following [53], we set Tu = T (iter) for the element eu dropped from the solution and Tv = 0.7 ∗ T (iter) for the element ev added to the solution. To implement the tabu list, we use an integer vector H of size n whose components are initially set to 0 (i.e., H[i] = 0, ∀i ∈ [1, . . . , n]). After each swap(eu , ev ) operation, we set H[u] (resp. H[v]) to iter + Tu (resp. iter + Tv ), where iter is the current number of iterations and Tu (resp. Tv ) is the tabu tenure explained above. With this implementation, it is very easy to know whether an element ei is forbidden by the tabu list as follows. If iter ≤ H[i], then ei is forbidden by the tabu list; otherwise, ei is not forbidden by the tabu list. E. Backbone-based Crossover Operator The crossover operator plays a critical role in memetic search and defines the way information is transmitted from parents to offspring [24]. A meaningful crossover operator should preserve good properties of parent solutions through the recombination process. In our case, we adopt a backbonebased crossover operator which generates an offspring solution in the same way as in [53] while introducing additionally an opposite solution. For MDP, the backbone is a good property that is to be transmitted from parents to offspring, as shown in Definition 2. Specially, the backbone-based crossover operator not only produces an offspring solution, but also creates a corresponding opposite solution. Definition 2 (backbone [24], [53]): Let S u and S v be two solutions of MDP, the backbone of S u and S v is defined as the set of common elements shared by these two solutions, i.e., S u ∩ S v . Given a population P = {S 1 , S 2 , . . . , S p } of p individuals, an offspring solution is constructed in two phases. The first phase randomly selects two parents S u and S v in P and identifies the backbone which is used to form the partial offspring S o , i.e., S o = S u ∩ S v . If |S o | < m, then the second phase successively extends S o with m − |S o | other elements in a greedy way. Specifically, we alternatively consider each parent and select an unassigned element with maximum gain with respect to S o until S o reaches the size of m. Once the offspring solution S o is obtained, we generate

6

its corresponding opposite solution S o according to Definition 1. Consequently, we obtain two different and distant offspring solutions S o and S o which are further improved by the tabu search procedure of Section III-D. F. Rank-based Pool Updating Strategy To maintain a healthy diversity of the population, we use a rank-based pool updating strategy to decide whether the improved solutions (S o and S o ) should be inserted into the population or discarded. This pool updating strategy simultaneously considers the solution quality and the distance between individuals in the population to guarantee the population diversity. Similar quality-and-distance pool updating strategies have been used in memetic algorithms in [10], [31], [48], [53]. For two solutions S u and S v , we use the well-known settheoretic partition distance [23] to measure their distance. u

v

u

v

D(S , S ) = m − Sim(S , S ) u

v

u

v

1 p

X

(9)

where Sim(S , S ) = |S ∩ S | denotes the number of common elements shared by S u and S v . Given a population P = {S 1 , S 2 , . . . , S p } and one solution i S in P , the average distance between S i and the remaining individuals in P is computed by [10]. AD(S i , P ) =

pool updating strategy. The step of parents selection is bounded by O(1). The backbone-based crossover operation can be achieved in O(nm2 ). The computational complexity of the parametric constrained neighborhood search procedure c c is O((n+|USc |×|UN \S |)M axIter), where |US | is the number c of elements that can be swapped out from S, |UN \S | is the number of elements in N \ S that can be swapped into S, and M axIter is the allowable maximum number of iterations in tabu search. The computational complexity for the pool updating strategy is O(p(m2 + p)), where p is the population size. To summarize, the total computational complexity of the proposed OBMA within one generation is c O(nm2 + (n + |USc | × |UN \S |)M axIter). IV. C OMPUTATIONAL RESULTS This section presents computational experiments to test the efficiency of our OBMA algorithm. We aim to 1) demonstrate the added value of OBMA (with OBL) compared to the memetic search framework (without OBL), and 2) evaluate the performance of OBMA with respect to the best-known results ever reported by state-of-the-art algorithms in the literature. A. Benchmark Instances

D(S i , S j )

(10)

S j ∈P,j6=i

To update the population with an improved offspring solution (S o or S o ), let us consider the case of S o (the same procedure is applied to S o ). We first tentatively insert S o into the population P , i.e., P ′ ← P ∪ {S o }. Then all individuals in P ′ are assessed based on the following function. Score(S i , P ′ ) = β ∗ RF (f (S i )) + (1 − β) ∗ RF (AD(S i , P ′ )) (11) where RF (f (S i )) and RF (AD(S i , P ′ )) represent respectively the rank of solution S i with respect to its objective value and the average distance to the population. Specifically, RF (·) ranks the solutions of P in decreasing order according to their objective values or their average distances to the population. In case of ties, the solution with the smallest index is preferred. β is the weighting coefficient between the objective value of the solution and its average distance to the population, which is empirically set to β = 0.6. Based on this scoring function, we identify the worst solution S w with the largest score value from the population P ′ . If the worst solution S w is not the improved offspring S o , then the population is updated by replacing S w by S o ; otherwise, S o is simply discarded. G. Computational Complexity of OBMA To analyze the computational complexity of the proposed OBMA algorithm, we consider the main steps in one generation in the main loop of Algorithm 2. As shown in Algorithm 2, each generation of the OBMA algorithm is composed of four components: parents selection, backbone-based crossover, tabu search and rank-based

Our computational assessment were based on 80 large instances with 2000 to 5000 elements which are classified into the following sets. Set I contains three data sets: MDG-a (also known as Type1 22), MDG-b and MDG-c. They are available at http: //www.optsicom.es/mdp/. •





MDG-a: This data set consists of 20 instances with n = 2000, m = 200. The distance dij between any two elements i and j is an integer number which is randomly selected between 0 and 10 from a uniform distribution. MDG-b: This data set includes 20 instances with n = 2000, m = 200. The distance dij between any two elements i and j is a real number which is randomly selected between 0 and 1000 from a uniform distribution. MDG-c: This data set is composed of 20 instances with n = 2000, m = 300, 400, 500, 600. The distance dij between any two elements i and j is an integer number which is randomly selected between 0 and 1000 from a uniform distribution.

Set II (b2500) contains 10 instances with n = 2500, m = 1000, where the distance dij between any two elements ei and ej is an integer randomly generated from [−100, 100]. This data set was originally derived from the unconstrained binary quadratic programming problem by ignoring the diagonal elements and is part of ORLIB: http://people.brunel.ac. uk/∼mastjjb/jeb/orlib/files/. Set III (p3000 and p5000) contains 5 very large instances with n = 3000 and m = 1500, and 5 instances with n = 5000 and m = 2500, where dij are integers generated from a [0, 100] uniform distribution. The sources of the generator and input files to replicate this data set can be found at: http: //www.proin.ktu.lt/∼gintaras/mdgp.html.

7

TABLE I 80 LARGE BENCHMARK INSTANCES USED IN THE EXPERIMENTS . Data set

n

m

#instance

time limit (s)

#run

MDG-a MDG-b MDG-c

2000 2000 2000

200 200 300-600

20 20 20

20 600 600

30 15 15

b2500

2500

1000

10

300

30

p3000 p5000

3000 5000

1500 2500

5 5

600 1800

15 15

B. Experimental Settings Our algorithm2 was implemented in C++, and complied using GNU gcc 4.1.2 with ‘-O3’ option on an Intel E5-2670 with 2.5GHz and 2GB RAM under Linux. Without using any compiler flag, running the DIMACS machine benchmark program dfmax3 on our machine requires 0.19, 1.17 and 4.54 seconds to solve graphs r300.5, r400.5 and r500.5 respectively. To obtain our experimental results, each instance was solved according to the settings (including time limit and number of runs) provided in Tables I and II. Notice that, like most reference algorithms of Section IV-D, we used a cutoff time limit (instead of fitness evaluations) as the stopping condition. This choice is suitable in the context of MDP given that its fitness evaluation is computationally cheap enough, contrary to expensive-to-evaluate problems like many engineering optimization problems where using fitness evaluations is a standard practice [25]. TABLE II T HE PARAMETER SETTING OF THE OBMA ALGORITHM . Parameters

Description

Value

Section

p M axIter α ρ β

population size allowable number of iterations of TS tabu tenure management factor scale coefficient weighting coefficient

10 50,000 15 4 0.6

III-C III-D III-D III-D III-F

C. Benefit of OBL for Memetic Search To verify the benefit of OBL for memetic search, we compare OBMA with its alternative algorithm OBMA0 without OBL. To obtain OBMA0 , two modifications have been made on OBMA: 1) for the population initialization phase, we randomly generate two initial solutions at a time (instead of a random solution and an opposite solution); 2) for the crossover phase, we perform twice the crossover operation to generate two offspring solutions (instead of one offspring solution and an opposite solution). To make a fair comparison between OBMA and OBMA0 , we ran both algorithms under the same conditions, as shown in Tables I and II. The comparative results for the five data sets are summarized in Tables III-VII. 2 The best solution certificates and our program will be made available at http://www.info.univ-angers.fr/pub/hao/OBMA.html. 3 dfmax: ftp://dimacs.rutgers.edu/pub/dsj/clique

In these tables, columns 1 and 2 respectively show for each instance its name (Instance) and the current best objective value (fprev ) jointly reported in recent studies [35], [17], [53], [51]. Columns 3-7 report the results of the OBMA0 algorithm: the difference between fprev and the best objective value fbest (i.e., ∆fbest = fprev − fbest ), the difference between fprev and average objective value favg (i.e., ∆favg = fprev − favg ), the standard deviation of objective values (σ), the average CPU time to attain the best objective values (tbest ) and the success rate (#succ) over 30 or 15 independent runs. Columns 8-12 present the same information of the OBMA algorithm. The best values among the results of the two compared algorithms are indicated in bold. At the last row, we also provide the average number of instances for which one algorithm outperforms the other algorithm. 0.5 is assigned to each compared algorithm in case of ties. To analyze these results, we resort to a widely-used statistical methodology known as two-tailed sign test [12]. This test is a popular way to compare the overall performance of algorithms by counting the number of winning instances of each compared algorithm and thus to identify the overall winner algorithm. The test makes the null hypothesis that the compared algorithms are equivalent. The null hypothesis is accepted if each algorithm wins on approximately X/2 out of X instances. Otherwise, the test rejects the null hypothesis, suggesting a difference between the compared algorithms. The Critical Values (CV ) for the two-tailed sign test at a 20 significance level of 0.05 are respectively CV0.05 = 15 for 10 X = 20 instances and CV0.05 = 9 for X = 10 instances. In other words, algorithm A is significantly better than algorithm X B if A performs better than B for at least CV0.05 instances for a data set of X instances. From Table III which shows the results of OBMA0 and OBMA for the 20 MDG-a instances, we first observe that both algorithms attain the best-known results reported in the literature. However, OBMA performs better than OBMA0 in terms of the average objective value and success rate, and wins 14.5 instances and 13.5 instances respectively. We also observe that the standard deviation of the best objective values is significantly smaller for OBMA, and OBMA wins 14.5 instances, 20 which is very close to the critical value (CV0.05 = 15). Finally, compared to OBMA0 , OBMA needs less average CPU time to find the best-known solutions for all instances except MDGa 26 and wins 13.5 instances in terms of the success rate. Table IV shows the results of OBMA0 and OBMA for the 20 MDG-b instances. The best-known objective values (fprev ) of this data set were obtained by a scatter search algorithm (G SS) [17] with a time limit of 2h on an Intel Core 2 Quad CPU 8300 with 6GB of RAM running Ubuntu 9.04 [35]. This table indicates that both OBMA and OBMA0 find improved best-known solutions for 14 out of 20 instances and attain the best objective values for the remaining 6 instances. On the other hand, compared to the OBMA0 algorithm, OBMA obtains a better average objective value and higher success rate for 13.5 and 13 instances. It is worth noting that OBMA has a steady performance, and achieves these results with a 100% success rate on almost all instances except for MDG-b 24, MDG-b 32 and MDG-b 33. To summarize, OBMA performs

8

TABLE III C OMPARISON OF THE RESULTS OBTAINED BY OBMA0 AND OBMA ON THE DATA SET MDG- A . OBMA0 Instance MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a MDG-a

21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

OBMA

fprev

∆fbest

∆favg

σ

tbest

#succ

∆fbest

∆favg

σ

tbest

#succ

114271 114327 114195 114093 114196 114265 114361 114327 114199 114229 114214 114214 114233 114216 114240 114335 114255 114408 114201 114349

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

4.5 4.2 10.9 25.3 55.9 7.3 0.0 57.1 11.2 12.8 30.4 28.5 6.1 25.4 1.6 7.5 4.2 1.2 2.2 28.1

10.6 22.6 15.2 21.0 32.7 10.2 0.0 53.8 16.0 16.3 22.7 19.9 10.5 43.8 2.2 11.7 8.2 3.1 6.0 37.7

9.3 9.2 11.5 11.3 13.3 9.9 4.8 15.2 14.6 10.5 16.2 10.4 12.8 11.6 12.2 12.4 12.2 10.6 9.7 9.9

22/30 29/30 15/30 4/30 1/30 17/30 30/30 12/30 8/30 14/30 5/30 4/30 15/30 15/30 9/30 19/30 18/30 19/30 26/30 18/30

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

5.2 0.1 15.2 11.2 41.5 10.2 0.2 18.9 4.4 8.1 16.7 23.7 2.0 2.4 1.6 5.7 5.2 0.5 2.0 23.0

10.8 0.5 15.1 12.1 30.7 11.5 0.9 39.2 8.4 10.5 13.6 17.1 5.6 7.0 2.4 9.5 8.6 1.1 6.0 31.5

7.4 7.2 7.0 8.2 8.8 11.6 4.1 7.9 9.0 7.2 11.9 6.0 8.8 6.6 10.7 10.5 7.8 7.6 4.9 9.1

20/30 29/30 11/30 7/30 5/30 14/30 29/30 23/30 14/30 14/30 9/30 3/30 23/30 26/30 11/30 21/30 18/30 25/30 27/30 19/30

wins

10

5.5

5.5

1

6.5

10

14.5

14.5

19

13.5

The fprev values were obtained by several algorithms including LTS-EDA [51] and MAMDP [53].

TABLE IV C OMPARISON OF THE RESULTS OBTAINED BY OBMA0 AND OBMA ON THE DATA SET MDG- B . OBMA0 Instance MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b

21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

OBMA

fprev

∆fbest

∆favg

σ

tbest

#succ

∆fbest

∆favg

σ

tbest

#succ

11299895 11286776 11299941 11290874 11296067 11292296 11305677 11279916 11297188 11296415 11288901 11279820 11296298 11281245 11307424 11289469 11290545 11288571 11295054 11307105

0 -5622 0 -245 -1960 -6134 0 -2995 -151 -1650 0 -3719 -1740 -9238 0 -13423 -5229 -7965 0 -2058

0.2 -5622.2 0.5 -229.1 -1959.9 -5216.0 0.2 -2994.6 -151.5 -1649.6 -0.2 -3669.3 -1381.7 -8881.8 -0.1 -13174.5 -5099.5 -7964.5 -0.2 -2057.6

0.0 0.0 0.0 61.2 0.0 1836.9 0.0 0.5 0.0 0.0 0.0 25.0 216.1 435.8 0.0 929.8 329.7 0.0 0.0 0.0

378.6 336.5 300.5 345.5 271.2 276.8 330.0 329.5 323.0 311.2 313.9 177.5 112.2 325.7 343.6 251.7 217.5 242.5 374.5 301.1

15/15 15/15 15/15 14/15 15/15 12/15 15/15 10/15 15/15 15/15 15/15 3/15 4/15 9/15 15/15 14/15 13/15 15/15 15/15 15/15

0 -5622 0 -245 -1960 -6134 0 -2995 -151 -1650 0 -3719 -1740 -9238 0 -13423 -5229 -7965 0 -2058

0.2 -5622.2 0.5 -220.5 -1959.9 -6134.4 0.2 -2994.7 -151.5 -1649.6 -0.2 -3694.3 -1675.0 -9237.6 -0.1 -13423.0 -5228.8 -7964.5 -0.2 -2057.6

0.0 0.0 0.0 67.2 0.0 0.0 0.0 0.4 0.0 0.0 0.0 30.6 166.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0

325.1 380.8 283.4 323.4 313.9 336.0 256.0 351.1 288.3 274.9 308.0 283.0 277.5 355.4 331.0 329.4 291.2 297.6 289.7 266.5

15/15 15/15 15/15 13/15 15/15 15/15 15/15 12/15 15/15 15/15 15/15 9/15 13/15 15/15 15/15 15/15 15/15 15/15 15/15 15/15

10

6.5

8

10

7

10

13.5

12

10

13

wins

The best-known values fprev were obtained by a scatter search algorithm (G SS) [17] with a time limit of 2 hours, which are available at http://www.optsicom.es/mdp/.

better than OBMA0 for this data set, but the differences are not very significant at a significance level of 0.05. Table V presents the results of OBMA0 and OBMA for the 20 instances of the MDG-c instances. All best-known results (fprev ) were achieved by iterative tabu search (ITS) [38] or variable neighborhood search (VNS) [8] under a time limit of 2 hours on an Intel Core 2 Quad CPU 8300 with 6GB

of RAM running Ubuntu 9.04 [35]. We observe that both OBMA and OBMA0 obtain improved best-known solutions for 8 instances and match the best-known solutions for 4 instances. In fact, OBMA improves all best-known solutions obtained by VNS, but it fails to attain 8 best-known solutions found by ITS. Compared to OBMA0 , OBMA obtains 2 improved best solutions for MDG-c 17 and MDG-c 19.

9

TABLE V C OMPARISON OF THE RESULTS OBTAINED BY OBMA0 AND OBMA ON THE DATA SET MDG- C . OBMA0 Instance MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

fprev

∆fbest

∆favg

σ

tbest

#succ

∆fbest

∆favg

σ

tbest

#succ

24924685⋆ 24909199⋆ 24900820∗ 24904964⋆ 24899703∗ 43465087∗ 43477267⋆ 43458007⋆ 43448137⋆ 43476251∗ 67009114⋆ 67021888∗ 67024373⋆ 67024804⋆ 67056334⋆ 95637733⋆ 95645826∗ 95629207∗ 95633549∗ 95643586∗

-1659 -3347 -4398 -4746 3999 20139 0 -7565 0 10690 -12018 7718 0 -5386 0 -1196 75241 97066 35131 59104

-493.5 140.3 -299.2 -1890.5 4767.8 22534.4 277.5 -4644.3 142.2 10690.0 -11345.3 12209.1 2082.0 -4667.9 1846.5 5861.5 86848.9 100609.9 39027.5 59133.2

852.7 2514.6 4040.7 1999.4 1025.0 2512.3 1038.2 1833.2 116.1 0.0 2110.0 5502.4 2944.8 1830.9 1353.5 8193.7 8727.7 3526.8 5420.3 109.3

165.5 94.6 22.5 106.5 8.7 77.4 6.1 58.9 82.1 27.1 90.8 9.3 106.4 11.3 31.0 318.8 291.8 90.5 236.5 111.0

5/15 4/15 7/15 4/15 9/15 6/15 14/15 3/15 6/15 15/15 13/15 7/15 10/15 13/15 5/15 2/15 2/15 7/15 7/15 14/15

-1659 -3347 -4398 -4746 3999 20139 0 -7565 0 10690 -12018 7718 0 -5386 0 -1196 74713 97066 34385 59104

-1262.4 -3346.3 -2805.2 -3917.2 4047.3 21054.5 126.9 -7546.7 0.0 10690.0 -11776.3 10179.7 839.4 -5118.7 1021.2 -1116.3 74981.7 99767.0 35121.3 59133.2

749.0 2.5 2717.9 1657.6 180.6 1190.4 314.7 68.6 0.0 0.0 522.3 3250.5 2140.1 1000.3 1122.0 298.3 373.3 2972.8 816.2 109.3

251.3 286.6 239.4 276.2 212.5 290.8 111.7 163.6 72.5 115.1 335.0 302.8 380.1 276.3 269.0 270.8 312.8 292.1 343.7 299.9

11/15 14/15 11/15 12/15 14/15 6/15 12/15 14/15 15/15 15/15 10/15 9/15 13/15 14/15 5/15 14/15 8/15 8/15 4/15 14/15

9

1

1

18

5

11

19

19

2

15

wins ∗ ⋆

OBMA

Results are obtained by ITS with 2 hours CPU time [35]. Results are obtained by VNS with 2 hours CPU time [35].

Moreover, OBMA performs significantly better than OBMA0 20 in terms of the average best solution (19 > CV0.05 = 15), 20 success rate (15 >= CV0.05 = 15) and standard deviation 20 (19 > CV0.05 = 15) at a significance level of 0.05. Table VI reports the results of OBMA0 and OBMA for the 10 instances of the b2500 data set. From this table, we observe that both algorithms reach the best-known values for all the instances. Meanwhile, the average value of best objective values of OBMA is better than that of OBMA0 , and the difference of this measure between these two algorithms is 10 weakly significant (8.5 < CV0.05 = 9). Even though there is no significant difference on the success rate, OBMA obtains a higher success rate for 8.5 instances, while the reverse is true only for 1.5 instances. In addition, OBMA achieves these results more steadily than OBMA0 , wining 8.5 out of 10 instances in terms of the standard deviation. Table VII displays the results of OBMA0 and OBMA for the 10 largest instances (p3000 and p5000 instances). For these very large instances, OBMA matches all the best-known objective values without exception while OBMA0 fails to do so for 4 instances. In addition, OBMA performs significantly better than OBMA0 , and wins 10, 9.5 instances in terms of the average best objective value and success rate, respectively. The performance of OBMA is also more stable than OBMA0 by wining 8 out of 10 instances in term of the standard deviation. Finally, Table VIII provides a summary of the comparative results for the five data sets between OBMA (OBL enhanced memetic algorithm) and OBMA0 (memetic algorithm without OBL). As we observe from the table, OBMA achieves a better performance than OBMA0 , i.e., achieving improved solutions for 6 instances and matching the best solutions on the remain-

ing 75 instances. In addition, OBMA also achieves a better performance in terms of the average best value, the success rate and the standard deviation, wining OBMA0 on most benchmark instances. Therefore, we conclude that oppositionbased learning can beneficially enhance the popular memetic search framework to achieve an improved performance. TABLE VIII A SUMMARY OF WIN STATISTICAL RESULTS (OBMA0 | OBMA) ON ALL DATA SETS .

Data set

∆fbest

∆favg

σ

tbest

#succ

MDG-a MDG-b MDG-c b2500 p3000-5000

10 | 10 10 | 10 9 | 11 5|5 3|7

5.5 | 14.5 6.5 | 13.5 1 | 19 1.5 | 8.5 0 | 10

5.5 | 14.5 8 | 12 1 | 19 1.5 | 8.5 2|8

1 | 19 10 | 10 18 | 2 4|6 4|6

6.5 | 13.5 7 | 13 5 | 15 1.5 | 8.5 0.5 | 9.5

D. Comparison with State-of-the-Art Algorithms We turn now our attention to a comparison of our OBMA algorithm with state-of-the-art algorithms, including iterated tabu search (ITS) [38], scatter search (G SS) [17], variable neighborhood search (VNS) [8], fine-tuning iterated greedy algorithm (TIG) [30], tabu search with estimation of distribution algorithm (LTS-EDA) [51] and memetic algorithm (MAMDP) [53]. We omit the tabu search/memetic algorithm (TS/MA) [52] and the memetic self-adaptive evolution strategies (MSES) [11] since TS/MA performs quite similar to MAMDP of [53] while MSES does not report detailed results. Among these reference algorithm, only the program

10

TABLE VI C OMPARISON OF THE RESULTS OBTAINED BY OBMA0 AND OBMA ON THE DATA SET B 2500. OBMA0

OBMA

Instance

fprev

∆fbest

∆favg

σ

tbest

#succ

∆fbest

∆favg

σ

tbest

#succ

b2500-1 b2500-2 b2500-3 b2500-4 b2500-5 b2500-6 b2500-7 b2500-8 b2500-9 b2500-10

1153068 1129310 1115538 1147840 1144756 1133572 1149064 1142762 1138866 1153936

0 0 0 0 0 0 0 0 0 0

193.1 106.0 303.2 549.7 50.9 88.9 106.2 113.7 0.2 0.0

429.2 163.1 347.2 461.9 129.3 210.9 111.9 349.0 1.1 0.0

154.1 149.2 105.5 191.2 117.6 89.4 114.8 98.4 135.7 81.4

23/30 21/30 17/30 8/30 24/30 22/30 13/30 22/30 29/30 30/30

0 0 0 0 0 0 0 0 0 0

0.0 37.9 0.4 65.8 5.3 0.0 14.1 1.5 1.3 0.0

0.0 73.2 2.2 118.5 28.4 0.0 31.0 5.5 2.9 0.0

100.3 147.4 95.3 98.9 86.3 66.8 128.3 105.4 139.8 107.5

30/30 22/30 29/30 20/30 29/30 30/30 23/30 28/30 25/30 30/30

wins

5

1.5

1.5

4

1.5

5

8.5

8.5

6

8.5

The fprev values were compiled from the results reported by ITS [38], LTS-EDA [51] and MAMDP [53].

TABLE VII C OMPARISON OF THE RESULTS OBTAINED BY OBMA0 AND OBMA ON THE DATA SETS P 3000 AND P 5000. OBMA0 Instance p3000 p3000 p3000 p3000 p3000 p5000 p5000 p5000 p5000 p5000

1 2 3 4 5 1 2 3 4 5

fprev 6502330 18272568 29867138 46915044 58095467 17509369 50103092 82040316 129413710 160598156 wins

OBMA

∆fbest

∆favg

σ

tbest

#succ

∆fbest

∆favg

σ

tbest

#succ

0 0 0 0 0 0 70 176 598 344

84.1 152.8 544.5 715.0 209.9 168.9 819.1 3450.3 1460.1 669.6

28.0 151.1 344.2 531.0 198.2 176.5 494.3 1671.3 661.6 323.6

172.6 151.5 244.0 250.1 180.0 518.7 242.5 333.1 1019.1 1348.7

1/15 7/15 4/15 2/15 6/15 7/15 1/15 1/15 1/15 1/15

0 0 0 0 0 0 0 0 0 0

24.4 0.0 0.0 1.2 0.0 128.2 22.8 209.3 97.8 102.9

35.8 0.0 0.0 19.3 0.0 181.8 8.0 141.3 122.1 52.3

275.6 89.3 26.2 336.9 65.4 1053.9 370.8 217.1 625.7 843.2

9/15 15/15 15/15 14/15 15/15 13/15 1/15 2/15 7/15 5/15

3

0

2

4

0.5

7

10

8

6

9.5

The best-known values fprev were extracted from [53].

of the memetic algorithm (MAMDP) [53] is available. For our comparative study, we report the results of the MAMDP algorithm by running its code on our platform with its default parameter values reported in [53]. For the other reference algorithms, we use their results presented in the corresponding references. The detailed comparative results in terms of ∆fbest and ∆favg are reported in Tables IX and X. Table IX presents the comparative results on the 40 instances of the data sets MDG-a, b2500, p3000-p5000 for which the detailed results of reference algorithms are available. At the last row of the table, we also indicate the number of wining instances relative to our OBMA algorithm both in terms of the best objective value and average objective value (recall that a tied result counts 0.5 for each algorithm). From this table, we observe that OBMA dominates all the reference algorithms. Importantly, OBMA is the only algorithm which obtains the best-known values and the largest average objective values for all 40 instances. Table X displays the comparative results on the data sets MDG-b and MDG-c. The best-known objective values fprev for the MDG-b instances are obtained by G SS [17] while the fprev values of the MDG-c instances are obtained by ITS and VNS [35], both with a time limit of 2 hours. No result is

available for the TIG and LTS-EDA algorithms for these data sets. The results of our OBMA algorithm (and MAMDP) are obtained with a time limit of 10 minutes. Table X indicates that both OBMA and MAMDP improve the best-known results for the majority of the 40 instances. Moreover, compared to MAMDP, our OBMA algorithm obtains an improved best objective value for 1 MDG-b instance and 3 MDG-c instances, while matching the best objective values for the remaining instances. Finally, OBMA dominates MAMDP in terms of the average objective value, wining 18 out of the 20 MDG-b instances and all 20 MDG-c instances. To summarize, compared to the state-of-the-art results, our OBMA algorithm finds improved best-known solutions (new lower bounds) for 22 out of the 80 benchmark instances, matches the best-known solutions for 50 instances, but fails to attain the best-known results for 8 instances. Such a performance indicates that the proposed algorithm competes favorably with state-of-the-art MDP algorithms and enriches the existing solution arsenal for solving MDP. V. E XPERIMENTAL ANALYSIS In this section, we perform additional experiments to gain some understanding of the proposed algorithm including the

11

TABLE IX C OMPARISON OF OBMA WITH OTHER ALGORITHMS ON THE DATA SETS MDG- A , B 2500, P 3000 AND P 5000.

ITS [38] Instance MDG-a 21 MDG-a 22 MDG-a 23 MDG-a 24 MDG-a 25 MDG-a 26 MDG-a 27 MDG-a 28 MDG-a 29 MDG-a 30 MDG-a 31 MDG-a 32 MDG-a 33 MDG-a 34 MDG-a 35 MDG-a 36 MDG-a 37 MDG-a 38 MDG-a 39 MDG-a 40 b2500-1 b2500-2 b2500-3 b2500-4 b2500-5 b2500-6 b2500-7 b2500-8 b2500-9 b2500-10 p3000-1 p3000-2 p3000-3 p3000-4 p3000-5 p5000-1 p5000-2 p5000-3 p5000-4 p5000-5 wins

VNS [8]

TIG [30]

LTS-EDA [51]

MAMDP [53]

OBMA

fprev

∆fbest

∆favg

∆fbest

∆favg

∆fbest

∆favg

∆fbest

∆favg

∆fbest

∆favg

∆fbest

∆favg

114271 114327 114195 114093 114196 114265 114361 114327 114199 114229 114214 114214 114233 114216 114240 114335 114255 114408 114201 114349 1153068 1129310 1115538 1147840 1144756 1133572 1149064 1142762 1138866 1153936 6502330 18272568 29867138 46915044 58095467 17509369 50103092 82040316 129413710 160598156

65 29 69 22 95 41 12 25 9 24 74 55 93 92 11 11 56 46 34 151 624 128 316 870 356 250 306 0 642 598 466 0 1442 1311 423 2200 2931 5452 1630 2057

209.9 262.3 201.4 200.5 273.3 168.2 167.5 256.4 139.8 204.9 237.8 249.5 279.9 248.5 117.5 225.4 217.5 170.0 243.2 270.7 3677.3 1855.3 3281.9 2547.9 1800.3 2173.5 1512.6 2467.7 2944.7 2024.6 1487.5 1321.6 2214.7 2243.9 1521.6 3564.9 4807.8 8242.3 5076.9 4433.9

48 0 19 70 87 30 0 0 16 7 42 95 22 117 1 42 0 0 0 65 96 88 332 436 0 0 116 96 54 278 273 0 328 254 0 1002 1499 1914 1513 1191

150.6 168.9 110.8 188.1 184.1 99.3 56.3 163.3 78.5 139.3 145.1 143.3 168.1 194.3 62.9 215.4 170.0 57.1 124.6 159.4 1911.9 1034.3 1503.7 1521.1 749.4 1283.5 775.5 862.5 837.1 1069.4 909.8 924.2 963.5 1068.5 663.0 1971.3 2640.0 3694.4 2965.9 2278.3

48 0 5 58 99 9 0 0 16 35 59 88 42 64 6 35 18 2 0 45 42 1096 34 910 674 964 76 588 658 448 136 0 820 426 278 1154 549 2156 1696 1289

101.6 69.9 117.8 141.9 194.7 96.2 71.3 193.6 80.4 121.4 139.6 156.0 167.4 202.8 80.5 167.9 144.5 117.4 144.4 187.2 1960.3 1958.5 2647.9 1937.1 1655.9 1807.6 1338.7 1421.5 1020.6 1808.7 714.7 991.1 1166.1 2482.2 1353.3 2545.8 2532.7 6007.1 3874.8 2128.9

5 0 0 0 51 0 0 0 0 0 3 15 6 0 0 0 6 2 0 0 0 154 0 0 0 80 44 22 6 94 96 140 0 130 0 191 547 704 858 579

60.7 89.9 99.0 79.9 134.5 40.2 18.2 159.1 71.0 56.2 69.9 84.9 85.3 81.0 22.0 36.5 57.1 22.8 35.9 95.4 369.2 454.5 290.4 461.7 286.1 218.0 264.6 146.5 206.3 305.3 294.1 387.0 304.3 317.1 370.4 571.0 913.8 1458.5 1275.2 1017.9

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 21 176 279 136

8.1 8.8 15.2 15.7 42.1 10.8 0.0 20.9 7.6 9.3 17.8 26.8 3.6 3.4 1.2 8.6 6.5 0.7 3.4 24.1 72.1 143.7 184.5 152.3 10.5 80.5 45.0 1.7 3.7 0.0 76.7 146.1 527.9 399.5 210.7 165.1 475.5 1419.0 800.9 411.9

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

5.2 0.1 15.2 11.2 41.5 10.2 0.2 18.9 4.4 8.1 16.7 23.7 2.0 2.4 1.6 5.7 5.2 0.5 2.0 23.0 0.0 37.9 0.4 65.8 5.3 0.0 14.1 1.5 1.3 0.0 24.4 0.0 0.0 1.2 0.0 128.2 22.8 209.3 97.8 102.9

1

0

5

0

2.5

0

9.5

0

18

2

The fprev values were compiled from the results reported by the reference methods [38], [8], [30], [51], [53]. The results of MAMDP are those we obtained by running its program on our computer, which are slightly different from the results reported in [53] due to the stochastic nature of the algorithm.

parametric constrained neighborhood, the rank-based qualityand-distance pool management and the benefit of OBL for population diversity.

A. Study of the Parametric Constrained Neighborhood Our tabu search procedure relies on the parametric constrained neighborhood whose size is controlled by the parameter ρ. To highlight the effect of this parameter and determine a proper value, we ran the tabu search procedure to solve the first 10 instances of MDG-a (i.e., MDG-a 21 ∼ MDG-a 30) with ρ ∈ [1, 10]. Each instance was independently solved until the number of iterations reached M axIter. Figure 1 shows the average objective values achieved (left) and the average CPU times consumed (right) by tabu search on these 10 instances.

As we see from Figure 1 (left), the average objective value has a drastic rise when we increase ρ from 1 to 3. Then, it slowly increases if we continue to increase ρ to 10. On Figure 1 (right), the average CPU time of tabu search needed to finish M axIter iterations continuously increases when ρ increases from 1 to 10. As ρ increases, the size of the constrained neighborhood also increases, thus the algorithm needs more time to examine the candidate solutions. To make a compromise between neighborhood size and solution quality, we set the scale coefficient ρ to 4 in our experiments. B. Effectiveness of the Pool Updating Strategy To validate the effectiveness of the rank-based quality-anddistance (RBQD) pool updating strategy, we compare it with the general quality-and-distance (GQD) pool updating strategy

12

TABLE X C OMPARISON OF OBMA WITH MAMDP [53] ON THE DATA SETS MDG- B AND MDG- C , THE BEST- KNOWN RESULTS ARE OBTAINED BY G SS [17], ITS AND VNS [35].

MAMDP [53]

21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

MAMDP [53]

fprev

∆fbest

∆favg

∆fbest

∆favg

Instance

11299895 11286776 11299941 11290874 11296067 11292296 11305677 11279916 11297188 11296415 11288901 11279820 11296298 11281245 11307424 11289469 11290545 11288571 11295054 11307105

0 -5622 0 -245 -1960 -6134 0 -2994 -151 -1650 0 -3719 -1740 -9238 0 -13423 -5229 -7965 0 -2058

225.8 -3472.1 0.5 226.0 -1888.9 -2530.6 0.2 -2634.6 451.8 -1649.6 375.7 -3632.3 -878.7 -8191.3 -0.1 -10792.5 -4372.1 -5896.0 472.4 -517.5

0 -5622 0 -245 -1960 -6134 0 -2995 -151 -1650 0 -3719 -1740 -9238 0 -13423 -5229 -7965 0 -2058

0.2 -5622.2 0.5 -220.5 -1959.9 -6134.4 0.2 -2994.7 -151.5 -1649.6 -0.2 -3694.3 -1675.0 -9237.6 -0.1 -13423.0 -5228.8 -7964.5 -0.2 -2057.6

MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c MDG-c

9.5

2

10.5

18

Instance MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b MDG-b

OBMA

wins

wins

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

OBMA

fprev

∆fbest

∆favg

∆fbest

∆favg

24924685 24909199 24900820 24904964 24899703 43465087 43477267 43458007 43448137 43476251 67009114 67021888 67024373 67024804 67056334 95637733 95645826 95629207 95633549 95643586

-1659 0 -4398 -4746 3999 20139 0 -4568 237 10690 -12018 7718 0 -5386 0 -1196 74713 97066 34385 59104

3481.7 4938.7 5206.1 -411.2 7500.3 25023.7 1020.8 -1329.9 1207.3 11060.9 -6942.7 17470.0 6673.1 -1050.9 3716.2 1495.2 79061.1 106806.6 36189.1 61961.2

-1659 -3347 -4398 -4746 3999 20139 0 -7565 0 10690 -12018 7718 0 -5386 0 -1196 74713 97066 34385 59104

-1262.4 -3346.3 -2805.2 -3917.2 4047.3 21054.5 126.9 -7546.7 0.0 10690.0 -11776.3 10179.7 839.4 -5118.7 1021.2 -1116.3 74981.7 99767.0 35121.3 59133.2

8.5

0

11.5

20

The fprev values for the MDG-b instances are reported by G SS [17], while the fprev values for the MDG-c instances are from [35] with a time limit of 2 hours, all available at http://www.optsicom.es/mdp/. The results of MAMDP were obtained by running the program on our computer (results of MAMDP for these instances are not reported in [53]).

114250

(tbest ), and the success rate (#succ). Table XI shows the comparison of the results obtained by OBMA under the rank-based quality-and-distance strategy (OBMARBQD ) and the general quality-and-distance strategy (OBMAGQD ). From the table, we observe that OBMARBQD achieves the same best objective values for all tested instances compared with OBMAGQD . However, for the five metrics, OBMARBQD performs better than OBMAGQD for much more instances, and respectively winning 8, 8, 6, 6 and 8 out of 10 tested instances. These results confirm the effectiveness of our proposed rank-based quality-and-distance pool updating strategy.

4.5

4

average cpu time on 10 instances (in seconds)

average objective on 10 instances

114050

113850

113650

113450

3.5

3

2.5

2

1.5

1

0.5

113250

0 1

2

3

4 5 6 7 scale coefficient

8

9

10

1

2

3

4 5 6 7 scale coefficient

8

9

10

Fig. 1. Average objective values and average CPU times spent on 10 MDGa instances obtained by executing TS with different values of the scale coefficient ρ.

used in [53]. GQD evaluates each individual by a weighted sum of the quality and the distance to the population. In this experiment, we compared the performance of the OBMA algorithm under these two pool updating strategies (the two OBMA variants are called OBMARBQD and OBMAGQD ). The experiment was performed on the largest data set, i.e., p3000 and p5000. We performed 20 runs of each algorithm to solve each instance, and recorded the best objective value (fbest ), the difference between the average objective value and the best objective value (∆favg ), the standard deviation of objective value over each run (σ), the average time of one run (tavg ), the average time over the runs which attained fbest

C. Opposition-based Learning over Population Diversity In this section, we further verify the benefit brought by OBL in maintaining the population diversity of the OBMA algorithm. To assess the diversity of a population, a suitable metric is necessary. In this experiment, we resort to minimum distance and average distance of individuals in the population to measure the population diversity. The minimum distance is defined as the minimum distance between any two individuals in the population, i.e., M D = mini6=j∈{1,2,...,p} D(S i , S j ). Correspondingly, the AD is the average distance between all individuals in the population, as defined by Equation (10). Using the data sets MDG-a and b2500, we compared the diversity of the population with or without OBL. The population initialization (P I0 ) procedure without OBL first generates two random solutions, which are then respectively improved by the tabu search procedure. The best of two improved solutions is inserted into the population if it does not duplicate any existing

13

TABLE XI C OMPARISON OF THE RESULTS OBTAINED BY OBMA UNDER THE RANK - BASED QUALITY- AND - DISTANCE POOL UPDATING STRATEGY (OBMARBQD ) AND THE GENERAL QUALITY- AND - DISTANCE (GQD) POOL UPDATING STRATEGY (OBMA GQD ).

OBMARBQD

p3000 p3000 p3000 p3000 p3000 p5000 p5000 p5000 p5000 p5000

1 2 3 4 5 1 2 3 4 5

OBMAGQD

fbest

∆favg

σ

tavg

tbest

#succ

fbest

∆favg

σ

tavg

tbest

#succ

6502330 18272568 29867138 46915044 58095467 17509369 50103071 82040316 129413710 160598156

-23.0 0.0 0.0 0.0 0.0 -13.8 -23.4 -305.8 -116.4 -161.8

35.3 0.0 0.0 0.0 0.0 60.4 4.8 304.2 143.9 99.4

176.9 75.8 37.7 113.7 22.9 621.9 561.1 791.1 756.5 511.7

118.8 75.8 37.7 113.7 22.9 624.3 594.3 527.5 802.8 471.6

14/20 20/20 20/20 20/20 20/20 19/20 16/20 01/20 12/20 02/20

6502330 18272568 29867138 46915044 58095467 17509369 50103071 82040316 129413710 160598156

-27.3 -10.5 0.0 -0.9 0.0 -27.8 -26.4 -241.0 -174.3 -182.6

37.4 45.8 0.0 3.9 0.0 83.1 6.0 176.8 176.2 112.7

158.3 54.7 55.4 147.5 92.8 674.3 584.3 642.2 662.5 745.5

81.4 57.1 55.4 146.4 92.8 646.1 464.0 718.4 705.2 1081.3

13/20 19/20 20/20 19/20 20/20 17/20 11/20 01/20 09/20 02/20

5

8

8

6

6

8

5

2

2

4

4

2

Instance

wins

individual in the population. We repeat this process until p different solutions are generated. In contrast, the population initialization with OBL (P IOBL ) is the procedure described in Section III-C, which considers both a random solution and its corresponding opposite solution. We solved each instance 20 times and recorded the minimum distance and average distance of each population initialization procedure on each instance. The comparative results of the population constructed with or without OBL are shown in Figure 2, where the X-axis shows the instances in each benchmark and Y-axis indicates the average distance and minimum distance. MDG-a

MDG-a 0.5 with OBL without OBL

0.8

with OBL without OBL

0.7

minimum distance

average distance

0.4

0.6

0.5

0.3

0.2

0.1 0.4 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

b2500

b2500

0.26 with OBL without OBL

with OBL without OBL

0.14

0.24 0.22

minimum distance

average distance

0.12

0.2 0.18

0.1 0.08 0.06 0.04

0.16

0.02 0.14 0 1

2

3

4

5

6

7

8

9

10

1

2

3

4

5

6

7

8

9

10

Fig. 2. Comparative results of the populations built by population initialization with OBL (P IOBL ) or without OBL (P I0 ).

From Figure 2, we observe that the population built by P IOBL has a relatively larger average distance and minimum distance. This is particularly true for all instances of the MDG-a data set except for MDG-a 31. Also, the population produced by P IOBL has a larger minimum distance than that of P I0 for 18 out of 20 instances of the MDG-a data set. Equal or better results are found for the b2500 data set, since the population generated by P IOBL dominates the population produced by P I0 in terms of the average and minimum distances. This experiment shows that OBL helps the OBMA

algorithm to start its search with a population of high diversity, which is maintained by the rank-based quality-and-distance strategy during the search. VI. C ONCLUSIONS AND FUTURE WORK We have proposed an opposition-based memetic algorithm (OBMA) which uses opposition-based learning to improve a memetic algorithm for solving MDP. The OBMA algorithm employs OBL to reinforce population diversity and improve evolutionary search. OBMA distinguishes itself from existing memetic algorithms by three aspects: a double trajectory search procedure which simultaneously both a candidate solution and a corresponding opposite solution, a parametric constrained neighborhood for effective local optimization, and a rank-based quality-and-distance pool updating strategy. Extensive comparative experiments on 80 large benchmark instances (with 2000 to 5000 items) from the literature have demonstrated the competitiveness of the OBMA algorithm. OBMA matches the best-known results for most of instances and in particular finds improved best results (new lower bounds) for 22 instances which are useful for the assessment of other MDP algorithms. Our experimental analysis has also confirmed that integrating OBL into the memetic search framework does improve the search efficiency of the classical memetic search. As future work, several potential research lines can be followed. First, to further improve OBMA, it is worth studying alternative strategies for tuning tabu tenure, generating initial solutions, and managing population diversity. Second, it would be interesting to study the behavior of the OBMA algorithm on much larger instances (e.g., with tens of thousands items) and investigate whether techniques developed for large scale continuous optimization ([37], [43]) could be helpful in this setting. Third, OBL being a general technique, it is worth studying its usefulness within other heuristic algorithms. Finally, it would be interesting to investigate the oppositionbased optimization approach for solving additional combinatorial problems including those with other diversity and dispersion criteria.

14

ACKNOWLEDGMENT We are grateful to the anonymous referees for their insightful comments and suggestions which helped us to significantly improve the paper. We would like to thank Dr. Qinghua Wu for kindly sharing the source code of the MAMDP algorithm described in [53]. Support for Yangming Zhou from the China Scholarship Council (2014-2018) is also acknowledged. R EFERENCES [1] F. S. Al-Qunaieer, H. R. Tizhoosh, S. Rahnamayan, “Opposition based computing - A survey,” in: Proceedings of International Joint Conference on Neural Networks (IJCNN-2010), pp. 1–7, 2010. [2] R. Aringhieri, R. Cordone, Y. Melzani, “Tabu search versus GRASP for the maximum diversity problem,” A Quarterly Journal of Operations Research, vol. 6, no. 1, pp. 45–60, 2008. [3] R. Aringhieri, M. Bruglieri, R. Cordone, “Optimal results and tight bounds for the maximum diversity problem,” Foundation of Computing and Decision Sciences, vol. 34, no. 2, pp. 73–85, 2009. [4] R. Aringhieri, R. Cordone, “Comparing local search metaheuristics for the maximum diversity problem,” Journal of the Operational Research Society, vol. 62, no. 2, pp. 266–280, 2011. [5] M. Aziz, M.-H. Tayarani-N., “Opposition-based magnetic optimization algorithm with parameter adaptation strategy,” Swarm and Evolutionary Computation, vol. 26, pp. 97–119, 2016. [6] R. Bellio, L. Di Gaspero, A. Schaerf, “Design and statistical analysis of a hybrid local search algorithm for course timetabling,” Journal of Scheduling, vol. 15, no. 1, pp. 49–61, 2012. [7] U. Benlic, J.K. Hao, “A multilevel memetic approach for improving graph k-partitions,” IEEE Transactions Evolutionary Computation, vol. 15, no. 5, pp. 624–642, 2011. [8] J. Brimberg, N. Mladenovi´c, D. Uroˇsevi´c, E. Ngai, “Variable neighborhood search for the heaviest k-subgraph,” Computers & Operations Research, vol. 36, no. 11, pp. 2885–2891, 2009. [9] X. Chen, Y. Ong, M. Lim, K. C. Tan, “A multi-facet survey on memetic computation,” IEEE Transactions Evolutionary Computation, vol. 15, no. 5, pp. 591–607, 2011. [10] Y. Chen, J.K. Hao, “Memetic search for the generalized quadratic multiple knapsack problem,” IEEE Transactions on Evolutionary Computation, vol. 20 PP, no. 6, pp. 908–923, 2016. [11] A. R. R. de Freitas, F. G. Guimar˜aes, R. C. P. Silva, M. J. F. Souza, “Memetic self-adaptive evolution strategies applied to the maximum diversity problem,” Optimization Letters, vol. 8, no. 2, pp. 705–714, 2014. [12] J. Demˇsar, “Statistical comparisons of classifiers over multiple data sets,” Journal of Machine Learning Research, vol. 7, pp. 1–30, 2006. [13] A. Duarte, R. Mart´ı, “Tabu search and GRASP for the maximum diversity problem,” European Journal of Operational Research, vol. 178, no. 1, pp. 71–84, 2007. [14] M. Ergezer, D. Simon, “Oppositional biogeography-based optimization for combinatorial problems,” in: Proceedings of Congress on Evolutionary Computation (CEC-2011), pp. 1496–1503, 2011. [15] U. Feige, D. Peleg, G. Kortsarz, “The dense k-subgraph problem,” Algorithmica, vol. 29, no. 3, pp. 410–421, 2001. [16] P. Galinier, Z. Boujbel, M. C. Fernandes, “An efficient memetic algorithm for the graph partitioning problem,” Annals of Operations Research, vol. 191, no. 1, pp. 1–22, 2011. [17] M. Gallego, A. Duarte, M. Laguna, R. Mart´ı, “Hybrid heuristics for the maximum diversity problem,” Computational Optimization and Applications, vol. 44, no. 3, pp. 411–426, 2009. [18] J. B. Ghosh, “Computational aspects of the maximum diversity problem,” Operations Research Letters, vol. 19, no. 4, pp. 175–181, 1996. [19] F. Glover, E. Taillard and D. de Werra, “A Users Guide to Tabu Search,” Annals of Operations Research, vol. 41, pp. 12–37, 1993. [20] F. Glover, M. Laguna, “Tabu search,” Kluwer Academic Publishers, Norwell, MA, USA, 1997. [21] F. Glover, “A Template for Scatter Search and Path Relinking,” in Artificial Evolution, Lecture Notes in Computer Science, 1363, J.K. Hao, E. Lutton, E. Ronald, M. Schoenauer and D. Snyers, Eds. Springer, pp. 13–54, 1997. [22] F. Glover, C.-C. Kuo, K. S. Dhir, “Heuristic algorithms for the maximum diversity problem,” Journal of Information and Optimization Sciences, vol. 19, no. 1, pp. 109–132, 1998.

[23] D. Gusfield, “Partition-distance: A problem and class of perfect graphs arising in clustering,” Information Processing Letters, vol. 82, no. 3, pp. 159–164, 2002. [24] J.K. Hao, “Memetic algorithms in discrete optimization,” in: F. Neri, C. Cotta, P. Moscato (Eds.), Handbook of Memetic Algorithms, Studies in Computational Intelligence 379, Chapter 6, pp. 73–94, 2012, Springer. [25] Y. Jin, “Surrogate-assisted evolutionary computation: Recent advances and future challenges,” Swarm and Evolutionary Computation, vol 1, no. 2, pp. 61–70, 2011. [26] L. Kotthoff, I. P. Gent, I. Miguel, “An evaluation of machine learning in algorithm selection for search problems,” AI Communications, vol. 25, no. 3, pp. 257–270, 2012. [27] N. Krasnogor, J. Smith, “A tutorial for competent memetic algorithms: model, taxonomy, and design issues,” IEEE Transactions Evolutionary Computation, vol. 9, no. 5, pp. 474–488, 2005. [28] C. C. Kuo, F. Glover, K. S. Dhir, “Analyzing and modeling the maximum diversity problem by zero-one programming,” Decision Sciences, vol. 24, no. 6, pp. 1171–1185, 1993. [29] K. Leyton-Brown, H. H. Hoos, F. Hutter, L. Xu, “Understanding the empirical hardness of NP-complete problems,” Communications of the ACM, vol. 57, no. 5, pp. 98–107, 2014. [30] M. Lozano, D. Molina, C. Garc´ıa-Mart´ınez, “Iterated greedy for the maximum diversity problem,” European Journal of Operational Research, vol. 214, no. 1, pp. 31–38, 2011. [31] Z. L¨u, J.K. Hao, “A memetic algorithm for graph coloring,” European Journal of Operational Research, vol. 203, no. 1, pp. 241–250, 2010. [32] E. M. Macambira, C. C. De Souza, “The edge-weighted clique problem: valid inequalities, facets and polyhedral computations,” European Journal of Operational Research, vol. 123, no. 2, pp. 346–371, 2000. [33] E. M. Macambira, “An application of tabu search heuristic for the maximum edge-weighted subgraph problem,” Annals of Operations Research, vol. 117, no. 1-4, pp. 175–190, 2002. [34] R. Mart´ı, M. Gallego, A. Duarte, “A branch and bound algorithm for the maximum diversity problem,” European Journal of Operational Research, vol. 200, no. 1, pp. 36–44, 2010. [35] R. Mart´ı, M. Gallego, A. Duarte, E. G. Pardo, “Heuristics and metaheuristics for the maximum diversity problem,” Journal of Heuristics, vol. 19, no. 4, pp. 591–615, 2013. [36] P. Moscato, “Memetic algorithms: A short introduction,” in: New Ideas in Optimization, McGraw-Hill Ltd., UK, pp. 219–234, 1999. [37] M. N. Omidvar ,X. Li, Y. Mei, X. Yao, “Cooperative co-evolution with differential grouping for large scale optimization,” IEEE Transactions on Evolutionary Computation, vol. 18, no. 3, pp. 378–393, 2014. [38] G. Palubeckis, “Iterated tabu search for the maximum diversity problem,” Applied Mathematics and Computation, vol. 189, no. 1, pp. 371– 383, 2007. [39] O. A. Prokopyev, N. Kong, D. L. Martinez-Torres, “The equitable dispersion problem,” European Journal of Operational Research, vol. 197, no. 1, pp. 59–67, 2009. [40] S. Rahnamayan, H. R. Tizhoosh, M. Salama, “Opposition-based differential evolution,” IEEE Transactions Evolutionary Computation, vol. 12, no. 1, pp. 64–79, 2008. [41] S. Rahnamayan, H. R. Tizhoosh, M. M. Salama, “Opposition versus randomness in soft computing techniques,” Applied Soft Computing, vol. 8, no. 2, pp. 906–918, 2008. [42] S. Rahnamayan, G. G. Wang, M. Ventresca, “An intuitive distance-based explanation of opposition-based sampling,” Applied Soft Computing, vol. 12, no. 9, pp. 2828–2839, 2012. [43] C. Ran, Y. Jin, “A competitive swarm optimizer for large scale optimization,” IEEE Transactions on Cybernetics, vol. 45, no. 2, pp. 191–204, 2015. [44] B. Rangaswamy, A.S. Jain and F. Glover, “Tabu search candidate list strategies in scheduling,” in Advances in Computational and Stochastic Optimization, Logic Programming, and Heuristic Search, Interfaces in Computer Science and Operations Research, D. L. Woodruff, Ed., Kluwer Academic Publishers, pp. 215–233, 1998. [45] M. Raschip, C. Croitoru, K. Stoffel, “Using association rules to guide evolutionary search in solving constraint satisfaction,” in: Proceedings of Congress on Evolutionary Computation (CEC-2015), pp. 744–750, 2015. [46] S. S. Ravi, D. J. Rosenkrantz, G. K. Tayi, “Heuristic and special case algorithms for dispersion problems,” Operations Research, vol. 42, no. 2, pp. 299–310, 1994. [47] L. Santos, M. H. Ribeiro, A. Plastino, S. L. Martins, “A hybrid GRASP with data mining for the maximum diversity problem,” in: Hybrid Metaheuristics, Springer, pp. 116–127, 2005.

15

[48] K. S¨orensen, M. Sevaux, “MA|PM: memetic algorithms with population management,” Computers & Operations Research, vol. 33, no. 5, pp. 1214–1225, 2006. [49] H. R. Tizhoosh, “Opposition-based learning: A new scheme for machine intelligence,” in: Proceedings of International Conference on Computational Intelligence for Modelling, Control and Automation, and International Conference on Intelligent Agents, Web Technologies and Internet Commerce (CIMCA/IAWTIC-2005), pp. 695–701, 2005. [50] M. Ventresca, H. R. Tizhoosh, “A diversity maintaining population-based incremental learning algorithm,” Information Sciences, vol. 178, no. 21, pp. 4038–4056, 2008. [51] J. Wang, Y. Zhou, Y. Cai, J. Yin, “Learnable tabu search guided by estimation of distribution for maximum diversity problems,” Soft Computing, vol. 16, no. 4, pp. 711–728, 2012. [52] Y. Wang, J.K. Hao, F. Glover, Z. L¨u, “A tabu search based memetic algorithm for the maximum diversity problem,” Engineering Applications of Artificial Intelligence, vol. 27, pp. 103–114, 2014. [53] Q. Wu, J.K. Hao, “A hybrid metaheuristic method for the maximum diversity problem,” European Journal of Operational Research, vol. 231, no. 2, pp. 452–464, 2013. [54] Q. Xu, L. Wang, N. Wang, X. Hei, L. Zhao, “A review of oppositionbased learning from 2005 to 2012,” Engineering Applications of Artificial Intelligence, vol. 29, pp. 1–12, 2014. [55] Y. Zhou, J.K. Hao, B. Duval, “Reinforcement learning based local search for grouping problems: A case study on graph coloring,” Expert Systems with Applications, vol. 64, pp. 412–422, 2016.