Learning the Neighborhood with the Linkage Tree Genetic Algorithm

We discuss the use of online learning of the local search neighborhood. Specifically, we consider the Linkage Tree Genetic Algorithm (LTGA), a population-based, stochastic local search algorithm that learns the neighborhood by identifying the problem variables that have a high mutual information in a population of good solutions. The LTGA builds each generation a linkage tree using a hierarchical clustering algorithm. This bottom-up hierarchical clustering is computationally very efficient and runs in O(n2). Each node in the tree represents a specific cluster of problem variables. When generating new solutions, these linked variables specify the neighborhood where the LTGA searches for better solutions by sampling values for these problem variables from the current population. To demonstrate the use of learning the neighborhood we experimentally compare iterated local search (ILS) with the LTGA on a hard discrete problem, the nearest-neighbor NK-landscape problem with maximal overlap. Results show that the LTGA is significantly superior to the ILS, proving that learning the neighborhood during the search can lead to a considerable gain in search performance.