本发明涉及一种基于双边界图模式的最大流确定方法,属于网络最大流计算。
背景技术:
1、随着互联网、物联网等技术的快速发展,交通网络、信息、电子通信等领域产生的数据都在以爆炸式的速度增长。例如,在交通网络中有人流、车流、货物流,供水网络中有水流,金融系统中现金流等,最大流算法从数据挖掘、图像处理到现实生活中有着广泛的应用,很多实际问题都可以转化为最大流问题。
2、最大流问题是图论中的一个非常基本的问题,这一问题的算法在开发方面已经取得了许多进展,因此相应的算法在很多场景中都有普遍应用。对于大规模图中已有的最大流加速算法,一种常见的加速策略是通过收缩子图来减少图的大小,通过面向算法的加速或面向图数据的加速找到快速解。对于面向数据的算法,其核心思想是减少输入的规模,例如通过将子图按照拓扑收缩来减少图的规模。还有很多基于节点收缩的算法,它们利用了各种子图模式。这些算法只能在利用没有规模限制的子图模式时获得近似值,很少有无规模限制的子图模式可以保证精确的最大流解。
技术实现思路
1、本发明的目的是提供一种基于双边界图模式的最大流确定方法,以解决目前采用图收缩方式进行最大流确定过程中存在依赖于子图规模限制导致的精度差的问题。
2、本发明为解决上述技术问题而提供一种基于双边界图模式的最大流确定方法,该方法包括以下步骤:
3、1)将实际问题抽象出拓扑网络图作为原始图;
4、2)对抽象出的原始图进行遍历,构建全局双联通分量覆盖树;
5、3)在每个双联通分量覆盖树内部进行深度优先遍历,找到具有两个节点构成割点集的深度优先遍历树,形成相应的双边界图,并确定各双边界图的边界节点、内部节点以及双边界图的最大流;
6、4)对于给定节点对,若该节点对在双边界图外,则将该节点对路径上的双边界图收缩成一条边;若该节点对在一个双边界图内且存在可以收缩的双边界图,则对该双边界图进行收缩;
7、5)基于收缩后的图确定节点对之间的最大流。
8、本发明通过构建全局双联通分量覆盖树,通过深度优先遍历在每个双联通分量覆盖树内搜索包含两个门节点的子图作为双边界图,这两个门节点能够将该双边界图与整个图的其他部分开,在进行节点对最大流确定时,只需要知道双边界图的连通性信息即可,对于双边界图内部可以不考虑,可以将找到的双边界图收缩。因此,本发明通过确定双边界图,并将相关双边界图收缩来减少最大流确定过程中的复杂度,大大提高了最大流的确定效率,且不受子图的规模限制,能够保证最大流的精度。
9、进一步地,根据权利要求1所述的基于双边界图模式的最大流确定方法,其特征在于,所述步骤4)收缩过程如下:
10、a.找到源点和汇点对应的双边界图节点以及这两个双边界图节点之间的路径作为第一路径;
11、b.在所述路径上找到不包含源点和汇点的双边界图节点o,确定节点o与源点和汇点对应的双边界图节点之间的路径作为第二路径
12、c.对不属于第一路径和第二路径上的双门节点的所有双边界图进行收缩,对双门节点在第二路径上的所有双边界图进行收缩。
13、本发明通过上述过程能够将不包含源点和汇点的双边界图收缩成一条由双门节点构成的边,实现了对原始图的收缩,为后续减小节点对最大流计算量提供了可靠支撑。
14、进一步地,所述步骤c对双边界图进行收缩时,先收缩被包含的双边界图。
15、针对同一双联通分量覆盖树内的双边界图之间存在包含关系,本发明通过先收缩被包含的双边界图,再收缩其对应的父双边界图,能够准确地实现双边界图的收缩。
16、进一步地,所述步骤3)中双边界图的构建过程如下:
17、在每个双联通分量覆盖树中随机选择一个节点作为根节点进行深度优先遍历,在遍历过程中找到割值为2的深度优先遍历子树,将找到的割值为2的深度优先遍历子树作为双边界图,所述的割值为2指的是该子树只存在两个割边。
18、本发明通过深度优先遍历,能够有效地搜索包含两个门节点的子图即双边界图。
19、进一步地,所述步骤3)在遍历过程中将遍历结果采用的堆栈的形式进行保存。
20、本发明在进行双边界图搜索过程中采用堆栈的形式进行保存,能够有效提高数据存取效率,进一步实现对最大流的加速。
21、进一步地,所述步骤5)在进行节点对最大流确定时,对节点对最优路径上的所有相关双边界图的最大流进行合并。
22、本发明根据双边界图的最大流,将相关的边界图的最大流进行合并作为节点对之间的最大流。
1.一种基于双边界图模式的最大流确定方法,其特征在于,该方法包括以下步骤:
2.根据权利要求1所述的基于双边界图模式的最大流确定方法,其特征在于,所述步骤4)收缩过程如下:
3.根据权利要求2所述的基于双边界图模式的最大流确定方法,其特征在于,所述步骤c对双边界图进行收缩时,先收缩被包含的双边界图。
4.根据权利要求1或2所述的基于双边界图模式的最大流确定方法,其特征在于,所述步骤3)中双边界图的构建过程如下:
5.根据权利要求1或2所述的基于双边界图模式的最大流确定方法,其特征在于,所述步骤3)在遍历过程中将遍历结果采用的堆栈的形式进行保存。
6.根据权利要求2所述的基于双边界图模式的最大流确定方法,其特征在于,所述步骤5)在进行节点对最大流确定时,对节点对最优路径上的所有相关双边界图的最大流进行合并。