Combining Ant Colony Optimization with Dynamic Programming for Solving the k-Cardinality Tree Problem

Research efforts in metaheuristics have shown that an intelligent incorporation of more classical optimization techniques in metaheuristics can be very beneficial. In this paper, we combine the metaheuristic ant colony optimization with dynamic programming for the application to the NP – hard k-cardinality tree problem. Given an undirected graph G with node and/or edge weights, the problem consists of finding a tree in G with exactly k edges such that the sum of the weights is minimal. In a standard ant colony optimization algorithm, ants construct trees with exactly k edges. In our algorithm, ants may construct trees that have more than k edges, in which case we use a recent dynamic programming algorithm to find—in polynomial time—the best k-cardinality tree embedded in the bigger tree constructed by the ants. We show that our hybrid algorithm improves over the standard ant colony optimization algorithm and, for node-weighted grid graph instances, is a current state-of-the-art method.

[1]  Matthias Ehrgott,et al.  OR software - ORSEP operations research software exchange program Edited by Professor H.W. Hamacher K_TREE/K_SUBGRAPH: A program package for minimal weighted K-cardinality trees and subgraphs , 1996 .

[2]  Nenad Mladenović,et al.  Variable Neighborhood Search for the Vertex Weighted k -Cardinality Tree , 2004 .

[3]  Fatos Xhafa,et al.  A C++ Implementation of of Tabu Search for k-cardinality tree problem based on generic programming and component reuse , 2000 .

[4]  Akhil Kumar,et al.  Efficient quorumcast routing algorithms , 1994, Proceedings of INFOCOM '94 Conference on Computer Communications.

[5]  Marco Dorigo,et al.  Ant system: optimization by a colony of cooperating agents , 1996, IEEE Trans. Syst. Man Cybern. Part B.

[6]  M. Ehrgott,et al.  Heuristics for the K-Cardinality Tree and Subgraph Problems , 1996 .

[7]  Christian Blum,et al.  Revisiting dynamic programming for finding optimal subtrees in trees , 2007, Eur. J. Oper. Res..

[8]  Marco Dorigo,et al.  Optimization, Learning and Natural Algorithms , 1992 .

[9]  F. Xhafa,et al.  A Memetic Algorithm for the Minimum Weighted k-Cardinality Tree Subgraph Problem , 2001 .

[10]  Ryuhei Uehara,et al.  The Number of Connected Components in Graphs and Its Applications , 2007 .

[11]  Christian Blum,et al.  Local Search Algorithms for the k-cardinality Tree Problem , 2003, Discret. Appl. Math..

[12]  Gnanasekaran Sundarraj,et al.  Ant System for the k-Cardinality Tree Problem , 2004, GECCO.

[13]  Christian Blum,et al.  New metaheuristic approaches for the edge-weighted k-cardinality tree problem , 2005, Comput. Oper. Res..

[14]  Riccardo Poli,et al.  Genetic and Evolutionary Computation – GECCO 2004 , 2004, Lecture Notes in Computer Science.

[15]  Matteo Fischetti,et al.  Weighted k-cardinality trees: Complexity and polyhedral structure , 1994, Networks.

[16]  Jack Brimberg,et al.  Variable neighborhood decomposition search for the edge weighted k-cardinality tree problem , 2004, Comput. Oper. Res..