CN108154530B - 一种分布式计算有向图围长的方法 - Google Patents
一种分布式计算有向图围长的方法 Download PDFInfo
- Publication number
- CN108154530B CN108154530B CN201711237056.9A CN201711237056A CN108154530B CN 108154530 B CN108154530 B CN 108154530B CN 201711237056 A CN201711237056 A CN 201711237056A CN 108154530 B CN108154530 B CN 108154530B
- Authority
- CN
- China
- Prior art keywords
- bound
- bfs
- graph
- point
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种分布式计算有向图围长的方法,属于并行与分布式计算技术领域。本发明方法首先将有向图G中所有权值为负的边转化为非负;之后图G中每一个点执行有距离限制参数t的Bounded BFS算法;再根据Bounded BFS算法的结束条件,更新有向图围长g的下界α或上界β;之后根据β、α和Bounded BFS的结束条件,删除图G中权值之和大于α或β的路径;最后通过α和β更新距离限制参数t,重复执行步骤S2‑S5直到β‑α小于等于1,得到图G的围长g=β。本发明方法旨在设计一个线性时间的分布式计算有向图围长的方法,此方法的时间复杂度为O(nlognlogg),可在有权图下避免消息拥塞,有效的降低了算法的时间复杂度,保证了在大规模有向图中可以快速的分布式计算图的围长。
Description
技术领域
本发明属于并行与分布式计算技术领域,更具体地,涉及一种分布式计算有向图围长的方法。
背景技术
有向图G是一个由结点集合V和带权值的有向边的集合E组成的简单图。有向图可以刻画现实世界中实体之间的关系,例如在社交网络中表示人与人之间的关系;在交通网络或者航空网络中描绘两个点之间的可达性或者用于设计最优的路线;工作的分配,工程进度的安排或者课程表的制定都可以利用有向图来进行建模。因此,有向图算法的设计是计算机科学中的一项重要课题。
有向图的围长表示的是有向图中最小的环的大小。它是图算法的一个基本问题,被广泛用社交网络分析,数据可视化,生物信息学和三维表面重构等领域。在集中式算法中,计算图的围长在无权图中可以很容易的解决:利用宽度优先搜索算法可以在O(mn)的时间内求出围长,其中n和m分别为有向图中点的个数和边的条数。对于有权图,集中式算法也可以利用求解最短路径方法在O(n3)的时间内计算围长。但是对于分布式算法来说,在有权图和无权图上求解围长的难度差别很大。在无权图中,可以利用分布式宽度优先搜索算法在O(n)的时间内快速的求出围长的大小。而在有权图中,现有文献求解围长均利用最短路径方法。而目前最快的分布式求解有权图最短路径算法需要O(n2)的时间,这也意味着求解围长的时间不低于 O(n2)。
在分布式算法中,最棘手的问题是如何处理拥塞。在目前分布式领域中,最常用的模型为拥塞模型(CONGEST Model),它要求图中每条边在每一轮中最多传递一个消息。这给算法的设计带来了巨大的挑战,它要求我们设计合适的策略去传递和路由消息,保证图中没有拥塞发生。这个挑战使得简单的利用宽度优先搜索算法在有权有向图下计算围长需要很高的时间复杂度,而在这种方法下降低时间复杂度又会引入计算错误。因此,如何设计一个算法可以快速而正确的计算有向图的围长是一个重要且极具挑战的问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种分布式计算有向图围长的方法,其目的在于它有效的在分布式环境下将计算有向图围长问题转化为计算非负权有向图围长的问题,简化了算法的设计,另外设计了一种高效的分布式算法在线性时间内计算出非负权有向图的围长,由此可以快速而正确的计算有向图的围长。
为实现上述目的,本发明提供了一种分布式计算有向图围长的方法,所述方法包括:
S1,将有向图G中所有权值为负的边转化为非负;
S2,图G中每一个点执行有距离限制参数t的Bounded BFS算法;
S3,根据Bounded BFS算法的结束条件,更新有向图围长g的下界α或上界β;
S4,根据β、α和Bounded BFS的结束条件,删除图G中权值之和大于α或β的路径;
S5,通过α和β更新距离限制参数t,重复执行步骤S2-S5直到β-α≤1 成立,得到图G的围长g=β。
进一步地,所述步骤S1包括:
S1.1,计算有向图G的最小平均值环λ;
S1.2,将图G中边的权值更新w`ij=wij-λ,其中,wij表示边(i,j)的权值;
S1.3,再计算图G中结点i和结点j到点1的距离,记为P(i)和P(j);
进一步地,所述步骤S2包括:
S2.1,设置Bounded BFS的结束条件,具体为:
结束条件1,有向图中某一个点被Bounded BFS访问两次;
结束条件2,从有向图中某一点s开始的Bounded BFS再一次访问点s;
结束条件3,图G中所有的点都无法再进一步执行Bounded BFS;
S2.2,有相图G中每个点执行距离限制参数为t的宽度优先算法,即为 BoundedBFS。
进一步地,所述步骤S3包括:
S3.1,若触发Bounded BFS的结束条件1,点v被Bounded BFS访问两次,则v等待n轮后计算最短路径d[s,v],其中,s为Bounded BFS的起始点;
S3.2,更新下界α=max{d[s,v]:s,v∈G},结束步骤S3;
S3.3,若触发Bounded BFS的结束条件2或3,则更新上界β=t。
进一步地,所述步骤S4包括:
S4.1,根据下界α和Bounded BFS的结束条件,删除图中权值之和大于α的路径;
S4.2,根据上界β和Bounded BFS的结束条件,删除图中权值之和大于β的路径。
进一步地,所述步骤S4.1包括:
S4.1.1,对于有向图G中每个被Bounded BFS访问两次的结点v,发送消息给它的前驱结点u,若α<d[s,u],则进入步骤S4.1.2;
S4.1.2,对于每一个从点v接收到消息的结点u,删除边(u,v),然后点u 发送消息给它的每一个前驱结点;
S4.1.3,当Bounded BFS的源点s接收到消息时,s停止发送消息;当图中不再有消息传递时,步骤S4.1停止。
进一步地,步骤S4.2包括以下步骤:
S4.2.1,对于有向图G中每个被以点s为源点的Bounded BFS再次访问的源点s,发送消息给它的前驱结点u,若β<d[s,u],则进入步骤S4.2.2;
S4.2.2,对于每一个从v点接收到消息的结点u,删除边(u,v),然后u 发送消息给它的每一个前驱结点;
S4.2.3,当Bounded BFS的源点s再次接收到消息时,s停止发送消息;当图中不再有消息传递时,步骤S4.2停止。
进一步地,步骤S5包括以下步骤:
S5.1,判断β-α≤1是否成立,若成立,则设置g=β并结束算法;否则,进入步骤S5.2;
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下技术特征及有益效果:
(1)本发明方法设计了一种分布式计算围长的框架,利用这个框架可以在不同图模型下计算图的围长;
(2)本发明方法设计了一种合理的策略,删除图G中权值之和大于α或β的路径,可以在有权图下避免消息拥塞,有效的降低了算法的时间复杂度;
(3)本发明方法高效的将在有向图下计算围长的问题转化为在非负权有向图下计算围长的问题,降低了问题求解的复杂度,使得设计快速的分布式算法成为可能;
(4)本发明使用分布式方法在线性时间内求解了最小平均值环;
附图说明
图1是本发明方法的流程示意图;
图2是本发明方法中步骤S1的流程示意图;
图3是本发明方法中步骤S2的流程示意图;
图4是本发明方法中步骤S3的流程示意图;
图5是本发明方法中步骤S4的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的整体思路在于,通过执行以距离限制t为参数的Bounded BFS 算法,为围长g设置下界α和上界β;然后通过Bounded BFS的执行结果,为α和β设置合适值,继而更新t值并重新运行Bounded BFS算法,最后一步步的更新α和β直到求出g的准确值;算法的执行过程中需要确保分布式计算过程中没有拥塞的产生,因此设计了合适的策略进行消息路由和每个 Bounded BFS的调度。
如图1所示,本发明一种分布式计算有向图围长的方法包含以下步骤:
S1,对有向图G进行预处理,将所有权值为负的边转化为非负;
S2,有向图G中每一个点执行有距离限制参数t的分布式宽度优先搜索算法(Bounded BFS,Bounded Breadth-First-Search);
S3,根据Bounded BFS算法的结束条件,为有向图的围长g确定下界α和上界β;
S4,根据β、α和Bounded BFS的结束条件,删除有向图中权值之和大于α或β的路径;
S5,通过α和β更新距离限制参数t,重复执行步骤S2-S5直到β-α小于等于1,得到围长g=β。
如图2所示,步骤S1的具体实施方案包含以下部分:
S1.1,计算最小平均值环(MMC,Minimum Mean Cycle),其值为λ,通过Karp算法,可以得到其中,Fk(v)表示,对于一个给定的源点到点v经过k条边的距离;Fn(v)表示,对于一个给定的源点到点v经过n条边的距离;Fk(v)由下面的公式计算得到:
其中,u表示图G中的点;w(u,v)表示边(u,v)的权值;Fk(v)可以在O(n) 的时间内快速的求解;
图G中每个点v在第一轮计算点v到点s经过0条边的最短距离:
然后第k+1轮计算Fk(v)的值直到计算出Fn(v)。
S1.2,将有向图G中边的权值w`ij=wij-λ,wij表示边(i,j)的权值;在λ值被广播到图中每个点后,计算w`ij只需要一轮的时间,其中λ需要O(n)的时间被广播到每一个点;
S1.3,计算有向图G中所有结点i到点1的距离,记为P(i);对于给定点1到每一点i的距离P(i),利用分布式Bellman-Ford算法在O(n)的时间内计算;
如图3所示,步骤S2的具体实施方案包含以下部分:
S2,图Gp中每一个点执行有距离限制参数t的分布式宽度优先搜索算法(BoundedBFS,Bounded Breadth-First-Search)。包括以下步骤:
S2.1,设置距离限制参数t。参数t的初始值设为1。
S2.2,图Gp中每个点执行距离限制参数为t的宽度优先算法,即为 Bounded BFS:每个源点s发送包含距离信息d[s,s]=0的消息给自己的后继结点。对于每个点v,在接收到从自己前驱结点发送的消息后,计算d[s,v] 然后发送消息给自己的后继结点。当发生S2.3的三条结束条件中的任意一条时,Bounded BFS不再发送消息;
S2.3,Bounded BFS的结束条件为:
条件1,某一个点被Bounded BFS访问两次;
条件2,从某一点s开始的Bounded BFS再一次访问s;
条件3,图Gp中所有的点都无法再进一步执行Bounded BFS,即对于图中每一个点d[s,v]大于t,无法再继续向它的邻居结点发送消息。
如图4所示,步骤S3的具体实施方案包含以下部分:
S3,根据Bounded BFS算法的结束条件,更新围长g的下界α或上界β,其中包括以下步骤:
S3.1,若触发条件1,点v点被Bounded BFS访问两次,则v等待n轮后计算最短路径d[s,v],其中s为Bounded BFS的起始点;
S3.2,根据条件1设置下界α=max{d[s,v]:s∈Gp,v∈Gp}。每个点v在这一步向自己的前驱发送d[s,v],对于u接收多条d[s,v],u只发送最大值给它的前驱;这个汇聚过程需要O(n)的时间;结束步骤S3;
S3.3,如果触发条件2或条件3;则设置上界β=t。
如图5所示,步骤S4的具体实施方案包含以下部分:
S4,根据上下界β,α和Bounded BFS的结束条件,删除图中某些权值之和大于α或β的路径。具体步骤如S4.1和S4.2所示:
S4.1,根据下界α和Bounded BFS的结束条件,删除图中某些权值之和大于α的路径,具体步骤如下;
S4.1.1,对于图Gp中每个被Bounded BFS访问两次的结点v,发送消息给它的前驱结点u,若α<d[s,u],则进入后续步骤;
S4.1.2,对于每一个从v点接收到消息的结点u,删除边(u,v),然后u 发送消息给它的每一个前驱结点;
S4.1.3,当Bounded BFS的源点s接收到消息时,s停止发送消息;当图中不再有消息传递的时候,步骤S4.1停止。
S4.2,根据上界β和Bounded BFS的结束条件,删除图中某些权值之和大于β的路径。
S4.2.1,对于图Gp中每个被以点s为源点的Bounded BFS再次访问的源点s,发送消息给它的前驱结点u,若β<d[s,u],则进入后续步骤;
S4.2.2,对于每一个从v点接收到消息的结点u,删除边(u,v),然后u 发送消息给它的每一个前驱结点;
S4.2.3,当Bounded BFS的源点s再次接收到消息时,s停止发送消息。当图中不再有消息传递的时候,步骤S4.1停止。
步骤S5的具体实施方案包含以下部分:
S5,通过α和β更新距离限制参数t,重新执行Bounded BFS和以上步骤直到β-α小于等于1,得到围长g=β。具体步骤如下:
S5.2,判断β-α≤1是否成立,如果成立,设置g=β并结束算法;如果不成立,向图中广播新的距离限制参数t;
S5.3,根据S5.2广播的结果,每个点重新执行步骤S2-S5。
以上内容本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种分布式计算有向图围长的方法,其特征在于,所述方法包括:
S1,将有向图G中所有权值为负的边转化为非负;
S2,图G中每一个点执行有距离限制参数t的Bounded BFS算法;
S3,根据Bounded BFS算法的结束条件,更新有向图围长g的下界α或上界β;
S4,根据β、α和Bounded BFS的结束条件,删除图G中权值之和大于α或β的路径;所述步骤S4包括:
S4.1,根据下界α和Bounded BFS的结束条件,删除图中权值之和大于α的路径;
S4.2,根据上界β和Bounded BFS的结束条件,删除图中权值之和大于β的路径;
S5,通过α和β更新距离限制参数t;
S6、重复执行步骤S2-S5直到β-α≤1成立,得到图G的围长g=β。
3.根据权利要求1所述的一种分布式计算有向图围长的方法,其特征在于,所述步骤S2包括:
S2.1,设置Bounded BFS的结束条件,具体为:
结束条件1,有向图中某一个点被Bounded BFS访问两次;
结束条件2,从有向图中某一点s开始的Bounded BFS再一次访问点s;
结束条件3,图G中所有的点都无法再进一步执行Bounded BFS;
S2.2,有向图G中每个点执行距离限制参数为t的宽度优先算法,即为Bounded BFS。
4.根据权利要求3所述的一种分布式计算有向图围长的方法,其特征在于,所述步骤S3包括:
S3.1,若触发Bounded BFS的结束条件1,点v被Bounded BFS访问两次,则v等待n轮后计算最短路径d[s,v],其中,s为Bounded BFS的起始点;
S3.2,更新下界α=max{d[s,v]:s,v∈G},结束步骤S3;
S3.3,若触发Bounded BFS的结束条件2或3,则更新上界β=t。
5.根据权利要求4所述的一种分布式计算有向图围长的方法,其特征在于,所述步骤S4.1包括:
S4.1.1,对于有向图G中每个被Bounded BFS访问两次的结点v,发送消息给它的前驱结点u,若α<d[s,u],则进入步骤S4.1.2;
S4.1.2,对于每一个从点v接收到消息的结点u,删除边(u,v),然后点u发送消息给它的每一个前驱结点;
S4.1.3,当Bounded BFS的起始点s接收到消息时,s停止发送消息;当图中不再有消息传递时,步骤S4.1停止。
6.根据权利要求4所述一种分布式计算有向图围长的方法,其特征在于,步骤S4.2包括以下步骤:
S4.2.1,对于有向图G中每个被以点s为起始点的Bounded BFS再次访问的起始点s,发送消息给它的前驱结点u,若β<d[s,u],则进入步骤S4.2.2;
S4.2.2,对于每一个从v点接收到消息的结点u,删除边(u,v),然后u发送消息给它的每一个前驱结点;
S4.2.3,当Bounded BFS的起始点s再次接收到消息时,s停止发送消息;当图中不再有消息传递时,步骤S4.2停止。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711237056.9A CN108154530B (zh) | 2017-11-30 | 2017-11-30 | 一种分布式计算有向图围长的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711237056.9A CN108154530B (zh) | 2017-11-30 | 2017-11-30 | 一种分布式计算有向图围长的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108154530A CN108154530A (zh) | 2018-06-12 |
CN108154530B true CN108154530B (zh) | 2020-07-10 |
Family
ID=62469254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711237056.9A Active CN108154530B (zh) | 2017-11-30 | 2017-11-30 | 一种分布式计算有向图围长的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108154530B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103262481A (zh) * | 2010-12-17 | 2013-08-21 | 思科技术公司 | 有向无环图(dag)中的动态重路由调度 |
CN106503789A (zh) * | 2016-11-08 | 2017-03-15 | 西安电子科技大学宁波信息技术研究院 | 基于迪杰斯特拉和最大最小蚁群的无环最短路径搜索方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010013848A1 (ja) * | 2008-07-31 | 2010-02-04 | Jfeスチール株式会社 | 低温靭性に優れた厚肉高張力熱延鋼板およびその製造方法 |
US10210453B2 (en) * | 2015-08-17 | 2019-02-19 | Adobe Inc. | Behavioral prediction for targeted end users |
-
2017
- 2017-11-30 CN CN201711237056.9A patent/CN108154530B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103262481A (zh) * | 2010-12-17 | 2013-08-21 | 思科技术公司 | 有向无环图(dag)中的动态重路由调度 |
CN106503789A (zh) * | 2016-11-08 | 2017-03-15 | 西安电子科技大学宁波信息技术研究院 | 基于迪杰斯特拉和最大最小蚁群的无环最短路径搜索方法 |
Non-Patent Citations (5)
Title |
---|
A Tight Distributed Algorithm for All-Pairs-Shortest Paths and Applications;Qiang-Sheng Hua,et.al;《The 28th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA 2016)》;20160713;全文 * |
Distributed Algorithms for Network Diameter and Girth;Peleg D,et.al;《In Automata, Languages, and Programming - 39th International Colloquium, ICALP 2012》;20120913;全文 * |
Nearly Optimal Distributed Algorithm for Computing Betweenness Centrality;Qiang-Sheng Hua,et.al;《The 36th IEEE International Conference on Distributed Computing Systems (ICDCS 2016)》;20160630;全文 * |
大规模图中低复杂度分布式算法浅析;华强胜,等;《南京信息工程大学学报(自然科学版)》;20170928(第5期);全文 * |
有向图中若干问题的研究;徐根玖;《中国优秀硕士学位论文全文数据库基础科学辑》;20040915(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108154530A (zh) | 2018-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yang et al. | Constraint reformulation and a Lagrangian relaxation-based solution algorithm for a least expected time path problem | |
Antosiewicz et al. | Choice of best possible metaheuristic algorithm for the travelling salesman problem with limited computational time: quality, uncertainty and speed | |
Ni et al. | Task allocation in dependency-aware spatial crowdsourcing | |
CN113361721A (zh) | 模型训练方法、装置、电子设备、存储介质及程序产品 | |
CN107222410B (zh) | 链接预测的方法、装置、终端及计算机可读存储介质 | |
Pavlas et al. | Heuristic for generation of waste transportation test networks | |
CN108154530B (zh) | 一种分布式计算有向图围长的方法 | |
CN116151384B (zh) | 量子电路处理方法、装置及电子设备 | |
CN116611527B (zh) | 量子电路处理方法、装置及电子设备 | |
CN116151381B (zh) | 量子电路处理方法、装置及电子设备 | |
Cui et al. | An efficient discrete particle swarm optimization for solving multi-mode resource-constrained project scheduling problem | |
Duncan et al. | Choice set robustness and internal consistency in correlation-based logit stochastic user equilibrium models | |
CN104360936B (zh) | 一种基于触发操作的Barrier操作性能分析方法 | |
CN102123053B (zh) | 水平分解的多类闭合分叉-汇集排队网络性能分析方法 | |
Couturier et al. | Best effort strategy and virtual load for asynchronous iterative load balancing | |
Gharajeh | T*: a weighted double-heuristic search algorithm to find the shortest path | |
Gao et al. | Ensuring high-quality data collection for mobile crowd sensing | |
CN114443970A (zh) | 基于人工智能和大数据的数字化内容推送方法及ai系统 | |
Song et al. | Convergence analysis of distributed population dynamics based on second-order Delaunay triangulation | |
Liu et al. | A remixed bayesian network based algorithm for flight delay estimating | |
Szymański | Concentration of vertex degrees in a scale‐free random graph process | |
Zivan et al. | The effect of asynchronous execution and message latency on max-sum | |
Khoshkhah et al. | A Random Walk Approach for Simulation-Based Continuous Dynamic Traffic Assignment | |
Cao et al. | FedQMIX: Communication-efficient federated learning via multi-agent reinforcement learning | |
CN110297950A (zh) | 一种基于Blogel的分布式图受限可达性查询处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |