Isomorphism Testing via Polynomial-Time Graph Extensions
- 101 Downloads
This paper deals with algorithms for detecting graph isomorphism (GI) properties. The GI literature consists of numerous research directions, from highly theoretical studies (e.g. defining the GI complexity class) to very practical applications (pattern recognition, image processing). We first present the context of our work and provide a brief overview of various algorithms developed in such disparate contexts. Compared to well-known NP-complete problems, GI is only rarely tackled with general-purpose combinatorial optimization techniques; however, classical search algorithms are commonly applied to graph matching (GM). We show that, by specifically focusing on exploiting isomorphism properties, classical GM heuristics can become very useful for GI. We introduce a polynomial graph extension procedure that provides a graph coloring (labeling) capable of rapidly guiding a simple-but-effective heuristic toward the solution. The resulting algorithm (GI-Ext) is quite simple, very fast and practical: it solves GI within a time in the region of O(|V|3) for numerous graph classes, including difficult (dense and regular) graphs with up to 20.000 vertices and 200.000.000 edges. GI-Ext can compete with recent state-of-the-art GI algorithms based on well-established GI techniques (e.g. canonical labeling) refined over the last three decades. In addition, GI-Ext also solves certain GM problems, e.g. it detects important isomorphic structures induced in non-isomorphic graphs.
KeywordsGraph isomorphism Polynomial extension GI-Ext
Unable to display preview. Download preview PDF.
- 3.Babai, L., Grigoryev, D.Y., Mount, D.M.: Isomorphism of graphs with bounded eigenvalue multiplicity. In: Fourteenth Annual ACM Symposium on Theory of Computing, pp. 310–7324 (1982)Google Scholar
- 8.Bunke, H.: Recent developments in graph matching. In: Proc. 15th International Conference on Pattern Recognition, vol. 2, pp. 117–124 (2000)Google Scholar
- 17.Filotti, I.S., Mayer, J.N.: A polynomial-time algorithm for determining the isomorphism of graphs of fixed genus. In: STOC ’80: Proceedings of the Twelfth Annual ACM Symposium on Theory of Computing, pp. 236–243. ACM (1980)Google Scholar
- 18.Fortin, S.: The graph isomorphism problem. Technical Report TR96–20, University of Alberta, Edmonton, Canada (1996)Google Scholar
- 22.Junttila, T., Kaski, P.: Engineering an efficient canonical labeling tool for large and sparse graphs. In: Applegate, D., et al. (eds.) Proceedings of the Ninth Workshop on Algorithm Engineering and Experiments and the Fourth Workshop on Analytic Algorithms and Combinatorics, pp. 135–149. SIAM (2007)Google Scholar
- 26.López-Presa, J.L., Fernández Anta, A.: Fast algorithm for graph isomorphism testing. In: SEA. LNCS, vol. 5526, pp. 221–232 (2009)Google Scholar
- 32.Sammoud, O., Solnon, C., Ghédira, K.: Ant algorithm for the graph matching problem. In: Raidl, G.R., et al. (eds.) Evocop. LNCS, vol. 3448, pp. 213–223. Springer (2005)Google Scholar