Abstract
The maximum common subgraph problem asks for the maximum size of a common subgraph of two given graphs. The problem is \(\mathsf{NP}\)-hard, but can be solved in polynomial time if both, the input graphs and the common subgraph are restricted to trees. Since the optimal solution of the maximum common subtree problem is not unique, the problem of enumerating all solutions, i.e., the isomorphisms between the two subtrees, is of interest. We present the first polynomial-delay algorithm for the problem of enumerating all maximum common subtree isomorphisms between a given pair of trees. Our approach is based on the algorithm of Edmonds for solving the maximum common subtree problem using a dynamic programming approach in combination with bipartite matching problems. As a side result, we obtain a polynomial-delay algorithm for enumerating all maximum weight matchings in a complete bipartite graph. We show how to extend the new approach in order to enumerate all solutions of the maximum weighted common subtree problem and to the maximal common subtree problem. Our experimental evaluation on both, randomly generated as well as real-world instances, demonstrates the practical usefulness of our algorithm.
This work was supported by the German Research Foundation (DFG), priority programme “Algorithms for Big Data” (SPP 1736).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Akutsu, T., Tamura, T.: A polynomial-time algorithm for computing the maximum common connected edge subgraph of outerplanar graphs of bounded degree. Algorithms 6(1), 119–135 (2013)
Bron, C., Kerbosch, J.: Algorithm 457: finding all cliques of an undirected graph. Commun. ACM 16, 575–577 (1973)
Cazals, F., Karande, C.: An algorithm for reporting maximal \(c\)-cliques. Theoretical Computer Science 349(3), 484–490 (2005)
Conte, D., Foggia, P., Sansone, C., Vento, M.: Thirty years of graph matching in pattern recognition. Int. J. Pattern. Recognit. Artif. Intell. 18(3), 265–298 (2004)
Cook, W.J., Cunningham, W.H., Pulleyblank, W.R., Schrijver, A.: Combinatorial Optimization. John Wiley & Sons Inc., New York (1998)
Droschinsky, A.: Effiziente Enumerationsalgorithmen für Common Subtree Probleme. Master’s thesis, Technische Universität Dortmund (2014)
Fukuda, K., Matsui, T.: Finding all minimum-cost perfect matchings in bipartite graphs. Networks 22(5), 461–468 (1992)
Johnson, D.S., Yannakakis, M., Papadimitriou, C.H.: On generating all maximal independent sets. Information Processing Letters 27(3), 119–123 (1988)
Kao, M.Y., Lam, T.W., Sung, W.K., Ting, H.F.: An even faster and more unifying algorithm for comparing trees via unbalanced bipartite matchings. J. Algorithms 40(2), 212–233 (2001)
Koch, I.: Enumerating all connected maximal common subgraphs in two graphs. Theoretical Computer Science 250(12), 1–30 (2001)
Kriege, N., Mutzel, P.: Finding maximum common biconnected subgraphs in series-parallel graphs. In: Csuhaj-Varjú, E., Dietzfelbinger, M., Ésik, Z. (eds.) MFCS 2014, Part II. LNCS, vol. 8635, pp. 505–516. Springer, Heidelberg (2014)
Kuhn, H.W.: The Hungarian method for the assignment problem. Naval Research Logistics Quarterly 2, 83–97 (1955)
Levi, G.: A note on the derivation of maximal common subgraphs of two directed or undirected graphs. Calcolo 9(4), 341–352 (1973)
Matula, D.W.: Subtree isomorphism in \(O(n^{5/2})\). In: Algorithmic Aspects of Combinatorics, Ann. Discrete Math., vol. 2, pp. 91–106. Elsevier (1978)
Rarey, M., Dixon, J.: Feature trees: A new molecular similarity measure based on tree matching. Journal of Computer-Aided Molecular Design 12(5), 471–490 (1998)
Raymond, J.W., Willett, P.: Maximum common subgraph isomorphism algorithms for the matching of chemical structures. J. Comput. Aided Mol. Des. 16(7), 521–533 (2002)
Schietgat, L., Ramon, J., Bruynooghe, M.: A polynomial-time metric for outerplanar graphs. In: Frasconi, P., Kersting, K., Tsuda, K. (eds.) Mining and Learning with Graphs (2007)
Uno, T.: Algorithms for enumerating all perfect, maximum and maximal matchings in bipartite graphs. In: Leong, H.-V., Jain, S., Imai, H. (eds.) ISAAC 1997. LNCS, vol. 1350, pp. 92–101. Springer, Heidelberg (1997)
Yamaguchi, A., Aoki, K.F., Mamitsuka, H.: Finding the maximum common subgraph of a partial \(k\)-tree and a graph with a polynomially bounded number of spanning trees. Inf. Process. Lett. 92(2), 57–63 (2004)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Droschinsky, A., Heinemann, B., Kriege, N., Mutzel, P. (2014). Enumeration of Maximum Common Subtree Isomorphisms with Polynomial-Delay. In: Ahn, HK., Shin, CS. (eds) Algorithms and Computation. ISAAC 2014. Lecture Notes in Computer Science(), vol 8889. Springer, Cham. https://doi.org/10.1007/978-3-319-13075-0_7
Download citation
DOI: https://doi.org/10.1007/978-3-319-13075-0_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-13074-3
Online ISBN: 978-3-319-13075-0
eBook Packages: Computer ScienceComputer Science (R0)