2. Overview of Methods to solve Combinatorial Optimisation Problems
2.2 Overview of Metaheuristics
There is no unified definition of what is a metaheuristic among the research communities that work on them, like operations research, computer science and artificial intelligence. Metaheuristics were formerly known as modern heuristics. The new International Journal of Metaheuristics2 defines them as, and we cote, “In general, we consider a metaheuristic to be any algorithmic framework, nature inspired or otherwise, that defines a set of heuristic methods that can be directed towards a variety of different optimisation problems. In other words, metaheuristics represent "higher level" heuristic-based algorithms that can be applied to various individual problems with relatively few modifications needing to be made in each case.”
As stated before, we are especially interested in metaheuristics as methods that allow escaping from, or avoiding, the local optimum entrapment of a search process when solving a combinatorial optimisation problem. There are many different types of metaheuristics with different underlying philosophies. It is difficult either to group or classify them but it seems to be consensual to consider two main groups: those that avoid getting stuck on a local optimum, working with a population of solutions and performing a biased sampling of the solutions space; and the ones that escape from local optima, working with only one current solution at a time. Metaheuristics are often classified according to the methods adopted in order to escape or avoid local entrapment. Such methods include the use of pure randomness; the use of neighbourhood-modification processes; the inclusion of penalties or weights to modify the objective function; the use of a statistical model for the frequency of the characteristics of the solutions chosen, etc. Other ways of looking at metaheuristics are its memory usage - short and/or long-term memory -, or the balance between intensification and diversification processes, that is, the exhaustive search of a region around a good solution and the orientation of the search to a more distant and unexplored region.
2 http://www.inderscience.com/browse/index.php?journalCODE=ijmheur
2. Overview of Methods to solve Combinatorial Optimisation Problems
14
Next, we will briefly describe the most widely used metaheuristics. Metaheuristics are general methods that can be applied to different kind of problems with very little problem specific adaptations. They are very popular in finding good solutions to many optimisation problems from different research fields like artificial intelligence, computer science or combinatorial optimisation, among others. For more information on the state of the art of the field of metaheuristics please refer to surveys like “A survey of AI-based meta-heuristics for dealing with local optima in local search” (Mills, Tsang et al. 2004) and “Metaheuristics in Combinatorial Optimization: Overview and Conceptual Comparison” (Blum and Roli 2003), and their references.
2.2.1 Metaheuristics that work with One Solution
In the group of metaheuristics that work with only one current solution at a time there are those which escape local optima mainly by adding some form of randomness, like Simulated Annealing, Greedy Randomised Adaptive Search Procedure (GRASP) or Iterated Local Search; others perform some modification on the neighbourhood structure, like Variable Neighbourhood Search or Tabu Search; finally there are those which use penalties or weights to modify the objective function like Guided Local Search.
Simulated Annealing The simulated annealing procedure is not a constructive method so it needs an initial solution. It is a local search method that allows moves resulting in solutions of worse quality than the current one in order to escape local optima. The probability of accepting such a move, called the temperature, is decreased during the search. The method tries to mimic the annealing process of metals and glass.
Early references to simulated annealing trace back to (Metropolis, Rosenbluth et al.
1956), (Kirkpatrick, Gelatt et al. 1983), (Cerny 1985). A variation on simulated annealing is simulated jumping (Amin 1999). See (Van-Laarhoven, Aarts et al. 1992) for applications to the job shop scheduling.
GRASP The acronym GRASP (Feo and Resende 1995), (Resende and Ribeiro 2003) means “greedy randomised adaptive search procedure”. It is an iterative constructive process where each iteration consists of two steps: a randomised building step of a greedy nature and a local search step. At the building phase, a feasible solution
is constructed by joining one element at a time. Each element is evaluated by a heuristic function and incorporated (or not) in a restricted candidate list (RCL) according to its evaluation. The element to join the solution is chosen randomly from the RCL. After a new element is added, if the solution has already more then one element the algorithm proceeds with the local search step. The current solution is updated by the local optimum and this two-step process is repeated until the solution is complete. See (Binato, Hery et al. 2002) for an application to the job shop scheduling problem.
Iterated Local Search The iterated local search procedure (Stützle 1999), (Lourenço, Martin et al. 2002) applies local search to an initial solution until a local optimum x is reached. Then, it randomly perturbs the solution, usually called a kick move phase, and the local search re-starts. The new solution y is compared to the previous one (x) and an acceptance criteria decides which solution, x or y , is used to continue the procedure.
Tabu Search The tabu search method (Glover 1986), (Glover and Laguna 1997) keeps track of the most recently visited solutions maintaining a tabu list that stores some features of the solutions or of the moves that lead to them. During the search process, after a local optimum is reached, moves to solutions present in the tabu list are forbidden. The best of the solutions not in the tabu list is chosen, even if it is worse than the current one. Because the tabu list does not store the complete solutions, a tabu move can be performed if it satisfies some aspiration criteria, usually if it is best than the best solution found so far. See (Nowicki and Smutnicki 2005) for applications to job shop scheduling. There are several variations on tabu search like robust tabu search (Taillard 1991; Smyth, Hoos et al. 2003), iterated robust tabu search (Battiti and Tecchiolli 1994;
Smyth, Hoos et al. 2003) or reactive tabu search (Battiti and Tecchiolli 1994).
Variable Neighbourhood Search The variable neighbourhood search procedure (Hansen and Mladenovic 1997), (Mladenović and Hansen 1997),(Hansen and Mladenović 2001) uses several different neighbourhood structures. Given a solution the process looks for neighbours in a neighbourhood A . After a local optimum is achieved, the process changes to a different neighbourhood B , usually bigger than A . The method cycles through all the different neighbourhoods used; it stops when there is no improvement for any of them.
2. Overview of Methods to solve Combinatorial Optimisation Problems
16
Guided Local Search The guided local search procedure (Voudouris 1997), (Voudouris and Tsang 1999) dynamically changes the objective function of the problem being solved. After a local optimum is found, the objective function is changed so that penalties for the features of the local optimal solution are included, and so other neighbours become more attractive.
2.2.2 Metaheuristics that work with a Population of Solutions
In the group of metaheuristics that work with a population of solutions which avoid local entrapment by performing combinations and mutations of the solutions, some are strongly based in randomness, like Genetic Algorithms and Memetic Algorithms; others are based on the underlying search space like Scatter Search, and Path Relinking; and others, still, which are based on probability models like Ant Colony Optimisation or Estimation of Distribution Algorithms.
Genetic Algorithms The procedures designated genetic algorithms (Holland 1975) are inspired in natural evolution. They consider a set of initial solutions, called the initial population and perform a number of operations to the individuals of the population to generate new solutions. These operations include the combination of elements from different solutions (crossover), and the modification of some elements of one solution – mutation. The best evaluated individuals are chosen to constitute the next generation. Frequently, the elements of the solutions are represented by a binary code.
See (Yamada and Nakano 1992) for an application to the job shop problem.
Memetic Algorithms The procedures designated memetic algorithms (Moscato 1989), also known as genetic local search, try to mimic the “cultural evolution” by incorporating local search into a genetic algorithm framework. An initial population is generated and local search is applied to each solution. Crossover and mutation operators are used to generate new individuals and local search is applied again to the resulting solutions. The best ones, according to quality and diversity, are chosen to constitute the next generation.
Scatter Search The scatter search method (Cung, Mautor et al. 1997), (Glover 1999), (Glover, Laguna et al. 2000) generates new solutions by linear combination of two solutions chosen from a reference set. The combination of solutions can produce
infeasibility so there is usually a procedure to recover feasibility. Local search is performed to improve the new generated solutions. The reference set is updated with the best solutions generated while maintaining some level of diversity. See (Yamada and Nakano 1995) and (Jain and Meeran 1998) for applications to the job shop scheduling problem.
Path Relinking The path relinking method (Glover 1999) finds new solutions by generating paths between and beyond solutions of a reference set. It is analogous to scatter search, but replaces the linear combinations in the Euclidean space by paths in the neighbourhood space. While traversing paths starting from an initial solution, moves must progressively introduce attributes of a guiding solution. Path relinking is most commonly used as a component of other metaheuristics, like tabu search or GRASP.
See a GRASP with path relinking (Aiex, Binato et al. 2003) and a tabu search with path relinking (Nowicki and Smutnicki 2005) for applications to the job shop scheduling problem.
Ant Colony Optimisation The ant colony optimisation procedures (ACO) (Dorigo, Maniezzo et al. 1996) are inspired in the behaviour of real ants when walking between food sources and their nests. Ants deposit a pheromone in the walking path. Paths with stronger pheromone concentration are more frequently chosen by the ants. The ACO mimics the pheromone trails with a probabilistic model. The metaheuristic is a constructive procedure where solutions are constructed adding components one by one to a partial solution under consideration. Each artificial ant performs a randomised walk on a completely connected graph whose vertices are the components of the solutions and the arcs are the set of connections between them. Each vertex and each connection have associated probability values that are updated during the process according to the frequency of usage and the quality of the solutions built. See (Dorigo and Stützle 2002) for applications of the method.
Estimation of Distribution Algorithms The procedures designated estimation of distribution algorithms (Mühlenbein and Paaβ 1996) are based on populations of distribution functions that evolve as the search progresses. They use probabilistic modelling of the elements of good solutions to estimate a distribution over the search space. This distribution is used to produce the next generation of solutions. The distribution function is then updated. See (Pelikan, Goldberg et al. 1999) for a survey on these methods and (Larrañaga and Lozano 2002) for its applications.
2. Overview of Methods to solve Combinatorial Optimisation Problems
18