[发明专利]基于改进混洗蛙跳算法的软硬件划分方法在审
申请号: | 201710134577.5 | 申请日: | 2017-03-08 |
公开(公告)号: | CN106980539A | 公开(公告)日: | 2017-07-25 |
发明(设计)人: | 张涛;赵鑫;安鑫祺;岳倩宇 | 申请(专利权)人: | 天津大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/00 |
代理公司: | 天津市北洋有限责任专利代理事务所12201 | 代理人: | 刘国威 |
地址: | 300072*** | 国省代码: | 天津;12 |
权利要求书: | 暂无信息 | 说明书: | 暂无信息 |
摘要: | 本发明涉及系统软硬件协同设计中的软硬件划分技术,为提出一种改进的软硬件划分方法,用于软硬件协同设计中。主要针对混洗蛙跳算法应用于软硬件划分时收敛速度慢并且有可能陷入局部最优等问题进行改进,提出一种比原始蛙跳算法性能更好的软硬件划分算法。本发明采用的技术方案是,基于改进混洗蛙跳算法的软硬件划分方法,步骤如下(1)初始化青蛙种群(2)根据青蛙分组数G以及任务节点数N,确定G个等距离的中心坐标;(3)迭代更新开始;(4)按照排序的顺序依次计算每只青蛙位置坐标到每个中心坐标的距离;(5)输出最优青蛙的位置坐标即为最佳软硬件划分方案。本发明主要应用于软硬件协同设计中的软硬件划分场合。 | ||
搜索关键词: | 基于 改进 蛙跳 算法 软硬件 划分 方法 | ||
【主权项】:
一种基于改进混洗蛙跳算法的软硬件划分方法,其特征是,步骤如下:(1)初始化青蛙种群规模M,分组数G,硬件面积约束LIM参数,确定算法最大迭代次数IterMax以及算法终止条件,初始化当前迭代次数iter=0,对于节点数为N的待划分任务,首先生成M个符合约束条件的青蛙位置坐标,每个位置为0、1组成的N维向量;(2)根据青蛙分组数G以及任务节点数N,确定G个等距离的中心坐标,用中心坐标集合L表示,L={L1,L2,…Lg,…,LG},其中Lg即为第g组的中心坐标,Lg是一个N维向量,表示为Lg=[lg1,lg2,…,lgn,…,lgN],其中lgn为向量中第n位的值;(3)迭代更新开始,计算M只青蛙的位置坐标所对应的适应度值,并按照适应度由好到坏对青蛙进行排序,排序后的青蛙种群用集合F表示,F={F1,F2,…,Fm,…FM},Fm表示排序后的第m只青蛙所在的位置坐标,Fm是一个N维向量,Fm=[fm1,fm2,…,fmn,…,fmN]其中fmn表示向量中第n位的值;(4)按照排序的顺序依次计算每只青蛙位置坐标到每个中心坐标的距离,根据计算结果,将青蛙依次分配到距离最近的中心坐标所对应的未饱和的组。Fm与Lg之间的距离Dm,g的计算公式如式(3)所示,Dm,g=||Fm-Lg||=Σn=1N(fmn-lgn)2---(3)]]>(5)根据公式(4)计算每一组青蛙在本次迭代中所对应的组内最大跳跃次数Ml,第g组青蛙在第iter代更新时对应的组内最大跳跃次数用Mlg(iter)表示。Pg(iter)=Pg(iter-1)+1/mlg(iter-1)Mlg(iter)=1+(r×Pg(iter)/Σt=1GPt(iter))---(4)]]>其中Pg(iter)用于表示第g组所在区域在iter次迭代时代出现最优解的可能性大小,Pg(0)的值为0,r为一个常数,G为青蛙的分组数,mlg(iter‑1)表示第g组青蛙在第iter‑1代的实际跳跃次数,然后进行组内寻优,每组内最差青蛙向组内最优青蛙所在位置进行跳跃,青蛙位置坐标更新公式如公式(5)所示,其中x'gw表示g组内最差青蛙跳跃后的位置坐标,xgw表示g组内最差青蛙跳跃前的位置坐标,xgB表示第g组最优青蛙的位置坐标,rand是一个随机数。x'gw=xgw+rand*(xgB‑xgw) (5)青蛙跳跃后的位置坐标对应的划分方案如果满足硬件面积约束且比跳跃前位置的适应度值更优,则青蛙组内寻优成功,用新的位置坐标代替原始位置,并直接进入步骤(8);否则,青蛙组内寻优失败,判断本组内青蛙的实际跳跃次数是否达到最大跳跃次数Ml,如果没有,则再次向着组内最优青蛙进行跳跃;如果本组青蛙跳跃次数达到最大跳跃次数且没有寻优成功,则进行步骤(6);(6)组内最差青蛙向着全局最优青蛙位置进行跳跃,更新公式如式(6)所示,其中xB表示全局最优青蛙位置坐标:x'gw=xgw+rand*(xB‑xgw) (6)青蛙完成跳跃之后的位置坐标对应的划分方案如果满足硬件面积约束且比原始位置的适应度值更优,则青蛙向全局最优青蛙跳跃成功,用新的位置代替原始位置;否则,进入步骤(7);(7)随机生成一个新的满足硬件面积约束条件的位置坐标代替组内最差青蛙的位置坐标;(8)所有青蛙重新混洗,一次迭代更新完成,当前迭代次数iter加1,判断是否达到最大迭代次数IterMax以及是否达到算法终止条件,若是,则进入步骤(9),否则,回到步骤(3)开始下一轮迭代;(9)输出最优青蛙的位置坐标即为最佳软硬件划分方案。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津大学,未经天津大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710134577.5/,转载请声明来源钻瓜专利网。
- 上一篇:数据处理的方法及装置
- 下一篇:一种分布式多维离散数据的计算方法