首页 / 专利库 / 天文学 / 深空网 / 基于时间聚合图的延迟容忍网络最大流路由方法

基于时间聚合图的延迟容忍网络最大流路由方法

阅读:875发布:2020-05-23

专利汇可以提供基于时间聚合图的延迟容忍网络最大流路由方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于时间聚合图的延迟容忍网络最大流路由方法,主要解决现有的时间聚合图模型中,由于同一链路不同时段之间缺乏联系而引起不同选路顺序导致求解出不同最大流的问题。其实现步骤为:(1)标记时间聚合图;(2)在时间聚合图中寻找增广路径L;(3)计算增广路径L的最大流,获得剩余路径;(4)累加每条增广路径L的最大流Lfmax(T),以此作为网络当前的最大流,循环找路,当时间聚合图中不存在增广路径时,得到网络的最大流。本发明增加了链路中不同时段之间的联系,解决了时间聚合图中的最大流问题,可用于互联网、 物联网 、移动通信、卫星通信和深空通信中提高传输吞吐量。,下面是基于时间聚合图的延迟容忍网络最大流路由方法专利的具体信息内容。

1.一种基于时间聚合图的延迟容忍网络最大流路由方法,包括:
(1)标记时间聚合图
时间聚合图是由若干节点和多条有向的边所构成的一种图形,每条边标记一个容量时间序列C(T)=(c1,...,ct,...,cm),每个节点设置一个存储传递序列N(T)=(n1,...,nt,...,nm),其中T是指给定的时间范围,ct是指与该边相对应的网络链路在第t个时间段内的网络链路总容量,nt是指该节点从第t-1个时间段向第t个时间段储存的数据量,1≤t≤m,m是指在给定的时间范围T内以单位时间为间隔分割的时间段;
(2)在时间聚合图中寻找增广路径L:
(2a)设定时间聚合图所描述的延迟容忍网络的当前最大流为Wfmax(T),并初始化为0;
(2b)将源点s设为增广路径L的当前找路节点并将该节点的找路出发时间ts设定在第1个时段内即ts=1;
(2c)利用当前找路节点的存储传递序列对当前节点的找路出发时间进行更新,得到当前节点新的出发时间ts;
(2d)依据当前节点的邻接关系,找到以当前节点为起始节点的所有邻接链路,并在这些邻接链路中找出所有有效的邻接链路:若链路连通的时间段t满足t≥ts,且链路容量ct>
0则该链路是有效的邻接链路,否则,该链路是无效的邻接链路;
(2e)判断当前节点是否有有效的邻接链路,若没有,则执行步骤(2f),否则,从所有有效的邻接链路中选择具有最早连通时段t'=min(t)的一条有效邻接链路,将此链路的终止节点作为增广路径L的下一跳节点,并将此链路的终止节点设置为新的当前找路节点,设定当前节点的找路出发时间为ts=t',执行步骤(2g);
(2f)若当前节点为源点s,则不存在增广路径,执行步骤(6),否则将当前节点的上一跳邻接链路设为无效,在增广路径L中删除该节点,同时把当前节点的上一跳节点设为增广路径L新的当前找路节点,返回步骤(2c);
(2g)若当前节点为终点d,则执行步骤(3),否则,返回步骤(2c);
(3)计算增广路径L的最大流:
(3a)设定增广路径L的当前最大流为Tfmax(T),并初始化为无穷大,选取增广路径L的最后一跳链路作为当前链路;
(3b)根据当前链路终止节点的存储传递序列,计算当前链路的容量时间序列Cu,v(T)与增广路径L的当前最大流Tfmax(T)之间所允许的最大流Pfmax(T),更新增广路径L的当前最大流Tfmax(T)=Pfmax(T);
(3c)判断当前链路是否为增广路径L的第一跳链路:若是,则得到增广路径L的最大流Lfmax(T)=Tfmax(T),执行步骤(4),否则,选择此链路的前一跳链路作为当前链路,返回步骤(3b);
(4)获得剩余路径:
(4a)设定增广路径L的暂时最大流为Zfmax(T)=Lfmax(T),选取增广路径L的第一跳链路作为当前链路;
(4b)根据当前链路起始节点的存储传递序列,计算增广路径L的暂时最大流Zfmax(T)与当前链路的容量时间序列Cu,v(T)之间所允许的可行流fu,v(T);
(4c)更新增广路径L的暂时最大流Zfmax(T)=fu,v(T),依据可行流fu,v(T)计算当前链路(u,v)以及与当前链路反方向的链路(v,u)的剩余链路容量时间序列;
(4d)判断当前链路是否为增广路径L的最后一跳链路:若是,则执行步骤(5),否则,选择此链路的后一跳链路作为当前链路,返回步骤(4b);
(5)将每次计算出的增广路径L最大流Lfmax(T)进行累加,累加的结果作为网络当前的最大流Wfmax(T),返回步骤(2b);
(6)结束循环,输出网络的最大流fmax(T)=Wfmax(T)。
2.根据权利要求1所述的方法,其中步骤(1)中的存储传递序列N(T)=(n1,...,nt,...,nm),按如下方式构建:
其中nt是节点从t-1时段向t时段储存的数据量,nt-1是节点从t-2时段向t-1时段储存的数据量,At-1是t-1时段流入节点的数据量,Lt-1是t-1时段流出节点的数据量;
该存储传递序列N(T)=(n1,...,nt-i...,nt,...,nm)具有数据回流的功能,即允许数据从当前t时段回流到之前的t-i时段。
3.根据权利要求1所述的方法,其中步骤(2c)中对当前节点的起始时间进行更新,按照如下方式:
从存储传递序列N(T)=(n1,...,nt-i...,nt,...,nm)中选择与节点的出发时间ts相对应的第t位元素nt,若nt=0,则出发时间保持ts=t不变,否则,依次判断存储传递序列的nt-1,...,nt-i,...,n1元素,如果出现nt-i=0,更新起始时间ts=t-i。
4.根据权利要求1所述的方法,其中步骤(3b)中当前链路的容量时间序列Cu,v(T)与增广路径L的当前最大流Tfmax(T)之间所允许的最大流Pfmax(T),按如下步骤计算:
(3b1)设复制容量时间序列CCu,v(T)=Cu,v(T),获得当前的可行流tf1(T)=min{CCu,v(T),Tfmax(T)},依据当前的可行流tf1(T)分别对复制容量时间序列CCu,v(T)和当前最大流Tfmax(T)进行更新,得到新的复制容量时间序列 新的当前最大

