Intelligent neighborhood exploration in local search heuristics Isabelle Devarenne, Hakim Mabed, and Alexandre Caminada UTBM, University of Technology Belfort-Montbéliard SET Lab, 90010 BELFORT cedex, France {isabelle.devarenne, hakim.mabed, alexandre.caminada}@utbm.fr Abstract Standard tabu search methods are based on the complete exploration of current solution neighborhood. However, for some problems with very large neighborhood or time-consuming evaluation, the total exploration of the neighborhood is impractical. In this paper, we present an adaptive exploration of neighborhood using extension and restriction mechanisms represented by a loop detection mechanism and a tabu list structure. This approach is applied to the K-coloring problem and evaluated on standard benchmarks like DIMACS in comparison with more powerful recently published algorithms. 1. Introduction Local search algorithms [2][6][9][10] have proven their efficiency for numerous optimization problems. These search algorithms are based on iterative modification of a single solution. According to transition mechanism, we distinguish two kinds of algorithms: methods based on partial neighborhood exploration as most local search procedures [11][12], and methods based on total neighborhood exploration as basic Tabu Search [6]. For many problems it is not possible to completely explore the neighborhood of the current solution, generally, due to the neighborhood size or to the fitness evaluation complexity. In this case the main difficulty is to define rules which give a good rotation of diversification and intensification phases. In this paper we present an adaptive Local Search method based on a partial exploration of the neighborhood. To illustrate it we work on K-coloring problem. The neighborhood exploration is based on two mechanisms: loop detection and tabu list. The term adaptive refers to the capacity of the method to modify its behavior using former information found during search. Behavior changes appear through the dynamic extension and restriction of explored neighborhood. We emphasize here that in our system a loop means that several occurrences of the same moves appear during the search, and it does not mean that identical sequences of moves occur. The K-coloring problem constitutes a good framework to reveal the efficiency of the method. Optimization community largely studies this problem and numerical results on well-known benchmarks abound in literature. It can be stated informally as follows: given an undirected graph, the objective is to color the nodes of the graph with K colors in such a way that colors assigned to any couple of neighbor nodes are different. K-coloring has many practical applications in resource management. Knowing the NP-completeness of the K-coloring problem, heuristic methods are good candidates to deal with. Many heuristic methods have been yet developed such as constructive methods (DSATUR [1]), tabu search [6], reactive search [13] and evolutionary approach [7][8]. Also new local search based on adaptive extension and restriction of neighborhood such as Variable Neighborhood Search (VNS) [11] and Iterated Local search (ILS) [12][3] are recently proposed. The paper is structured as follows. In section 2 we give a formal description of the K-coloring. Then loop detection and tabu list mechanisms will be described in section 3 and 4 respectively. And analysis of numerical results on DIMACS problems is presented and compared to the best published performance in section 5. Future work and perspectives are presented in the last section. 2. Basic local search method for K-coloring problem Given an undirected graph G = (V, E) with V = {v 1 ,...,v N } the set of vertices and E={e ij | an edge between v i and v j } the set of edges, the K-coloring problem consists in minimizing the number of conflicts produced by the use of the same color on two adjacent nodes using only K available colors. The coloring constraints are represented by the following expression: e ij E, c i c j where, c i [1..K] is the color assigned to the node v i . Let S be the set of