Heuristic sampling for the subgraph isomorphism problem
Uroš Čibej, Jurij Mihelič · 2017
Subgraph isomorphism is one of the fundamental search problems in computer science. In this article we consider the counting variation of this problem. The task is to count all instances of the pattern G occurring in a (usually larger) graph H. All algorithms for this problem use a variation of backtracking. Most commonly they assign one vertex of G to one vertex of H at each level of the search tree. The order of vertices for the assignment is the crucial factor determining the size of this search tree. But it is very hard to determine in advance the impact of the order for a particular instance. We use a method called heuristic sampling to estimate the size of the tree. We use this estimation to select the most suitable order of vertices of G which minimizes the expected tree size. This approach is empirically evaluated on a set of instances, showing the practical potential of the method.