一种基于离散蝙蝠算法的片上网络映射方法_3

文档序号:9688026阅读:来源:国知局
d 大于响度Ai,满足新的解x/的适应值小于个体i当前的适应值,且rand大于响度Ai的条件, 用新的解x/来更新当前个体i的位置,即令xi=[l 7 6 2 3 4 8 12 15 16 14 10 9 5 13 山。
[0121] 步骤8:如果新的解X/的适应值比种群最佳个体勺适应值小,则令新的解X/为 种群中的最佳个体;
[0122] 当前,新的解X/的适应值为4389,种群最佳个体勺适应值为4151,不满足条件。
[0123] 步骤9:重复步骤4-8直至遍历整个骗幅种群,若运行迭代次数到达预设最大值,捜 索停止,输出种群的最佳个体及其适应值;否则增加当前代数,跳回到步骤3。
[0124] 迭代结束后,得到的种群的最佳个体为义^=[9 13 14 15 11 10 6 5 2 1 3 7 8 12 4 16],其适应值(目标函数)为4119。
[01巧]表1是本发明与NMAP算法、GMAP算法、LMAP算法、CGMAP算法、AC0算法和KL_Mesh算 法分别在V〇PD、MPEG-4和PIP上进行映射后得到的最优通信代价的对比表。
[0126] 表1
[0127]
[0128]显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对 本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可 W做出其它不同形式的变化或变动。运里无需也无法对所有的实施方式予W穷举。凡在本 发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求 的保护范围之内。
【主权项】
1. 一种基于离散蝙蝠算法的片上网络映射方法,其特征在于,包括如下步骤: 步骤1:初始化算法的参数,生成初始的蝙蝠种群,所述参数包括:蝙蝠数量,算法迭代 次数,最大频率QmX和最小频率Qmin,脉冲发射率的最大值Rmax和最小值1?_; 步骤2:计算每个蝙蝠个体的适应值,并找出种群中的最佳个体X*; 步骤3:根据当前迭代次数来更新脉冲发射率& (t); 步骤4:对于蝙蝠个体i,产生新的解Y i; 步骤5:判断rand(0,1)是否大于脉冲发射率心,如果是,对当前最佳个体进行局部搜索, 产生新的解x\; 步骤6:计算新的解X' i的适应值,并根据新的解X' i的适应值来计算响度Ai; 步骤7:如果新的解X' i的适应值小于个体i当前的适应值,且rand (0,1)大于响度Ai,则 用新的解V :来更新当前个体i的位置; 步骤8:如果新的解的适应值比种群最佳个体X*的适应值小,则令新的解为种群 中的最佳个体; 步骤9:重复步骤4-8直至遍历整个蝙蝠种群,若运行迭代次数到达预设最大值,搜索停 止,输出种群的最佳个体及其适应值;否则增加当前代数,跳回到步骤3。2. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于,每个蝙 蝠个体是采用下面的方式进行表示的: 蝙蝠的位置为:X=(X1,X2,···,Xd),其中,X1,X2,···,Xd为自然数1,2,…,d的一个全排序, 而d是实际问题中IP核的个数,X的每个分量表示IP核在拓扑结构上放置的位置。3. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于,步骤1 中的初始的蝙蝠种群是通过下面的方式产生: 初始的蝙蝠种群的一部分个体随机产生,另一部分个体通过种群初始化算法产生;种 群初始化算法的具体步骤如下: (11) 选择具有最大通信量的通信链路; (12) 若通信链路上的两个节点都没映射,则选择一节点映射到拓扑图中的任一个无节 点映射的位置A,另一节点映射到与位置A最相邻,即曼哈顿距离最小且无节点映射的位置 B;否则跳到(13); (13) 若通信链路上其中一个节点已映射,则另一节点映射在拓扑图中最相邻,即曼哈 顿距离最小的无节点映射位置;否则跳到(14); (14) 若通信链路上两个节点都已映射,直接跳到(15); (15) 若所有IP核都已映射到拓扑图中,则输出结果;否则在核任务图中去除该通信链 路,并跳到(11)。4. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于,步骤2 中的每个蝙蝠个体适应值是通过下面的式子计算产生的:其中,C代表核任务图中IP核集合,任意一个顶点Ci e C代表一个待映射的IP核,Wij代表 IP核ci、Cj的核间通信数据量,map(ci)指每个蝙蝠个体中IP核ci在拓扑结构上映射的位置, hopcount(a,b)代表拓扑结构图中节点a,b的曼哈顿距离。5. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于,步骤3 中脉冲发射率的更新采用下面的公式:其中RmajPRmin分别为设定的脉冲发射率的最大值和最小值,tmax为蝙蝠迭代的最大代 数,t为当前的代数。6. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于,步骤4 中对于蝙蝠个体i,产生新的解V :采用下面的实现方式为: 给出下面的定义: (21) 用置换序列来表示蝙蝠的速度; (22) 蝙蝠位置和速度的加法运算实现了蝙蝠位置的移动,使蝙蝠到达一个新的位置; 蝙蝠新的位置为原来的位置通过速度的置换序列来改变; (23) 蝙蝠位置和位置相减得到的是速度,即置换序列; (24) 蝙蝠的速度和速度相加得到的是速度,为两个速度置换序列的并集; (25) 蝙蝠的速度乘以系数β的结果仍是速度;令0 = a+b,a为β的整数部分,b为β的小数 部分;av的结果为原来置换序列的a次重复,bv的结果为原来置换序列的截断,最后新的速 度βν为得到的两个置换序列av和bv的并集; 在d维空间中,蝙蝠个体i在第t次迭代时的位置;、速度<更新公式为:其中βΕ[〇,1]是来自均匀分布的随机向量,X*是在蝙蝠种群中的最佳个体; 对于蝙蝠个体i,新的解X、是根据定义(21)-(25)以及更新公式产生的。7. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于步骤5 中,对当前最佳个体进行局部搜索是按照下面的步骤进行的; (31) 在拓扑结构图中选择一个节点,记为Nodel; (32) 找出选择的节点所映射的IP核,记为IP1; (33) 随机选择节点在拓扑图中的一个相邻节点,并且找出其对应的IP核,分别记为 Node2和IP2; (34) 随机选择IP1在通信任务图中有通信的IP核,记为IP3,并找出其在拓扑结构图中 对应的节点位置,记为Node3; (35) 将IP2映射到Node3,将IP3映射到Node2,完成局部搜索;8. 根据权利要求1所述的基于离散蝙蝠算法的片上网络映射方法,其特征在于,步骤6 中,根据新的解V :的适应值来计算响度心采用下面的公式: Ai= (f iti-f itbst)/(f itmax-f itbst) 其中f iti是新的解X' i的适应值,f itbst为当前种群最好的适应值,f itmax为当前种群的 最大适应值。
【专利摘要】本发明提出一种基于离散蝙蝠算法的片上网络映射方法,初始化并生成蝙蝠种群;计算每个蝙蝠个体的适应值,找出种群中的最佳个体;根据当前迭代次数来更新脉冲发射率;对于蝙蝠个体产生新的解;判断rand(0,1)是否大于脉冲发射率,大于时对当前最佳个体进行局部搜索,产生新的解x′i;计算新的解x′i的适应值,并由新的解x′i的适应值计算响度Ai;当新的解x′i的适应值小于个体当前的适应值,且rand(0,1)大于响度Ai,则用新的解x′i更新当前个体的位置;当新解x′i的适应值比种群最佳个体x*的适应值小,则令新解x′i为种群中的最佳个体;遍历整个蝙蝠种群,若运行迭代次数到达预设最大值,搜索停止,输出种群的最佳个体及其适应值。实验结果表明,本发明能够获得更优的映射结果。
【IPC分类】G06N3/00
【公开号】CN105447565
【申请号】CN201510812436
【发明人】黄锦辉, 黄以华
【申请人】广东顺德中山大学卡内基梅隆大学国际联合研究院, 中山大学
【公开日】2016年3月30日
【申请日】2015年11月19日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1