Implementation of “Graph-based Substructure Pattern Mining with Edge-Weight”
Reference Paper:
Md Ashraful Islam, Chowdhury Farhan Ahmed, Md Tanvir Alam & Carson Kai-Sang Leung.
Graph-based substructure pattern mining with edge-weight. Applied Intelligence, Vol. 54 (5), pp. 3756-3785 (2024).
📄 Read the Paper on Springer :contentReference[oaicite:2]{index=2}
This repository contains the implementation of the algorithm and experimental framework described in the above paper.
The method mines frequent substructures from a database of edge-weighted graphs — capturing not just structural frequency but also the importance via edge weights.
A key contribution is the MaxPWS pruning technique which supports mining weighted frequent subgraphs while maintaining completeness despite the lack of the downward-closure property in the weighted setting. :contentReference[oaicite:3]{index=3}
├── src/ → core algorithm implementation
├── data/ → input graph database / example graph files
├── results/ → output files, pattern lists, evaluation metrics
├── scripts/ → helper scripts for preprocessing or launching experiments
├── README.md → this file
└── LICENSE → (if applicable) license file
- Java / Scala / Python (depending on your implementation)
- Graph library dependencies (list here: e.g.,
networkx,igraph, etc.) - Java 8+ or equivalent if you use a Java-based tool
Place your collection of edge-weighted graphs into data/.
# Example: run the main mining script
java -jar MaxPWSCan.jar --input data/graphdb/ --min_sup 0.05 --min_weight 10(Adjust the command to match your actual script/implementation)
The discovered subgraph patterns and evaluation metrics will be saved under results/. Inspect runtime logs, pattern counts, and graphs.
According to the paper, the proposed framework:
- Significantly reduces search space via MaxPWS pruning. :contentReference[oaicite:4]{index=4}
- Maintains completeness of mining while handling weighted support calculation. :contentReference[oaicite:5]{index=5}
- Achieves faster runtime compared to prior methods for static and dynamic edge-weight settings. :contentReference[oaicite:6]{index=6}
If you use this code in your research or projects, please cite the original publication:
Islam, M.A., Ahmed, C.F., Alam, M.T., & Leung, C.K. (2024). Graph-based substructure pattern mining with edge-weight. Applied Intelligence, 54(5), 3756-3785. https://doi.org/10.1007/s10489-024-05356-7
Contributions, bug reports, and enhancements are welcome! Please submit pull requests and describe your changes clearly.
(Insert your license here – e.g., MIT, Apache 2.0 or other.)
Md Ashraful Islam — [email address]
GitHub: cseduashraful