(3b2)根据当前链路终止节点的储存传递序列N(T),从更新的复制容量时间序列中的最后一个元素开始,依次进行如下回流操作:
设回流量为β,并初始化 其中 是 中的元素,从N(T)中选择
第t位元素nt作为当前元素ni=nt并将时段t作为回流起始时段,判断当前元素的数值:若ni≠0,则回流变化量α=min{ni,β},回流量β=α,将当前元素的前一个元素作为新的当前元素,循环当前元素的数值判断过程,否则,将时段i-1作为回流终止时段,回流变化量回流量β=α,回流起始流量 和回流终止流量Tf1(i-1)=β;
(3b3)重复步骤(3b2)的回流操作,当复制容量时间序列 中的所有元素回流结束后,可得到回流起始序列 和回流终止序列Tf1(T),依据 和Tf1(T)分别对当前的
1
可行流tf(T)、复制容量时间序列 和当前最大流 进行更新,得到更新后的当前的可行流 更新后的复制容量时间序列
更新后的当前最大流
(3b4)依据当前链路终止节点的存储特性,从更新后的容量时间序列 中最后一个元素开始依次进行顺流,并将每次顺流的起始流量记为 在 中所有元素顺流结束后得到顺流起始序列 由此得到所允许的最大流
其中顺流是指数据从当前时段t流到之后的时段j,t≤j≤m,m是指在给定的时间范围T内以单位时间为间隔分割的时间段。
5.根据权利要求1所述的方法,其中步骤(4b)中增广路径L的暂时最大流Zfmax(T)与当前链路的容量时间序列Cu,v(T)之间所允许的可行流fu,v(T),按如下步骤计算:
(4b1)设定拷贝容量时间序列CCu',v(T)=Cu,v(T),获得暂时的可行流zf1(T)=min{Zfmax(T),CCu',v(T)},依据暂时的可行流zf1(T)分别对暂时最大流Zfmax(T)和拷贝容量时间序列CC'u,v(T)进行更新,得到新的暂时最大流 新的拷贝容量时间序

