CN101753425B - 在多约束下求取网络中多条最短简单路径的启发式方法 - Google Patents

在多约束下求取网络中多条最短简单路径的启发式方法 Download PDF

Info

Publication number
CN101753425B
CN101753425B CN2008102278158A CN200810227815A CN101753425B CN 101753425 B CN101753425 B CN 101753425B CN 2008102278158 A CN2008102278158 A CN 2008102278158A CN 200810227815 A CN200810227815 A CN 200810227815A CN 101753425 B CN101753425 B CN 101753425B
Authority
CN
China
Prior art keywords
path
node
cost
paths
routes
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.)
Expired - Fee Related
Application number
CN2008102278158A
Other languages
English (en)
Other versions
CN101753425A (zh
Inventor
刘阳
郑铮
刘兴春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN2008102278158A priority Critical patent/CN101753425B/zh
Publication of CN101753425A publication Critical patent/CN101753425A/zh
Application granted granted Critical
Publication of CN101753425B publication Critical patent/CN101753425B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种在多约束下求取网络中多条最短简单路径的启发式方法。该方法使用改进的路径控制性法则和对路径延伸到目的节点后代价下限的预测,丢弃含有环的、违反约束的和代价超过已获得的第k条最短简单路径的路径。在被保留的路径中,以宽度优先的方式和可调的精度搜索符合约束条件的前k条最短简单路径。该方法对于网络的类型、规模及约束程度的变化有很强的适应性,且复杂度接近传统的宽度优先搜索方法。通过设置路径中环的探察深度和受控判决的收放系数,能够在路径的数量、质量和发现路径的能力等方面表现出优异且稳定的性能。

Description

在多约束下求取网络中多条最短简单路径的启发式方法
技术领域
在多约束下求取网络中多条最短简单路径的启发式方法属于互联网路由技术领域,尤其涉及在多个服务质量参数约束下快速寻找多条简单路径的服务质量路由领域。
背景技术
在互联网中提供能够保证服务质量(QoS)的路由已经成为当今网络技术的一个热点问题。QoS约束条件通常分为链路约束(例如带宽)与路径约束(例如延迟)两类:其中链路约束问题可以通过预先剪除网络中不符合约束的链路的方法解决;而本发明所关注的路径约束问题则相对复杂,尤其是当约束条件的数量m≥2时,问题进一步转化为求取多约束下的最优路径。
针对这一问题,宽广的适应性和较低的运算量使得许多由经典的Dijkstra方法改进的启发式宽度优先的路径搜索方法相继被提出:例如Jaffe的方法提出通过线性合并所有的路径代价分量,将多约束问题转化回单约束问题后,再使用Dijkstra方法求解。Never与Mieghem提出的方法TAMCRA综合使用了k-最短路径、非线性路径代价函数和针对受控路径的拉格朗日松弛等3种新颖的观念,在清除含环路径方面取得优异效果的同时有效的减少了运算量。Korkmaz与Krunz提出的方法H_MCOP引入了反向的路径代价预测,预先为随后的正向路径计算阶段规划出大致的搜索范围。
然而随着具有生存性的网络中的路径修复问题日益得到重视,在搜索路径代价最小的首选路径的同时还要考虑相应的备份路径。为了提高这种成对路径的发现概率,不仅需要对首选路径与备份路径各自进行独立的计算以确保它们在概率上的分离性,即便在同一次计算中也需要得到包括最优路径与次优路径在内的多条质量尽可能高的有效路径,使得在将2次计算结果中的路径配对时有更大的选则余地和更好的匹配效果。然而上述算法恰恰在寻找多条路径方面的效果并不理想,Liu与Ramakrishnan试图用精确方法A*Prune来解决这一问题,但是受困于多约束条件下路由问题的NP-简单特性,精确方法不能保证在多项式时间之内得到结果。这种执行时间的不确定性显然无法满足现代网络中对路由速度的要求。所以本发明的目的在于提供一种在多约束下求取网络中多条最短简单路径的启发式方法,该方法在保证得到路径的数量与质量的同时,还保证在多项式时间之内完成计算。
为了进一步解释上述内容,下面给出几个重要的定义:
1、在多约束下求取网络中多条最短简单路径的问题:
给定由N个节点和E条链路构成的网络G(N,E)。其中连接任意节点u与v的链路(u→v)∈E拥有一个包含m个分量wi(u→v)≧0(其中i=1,...,m)的代价矢量w。以m个约束条件Ci(其中i=1,...,m)代表对路径服务质量的要求。该问题可以表述为,在源节点S与目的节点D之间寻找k条符合公式1中描述的所有约束条件的简单路径P(S→D[j])(j=1,...,k),并且保证上述路径使得公式3中描述的归一化非线性路径代价取得尽可能小的数值。
w i ( P ( S → D [ j ] ) ) = Σ w i ( u → v ) ∈ P ( S → D [ j ] ) ( u → v ) ≤ C i for all 1 ≤ i ≤ m - - - ( 1 )
2、非线性的路径代价函数:
对m个独立的代价数值wi(i=1,...,m)作归一化非线性合并的操作可以用公式2中的函数表示。
l q ( w 1 , Λ , w m ) = ( Σ i = 1 m ( w i C i ) q ) 1 q - - - ( 2 )
其中参数q(q>1)表示非线性系数。由公式2可知,从源节点S到目的节点D的第j条路径P(S→D[j])的归一化非线性代价可以用公式3中的函数表示。
l q ( P ( S → D [ j ] ) ) = ( Σ i = 1 m ( Σ ( u → v ) ∈ P ( S → D [ j ] ) w i ( u → v ) C i ) q ) 1 q - - - ( 3 )
当q→∞时,该归一化非线性代价可进一步表示为公式4的形式。
l ∞ ( P ( S → D [ j ] ) ) = max i = 1 , Λ , m ( Σ ( u → v ) ∈ P ( S → D [ j ] ) w i ( u → v ) C i ) - - - ( 4 )
3、路径的延伸:
对于一条路过n个节点和n-1条链路的路径P(a1→an)=(a1→a2)+(a2→a3)+,...,+(an-1→an),如果它的所有节点和链路都属于另一条源节点与之相同的路径
Figure G2008102278158D00025
,则表示路径可以通过在与之对应的路径P(a1→an)中间或末尾加入若干节点和链路来获得,我们称路径
Figure G2008102278158D00027
为路径P(a1→an)延伸出来的一条路径。
4、简单路径与含环路径:
如果属于一条路径的全部节点(包括源节点和目的节点)在这条路径中都只被路过一次,我们称这条路径为简单路径。由上述定义可知,简单路径中不含有从某个节点出发,再回到这个节点的封闭的环形结构。这样的封闭的环形结构在下文中简称为环,其中包含节点的个数称为环的尺寸。反之,如果一条路径中至少有一个节点被路过两次或两次以上,我们称这条含有环的路径为含环路径。特别的,对于一条简单路径P(a1→an),如果它的所有节点和链路都属于另一条源节点和目的节点与之相同的含环路径P*(a1→an),则表示含环路径P*(a1→an)可以通过在与之对应的简单路径P(a1→an)中间或末尾插入一个或多个封闭的环来获得,我们称路径P*(a1→an)为简单路径P(a1→an)延伸出来的一条含环路径。
根据上述定义可以进一步推知,所有的含环路径都可以由与之对应的简单路径延伸获得。只要网络中链路的代价是非负的,含环路径的代价一定大于或等于与之对应的简单路径。而一旦与之对应的简单路径因为其中某个节点或某条链路的损坏而失效,该含环路径由于同样含有这个节点或链路,也必然会失效。所以保留含环路径在实际的路由中没有任何价值。
5、有效路径与无效路径:
在路径计算中,如果某一条新发现的路径同时符合以下3个条件:a)它的代价符合约束条件;b)当前还没有发现k条(或k条以上)使得公式2中描述的归一化非线性代价比它小的路径;c)它属于简单路径,则这条路径有可能成为(或延伸为)网络中多约束条件下前k条最短简单路径之一,我们称这样的路径为有效路径。反之,至少违反上述3个条件中一个的路径被称为无效路径。在计算中保留无效路径不仅对于提高多约束条件下前k条最短简单路径计算结果的质量没有任何价值,还会消耗大量的计算时间并挤占其它有效路径在节点列表中的存储空间,所以应当尽快将其识别出来并丢弃。
6、最优路径与次优路径:
在有效路径中,从源节点S到其它某个节点的归一化非线性代价最小的路径被称为该节点的最优路径。特别的,从源节点S到目的节点D的归一化非线性代价最小的路径被称为全局最优路径;其它的没有可能成为(或延伸为)最优路径的有效路径均被称为次优路径。
7、路径的跳数:
路径路过节点(包括其源节点与目的节点)的总数称为该路径的跳数。
8、节点的路径列表:
在路径计算中,除了路由请求的源节点S以外,其它节点将当前发现的从源节点S到该节点的归一化非线性代价最小的前k条路径的序号、代价及其路过的节点都被保存在这个节点的一个列表中,我们称这个列表为该节点的路径列表。例如:节点n的路径列表中的第i条路径P(S→n[i])(其中1≤i≤k)表示从源节点S到节点n的第i条路径。
9、路径控制性法则:
经典的路径控制性法则是一种通过分别比较路径的代价向量的各个分量,在延伸路径的同时不断地丢弃含环路径和次优路径的方法,它可以有效的减少需要考察的路径数量。如公式5所示:如果一条从路径P(S→u[i])新延伸到节点v的路径Pnew(S→u[i]→v)=Pnew(S→u[i])+(u→v)的全部m个代价分量都分别大于等于其末端节点v路径列表中第j条路径Pold(S→v[r])的相应代价分量,就表明这条新的路径永远不可能成为全局最优路径的一部分,而且还可能是由Pold(S→v[r])延伸出的一条含环路径。对于只需要求取一条全局最优路径的情况,为了减小在Pnew(S→u[i]→v)身上花费的运算量,不再进一步鉴别它是有效的次优路径还是无效的环路,直接认为它受控于Pold(S→v[r])并立即将其丢弃。显然,这样的做法的缺点是误删了很多恰好在代价比较中受控的次优路径,从而很难同时保证找到的路径的数量和质量。
wj(Pnew(S→u[i]→v))≥wj(Pold(S→v[r])) r∈1,Λ,k for all 1≤j≤m   (5)
在本发明提出的方法中,由于需要寻找前k条最短简单路径,必须将有效的次优路径与无效的环路区别对待,故需要对上述法则进行改进。首先,在使用路径代价判断其控制性之前,不仅对末端含有kc个节点以内环的新延伸路径作了彻底的清除,而且对距离源节点的跳数在kc以内的有效路径直接加以确认和保护,避免在后面的路径控制性判断中将其误当作含环路径丢弃。而后,在路径跳数hop_num与代价分量wj(j=1,...,m)的比较中,当且仅当公式6、7中的条件同时得到满足时,这条新路径才被确定受控于Pold(S→v[r])并被丢弃,否则将其视为为有效路径。
hop_num(Pnew(S→u[i]→v))-hop_num(Pold(S→v[r]))≥kc r∈1,Λ,k   (6)
wj((Pnew(S→u[i]→v)))≥wj((Pold(S→v[r])))×(1+δ×kc)
                                     r∈1,Λ,k for all 1≤j≤m  (7)
