基于量子进化的组播路由优化方法

文档序号:7945633阅读:200来源:国知局

专利名称::基于量子进化的组播路由优化方法
技术领域
:本发明属于网络通信计算领域,涉及一种组播路由方法,可用于提高因特网的服务质量。
背景技术
:从上个世纪末到本世纪初是网络技术大发展的时代,特别是以因特网为代表的IP网络更是日新月异。因特网上的用户数量持续呈爆炸性增长,网上的应用由传统的电子邮件转向FTP、WWW等应用。此外,基于因特网的新应用和业务也在不断地推出,如电子商务、IP电话、视频会议等。但是,要满足这些业务的需求,特别是要保证一些实时业务的带宽、时延等特殊需求,以目前因特网中的尽力而为的服务是难于完成的。尽力而为服务的特点是对所有应用提供同种数据传输服务,对网络的资源缺乏有效的分配和管理,当网络负载较轻时,各个应用得到的传输服务质量尚可,但是随着用户数目的增多,网络的负载也将增加,此时,各种应用的行为表现为无序地竞争网络资源,造成网络资源的不合理占用各种应用各为其利,其结果是服务质量互相恶化。目前的因特网技术急需进行改进以提供有效的资源分配与管理。如前所述的两络应用,如视频会议、交互式游戏、声音/视频电话、实时多媒体播放、分布式计算、视频点播和远程教学等网络应用的特点是涉及多个成员的交互,本质上具有组播的特征。KPP是较早提出的一个时延受限组播路由方法,它借鉴了KMB方法的思想,首先构造一个只包含源节点和目的节点集合的完全图,这个完全图中的每条边对应原图中两个节点之间满足时延约束的费用最短路然后从完全图中产生一个时延受限生成树;最后将生成树的边用原图中的时延受限最小费用路径代替,并去掉产生的回路。这种方法的缺点是复杂度高;当解存在时,它可能会找不到最优解。BSMA方法是对KPP方法的一种改进,它采用先找到问题的可行解,然后对可行解进行改进,使其性能更加接近最优解的方法,具体过程是先用LD方法生成组播树;然后用费用更小的且满足时延要求的超边代替生成树中费用较大的4超边,在替换费用高的超边时用到了k最短路径方法,其中超边是指一条起始和中止节点都为度大于或等于2的节点的一条路径,超边也可以是两个目的节点之间的一条路径,或者是一条度大于2的节点和目的节点之间的一条路径;反复进行这一步骤,直到整个生成树的费用不能再减小为止。该方法的缺点是求解过程复杂,不适用于优化大规模网络。最近几年提出的基于遗传方法的解决组播路由的方法,虽然比经典方法加强了全局搜索能力,但是它容易陷入"早熟",很难得到最优组播树。而基于人工免疫理论解决组播路由的方法,需要通过不断的科隆种群才能够保持种群的多样性,得到最优组播树,但这样使得方法的时效性大大降低。
发明内容本发明的目的在于克服已有技术的不足,提出一种基于量子进化的组播路由方法,以减小求解组播树时间,获得较小的组播树代价,降低运算法杂度,提高网络的时效性。实现本发明的技术思路是将组播路由问题看作组合优化问题,用量子计算搜索使组播树代价最小化的序列组合作为最优解;利用量子计算快速的全局收敛性,搜索构成组播树问题的最优解,逼近最优组播树服务的性能。具体实现步骤如下(1)生成随机网络,并在网络中设置源节点、目的节点,给定运行参数和最大允许时延;(2)对每个给定的目的节点求解所有满足时延条件的备选路径集,并按升序排列;(3)对每个目的节点的前2^条(Ne[1,4])备选路径集进行量子编码,获得一个状态矩阵;<formula>formulaseeoriginaldocumentpage5</formula>(4)对表示各个目的节点备选路径集编码的状态矩阵^进行量子观测,得到一组二进制串;(5)对上述的二进制串进行解码,得到每个目的节点所选路径,由这些所选路经构成一棵组播树,并计算该组播树的适应度函数;FzY固=1/Mw膨eeCW,其中她/ft.:T鹏CW是组播树代价;(6)对表示各个目的节点备选路径集编码的状态矩阵《',通过量子旋转门进行量子变异;(7)对表示变异后的各个目的节点备选路径集编码的状态矩阵进行量子观测,得到一组新的二进制串;(8)对新的二进制串进行解码,得到每个目的节点新选路径,由这些新选路经构成一棵组播树,并计算该树的适应度函数,如果新的组播树适应度函数优于步骤(5)中的适应度函数,则采用由这些新选路经构成组播树的方式作为搜索到的最优组播树构建方式,否则继续采用步骤(5)中的构建方式作为搜索到的最优组播树构建方式;(9)判断是否满足终止条件,如果满足终止条件,结束优化并釆用最终搜索到的最优组播树构建方式,将信息以并行方式沿着该树枝发送到不同的目的节点,否则,继续执行第(5)步。本发明与现有技术相比具有如下优点1、计算复杂度低假设网络规模为",目的节点数为m,备选路径集为尸,种群规模为M,方法迭代次数为g,则寻找备选路径的复杂度为0(^);对备选路径进行升序排列的复杂度为O(log0P));寻找最优组播树的时间复杂度为O(gxMx附),所以本发明的时间复杂度近似为<formula>formulaseeoriginaldocumentpage6</formula>但现有的BMSA方法的时间复杂度为O("3xlogw),从时间复杂度上看本发明优于BMSA。2、仿真实验性能好,同等条件下求得组播树代价小为了验证量子进化组播路由方法的优越性,本发明将其与传统的遗传方法、克隆选择方法进行了比较。仿真实验表明与克隆选择方法相比,量子进化组播路由方法明显降低了时间复杂度,与传统的遗传方法相比,具有更好的搜索能力.这是因为有效地利用了量子计算原理中的并行性,并在每次迭代过程中,量子进化组播路由方法不是随机的选取某条路径,而是通过观察状态矩阵得到的,充分利用父代的信息,加快了算法的收敛,得到最优的组播树代价。图1是本发明的优化流程框图2是本发明寻找备选路径流程图3是AS.选择策略图4是本发明组播树代价随网络规模变化下的性能比较图5是本发明优化组播树时间代价随网络规模变化下的性能比较图6是本发明组播树代价随目的节点数增长情况下的性能比较图。具体实施例方式参照图l,本发明的具体实现过程如下步骤l,初始化生成随机网络并设置源节点目的节点,给定运行参数和最大允许时延。该运行参数包括初始种群规模M、表示每个目的节点的备选路径集的iV个量子比特位和量子旋转门的旋转角度3。步骤2,求出从目的节点到源节点的所有满足时延条件的路径,并将备选路径集按代价升序排列。参照图2,如下步骤求出从一个目的节点到源节点的所有满足时延条件的路径2a.当前就要访问的的节点压入存放路径的栈中,并将其状态设置为已访问;2b.如果当前访问节点为源节点,则保存这一条到达源节点的路径,并将源节点退栈;2c.如果当前节点不是源节点,并且当前节点的节点度不为零,则将每一邻居节点的时延与给定时延条件进行比较,如果加入其邻居节点后的时延小于或等于给定时延条件并且其邻居节点没有在栈中时,则返回步骤2a;否则将当前节点节点度减h2e.将当前节点退栈,并恢复其状态为未访问;重复步骤2a到2e求得其余目的节点的备选路径集,并将所求得每个目的节点的备选路径集按代价升序排列。7步骤3,对每个目标节点包含的备选路径数目,只选择其中前2W条,这样就可以用iV个量子比特位表示每个目标节的点的备选路径集,当有m个目的节点时,量子比特个体就有mxW个比特位,则根据量子进化计算理论,得到选取每个目的节点的路径状态矩阵为《=m2AwlAw2…/^w/w)满足归一化条件,并且所有其中|J2+|/7,;|2==1,2,…,附力=1,2,S,A都初始化为1/^。步骤4,对状态矩阵^进行量子观测并解码从而计算组播树适应度函数。量子观测时,用表示户(0^4,4,…,^v,…,4,《2,…,《w〉观测得到的值,其中x;(hl,2,…,m,X2,…,W)是一个长度为附xW的二进制串。具体操作如下产生一个的随机实数,若它大于g'中的l《f,则户w的相应位取值o,否则取值1,这样就得到了一个MxW的二进制字符串;以步长为对上述的二进制串进行解码,得到每个目的节点所选路径,例如当N=3,在第t代时,[c4c4a〖3]呵0()0]表示第二个目的节点选取的是第1条路径,依此类推,110就表示选取这一目的节点的第7条路径,当某个目的节点路总路径数为7时,111,110都表示选取第7条路径;由这些所选路经构成一棵组播树,并计算该组播树的适应度函数=l/Mw/ri7>eeCa^,其中AfwW7>eeCast是组播树代价。步骤5,对表示各个目的节点备选路径集编码的状态矩阵^,通过量子旋转门进行量子变异。基于进化方法的基本框架,采用量子比特表示个体,设计针对量子个体的量子旋转门变异策略。在量子理论中,各个状态间的迁移是通过量子门的变换矩阵得以实现,用量子旋转门的旋转角度同样也可表征量子个体中的变异操作,进而在变异中加入最优个体的信息,加快状态矩阵g'收敛。量子旋转门定义如下—cos,)-sin,)-sin,cos,_这里A《为旋转角度的大小,□《="<^,/,),其中^控制状态矩阵^收敛速度,s(^,A)为控制状态矩阵^收敛方向。如果^值太小,收敛速度将会变缓,如果5值过大将有可能产生早熟现象。本发明采取一种通用的、与问题无关的旋转角度调整策略,用x,作为当前普通个体)中的第z'位;用&W,作为当前的最优个体P(0中的第/位,/x)为适应度函数,s(a乂)控制旋转方向如表l所示表l旋转角M,在5L01;r时的选则策略义,Zj叫△《>0,=000假0000000真0000001假0000001真<5_1+1±1010假-1+1±1010真+1-l0±111假+1-l0±111真5+1-l0±1表1可见,当x,=0,tef,=l,/(x)优于/(&W)时,为使当前解收敛到一个具有更高适应度的个体,应增大当前解取O的概率,即要使l",f变大,根据图3所示的量子旋转门示意图可知,如果"^>0表示在第一、三象限时,^应向顺时针方向旋转;如果a,/,0在第二、四象限时,^应向逆时针方向旋转。此时状态矩阵《f+1中第/个量子比特位经变异操作后为A'《,(/=l,2,...,iVxm)其中为^中的第/个量子比特位,cos(口i9/)-sin(口i9/)sin,/)cos(吗')步骤6,对变异后表示各个目的节点客选路径集编码的状态矩阵《'"进行量子观测,得到一组新的二进制串户(,+1)={《,《1,…,《1,《t…,;c:)并以步长iV对P(f+l)进行解码得到每个目的节点新选取的路径,从而计算新的组播树适应度函数F,Yw咖=1/Mw/"rreeCow,其中Mw/rtTreeCoW是组播树代价。如果新的组播树适应度函数优于步骤4中的适应度函数,则采用由这些新选路经构成组播树的方式替代步骤4中的构建组播树方式作为最优组播树的构建方式,否则继续采用步骤4中的构建方式作为搜索到的最优组播树构建方式。步骤7,根据终止条件判断是否继续进行优化如果满足终止条件就结束优化方法,确立最终的构建组播树方式,使得除了保证所有的目的节点可达外,还有效降低了网络代价并尽量避免了通过负载过重的链路,信息以并行方式沿着该树枝发送到不同的目的节点,该终止条件为给定的最大进化代数。否则,继续执行步骤5。'本发明的效果可以通过以下仿真内容进一步说明。仿真内容仿真网络的生成保存了改进的Waxman随机网络模型,它保证了生成网络的连通性。在该模型中,任意两个节点w,v间存在链路的概率为/(w,v)=/exp(--;~)or丄其中,c/,v)为节点W到节点V的欧氏距离,丄为任意节点间最大距离,参数《和/控制产生网络的特征,其值在(0,1)之间,参数a控制网络中短边与长边之比,-用来调节网络节点的平均度数,保存的网络的坐标空间为4000kmx4000km,a为0.26,-为0.4,节点的平均度数为4,时延上限A为100。以GA和CS为比较基础,保存如下的性能指标/<formula>formulaseeoriginaldocumentpage10</formula><formula>formulaseeoriginaldocumentpage10</formula>二y<formula>formulaseeoriginaldocumentpage10</formula>其中A。w和《,分别是组播数代价和求解组播数时运行时间的平均性能,r表示实验次数,值小于1表示本发明平均性能优于GA和CS.。实验中,本发明的参数设置为种群规模M^10,一个目的节点的路径选取用7^=2个量子比特位。现有CS的参数设置为种群规模M二IO,克隆规模20,变异概率&=0.6。现有GA的参数设置为种群规模M=10,变异概率凡=0.03,交叉概率《=0.6。在CS和GA方法中对于每个目的节点的备选路径集只选择其前/0%条。为了比较的公平性,所有方法都只迭代100次。所有实验结果均是在独立运行30次的基础上得到的。实验运行的环境为主频2.33GHzPentiumIV和2G内存,使用0++语言编程实现。仿真结果及分析图4是本发明组播树代价随网络规模变化下的性能比较图,其中目的节点占网络规模的15%。从图5可以看出,CS的性能优于GA的,而本发明优于GA和CS,并且在随着网络规模的增大i^性能稳定,这说明本发明更适用于优化大规模网络。图5是本发明优化组播树时间代价随网络规模变化下的性能比较图,其中目的节点占网络规模的15%。从图6可以看出,GA的性能优于CS,而本发明优于GA和CS。虽然在随着网络规模的增大i自有略微上升的趋势,但总体上相对于GA和CS,本发明还是能够在较短的时间内完成优化,满足网络中对实时性要求较高的条件。图6是本发明组播树代价随目的节点数增长情况下的性能比较图,其中网络规模为1000。从图中7中可以看出,CS的性能优于GA的,而本发明优于CS和GA。在有多用户同时请求通信时,本发明也能满足对组播树的优化。总之,本发明提出的量子进化组播路由优化方法能够有效的解决组播路由问题,比传统的启发式方法、遗传方法和科隆选择方法具有更好的全局搜索能力,优化时所用的时间更少,并且随着网络规模的增长具有良好的稳定性。权利要求1.一种基于量子进化的组播路由优化方法,包括如下步骤(1)生成随机网络,并在网络中设置源节点、目的节点,给定运行参数和最大允许时延;(2)对每个给定的目的节点求解所有满足时延条件的备选路径集,并按升序排列;(3)对每个目的节点的前2N条(N∈[1,4])备选路径集进行量子编码,获得一个状态矩阵;<mathsid="math0001"num="0001"><math><![CDATA[<mrow><msup><mi>q</mi><mi>t</mi></msup><mo>=</mo><mfencedopen='['close=']'><mtable><mtr><mtd><msubsup><mi>&alpha;</mi><mn>11</mn><mi>t</mi></msubsup></mtd><mtd><msubsup><mi>&alpha;</mi><mn>12</mn><mi>t</mi></msubsup></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msubsup><mi>&alpha;</mi><mrow><mn>1</mn><mi>N</mi></mrow><mi>t</mi></msubsup></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msubsup><mi>&alpha;</mi><mrow><mi>m</mi><mn>1</mn></mrow><mi>t</mi></msubsup></mtd><mtd><msubsup><mi>&alpha;</mi><mrow><mi>m</mi><mn>2</mn></mrow><mi>t</mi></msubsup></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msubsup><mi>&alpha;</mi><mi>mN</mi><mi>t</mi></msubsup></mtd></mtr><mtr><mtd><msubsup><mi>&beta;</mi><mn>11</mn><mi>t</mi></msubsup></mtd><mtd><msubsup><mi>&beta;</mi><mn>11</mn><mi>t</mi></msubsup></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msubsup><mi>&beta;</mi><mrow><mn>1</mn><mi>N</mi></mrow><mi>t</mi></msubsup></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msubsup><mi>&beta;</mi><mrow><mi>m</mi><mn>1</mn></mrow><mi>t</mi></msubsup></mtd><mtd><msubsup><mi>&beta;</mi><mrow><mi>m</mi><mn>2</mn></mrow><mi>t</mi></msubsup></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msubsup><mi>&beta;</mi><mi>mN</mi><mi>t</mi></msubsup></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math></maths>(4)对表示各个目的节点备选路径集编码的状态矩阵qt进行量子观测,得到一组二进制串;(5)对上述的二进制串进行解码,得到每个目的节点所选路径,由这些所选路经构成一棵组播树,并计算该组播树的适应度函数;Fitness=1/MultiTreeCost,其中MultiTreeCost是组播树代价;(6)对表示各个目的节点备选路径集编码的状态矩阵qt,通过量子旋转门进行量子变异;(7)对表示变异后的各个目的节点备选路径集编码的状态矩阵进行量子观测,得到一组新的二进制串;(8)对新的二进制串进行解码,得到每个目的节点新选路径,由这些新选路经构成一棵组播树,并计算该树的适应度函数,如果新的组播树适应度函数优于步骤(5)中的适应度函数,则采用由这些新选路经构成组播树的方式作为搜索到的最优组播树构建方式,否则继续采用步骤(5)中的构建方式作为搜索到的最优组播树构建方式;(9)判断是否满足终止条件,如果满足终止条件,结束优化并采用最终搜索到的最优组播树构建方式,将信息以并行方式沿着该树枝发送到不同的目的节点,否则,继续执行第(5)步。2.根据权利要求1所述的组播路由优化方法,其中步骤(l)所述的给定运行参数,包括初始种群规模M,表示每个目的节点的备选路径集的7V个量子比特位和量子旋转门的旋转角度^。3.根据权利要求l所述的组播路由优化方法,其中步骤(2)所述的对每个给定的目的节点求解所有满足时延条件的备选路径集,按如下步骤求解3a.将当前就要访问的的节点压入存放路径的栈中,并将其状态设置为已访问;3b.如果当前访问节点为源节点,则保存这一条到达源节点的路径,并将源节点退栈;3c.如果当前节点不是源节点,并且当前节点的节点度不为零,则将每一邻居节点的时延与给定时延条件进行比较,如果加入其邻居节点后的时延小于或等于给定时延条件并且其邻居节点没有在栈中时,则返回步骤3a;否则将当前节点节点度减l;3e.将当前节点退栈,并恢复其状态为未访问;3f对其余目的节点按照3a到3e进行相同操作,并将所求得每个目的节点的备选路径按代价升序排列,完成求解过程。4.根据权利要求l所述的组播路由优化方法,其中步骤(3)所述的对每个目的节点的前2^条(iVe[l,4p备选路径集进行量子编码,按如下步骤进行4a当有w个目的节点时,计算量子比特个体编码的长度为wx:V个比特位;4b依次用其中W个比特位表示第w个目的节点选取的第"条路径的状态,得到一个量子个体的状态矩阵为这里满足归一化条件|",,|2+|^|2=l,(/=l,2,...,W=l,2,...,iV),并且所有c^,A都初始化为1/75,《'表示一个在第/代量子比特个体在0和1之间的叠加状态。5.根据权利要求1所述的组播树优化方法,其中步骤(5)所述对二进制串进行解码,得到每个目的节点所选路径,按如下步骤进行5a通过量子观测状态矩阵g',产生一组长度为mxJV的二进制串为尸(,)={《,4,…,...,其中x,;(/=1,2,...,附,7.=1,2,...,^0;5b以iV为步长对所述的二进制串/XO进行解码,得到第z'个目的节点选取的第"条路经"=x;,x1+义;2x2W-2+...+4+1;5C根据第/个目的节点选取的第"条路经判断是否大于其总路径数"如果"大于J寸,都表示选取的是第^条路径,否则选取的即为第n条路径。全文摘要本发明公开了一种量子进化组播路由优化方法,它涉及进化计算领域,其目的在于克服已有技术存在的优化时间长、易于陷入局部最优等问题,其实现步骤为(1)生成随机网络并给定运行参数;(2)对每个目的节点求解所有满足时延条件的备选路径;(3)对每个目的节点的备选路径集进行量子编码,获取状态矩阵;(4)对状态矩阵进行量子观测,得到一组二进制串;(5)对二进制串进行解码,得到每个目的节点所选路径,计算该组播树适应度函数;(6)通过量子旋转门对状态矩阵进行量子变异;(7)通过观测状态矩阵,得到一组新的二进制串,对新二进制串进行解码后,计算新的组播树适应度函数。本发明具有计算复杂度低,优化后组播树代价小,可用于有效分配网络资源。文档编号H04L12/56GK101616074SQ200910022289公开日2009年12月30日申请日期2009年4月30日优先权日2009年4月30日发明者吴建设,李阳阳,焦李成,赵京京,红韩,马文萍申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1