(4b2)结合当前链路起始节点的储存传递序列N(T),从更新的暂时最大流 中最后一个元素开始依次进行回流,记录每次的回流量θ,得到回流起始流量 和回流终止流量 将每个元素的回流过程记为相应的回流存储传递序列N'(T),依据回流存储传递序列N'(T)对存储传递序列N(T)进行更新,得到新的存储传递序列N1(T)=N(T)-N'(T);
(4b3)重复步骤(4b2)的回流操作,当增广路径L的暂时最大流 中所有元素回流结束后,得到回流起始序列Zf1'(T)和回流终止序列 依据Zf1'(T)和fu',v(T)分别对暂时最大流 拷贝容量时间序列 和当前的可行流zf1(T)进行更新,得到更新
后的 暂 时 最大 流 更 新 后的 拷 贝 容 量时 间 序 列
更新后的当前可行流zf2(T)=zf1(T)+fu',v(T);
(4b4)依据当前链路终止节点的存储特性,从增广路径L的暂时最大流 中第一个元素开始依次顺流,得到每次顺流的终止流量 同时将每个元素的顺流过程记为相应的顺流存储传递序列N2'(T),利用N2'(T)对更新后的存储传递序列N1(T)再进行更新,得到最终的存储传递序列N3(T)=N1(T)+N2'(T);
在 中所有元素顺流结束后得到顺流的终止序列 依据 得到所允许
的可行流
6.根据权利要求1所述的方法,其中步骤(4c)中当前链路(u,v)以及与当前链路反方向的链路(v,u)的剩余链路容量时间序列,按如下公式计算:
Cfu,v(T)=Cu,v(T)-fu,v(T),if(u,v)∈E
其中,Cfu,v(T)是链路(u,v)的剩余链路容量时间序列,Cu,v(T)是链路(u,v)的容量时间序列,fu,v(T)是链路(u,v)的可行流,Cv,u(T)是链路(v,u)的容量时间序列,Cfv,u(T)是链路(v,u)的剩余链路容量时间序列,E是时间聚合图中链路的集合。

说明书全文

基于时间聚合图的延迟容忍网络最大流路由方法

技术领域

[0001] 本发明属于通信技术领域,特别涉及一种延迟容忍网络中的路由方法,可用于互联网、物联网、移动通信、卫星通信和深空通信中提高传输吞吐量。

背景技术

