Page 429 - 《软件学报》2024年第6期
P. 429

徐兰天 等: 面向超图数据的最大独立集算法                                                           3005


                 被删除后, 会影响其相邻的超边, 进而影响其相关的超点. 在这一过程中, 还可能较低度超点的邻接边的关系发生
                 变化, 无需再使用     high-degree 近似点剪枝.










                                                   图 5 high-degree 点剪枝

                    ● 剪枝  3. one-size 边精确剪枝  a. 在图  G  中, 如果一个高度的超点    u(degree(u)>1) 的  degree(u) 条邻接边中, 一
                 部分只包含超点      u, 一部分不是只包含超点       u, 则删掉超点    u  的只包含超点   u  的邻接超边, 图   G  的最大独立集大小
                 不变.
                    one-size 边精确剪枝  a 的具体过程由图      6  所示, 图中绿色超点为     high-degree 超点, 该点的  degree 为  3. 该点的
                                                   图 7 one-size 边剪枝
                 3  条邻接超边中有两条超边不是只包含绿色超点, 有一条超边只包含绿色超点, 这条边的                          size 为  1. 若在该图上应
                 用剪枝   3, 则可直接删除这条     size 为  1  的超边.









                                                    图 6 one-size 边剪枝  a

                    证明: one-size 的超边只包含一个超点       u, 他并没有提供与超点       u  相关的邻接信息. 删掉超点       u  的只包含  u  的
                 部分邻接边并没有影响点         u  和图  G  中其他超点的邻接关系, 所以对原图的最大独立集大小没有影响.
                    ● 剪枝  4. one-size 边精确剪枝  b. 在图  G  中, 如果一个高度的超点     u(degree(u)>1) 的  degree(u) 条邻接边都是
                 只包含超点    u, 则删掉超点   u  的任意  degree(u)–1  条邻接边, 图  G  的最大独立集大小不变.
                    one-size 边精确剪枝   b  的具体过程由图    7  所示, 图中绿色超点为     high-degree 超点. 该点的  3  条邻接超边都只
                 包含绿色超点一个点, 他们的         size 均为  1. 若在该图上应用剪枝    4, 则可删除其中的两条超边.









                                                                     b

                    证明: 删掉点    u  的只包含  u  的邻接边并没有影响点       u  和图  G  中其他点的邻接关系, 所以对原图的最大独立集
                 大小没有影响. 然而需要注意的一点是, 不能删除所有                size 为  1  的超边. 因为, 若删掉所有  size 为  1  的超边, 超点  u
                 也会被删除.
                    综合  4  种剪枝策略, 下面提出一种改进的超图独立集算法, 即算法                 3. 算法第  3–6  行遍历所有度为     1  的超点,
                 通过遍历   1  度点的邻接边, 删除邻接边上的所有超点, 将遍历到的度为                1  的超点加入超图独立集       H. 之后按超点度
                 数从高到低访问所有超点, 对于遍历到的一个超点                 v, 如算法  3  的第  9–11  行所示, 若他的所有邻接边的     size 都为
                 1, 则所有邻接超边都只包含超点         v 这一个超点, 则可应用      one-size 边精确剪枝  b, 删除  N v 中的所有超边, 但注意要
   424   425   426   427   428   429   430   431   432   433   434