如果您从 R 中使用 igraph,请使用此选项
| subgraph_isomorphic {igraph} | R 文档 |
判断一个图是否与另一个图的子图同构
subgraph_isomorphic(pattern, target, method = c("auto", "lad", "vf2"), ...)
is_subgraph_isomorphic_to(
pattern,
target,
method = c("auto", "lad", "vf2"),
...
)
pattern |
较小的图,可以是有向图或无向图。无向图被视为具有互逆边的有向图。 |
目标 |
较大的图,可以是有向图或无向图。无向图被视为具有互逆边的有向图。 |
method |
使用的方法。可能的值:‘auto’、‘lad’、‘vf2’。详见下文。 |
... |
传递给各种方法的其他参数。 |
逻辑标量,如果pattern与target的(可能诱导的)子图同构,则为TRUE。
此方法当前始终选择‘lad’,因为它在大多数图上似乎都更优。
这是 Solnon 的 LAD 算法,请参阅下面的参考资料。它有以下额外的参数
如果不是NULL,则指定匹配限制。它必须是target顶点集的列表,以数字顶点 ID 或符号顶点名称给出。列表的长度必须为vcount(pattern),并且对于pattern中的每个顶点,它给出target中允许匹配的顶点。默认为NULL。
逻辑标量,是否搜索诱导子图。默认为FALSE。
计算的处理器时间限制,以秒为单位。默认为Inf,表示没有限制。
此方法使用 Cordella、Foggia 等人的 VF2 算法,请参阅下面的参考资料。它支持顶点和边的颜色,并具有以下额外的参数
可选的整数向量,给出彩色图同构的顶点颜色。如果没有给出,但图有一个“color”顶点属性,那么它将被使用。如果您想忽略这些属性,请为这两个参数提供NULL。另请参见下面的示例。
可选的整数向量,给出边彩色(子)图同构的边颜色。如果没有给出,但图有一个“color”边属性,那么它将被使用。如果您想忽略这些属性,请为这两个参数提供NULL。
LP Cordella, P Foggia, C Sansone, and M Vento: An improved algorithm for matching large graphs, Proc. of the 3rd IAPR TC-15 Workshop on Graphbased Representations in Pattern Recognition, 149–159, 2001.
C. Solnon: AllDifferent-based Filtering for Subgraph Isomorphism, Artificial Intelligence 174(12-13):850–864, 2010.
其他图同构:count_isomorphisms(), count_subgraph_isomorphisms(), graph_from_isomorphism_class(), isomorphic(), isomorphism_class(), isomorphisms(), subgraph_isomorphisms()
# A LAD example
pattern <- make_graph(~ 1:2:3:4:5,
1 - 2:5, 2 - 1:5:3, 3 - 2:4, 4 - 3:5, 5 - 4:2:1)
target <- make_graph(~ 1:2:3:4:5:6:7:8:9,
1 - 2:5:7, 2 - 1:5:3, 3 - 2:4, 4 - 3:5:6:8:9,
5 - 1:2:4:6:7, 6 - 7:5:4:9, 7 - 1:5:6,
8 - 4:9, 9 - 6:4:8)
domains <- list(`1` = c(1,3,9), `2` = c(5,6,7,8), `3` = c(2,4,6,7,8,9),
`4` = c(1,3,9), `5` = c(2,4,8,9))
subgraph_isomorphisms(pattern, target)
subgraph_isomorphisms(pattern, target, induced = TRUE)
subgraph_isomorphisms(pattern, target, domains = domains)
# Directed LAD example
pattern <- make_graph(~ 1:2:3, 1 -+ 2:3)
dring <- make_ring(10, directed = TRUE)
subgraph_isomorphic(pattern, dring)