Parallel Subgraph Matching on a Hierarchical Interconnection Network

  • Stuart Campbell
  • Mohan Kumar
  • Horst Bunke
Part of the Studies in Fuzziness and Soft Computing book series (STUDFUZZ, volume 74)


The identification of subgraph isomorphisms is a well-known problem that occurs in many application areas. An important variant of the problem occurs when there are many model graphs and a single input graph, and we wish to search for subgraph isomorphisms from any of the model graphs to the input graph. This chapter discusses the Parallel Network (PN) algorithm; a parallel, deterministic algorithm for finding subgraph isomorphisms from a database of attributed, directed model graphs to an attributed, directed input graph. The algorithm decomposes the model graphs and forms the resultant subgraphs into a number of search networks. Subgraphs common to any number of model graphs are represented only once. This approach allows rapid, parallel detection of matches of common subgraphs onto the input graph. In parallel, all mappings found for each model graph are searched to detect complete, consistent mappings, which define subgraph isomorphisms. When used on a hierarchical interconnection network, the algorithm allows local communication to be used to advantage, reducing communication overheads and improving performance.


Model Graph Input Graph Subgraph Isomorphism Central Vertex Consistent Mapping 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Alon, N., Yuster, R., and Zwick, U. (1995): “Color-coding”, Journal of the Association of Computing Machinery, 42 (4), 844–856.MathSciNetMATHCrossRefGoogle Scholar
  2. [2]
    Artymiuk, P., Grindley, H., Poirrette, A., Rice, D., Ujah, E., and Willett, P. (1994): “Identification of beta-sheet motifs, of psi-loops and of patterns of acid residues in three dimensional protein structures using a subgraph isomorphism algorithm”, Journal of Chemical Information and Computer Sciences, 34, 54–62.Google Scholar
  3. [3]
    Benstock, J., Berndt, D., and Agarwal, K. (1988): “Graph embedding in synchem2, an expert system for organic synthesis discovery”. Discrete Applied Mathematics, 19, 45–63.MathSciNetMATHCrossRefGoogle Scholar
  4. [4]
    Bondy, J. and Murty, U. (1976): “Graph Theory with Applications”,The MacMillan Press.Google Scholar
  5. [5]
    Bruno, L.J., Kemp, N.M., Artymiuk, P.J., and Willett, P. (1997): “Representation and searching of carbohydrate structures using graph-theoretic techniques”, Carbohydrate Research, 304, 61–67CrossRefGoogle Scholar
  6. [6]
    Bunke, H. and Allermann, G. (1983): “Inexact graph matching for structural pattern recognition”, Pattern Recognition Letters, 1, 245–253.MATHCrossRefGoogle Scholar
  7. [7]
    Campbell, S. and Kumar, M. (1998): “A novel parallel algorithm for finding subgraph isomorphisms”, Proceedings of Ninth Australasian Workshop on Combinatorial Algorithms, pages 40–51. School of Computing, Curtin University of Technology, Perth WA.Google Scholar
  8. [8]
    Chen, L. (1996): “Graph isomorphism and identification matrices: Parallel algorithms”, IEEE Transactions on Parallel and Distributed Systems, 7 (3), 308–319.CrossRefGoogle Scholar
  9. [9]
    Crowl, L., Crovella, M., LeBlanc, T., and M.L.Scott (1994): “The advantages of multiple parallelizations in combinatorial search”, Journal of Parallel and Distributed Computing, 21, 110–123.CrossRefGoogle Scholar
  10. [10]
    Galil, Z., Hoffmann, C., Luks, E., Schnorr, C., and Weber, A. (1987): “An o(n 3 log n) deterministic and an o(n 3 ) las vegas isomorphism test for trivalent graphs”, Journal of the Association of Computing Machinery, 34 (3), 513–531.MathSciNetCrossRefGoogle Scholar
  11. [11]
    Garey, M. and Johnson, D. (1979): “Computers and Intractability: A Guide to the Theory of NP-Completeness”, W.H. Freeman and Company.MATHGoogle Scholar
  12. [12]
    Hsu, W.-L. (1995): “o(m n) algorithms for the recognition and isomorphism problems on circular-arc graphs”, SIAM Journal of Computing,24(3), 411–439.Google Scholar
  13. [13]
    Jaja, J. and Kosaraju, S. (1988): “Parallel algorithms for planar graph isomorphism and related problems”, IEEE Transactions on Circuits and Systems, 35 (3), 304–310.MathSciNetMATHCrossRefGoogle Scholar
  14. [14]
    Llados, J., Lopez-Krahe, J., and Martí, E. (1997): “A system to understand hand drawn floor plans using subgraph isomorphism and Hough transform” Machine Vision and Applications,10(3), pp. 150–158, JulyGoogle Scholar
  15. [15]
    Lingas, A. and Syslo, M. (1988): “A polynomial time algorithm for subgraph isomorphism of two-connected series-parallel graphs”,Lecture Notes in Computer Science, volume 317, pages 394–409. Springer. Proceedings of the 15th International Colloquium on Automata, Languages and ProgrammingGoogle Scholar
  16. [16]
    Lu, S.W., Ren, Y. and Suen, C.Y. (1991): “Hierarchical attributed graph representation and recognition of handwritten Chinese characters”, Pattern Recognition, Vol. 24, pp 617–632.CrossRefGoogle Scholar
  17. [17]
    Matula, D. (1978): “Subtree isomorphism in o(n 512 )”. Annals of Discrete Mathematics, 2, 91–106.MathSciNetMATHCrossRefGoogle Scholar
  18. [18]
    Messmer, B. and Bunke, H. (1993): “A network based approach to exact and inexact graph matching”, Technical Report IAM-93–021, University of Bern, Institute for informatics and applied mathematics.Google Scholar
  19. [19]
    Ohlrich, M., Ebeling, C., Gingting E., and Sather, L. (June 1993): “SubGemini: identifying subcircuits using a fast subgraph isomorphism algorithm”, Proceedings of the 30`“ IEEE/ACM Design Automation Conference.Google Scholar
  20. [20]
    Rao, V. and Kumar, V. (1987): “Parallel depth first search, part is Implementation”, International Journal of Parallel Programming, 16 (6), 479–499.MathSciNetMATHCrossRefGoogle Scholar
  21. [21]
    Rekers, J and Schurr, A (1997): “Defining and parsing visual languages with layered graph grammars”, Journal of Visual Languages and Computing, Vol. 8, 27–55.CrossRefGoogle Scholar
  22. [22]
    Rocha, J. and Pavlidis, T. (1994): “A shape analysis model with applications to a character recognition system”, IEEE Trans. On Pattern Analysis and Machine Intelligence, Vol. 16, 393–404.CrossRefGoogle Scholar
  23. [23]
    Rodgers, P.J. and King, P.J.H. (1997): “A graph-rewriting visual language for database programming”, Journal of Visual Languages and Computing, Vol. 8, 641–674.Google Scholar
  24. [24]
    Rouvray, D.H. and Balaban, A.T. (1979): “Chemical applications of graph theory”, R.J. Wilson and L.W. Beineke (eds.): Applications of Graph Theory, 177–221, Academic Press.Google Scholar
  25. [25]
    Truhlar, D.G., Jeffrey Howe, W., Hopfinger, A.J. Blaney, A.J. (Eds.) (1999): “Rational Drug Design” (The IMA Volumes in Mathematics and its Applications. Eds.: A. Friedman, R. Gulliver. Vol. 108 )Google Scholar
  26. [26]
    Ullmann, J. (1976): “An algorithm for subgraph isomorphism”. Journal of the Association for Computing Machinery, 23 (1), 31–42.MathSciNetCrossRefGoogle Scholar
  27. [27]
    Wong, E. (1992): “Model matching in robot vision by subgraph isomorphism”. Pattern Recognition, 25 (3), 287–303.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Stuart Campbell
    • 1
  • Mohan Kumar
    • 1
  • Horst Bunke
    • 2
  1. 1.School of ComputingCurtin University of TechnologyPerthAustralia
  2. 2.Institute of Computer Science and Applied MathematicsBernSwitzerland

Personalised recommendations