对于公式6,kc表示对路径中环的探察深度,由于尺寸在kc以下的环都已经在前面的环路剪除中被识别出来,所以只要一条路径的跳数小于现有的跳数加kc,就可以直接断定它不是由该路径延伸出的含环路径。在公式7中,kc越大,表示此前对含环路径清除的越彻底,相应的,δ×kc的数值随之增大,按比例放宽所有代价分量的受控判决标准。δ(δ>0)表示为了进一步在损失剩余的有效路径与消除剩余的含环路径间取得平衡而设立的收放系数。考虑到此时如果路径中仍然存在环,该环的尺寸必然大于kc,其会给路径代价的每一个分量增加一个非负数值,所以在kc已经确定的情况下,可以通过调整收放系数δ的大小,成比例调整所有代价分量的受控判决标准,在损失剩余的有效路径与消除剩余的含环路径间取得最佳的效果。当kc=0时,公式7退化回经典法则的公式5。
发明内容
本发明公开了一种在多约束下求取网络中多条最短简单路径的启发式方法。其包含以下步骤与内容:
1、在程序中输入相关参数:包含N个节点和E条链路的网络拓扑图G(N,E)、每条链路上的m个代价分量wi≥0(i=1,...,m)、对路径代价的m个约束条件Ci≥0(i=1,...,m)、中间节点在计算过程中保存的路径数量k、路径中环的探察深度kc、路径控制性判决标准的收放系数δ、路由请求的源节点S和目的节点D。
2、反向路径代价预测:
2-1使用Dijkstra算法m次,依次基于每个约束条件对应的代价分量wi(1≤i≤m)计算目的节点至其它节点路径的代价下限wi_pre(u→D)。
2-2使用步骤2-1中每个节点得到的m组代价分量下限,从网络拓扑图中删除该代价下限的数值超过约束上限的违反约束节点以及通往这些节点的链路。这些节点列表中保存的所有路径都已经不可能延伸为有效路径,此时将其删除可以有效的减小在正向路径计算时网络中节点的搜索范围。
2-3对于步骤2-1基于单个代价分量得到的m条源节点S与目的节点D之间的最短路径,使用公式3计算它们的归一化非线性代价,取其中前k个符合约束路径的代价按照递增顺序排队,记为代价队列1max[1],...,1max[k],其中相同路径的代价只记一次。若代价个数不足k,则用1(即约束上限的归一化非线性合并值)填充队列末尾的所有空位。将队列中的第k个数值1max[k]作为有可能成为前k条最短简单路径的有效路径的归一化非线性代价上限。延伸到目的节点D以后的归一化非线性代价下限的预测值超过1max[k]的路径将被丢弃。
3、正向路径计算:
3-1根据其它节点与源节点S的邻接关系向集合Q中放入已发现的路径:设置集合Q,用于放置所有节点列表中已经发现的全部的路径。将所有与源节点S直接相邻的节点列表中的第1条路径放入Q中,并使用公式2计算出的S与该节点之间链路的归一化非线性代价作为这条路径的代价。
3-2从Q中选取出归一化非线性代价下限的预测值在Q的所有路径中最小的一条路径P(S→u[i]),其中归一化非线性代价下限的预测值的定义是:源节点S到节点u的m个代价分量wr(S→u[i])(r=1,...,m)与节点u到目的节点D的m个反向预测代价分量下限wr_pre(u→D)(r=1,...,m)分别相加并作归一化非线性合并后的数值。给该路径做标记,表示以后不再重复考虑它。由于该预测值代表了对这条路径延伸到目的节点D以后完整路径的归一化非线性代价可能达到的最小值的预测,所以如果它大于目的节点代价队列中第k个数值1max[k],就可以确定这条路径不可能延伸成为前k条最佳路径中的一条。此时不仅它将作为无效路径丢弃,而且Q中其余未选取过的路径也因为总代价下限的预测值更大而全部被丢弃。一旦出现上述情况或Q中所有的有效路径都已经被选取过了,结束选取路径的循环,跳转到步骤4。
3-3判断选取的路径P(S→u[i])延伸到下一个邻接节点后的有效性:
3-3-1选择节点u的一个邻接节点v。
3-3-2判断末端延伸到节点v后的新路径P(S→u[i]→v)的归一化非线性代价下限的预测值是否仍然不大于1max[k]:计算路径P(S→u[i]→v)的归一化非线性代价下限的预测值,若大于1max[k],则新延伸的路径由于代价超标,不可能成为前k条最短简单路径的一部分,该路径被直接确定为无效路径,其不再执行步骤3-3-3与3-3-4中的判断并直接被丢弃,程序跳转到步骤3-3-6。
3-3-3判断路径P(S→u[i]→v)末尾是否存在环:判断P(S→u[i])末端的kc个节点中是否含有节点v。若发现节点v,则新延伸的路径由于含有从节点v出发再回到节点v的环,不可能成为任何有效路径的一部分。该路径被直接确定为无效路径,其不再执行步骤3-3-4中控制状况的判断并直接被丢弃,程序跳转到步骤3-3-6。反之若发现了源节点S且未发现节点v,则新延伸的路径中不含有环,该路径被直接确定为有效路径。为了避免在后面的路径控制性判断中将其误当作环路剪除,其同样不再执行步骤3-3-4中控制状况的判断,程序跳转到步骤3-3-5。
3-3-4判断路径P(S→u[i]→v)与末尾节点v列表中路径之间的控制状况:对于有效性仍未得到确认的路径P(S→u[i]→v),分别将其与节点v现存路径列表中的每条路径P(S→v[j])(j=1,...,k)进行比较。若归一化非线性代价1(P(S→u[i]→v))大于或等于1(P(S→v[j])),同时当且仅当以下条件a和条件b都得到满足时,该新路径因为受控于P(S→v[j]而被确定为无效路径并被丢弃;否则其被确定为有效路径。条件a为:P(S→u[i]→v)的跳数大于或等于P(S→v[j])的跳数与路径中环的探查深度kc的和(公式6)。条件b为P(S→u[i]→v)的全部m个代价分量wr(P(S→u[i]→v))(r=1,...,m)都大于或等于P(S→v[j])的相应代价分量乘以(1+δ×kc)的积(公式7)。
3-3-5更新邻接节点v的路径列表:若该新延伸的路径P(S→u[i]→v)最终被确定为有效路径,而且其归一化非线性代价小于节点v当前的列表中归一化非线性代价最大的一条Pmax(S→v[j]),则用它代替这条旧的路径并将它放入Q中。若该邻接节点为目的节点D,使用P(S→u[i]→v)的归一化非线性代价更新D的代价队列的前k个数值1max[1],...,1max[k]。
3-3-6若节点u还有其它邻接节点未被使用过,返回步骤3-3-1。否则跳转到步骤3-4。
3-4若Q中还有未选取过的路径,返回步骤3-2。否则跳转到步骤4。
4、若在目的节点D的列表中保存有至少有一条从S到D的有效路径,则按照归一化非线性代价递增顺序输出这些路径并结束计算。否则输出路径计算失败的结果并结束计算。
本发明具有以下优点:
(1)本发明所涉及的方法,在正向路径计算中,对传统的路径控制性法则做出了改进:在预先对尺寸在探察深度kc以内的环进行识别的基础上,直接对距离源节点的跳数在kc以内的有效路径做出了确认和保护。在路径间的控制性判断中,引入了比较路径跳数的操作,并且可以按比例对各个代价分量的判决标准作适度的调整。在丢弃含环路径的前提下,尽可能多的保护了有效的次优路径,提高了多路径计算结果的数量和质量。以上操作的精确性可以通过改变2个简单参数kc与δ的数值,方便的进行调整。
(2)本发明所涉及的方法,在反向路径代价预测中,使用分别基于各个代价分量的m次线性计算取代了线性或非线性合并所有代价分量后的单次计算,在预测精度与运算复杂度之间取得了平衡。根据每个代价分量下限的预测结果,可以从网络拓扑中预先删除单个代价下限违反约束的节点以及相关链路,避免了这些无效路径在正向路径选取的每一次循环中作为候选路径占用大量的计算时间。
(3)本发明所涉及的方法,将每个节点的m个反向代价分量下限与其正向路径的相应代价分量相加并作归一化非线性合并,预测途经该节点的路径的归一化非线性代价下限;并且使用一个由已发现的前k条最短简单路径的归一化非线性代价按照递增顺序排列所组成的队列,以第k个数值1max[k]作为衡量标准,精确的圈定前k条路径的候选路径的归一化非线性代价上限。将节点路径列表的存储空间只分配给代价下限预测值不大于1max[k]的有可能延伸为前k条路径的候选路径以提高计算结果的质量,在集合Q中已经没有这样的候选路径时,结束路径选取循环,进一步的降低路径搜索的运算量。
(4)本发明所涉及的方法,其运算复杂度与传统的宽度优先搜索方法相似,并且可以通过改变2个简单的参数k与kc的数值,随着路由器CPU的负载和实际的网络情况的变化实时的进行调整,在CPU能力允许的条件下,取得尽可能高的路由性能。所以此方法具有广泛的适用性,尤其适合嵌套在具有生存性的网络中寻找相互保护的路径对的路由方法中,用以提高上述成对路径的综合质量和发现概率。
附图说明
图1:本发明提出的在多约束下求取网络中多条最短简单路径的启发式方法的流程图;
图2:本发明提出的方法中反向路径代价预测的流程图;
图3:本发明提出的方法中正向路径计算的流程图;
图4:本发明提出的方法在仿真中使用的网络拓扑图。其中:
a为mesh型网络;b为waxman型网络。
图5:仿真结果图。其中:
(a),(b),(c)分别表示在mesh型网络中,路径搜索结果中有效路径的平均数量(AN)、平均最优性(AO)与至少成功发现一条有效路径的概率(SR)这3个参数随着不同网络规模和约束程度的变化趋势。(k=10,kc=5,δ=0.1)
(d),(e),(f)分别表示在waxman型网络中,AN、AO与SR随着不同网络规模和约束程度的变化趋势。(k=10,kc=5,δ=0.1)
图6:本发明提出的方法的主程序的函数伪代码描述:
图7:本发明提出的方法中的反向路径代价预测、从Q中选取路径和正向路径计算等3个子程序的函数伪代码描述:
具体实施方式
为了更好的验证本发明提出的方法的性能,将其分别应用在规则拓扑结构的Mesh型网络与随机拓扑结构的Waxman型网络中进行了仿真。仿真中还考虑了多种网络中的节点数量N(包括25,50,100)与约束程度γ(包括4.5,1.5)的情况。网络中的每一条链路拥有2个在[0,10]区间内随机生成的均匀分布且无相关性的代价分量。方法的性能使用对10000次随机生成的源、目的节点的路由请求的执行的平均效果来进行评估。用作性能评估的参数包括:路径搜索结果中有效路径的平均数量(简写为AN)、有效路径的平均最优性(简写为AO)与至少成功发现一条有效路径的概率(简写为SR)。用作性能对比的方法是传统的宽度优先搜索的路径计算方法,该方法使用线性合并的路径代价函数。
由于在实际的路由中,计算结果中排位越靠前的路径被使用的概率越大,所以这里AO被进一步定义为方法发现的前n条路径属于全局最优的前n条路径的概率。仿真中节点列表中保存的子路径数k的取值为10,故这里将n取5以便使结果更清晰。约束程度γ被定义为约束条件的各个代价分量的数值与该代价分量下最短路径的相应代价分量数值的比值。该比值越大表示约束条件越宽松;反之表示约束条件越严格。仿真中分别以γ=4.5和γ=1.5代表这两种情况。
图5中,随着网络规模和约束程度的增加,无论在规则拓扑结构的Mesh型网络还是在随机拓扑结构的Waxman型网络中,本发明提出的方法在平均路径数量AN、最优性AO与成功概率SR这3方面都始终明显领先于传统的宽度优先搜索方法,其中AN数值接近节点缓存路径数量的上限。此时,传统的宽度优先搜索方法不对路径中是否含有环进行判断,计算中混入的大量含环路径导致其有效路径数量的下降;其使用的线性合并的路径代价函数无法快速的鉴别出单个代价分量超过约束上限的路径,这又影响到路径最优性与成功概率。虽然两种方法的AN、AO与SR都随着网络规模的上升或约束程度的增加而有所下降,但是本发明提出的方法性能下降的幅度明显小于传统的宽度优先搜索方法。在这种情况下,即使不增加其环路探察深度kc的数值(此时kc=5,远小于网络节点数N=100),本发明提出的方法仍然可以展现出足够稳定的性能,这种优势在比较严格的约束条件下更加明显。
由此可见本文提出的方法在求得的路径的数量、质量以及发现路径的能力等3方面都具有优异而且稳定的性能,其适合应用在求取网络中多约束下的多条最短简单路径的情况。
综上所述,本方法达到了预期的目的。

Claims (3)

1.在多约束下求取网络中多条简单路径的启发式方法,其特征在于包含以下2个主要步骤:
反向路径代价预测:当路由请求具有m个约束条件时,使用Dijkstra算法m次,依次基于每个约束条件对应的代价分量计算目的节点D至其它节点路径的代价下限,从网络拓扑图中删除该代价下限的数值超过约束上限的节点以及通往这些节点的链路;计算基于单个代价分量得到的m条源节点S与目的节点D之间的最短路径的归一化非线性代价;取其中前k个符合约束路径的代价按照递增顺序排队,记为D的代价队列lmax[1],...,lmax[k],其中相同路径的代价只记一次,代价个数不足k时用1补充队列末尾的所有空位;将队列中的第k个数值lmax[k]作为有可能成为前k条最短简单路径的有效路径的归一化非线性代价上限;
正向路径计算:将所有与源节点S直接相邻的节点列表中的第1条路径放入已经发现的全部路径的集合Q中;从Q中选取归一化非线性代价下限的预测值最小的一条路径P(S→u[i]),其中,归一化非线性代价下限的预测值被定义为,源节点S到节点u的m个代价分量wr(S→u[i])(r=1,...,m)与节点u到目的节点D的m个反向预测代价分量下限预测值wr-pre(u→D)(r=1,...,m)分别相加并作归一化非线性合并后的数值;判断这条路径延伸到其末尾节点的所有邻接节点后的新路径P(S→u[i]→v)的有效性,其中,判断路径有效性的过程包括以下步骤:判断末端延伸到节点v后的新路径P(S→u[i]→v)的归一化非线性代价下限的预测值是否仍然小于lmax[k];判断路径P(S→u[i]→v)末尾是否存在环;判断路径P(S→u[i]→v)与末尾节点v列表中路径之间的控制状况;若该新延伸路径被确认为含有环的、代价分量不符合约束条件的或归一化非线性代价下限的预测值超过lmax[k],则将其丢弃,反之,使用该有效路径更新节点v的路径列表,若v为目的节点D,更新D的路径代价队列;重复执行从Q中选取路径的循环,直到Q中全部的有效路径都已经被选取完毕。
2.如权利要求1所述的方法,其特征在于:在对路径P(S→u[i]-→v)末尾是否存在环的判断中,判断P(S→u[i])末端的kc个节点中是否含有节点v;若发现节点v,则该路径被确定为末尾含有环的无效路径并被丢弃,不再执行控制状况的判断;反之若发现了源节点S且未发现节点v,则,该路径被确定为不含有环的有效路径,同样不再执行控制状况的判断。
3.如权利要求2所述的方法,其特征在于:在对路径P(S→u[i]→v)与末尾节点v列表中路径之间的控制状况的判断中,对于有效性仍未得到确认的路径P(S→u[i]→v),分别将其与节点v现存路径列表中的每条路径P(S→v[j])(j=1,...,k)进行比较;若归一化非线性代价1(P(S→u[i]→v))大于或等于1(P(S→v[j])),同时当且仅当以下条件a和条件b都得到满足时,该新路径因为受控于P(S→v[j])而被确定为无效路径并被丢弃;否则其被确定为有效路径;条件a为:P(S→u[i]→v)的跳数大于或等于P(S→v[j])的跳数与路径中环的探查深度kc的和;条件b为P(S→u[i]→v)的全部m个代价分量wr(P(S→u[i]→v))(r=1,...,m)都大于或等于P(S→v[j])的相应代价分量乘以(1+δ×kc)的积,其中,δ是为了在损失剩余的有效路径与消除剩余的含环路径间取得平衡而设立的收放系数,δ>0。
CN2008102278158A 2008-12-01 2008-12-01 在多约束下求取网络中多条最短简单路径的启发式方法 Expired - Fee Related CN101753425B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008102278158A CN101753425B (zh) 2008-12-01 2008-12-01 在多约束下求取网络中多条最短简单路径的启发式方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008102278158A CN101753425B (zh) 2008-12-01 2008-12-01 在多约束下求取网络中多条最短简单路径的启发式方法

Publications (2)

Publication Number Publication Date
CN101753425A CN101753425A (zh) 2010-06-23
CN101753425B true CN101753425B (zh) 2011-11-09

Family

ID=42479855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008102278158A Expired - Fee Related CN101753425B (zh) 2008-12-01 2008-12-01 在多约束下求取网络中多条最短简单路径的启发式方法

Country Status (1)

Country Link
CN (1) CN101753425B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059811B (zh) * 2010-11-01 2019-07-05 日本电气株式会社 通信系统、控制装置、分组转发路径控制方法
CN102307112B (zh) * 2011-09-09 2013-03-20 北京航空航天大学 含有非精确状态信息的网络中睡眠节点的唤醒机制
CN102307147A (zh) * 2011-09-09 2012-01-04 北京航空航天大学 含有睡眠机制的非精确信息网络中节点等待时间预约机制
CN102523155B (zh) * 2011-12-08 2015-03-25 中国电力科学研究院 一种基于Boost库的K则最短路径搜索方法和系统
CN102664802B (zh) * 2012-04-20 2014-10-22 同济大学 基于反馈的自适应多约束的路径搜索方法
CN102882792B (zh) * 2012-06-20 2015-05-13 杜小勇 互联网传播路径图简化方法
CN109257287B (zh) * 2017-07-13 2020-08-25 华为技术有限公司 一种最短路径确定方法及控制器
CN109995650B (zh) * 2018-01-03 2022-02-22 中兴通讯股份有限公司 基于sdn网络的多维约束下路径计算方法及装置
CN108932565A (zh) * 2018-07-05 2018-12-04 烽火通信科技股份有限公司 一种基于网管的寻路方法及系统
CN110224927B (zh) * 2019-06-11 2020-07-10 西安电子科技大学 基于反向删减策略的确定网络多约束双路径路由方法
CN113207138B (zh) * 2021-05-11 2022-08-02 网络通信与安全紫金山实验室 基于多质量属性的sr方法、系统、设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1416243A (zh) * 2002-12-30 2003-05-07 清华大学 基于宽度优先搜索的性能可调启发式服务质量路由方法
CN1567747A (zh) * 2003-06-13 2005-01-19 港湾网络有限公司 一种光网络多约束业务最短路由的计算方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1416243A (zh) * 2002-12-30 2003-05-07 清华大学 基于宽度优先搜索的性能可调启发式服务质量路由方法
CN1567747A (zh) * 2003-06-13 2005-01-19 港湾网络有限公司 一种光网络多约束业务最短路由的计算方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Gang Liu, K.G. Ramakrishnan.A *Prune: An Algorithm for Finding K Shortest Paths Subject to Multiple Constraints.《IEEE INFOCOM》.2001,743-749. *

Also Published As

Publication number Publication date
CN101753425A (zh) 2010-06-23

Similar Documents

Publication Publication Date Title
CN101753425B (zh) 在多约束下求取网络中多条最短简单路径的启发式方法
Hochbaum The pseudoflow algorithm: A new algorithm for the maximum-flow problem
KR100402528B1 (ko) 최소 비용 경로 탐색 장치 및 이것에 의해 이용되는 최소비용 경로 탐색 방법
Lagoudakis et al. Learning to select branching rules in the DPLL procedure for satisfiability
CN101611592B (zh) 光网络中的光信号的动态路由
CN108040008B (zh) 在线服务功能链的跨域部署方法
CN106161230A (zh) 一种备份链路确定方法及装置
CA2743466A1 (en) Path calculation order deciding method, program and calculating apparatus
CN108270677A (zh) 一种快速路由收敛方法及装置
Pirkul et al. New formulations and solution procedures for the hop constrained network design problem
Larrosa¹ et al. Pseudo-tree search with soft constraints
CN106875043B (zh) 一种基于gn分裂算法的节点迁移网络分块优化方法
Ming A rough set based hybrid method to feature selection
CN115622903B (zh) 一种基于网络结构的电信网节点重要度计算方法
Duin Preprocessing the Steiner problem in graphs
Hochbaum et al. The bounded cycle-cover problem
Smith et al. Modelling exceptionally hard constraint satisfaction problems
Toth et al. An exact algorithm for the capacitated shortest spanning arborescence
Li et al. An iterated metaheuristic for the directed network design problem with relays
CA2507598C (en) Method and device for designing a data network
EP3157209B1 (en) Route search apparatus and route search method
JP4408000B2 (ja) 経路探索方法および装置
CN110224927B (zh) 基于反向删减策略的确定网络多约束双路径路由方法
JP2009260705A (ja) リンクとリンク容量増設方法、およびそのプログラム
Lin et al. A tabu search based metaheuristic for the network design problem with relays

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111109

Termination date: 20141201

EXPY Termination of patent right or utility model