Hardware Implementation of Intelligent Systems pp 245-275 | Cite as

# Parallel Subgraph Matching on a Hierarchical Interconnection Network

## Abstract

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.

## Keywords

Model Graph Input Graph Subgraph Isomorphism Central Vertex Consistent Mapping## Preview

Unable to display preview. Download preview PDF.

## References

- [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]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]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]Bondy, J. and Murty, U. (1976):
*“Graph Theory with Applications”*,The MacMillan Press.Google Scholar - [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]Bunke, H. and Allermann, G. (1983): “Inexact graph matching for structural pattern recognition”,
*Pattern Recognition Letters*, 1, 245–253.MATHCrossRefGoogle Scholar - [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]Chen, L. (1996): “Graph isomorphism and identification matrices: Parallel algorithms”,
*IEEE Transactions on Parallel and Distributed Systems*, 7 (3), 308–319.CrossRefGoogle Scholar - [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]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]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]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]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]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]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]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]Matula, D. (1978): “Subtree isomorphism in
*o(n**512**)”. Annals of Discrete Mathematics*, 2, 91–106.MathSciNetMATHCrossRefGoogle Scholar - [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]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]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]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]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]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]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]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]Ullmann, J. (1976): “An algorithm for subgraph isomorphism”.
*Journal of the Association for Computing Machinery*, 23 (1), 31–42.MathSciNetCrossRefGoogle Scholar - [27]Wong, E. (1992): “Model matching in robot vision by subgraph isomorphism”.
*Pattern Recognition*, 25 (3), 287–303.CrossRefGoogle Scholar