[0002] 延迟容忍网络DTN在一些特定的网络环境下,会经常出现网络断开的现象,导致报文在传输过程中不能确保端到端的路径。目前,DTN在互联网、物联网、移动通信、卫星通信、深空通信及军事通信等领域有着广泛的应用需求与应用前景,因此它逐渐成为无线通信领域的研究热点。
[0003] Internet研究任务组IRTF通过对机会组网的星际网络的研究而发展出DTN体系结构,最初是为解决星际互联网IPN的连通问题而提出的,后来研究人员希望将其发展成为一种普遍适用于解决受限网络连通的方法。延迟容忍网络的主要特点包括链路断续连通、链路特性如容量随着时间而不断变化着、网络的拓扑结构也是时变的。这与传统的静态网络有很大的差异,使得传统的路由方法不能适用于DTN。
[0004] 为了更好的研究DTN,需要构建合适的模型来描述DTN。时间聚合图能将DTN的拓扑变化、链路的特性等都聚合成时间序列,这样可以有效的减少网络原始信息所占用的储存空间。因此,很多学者开始研究时间聚合图,一些适用于DTN的最短路径方法已经被提出并且被证实能有效的解决DTN的最短路径问题。但是,由于时间聚合图中并没有描述链路不同时段之间的联系,这导致不同的选路顺序所求得的最大流不同。如附图2所示,在这个时间聚合图中有两种选路方案:1)如果先选择路径S→A→B→D,接着就只能选择路径S→A→D,求得的网络最大流的流量为7;2)如果先选择路径S→A→D或S→B→D,接着就只能选择路径S→B→D或S→A→D,求得的网络最大流的流量为5。虽然两种选路策略都没有问题,但却求出了不同的最大流。网络中选路的过程往往是随机选择的,如果选择了选路方案2)则无法获得网络最准确的最大流。正是由于选路顺序所带来的影响,至今没有在时间聚合图上找出求解最大流的有效方法,影响网络传输的吞吐量。

发明内容

[0005] 本发明目的在于针对上述的问题,提出一种基于时间聚合图的延迟容忍网络最大流路由方法,以解决现有的时间聚合图模型中,由于同一链路不同时段之间缺乏联系而引起的不同选路顺序导致求解出不同的最大流的问题,实现对最大流的准确计算,提高网络传输的吞吐量。
[0006] 为实现上述目的,本发明的技术方案如下:
[0007] (1)标记时间聚合图
[0008] 时间聚合图是由若干节点和多条有向的边所构成的一种图形,每条边标记一个容量时间序列C(T)=(c1,...,ct,...,cm),每个节点设置一个存储传递序列N(T)=(n1,...,nt,...,nm),其中T是指给定的时间范围,ct是指与该边相对应的网络链路在第t个时间段内的网络链路总容量,nt是指该节点从第t-1个时间段向第t个时间段储存的数据量,1≤t≤m,m是指在给定的时间范围T内以单位时间为间隔分割的时间段;
[0009] (2)在时间聚合图中寻找增广路径L:
[0010] (2a)设定时间聚合图所描述的延迟容忍网络的当前最大流为Wfmax(T),并初始化为0;
[0011] (2b)将源点s设为增广路径L的当前找路节点并将该节点的找路出发时间ts设定在第1个时段内即ts=1;
[0012] (2c)利用当前找路节点的存储传递序列对当前节点的找路出发时间进行更新,得到当前节点新的出发时间ts;
[0013] (2d)依据当前节点的邻接关系,找到以当前节点为起始节点的所有邻接链路,并在这些邻接链路中找出所有有效的邻接链路:若链路连通的时间段t满足t≥ts,且链路容量ct>0则该链路是有效的邻接链路,否则,该链路是无效的邻接链路;
[0014] (2e)判断当前节点是否有有效的邻接链路,若没有,则执行步骤(2f),否则,从所有有效的邻接链路中选择具有最早连通时段t'=min(t)的一条有效邻接链路,将此链路的终止节点作为增广路径L的下一跳节点,并将此链路的终止节点设置为新的当前找路节点,设定当前节点的找路出发时间为ts=t',执行步骤(2g);
[0015] (2f)若当前节点为源点s,则不存在增广路径,执行步骤(6),否则将当前节点的上一跳邻接链路设为无效,在增广路径L中删除该节点,同时把当前节点的上一跳节点设为增广路径L新的当前找路节点,返回步骤(2c);
[0016] (2g)若当前节点为终点d,则执行步骤(3),否则,返回步骤(2c);
[0017] (3)计算增广路径L的最大流:
[0018] (3a)设定增广路径L的当前最大流为Tfmax(T),并初始化为无穷大,选取增广路径L的最后一跳链路作为当前链路;
[0019] (3b)根据当前链路终止节点的存储传递序列,计算当前链路的容量时间序列Cu,v(T)与增广路径L的当前最大流Tfmax(T)之间所允许的最大流Pfmax(T),更新增广路径L的当前最大流Tfmax(T)=Pfmax(T);
[0020] (3c)判断当前链路是否为增广路径L的第一跳链路:若是,则得到增广路径L的最大流Lfmax(T)=Tfmax(T),执行步骤(4),否则,选择此链路的前一跳链路作为当前链路,返回步骤(3b);
[0021] (4)获得剩余路径:
[0022] (4a)设定增广路径L的暂时最大流为Zfmax(T)=Lfmax(T),选取增广路径L的第一跳链路作为当前链路;
[0023] (4b)根据当前链路起始节点的存储传递序列,计算增广路径L的暂时最大流Zfmax(T)与当前链路的容量时间序列Cu,v(T)之间所允许的可行流fu,v(T);
[0024] (4c)更新增广路径L的暂时最大流Zfmax(T)=fu,v(T),依据可行流fu,v(T)计算当前链路以及与当前链路反方向的链路的剩余链路容量时间序列;
[0025] (4d)判断当前链路是否为增广路径L的最后一跳链路:若是,则执行步骤(5),否则,选择此链路的后一跳链路作为当前链路,返回步骤(4b);
[0026] (5)将每次计算出的增广路径L最大流Lfmax(T)进行累加,累加的结果作为网络当前的最大流Wfmax(T),返回步骤(2b);
[0027] (6)结束循环,输出网络的最大流fmax(T)=Wfmax(T)。
[0028] 本发明为时间聚合图中的所有节点提供了一个存储传递序列,基于存储传递序列设计了节点的存储策略,改善了链路中不同时段之间的联系,从而解决了时间聚合图中因选路先后顺序而带来的最大流问题,有效的提高了网络的吞吐能

