子图同构过滤与约束中心搜索启发式算法研究
子图同构过滤算法优化与实验
在子图同构问题中,为了提高过滤算法的效率,有两个重要的优化策略。
1. 过滤的蕴含条件优化 :若初始标记 (l_0) 满足模式图的最大标记小于或等于目标图的最小标记,那么模式图节点的每个标记都与目标图节点的所有标记兼容,此时过滤过程无法缩小任何域。
2. 搜索过程中的优化 :当搜索中与模式节点关联的变量被分配给目标节点时,会修改邻域扩展过程。具体做法是强制这两个节点具有相同的新标记,且该新标记与其他标记不兼容。设 (l = (L, ⪯, α)) 为 SIC 标记,((u, v) \in N_p × N_t) 且 (v \in x_u),(x_u = v) 在 (l) 上的传播会生成新标记 (l′ = (L′, ⪯′, α′)),其中:
- (L′ = L ∪ {l_{uv}}),(l_{uv}) 是一个不在 (L) 中的新标记。
- (⪯′ = ⪯ ∪ {(l_{uv}, l_{uv})}),新标记 (l_{uv}) 仅与自身可比。
- (α′(u) = α′(v) = l_{uv}),对于 (Nodes \setminus {u, v}) 中的所有 (w),(α′(w) = α(w))。
这个新标记 (l′) 会作为新一轮标记扩展序列的起点,且每次域缩小为单元素集时都会进行此传播。
实验实例设置
为了评估过滤算法,使用幂律分布 (P(d = k) = k^{−λ}) 随机生成图,标准值 (λ = 2.5)。考虑了 6 类实例,每类包含 20 个不同实例,具体设置如下: <
超级会员免费看
订阅专栏 解锁全文
178

被折叠的 条评论
为什么被折叠?



