Table of Contents
Fetching ...

Stigmergic Swarming Agents for Fast Subgraph Isomorphism

H. Van Dyke Parunak

TL;DR

ASSIST addresses the NP-complete maximum partial subgraph isomorphism for labeled graphs by introducing a stigmergy-based swarming heuristic. After an initial peering step costing $O(q \cdot \log(d))$, parallel agents iteratively build and reinforce a matching subgraph through pheromone updates, achieving $O(q \log(d))$ peering and nearly linear time in $q$ for the remaining search while remaining effectively constant in $d$. The approach supports approximate matches and extensions to time-sequenced or missing components, demonstrating robustness and scalability beyond prior quadratic heuristics. Overall, ASSIST provides a practical, parallelizable framework for fast subgraph matching with flexible matching criteria across large real-world graphs.

Abstract

Maximum partial subgraph isomorphism compares two graphs (nodes joined by edges) to find a largest common subgraph. A common use case, for graphs with labeled nodes, seeks to find instances of a \textit{query} graph with $q$ nodes in a (typically larger) \textit{data} graph with $d$ nodes. The problem is NP-complete, and naïve solutions are exponential in $q + d$. The fastest current heuristic has complexity $O(d^2)$. This paper outlines ASSIST (Approximate Swarming Subgraph Isomorphism through Stigmergy), inspired by the ant colony optimization approach to the traveling salesperson. After peering (identifying matching individual nodes in query and data) in time $O(q\cdot log(d))$, the time required for ASSIST's iterative subgraph search, the combinatorially complex part of the problem, is linear in query size and constant in data size. ASSIST can be extended to support matching problems (such as temporally ordered edges, inexact matches, and missing nodes or edges in the data graph) that frustrate other heuristics.

Stigmergic Swarming Agents for Fast Subgraph Isomorphism

TL;DR

ASSIST addresses the NP-complete maximum partial subgraph isomorphism for labeled graphs by introducing a stigmergy-based swarming heuristic. After an initial peering step costing , parallel agents iteratively build and reinforce a matching subgraph through pheromone updates, achieving peering and nearly linear time in for the remaining search while remaining effectively constant in . The approach supports approximate matches and extensions to time-sequenced or missing components, demonstrating robustness and scalability beyond prior quadratic heuristics. Overall, ASSIST provides a practical, parallelizable framework for fast subgraph matching with flexible matching criteria across large real-world graphs.

Abstract

Maximum partial subgraph isomorphism compares two graphs (nodes joined by edges) to find a largest common subgraph. A common use case, for graphs with labeled nodes, seeks to find instances of a \textit{query} graph with nodes in a (typically larger) \textit{data} graph with nodes. The problem is NP-complete, and naïve solutions are exponential in . The fastest current heuristic has complexity . This paper outlines ASSIST (Approximate Swarming Subgraph Isomorphism through Stigmergy), inspired by the ant colony optimization approach to the traveling salesperson. After peering (identifying matching individual nodes in query and data) in time , the time required for ASSIST's iterative subgraph search, the combinatorially complex part of the problem, is linear in query size and constant in data size. ASSIST can be extended to support matching problems (such as temporally ordered edges, inexact matches, and missing nodes or edges in the data graph) that frustrate other heuristics.
Paper Structure (20 sections, 12 figures, 1 table, 2 algorithms)

This paper contains 20 sections, 12 figures, 1 table, 2 algorithms.

Figures (12)

  • Figure 1: Swarming solutions of the traveling salesperson and subgraph isomorphism
  • Figure 2: Each agent seeks a matching edge between query and data graphs
  • Figure 3: Merging matched edges into larger subgraphs
  • Figure 4: Matched edges by Tick
  • Figure 5: Common subgraph recovered by ASSIST. Yellow: original kernel. Red: other shared nodes and edges.
  • ...and 7 more figures