-
Notifications
You must be signed in to change notification settings - Fork 10
Algorithm Pseudocode
Jordan Matelsky edited this page Mar 31, 2021
·
2 revisions
- Accept arguments:
- M := a motif
- H := a host graph
- Create an empty list for result storage, R.
- Create an empty queue, Q.
- Preprocessing
- Identify the most "interesting" node in motif M, m1.
- Add to Q a set of mappings with a single node, with one map for all
nodes in H that satisfy the requirements of m1: degree, attributes, etc
- Motif Search
- "Pop" a partial-mapping B from Q
- Identify as m1 the most interesting node in motif M that does not yet
have a mapping assigned in B.
- Identify all nodes that are valid mappings from the partial-mapping to m1,
based upon degree, attributes, etc.
- If multiple nodes are valid candidates, add each new partial-mapping to Q.
- Otherwise, when all nodes in M have a valid mapping in B to H, add
the mapping to the results set R.
- Continue while there are still partial-mapping in Q.
- Reporting
- Return the set R to the user.
If this tool is helpful to your research, please consider citing it with:
# https://doi.org/10.1038/s41598-021-91025-5
@article{Matelsky_Motifs_2021,
title={{DotMotif: an open-source tool for connectome subgraph isomorphism search and graph queries}},
volume={11},
ISSN={2045-2322},
url={http://dx.doi.org/10.1038/s41598-021-91025-5},
DOI={10.1038/s41598-021-91025-5},
number={1},
journal={Scientific Reports},
publisher={Springer Science and Business Media LLC},
author={Matelsky, Jordan K. and Reilly, Elizabeth P. and Johnson, Erik C. and Stiso, Jennifer and Bassett, Danielle S. and Wester, Brock A. and Gray-Roncal, William},
year={2021},
month={Jun}
}