基于改进nsga-ⅱ的光组播编码-链路代价折中方法

文档序号:8447380阅读:563来源:国知局
基于改进nsga-ⅱ的光组播编码-链路代价折中方法
【技术领域】
[OOOU本发明属于通信技术领域,设及一种基于改进NSGA-II的光组播编码-链路代价 折中方法。
【背景技术】
[0002] 随着视频会议、网络电视、多媒体远程教育等多播业务的快速发展,网络带宽的消 耗W及拥塞发生的快速增加,传统通信网正面临着带宽资源不足、网络吞吐量低、业务阻塞 率上升等严重的问题,网络的资源日趋紧张。由于光网络具有高带宽和高速率的信息传输 能力,其暂时解决了传统电域网络中带宽资源不足等问题。不过,近年来随着宽带业务和多 播应用的持续快速增长,光网络再次面临带宽资源不足、网络阻塞率持续增高等诸多问题。 网络编码有提高网络吞吐量、均衡网络负载、增加网络带宽利用率、减少网络资源损耗、提 高网络安全性、减少能量消耗等优点。因而,基于网络编码的路由方式越来越受到研究者的 重视。将网络编码引入到光网络中,利用网络编码的优点来解决光网络带宽资源不足等问 题不失为一个有效的方法。但是,过多的编码操作必将会增加网络的运算开销、复杂度和编 码时延等。所W,在发挥网络编码最大效用的同时,必须尽可能减少编码操作数,降低编码 代价。
[0003] 考虑在满足组播最大吞吐量的前提下,某些节点或链路需要进行编码的情况下, 一些额外的链路容量能否减少编码需求,也就是组播网络中是否存在编码-链路代价折中 方案。编码-链路代价折中方案也即编码代价和链路代价达到一个平衡点,在此平衡点上 若想再减小编码代价,则必定会使链路代价增大;若想再减小链路代价,则必定会使编码代 价增大。一个给定网络中的折中方案信息能实现对网络编码的调度,比如将网络编码只应 用在能显著节约链路代价的地方。因而,本发明提出一种方法用于寻找光组播网络中的编 码-链路代价折中方案,即实现同时优化编码代价和链路代价的多目标优化问题。
[0004] 研究证明,寻找组播网络中的编码-链路代价折中方案是一个 NP(non-deterministicpolynomial,非确定性多项式)难问题。目前已有较多学者采用各 种智能优化算法进行求解,比如多目标遗传算法、粒子群优化算法等,但是该些方法在算法 有效性和解的多样性方面仍存在欠缺,因此,本发明在此基础上针对编码-链路代价折中 方案问题提出一种改进的NSGA-II算法(Non-dominatedso;rtinggeneticalgorithmII, 非支配排序遗传算法II)。

【发明内容】

[0005] 有鉴于此,本发明的目的在于提供一种基于改进NSGA-II的光组播编码-链路代 价折中方法,该方法可W尽可能多地寻找到光网络中的编码-链路代价折中点W及每一折 中点对应的不同编码方案。
[0006] 为达到上述目的,本发明提供如下技术方案:
[0007] 一种基于改进NSGA-II的光组播编码-链路代价折中方法,在非支配分级步骤中, 采用一种侧重于编码代价优化的方法确定等级二中的个体,等级二相对于等级一更加靠 前;在拥挤排序步骤中,将同一个等级中的个体计算拥挤距离和汉明距离的和值,根据其和 值确定个体之间的差异性;在交叉操作中,采用一种基于学习机制的交叉算子,引导个体不 断进化。
[000引进一步,在非支配分级步骤中,采用基于编码代价的部分支配方法确定等级一中 的个体;将所有个体按照编码代价从小到大的顺序排列,选择前n%个体,在该前n%个体 中除去由部分支配方法确定的等级一中的个体,剩下的放入等级二中,其中,n的取值范围 为5~10。
[0009]进一步,在拥挤排序步骤中,计算同一等级中个体的拥挤距离和汉明距离;计算每 一个等级中个体的汉明距离,即对同一等级中的个体在各个目标方向上按照目标函数值从 小到大排列,对排列在两端的个体设汉明距离为无穷;对中间每一个体i,根据式子:
[0010] IXOR化,Xw) |/L+|XOR〇(H,Xi)I/L即求得个体i在某一目标方向上的归一化 汉明距离,然后将各个目标方向上的归一化汉明距离求和,即得个体i的汉明距离,其中, IXOR化,Xw)I是指染色体Xi与XW中的基因逐位相与再求和,L是指染色体的长度;
[0011] 将每个个体的拥挤距离和汉明距离求和,根据其和值由大到小进行排序,和值越 大,表明该个体与其他个体之间的差异性越大,被选择出来的概率也就越大。
[0012] 进一步,在交叉操作中,根据交叉概率随机选择两个交叉的父代个体A和B,然后 比较A、B,若A支配B,则BW-个较大的概率Pt向A学习,即B中的每个基因块或基因位 均W-个较大的概率Pt被A中的等位基因块或基因位替换,产生子代个体B',同时AW- 个较小概率向B学习,即A中的每个基因块或基因位均W某一较小概率被B中的等 位基因块或基因位替换,产生子代个体A';若A、B互不支配,则A和BW相同的概率Pg相 互学习;其中,A、B相互学习的概率大小取决于A、B之间的等级之差,若A和B的等级相等, 则两者的学习概率相等,即取P同;若A和B的等级之差为n,则两者的学习概率之差也为n。
[0013]进一步,P大的取值范围为0.4~0.9,P小的取值范围为0. 1~0.6,P同取值范围为 0. 4~0. 6。比如,当A、B之间的等级之差为1时,P大取值为0. 6,P小取值一般为0. 5,当A、 B之间的等级之差一般为2时,P大取值一般为0. 7,P小取值一般为0. 5,等等。
[0014]本发明的有益效果在于:
[0015]1)本发明在非支配分级步骤中,将一部分在编码代价上较好的个体放入靠前的一 个等级(等级二)中,能在一定程度上解决优化编码代价和优化链路代价复杂度不同的问 题,有效避免了在编码代价上潜力较好的个体过早被淘汰,能够找到更多的折中点和同一 种折中点下的不同编码方案。
[0016] 2)本发明在拥挤距离的基础上再计算汉明距离,能有效解决拥挤距离不能真正代 表个体差异性的问题,从而显著提高种群的多样性,有利于算法找到编码代价或链路代价 更小的个体。
[0017] 3)本发明在交叉算子中加入一种学习机制,能有效避免传统交叉算子的盲目性, 促使子代个体尽可能多地继承父代个体的优秀基因,从而引导个体不断向较好的方向进 化,加快算法找到优化解的速度。
【附图说明】
[001引为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行 说明:
[0019] 图1为本发明所述方法的流程示意图;
[0020] 图2为网络拓扑及边的初始化方法示例图;
[0021] 图3为染色体的构造实例图,其中图3(a)为二进制染色体构造的潜在编码节点示 意图,图3(b)为潜在编码节点分解结果图,图3(c)为二进制染色体表示是否传输信息的路 由示意图;
[0022] 图4为选择父代个体操作流程图;
[0023] 图5为染色体交叉操作流程图;
[0024] 图6为染色体变异操作流程图。
【具体实施方式】
[0025] 本发明针对现有技术中存在的问题,提出了一种基于改进NSGA-II的光组播编 码-链路代价折中方法,具体包括:
[0026]由于最小化编码代价是NP-hard问题,而最小化链路代价是多项式复杂度问题, 导致最小化链路代价的收敛速度远大于最小化编码代价,算法的选择压力就会落在低链路 代价部分,使得到的优化解倾向于低链路代价和高编码代价。所W需要设计一种方法使算 法在进化过程中容易找到编码代价较小的个体。因此,在本发明中,在非支配分级步骤中, 采用基于编码代价的部分支配方法确定等级一中的个体,将所有个体按照编码代价从小到 大的顺序排列,选择前n%个体,在该前n%个体中除去由部分支配方法确定的等级一中的 个体,剩下的放入等级二中。其中,n的取值范围一般为5~10。
[0027] 传统算法对每一等级中的个体根据拥挤距离进行排序,拥挤距离越小,表明该个 体与其他个体的差异性越小,在选择操作中选择拥挤距离较小者的概率越小。但实际上拥 挤距离越小的个体并不一定与其他个体越相似,可能两个体之间的汉明距离很大,而拥挤 距离大的个体也不一定比拥挤距离小的个体优越。所W在本发明中,在拥挤排序步骤中,在 计算个体拥挤距离W后,还要计算个体汉明距离。计算同一个等级中个体的汉明距离,即对 同一等级中的个体在各个目标方向上按照目标函数值从小到大排列,对排列在两端的个体 设汉明距离为无穷。对中间每一个体i,根据式子IXOR化,Xw)l/L+IXOR狂H,Xi)I/L即求 得个体i在某一目标方向上的归一化汉明距离,然后将各个目标方向上的归一化汉明距离 求和,即得个体i的汉明距离。其中,|XOR〇(i,Xw)|是指染色体Xi与Xw中的基因逐位相 与后的和值,L是指染色体的长度。将每个个体的拥挤距离和汉明距离求和,根据其和值由 大到小进行排序,和值越大,表明该个体与其他个体之间的差异性越大,被选择出来的概率 也就越大。
[002引传统的交叉算子具有很大的盲目性,为避免该一缺陷,本发明采用一种基于学习 机制的交叉算子。先根据交叉概率随机选择两个交叉的父代个体A和B,然后比较A、B,若 A支配B,则BW-个较大的概率Pt向A学习,即B中的每个基因块或基因位均W-个较大 的概率Pt被A中的等位基因块或基因位替换,产生子代个体B',同时AW-个较小概率P,j、 向B学习,即A中的每个基因块或基因位均W某一较小概率P/^被B中的等位基因块或基因 位替换,产生子代个体A';若A、B互不支配,则A和BW相同的概率Pg相互学习。其中,A、 B相互学习的概率大小取决于A、B之间的等级之差,若A和B的等级相等,则两者的学习概 率相等,即取Pg;若A和B的等级之差为n,则两者的学习概率之差也为n;其中,P*的取值 范围一般为0. 4~0. 9,P小的取值范围一般为0. 1~0. 6,P同取值范围一般为0. 4~0. 6。 比如,当A、B之间的等级之差为1时,P大取值一般为0. 6,P小取值一般为0. 5,当A、B之间 的等级之差为2时,P大取值一般为0. 7,P小取值一般为0. 5,等等。
[0029] 下面将结合附图,对本发明的优选实施例进行详细的描述。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1