附图说明

[0029] 图1是本发明的实现流程图
[0030] 图2是本发明使用的时间聚合图模型示意图;
[0031] 图3是本发明的实施例图。

具体实施方式

[0032] 下面结合附图对本发明做进一步的描述。
[0033] 参照图1、图2、图3,本发明的实现步骤如下:
[0034] 步骤1,标记时间聚合图。
[0035] 时间聚合图是由若干节点和多条有向的边所构成的一种图形,其每条边标记一个容量时间序列C(T)=(c1,...,ct,...,cm),每个节点设置一个存储传递序列N(T)=(n1,...,nt,...,nm),其中T是指给定的时间范围,ct是指与该边相对应的网络链路在第t个时间段内的网络链路总容量,nt是指该节点从第t-1个时间段向第t个时间段储存的数据量,1≤t≤m,m是指在给定的时间范围T内以单位时间为间隔分割的时间段。
[0036] 如附图2所示,本实施例的时间聚合图中有4个节点(S,A,B,D)和多条连接相邻节点的有向边,以单位时间1s为间隔把在给定的时间范围T=5s分割成5个时间段,每条边上有一个容量时间序列C(T)=(c1,...,ct,...,cm),例如边(S,A)的容量时间序列CS,A(T)=(2,0,3,0,0),同时每个节点都有存储传递序列N(T)=(n1,...,nt,...,nm),并初始化为[0,0,0,0,0]。
[0037] 步骤2,在时间聚合图中寻找增广路径L。
[0038] (2a)设定时间聚合图所描述的延迟容忍网络的当前最大流为Wfmax(T),并初始化为0;
[0039] (2b)将源点s设为增广路径L的当前找路节点并将该节点的找路出发时间ts设定在第1个时段内即ts=1;
[0040] (2c)利用当前找路节点的存储传递序列N(T)=(n1,...,nt,...,nm)对当前节点的找路出发时间进行更新,得到当前节点新的出发时间ts:
[0041] 更新过程:从存储传递序列N(T)=(n1,...,nt-i...,nt,...,nm)中选择与节点的出发时间ts相对应的第t位元素nt,若nt=0,则出发时间保持ts=t不变,否则,依次判断存储传递序列的nt-1,...,nt-i,...,n1元素,如果出现nt-i=0,更新起始时间ts=t-i;
[0042] 本实施例,是把源点S设为增广路径L的当前找路节点,设置找路出发时间ts=1,依据节点S的存储传递序列S(T)=[0,0,0,0,0],得到源点S的找路出发时间保持ts=1不变,如附图3(a)所示;
[0043] (2d)依据当前节点的邻接关系,找到以当前节点为起始节点的所有邻接链路,并在这些邻接链路中找出所有有效的邻接链路:若链路连通的时间段t满足t≥ts,且链路容量ct>0,则该链路是有效的邻接链路,否则,该链路是无效的邻接链路;
[0044] (2e)判断当前节点是否有有效的邻接链路,若没有,则执行步骤(2f),否则,从所有有效的邻接链路中选择具有最早连通时段t'=min(t)的一条有效邻接链路,将此链路的终止节点作为增广路径L的下一跳节点,并将此链路的终止节点设置为新的当前找路节点,设定当前节点的找路出发时间为ts=t',执行步骤(2g);
[0045] 本实施例中,源点S的有效邻接链路有(S,A)和(S,B),对应的有效连通时段分别为t(S,A)=1,t(S,A)=3和t(S,B)=2,选择具有最早有效连通时段(t'=min(1,3,2)=1)的邻接链路(S,A),将链路(S,A)的终止节点A作为增广路径L的下一跳节点,并将节点A设置为新的当前找路节点,并设定当前节点A的找路出发时间为ts=t'=1,如附图3(a)所示;
[0046] (2f)若当前节点为源点s,则不存在增广路径,执行步骤(6),否则将当前节点的上一跳邻接链路设为无效,在增广路径L中删除该节点,同时把当前节点的上一跳节点设为增广路径L新的当前找路节点,返回步骤(2c);
[0047] (2g)若当前节点为终点d,则执行步骤(3),否则,返回步骤(2c)。
[0048] 本实施例,是通过循环寻找下一跳,得到节点A的下一跳节点B和节点B的下一跳节点D,由于节点D是终点,所以得到增广路径L:S→A→B→D,如附图3(a)所示。
[0049] 步骤3,计算增广路径L的最大流。
[0050] (3a)设定增广路径L的当前最大流为Tfmax(T),并初始化为无穷大,选取增广路径L的最后一跳链路作为当前链路;
[0051] 本实施例,是选取增广路径L:S→A→B→D的最后一跳链路(B,D)作为当前链路,如附图3(b)所示;
[0052] (3b)根据当前链路终止节点的存储传递序列,计算当前链路的容量时间序列Cu,v(T)与增广路径L的当前最大流Tfmax(T)之间所允许的最大流Pfmax(T),更新增广路径L的当前最大流Tfmax(T)=Pfmax(T),其中计算所允许的最大流Pfmax(T)按照如下步骤:
[0053] (3b1)设复制容量时间序列CCu,v(T)=Cu,v(T),获得当前的可行流tf1(T)=min{CCu,v(T),Tfmax(T)},依据当前的可行流tf1(T)分别对复制容量时间序列CCu,v(T)和当前最大流Tfmax(T)进行更新,得到新的复制容量时间序列 新的当前最大流
[0054] (3b2)根据当前链路终止节点的储存传递序列N(T),从更新的复制容量时间序列中的最后一个元素开始,依次进行如下回流操作:
[0055] 设回流量为β,并初始化 其中 是 中的元素,从N(T)中选择第t位元素nt作为当前元素ni=nt,并将时段t作为回流起始时段,判断当前元素的数值:若ni≠0,则回流变化量α=min{ni,β},回流量β=α,将当前元素的前一个元素作为新的当前元素,循环当前元素的数值判断过程,否则,将时段i-1作为回流终止时段,回流变化量
1
回流量β=α,回流起始流量 和回流终止流量Tf(i-1)=β;
[0056] (3b3)重复步骤(3b2)的回流操作,当复制容量时间序列 中的所有元素回流结束后,可得到回流起始序列 和回流终止序列Tf1(T),依据 和Tf1(T)分别对当前的可行流tf1(T)、复制容量时间序列 和当前最大流 进行更新,得到更新后的当前的可行流 更新后的复制容量时间序列
更新后的当前最大流
[0057] (3b4)依据当前链路终止节点的存储特性,从更新后的容量时间序列 中最后一个元素开始依次进行顺流,并将每次顺流的起始流量记为 在 中所有元素顺流结束后得到顺流起始序列 由此得到所允许的最大流
其中顺流是指数据从当前时段t流到之后的时段j,t≤j≤m,m是指在给定的时间范围T内以单位时间为间隔分割的时间段;
[0058] 本实施例,是通过上述步骤计算出链路(B,D)的容量时间序列CB,D(T)与增广路径L的当前最大流Tfmax(T)之间所允许的最大流Pfmax(T)=(0,0,0,2,0),更新增广路径L的当前最大流Tfmax(T)=Pfmax(T)=(0,0,0,2,0),如附图3(b)所示;
[0059] (3c)判断当前链路是否为增广路径L的第一跳链路:若是,则得到增广路径L的最大流Lfmax(T)=Tfmax(T),执行步骤(4),否则,选择此链路的前一跳链路作为当前链路,返回步骤(3b)。
[0060] 本实施例,是通过重复计算各链路容量序列与当前路径最大流之间所允许的最大流Pfmax(T),最终得到增广路径S→A→B→D的路径最大流Lfmax(T)=(2,0,0,0,0),如附图3(b)所示。
[0061] 步骤4,获得剩余路径。
[0062] (4a)设定增广路径L的暂时最大流为Zfmax(T)=Lfmax(T),选取增广路径L的第一跳链路作为当前链路;
[0063] 本实施例,是设定增广路径L:S→A→B→D的暂时最大流为Zfmax(T)=Lfmax(T)=(2,0,0,0,0),选取增广路径L:S→A→B→D中第一条链路(S,A)作为当前链路,如附图3(b)所示;
[0064] (4b)根据当前链路起始节点的存储传递序列,计算增广路径L的暂时最大流Zfmax(T)与当前链路的容量时间序列Cu,v(T)之间所允许的可行流fu,v(T),其实现步骤如下:
[0065] (4b1)设定拷贝容量时间序列CCu',v(T)=Cu,v(T),获得暂时的可行流zf1(T)=min{Zfmax(T),CCu',v(T)},依据暂时的可行流zf1(T)分别对暂时最大流Zfmax(T)和拷贝容量时间序列CC'u,v(T)进行更新,得到新的暂时最大流 新的拷贝容量时间序列
[0066] (4b2)结合当前链路起始节点的储存传递序列N(T),从更新的暂时最大流中最后一个元素开始依次进行回流,记录每次的回流量θ,得到回流起始流量Zf1'(t)=θ和回流终止流量 将每个元素的回流过程记为相应的回流存储传递序列N'(T),依据回流存储传递序列N'(T)对存储传递序列N(T)进行更新,得到新的存储传递序列N1(T)=N(T)-N'(T);
[0067] (4b3)重复步骤(4b2)的回流操作,当增广路径L的暂时最大流 中所有元素回流结束后,得到回流起始序列Zf1'(T)和回流终止序列 依据Zf1'(T)和fu',v(T)分别对暂时最大流 拷贝容量时间序列 和当前的可行流zf1(T)进行更新,得到更新后的暂时最大流 更新后的拷贝容量时间序列
更新后的当前可行流zf2(T)=zf1(T)+fu',v(T);
[0068] (4b4)依据当前链路终止节点的存储特性,从增广路径L的暂时最大流 中第一个元素开始依次顺流,得到每次顺流的终止流量 同时将每个元素的顺流过程记为相应的顺流存储传递序列N2'(T),利用N2'(T)对更新后的存储传递序列N1(T)再进行更新,得到最终的存储传递序列N3(T)=N1(T)+N2'(T);
[0069] 在 中所有元素顺流结束后得到顺流的终止序列 依据 得到所允许的可行流
[0070] 本实施例,是结合节点S的存储递序列S(T)=[0,0,0,0,0],得到路径最大流Lfmax(T)=(2,0,0,0,0)与链路(S,A)的容量时间序列CS,A(T)=(2,0,3,0,0)之间的可行流fS,A(T)=(0,0,2,0,0),如附图3(b)所示;
[0071] (4c)更新增广路径L的暂时最大流Zfmax(T)=fu,v(T),依据可行流fu,v(T)计算当前链路以及与当前链路反方向的链路的剩余链路容量时间序列,按照如下公式计算:
[0072] Cfu,v(T)=Cu,v(T)-fu,v(T),if(u,v)∈E
[0073]
[0074] 其中,Cfu,v(T)是链路(u,v)的剩余链路容量时间序列,Cu,v(T)是链路(u,v)的容量时间序列,fu,v(T)是链路(u,v)的可行流,Cv,u(T)是链路(v,u)的容量时间序列,Cfv,u(T)是链路(v,u)的剩余链路容量时间序列,E是时间聚合图中链路的集合;
[0075] 本实施例,是更新得到增广路径L的暂时最大流Zfmax(T)=fS,A(T)=(0,0,0,2,0),而后计算当前链路(S,A)以及与当前链路反方向的链路(A,S)的剩余链路容量时间序列,如附图3(b)所示;
[0076] (4d)判断当前链路是否为增广路径L的最后一跳链路:若是,则执行步骤(5),否则,选择此链路的后一跳链路作为当前链路,返回步骤(4b);
[0077] (4d)若该链路是增广路径L的最后一条链路,则执行步骤(5),否则选择该链路的后一跳链路,返回步骤(4b)。
[0078] 本实施例,是通过重复计算各链路容量序列与增广路径的暂时最大流之间所允许的可行流,最终得到增广路径S→A→B→D的残余路径,如附图3(b)所示。
[0079] 步骤5,将每次计算出的增广路径L最大流Lfmax(T)进行累加,累加的结果作为网络当前的最大流Wfmax(T),返回步骤(2b)。
[0080] 步骤6,结束循环,输出网络的最大流fmax(T)=Wfmax(T)。
[0081] 本实施例,是在附图3(a)中找到一条增广路径S→A→B→D,通过计算得到增广路径S→A→B→D的路径最大流为(2,0,0,0,0),并得到增广路径S→A→B→D的剩余路径,如附图3(b)所示;然后,在附图3(c)中找到一条增广路径S→B→A→D,通过计算得到增广路径S→B→A→D的路径最大流为(0,2,0,0,0),并得到增广路径S→B→A→D的剩余路径,如附图3(d)所示;之后,在附图3(e)中找到一条增广路径S→A→D,通过计算得到增广路径S→A→D的路径最大流为(0,0,0,3,0),并得到增广路径S→A→D的剩余路径,如附图3(f)所示;由于在附图3(g)中无法找到增广路径,最终得到网络的最大流(2,2,3,0,0),如附图3(h)所示。
[0082] 以上描述仅是本发明的一个具体实例,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变,比如图模型变换,找路方式的选择等,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