基于反向学习半径粒子群优化的任务划分系统及其方法与流程

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

技术特征:

1.一种基于反向学习半径粒子群优化的任务划分系统,其特征在于:包含半径粒子群优化模块、判决器模块及反向学习模块,其中,半径粒子群优化模块,根据接收到的任务划分的服务请求及每个任务属性,根据任务属性评价候选划分方案,设计粒子群算法的适应函数,动态分区域计算区域最优任务划分方案,并从区域最优值中选取全局最优任务划分方案,并输出给判决器模块;判决器模块,记录半径粒子群优化模块计算得到的划分方案,并判断其是否陷入局部限值,若是,则触发反向学习模块,否则,不触发反向学习模块,继续进行半径粒子群优化;反向学习模块,采用反向学习机制对划分方案进行退化,使其跳出局部限值,并将退化结果反馈给半径粒子群优化模块,半径粒子群优化模块根据反馈的退化结果继续求解任务划分方案并输出。

2.根据权利要求1所述的基于反向学习半径粒子群优化的任务划分系统,其特征在于:任务属性至少包含任务在软硬件中的执行时间、功耗、成本。

3.根据权利要求1所述的基于反向学习半径粒子群优化的任务划分系统,其特征在于:适应函数还包含惩罚机制,当候选划分方案未超出系统可使用硬件面积资源,则适应值随硬件面积资源利用程度以指数函数形式减小,当候选划分方案超出系统可使用硬件面积资源,则适应值依据当前迭代次数迅速增加。

4.一种基于反向学习半径粒子群优化的任务划分方法,其特征在于:具体包含如下步骤:

步骤1、根据接收到的任务划分的服务请求及每个任务属性,初始化任务划分方案集合,根据硬件面积资源、执行时间和能耗,评价候选划分方案,确定粒子群算法的适应函数;

步骤2、根据粒子群算法的适应函数确定当前划分方案的适应值

步骤3、利用动态半径,依据迭代次数,动态调整每个候选划分方案的区域大小,采用贪心策略求解区域最优解,从这些区域最优解中求解出全局最优解,在求解过程中若粒子种群陷入局部限值时,则进入步骤4,触发反向学习机制,否则,进入步骤5;

步骤4、对陷入局部极值的任务划分方案采取反向学习机制,通过粒子的初始最差位置和个体历史最差位置通过反向学习更新公式进行迭代,若迭代次数满足反向学习次数L,则返回步骤2执行,否则,继续进行反向学习;

步骤5、结束并输出任务划分的最终方案,全局最优解即为任务划分的最终方案。

5.根据权利要求4所述的基于反向学习半径粒子群优化的任务划分方法,其特征在于:步骤1中初始化任务划分方案结合包含如下内容:假设任务个数为D,则任务划分方案是D维向量,初始化划分方案个数N,迭代次数K,任务划分方案集合和相应的更新速度Vik,i∈N,k∈K,其中,表示第k代时的第i个划分方案,Vik表示第k代时的第i个划分方案的更新速度,在初始化时和Vik应为和Vi0,适应函数表示为:

其中,A(x)、T(x)、E(x)分别表示任务在硬件面积资源、任务执行时间和能耗开销,δA、δT和δT是硬件面积资源、任务执行时间和能耗开销的归一化因子,δA=max{maxA-Amax,Amax-minA},δT=maxT-minT,δE=maxE-minE,a、b和c分别为对应的影响因子,惩罚因子

6.根据权利要求5所述的基于反向学习半径粒子群优化的任务划分方法,其特征在于:步骤2具体内容如下:根据适应函数:

确定当前划分方案的适应值

7.根据权利要求5所述的基于反向学习半径粒子群优化的任务划分方法,其特征在于:步骤3具体包含如下内容:

步骤3.1、比较每一代找到迭代过程中使最小的及各划分方案历史最优解,由表示;

步骤3.2、根据当前迭代次数k,设置动态半径r,r的表达式如下:

<mrow> <mi>r</mi> <mo>=</mo> <mfrac> <mrow> <mi>K</mi> <mo>-</mo> <mi>k</mi> </mrow> <mi>K</mi> </mfrac> <mo>&CenterDot;</mo> <mi>N</mi> <mo>;</mo> </mrow>

步骤3.3、规定划分方案之间的距离通过欧式距离表示,以为圆心,在半径r的区域内找到适应值最小的区域最优划分方案使得

步骤3.4、在区域最优划分方案中,找到适应值最小的全局最优划分方案

步骤3.5、根据半径粒子群优化更新公式更新划分方案和更新速度更新公式如下:

<mfenced open='{' close=''> <mtable> <mtr> <mtd> <msubsup> <mi>v</mi> <mi>id</mi> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <mi>&omega;</mi> <mo>&CenterDot;</mo> <msubsup> <mi>v</mi> <mi>id</mi> <mi>k</mi> </msubsup> <mo>+</mo> <msub> <mi>c</mi> <mn>1</mn> </msub> <msub> <mi>r</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <msubsup> <mi>X</mi> <mi>id</mi> <mi>R</mi> </msubsup> <mo>-</mo> <msubsup> <mi>x</mi> <mi>id</mi> <mi>k</mi> </msubsup> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>c</mi> <mn>2</mn> </msub> <msub> <mi>r</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <msubsup> <mi>X</mi> <mi>gd</mi> <mo>*</mo> </msubsup> <mo>-</mo> <msubsup> <mi>x</mi> <mi>id</mi> <mi>k</mi> </msubsup> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <msubsup> <mi>x</mi> <mi>id</mi> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <msubsup> <mi>x</mi> <mi>id</mi> <mi>k</mi> </msubsup> <mo>+</mo> <msubsup> <mi>v</mi> <mi>id</mi> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> </mtd> </mtr> </mtable> </mfenced>

其中,各向量的下标d∈N,表示向量的第d个元素,ω是惯性因子,c1和c2是学习因子,r1和r2是0到1之间的随机数;

步骤3.6、判断当前迭代次数是否已经到达预设值K,如果是,转到步骤5,输出当前认为的全局最优划分方案作为任务划分的最优解决方案;否则,转到步骤4,判断是否陷入局部限制。

8.根据权利要求5所述的基于反向学习半径粒子群优化的任务划分方法,其特征在于:步骤4具体包含如下内容:

步骤4.1、设置计数器,当计数器记录到连续迭代P次未发生改变,P=K/5取整,则认为陷入局部极值,执行下一步骤,触发反向学习机制;否则,转到步骤2,继续进行动态半径粒子群优化求解;

步骤4.2、初始化反向学习机制,将触发反向学习机制时的第k代划分方案集合和更新速度Vik赋值给反向学习初始化的初始化反向学习次数L,最差划分方案Wil,i∈N,l∈L,Wil表示第l次反向学习时第i个划分方案历史最差的划分方案;

步骤4.3、从Wi0中随机选择初始最差划分方案;

步骤4.4、根据反向学习公式更新划分方案和更新速度反向学习更新公式如下:

<mrow> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msubsup> <mi>v</mi> <mi>Rid</mi> <mrow> <mi>l</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <mi>&omega;</mi> <mo>&CenterDot;</mo> <msubsup> <mi>v</mi> <mi>Rid</mi> <mi>l</mi> </msubsup> <mo>+</mo> <msub> <mi>c</mi> <mn>3</mn> </msub> <msub> <mi>r</mi> <mn>3</mn> </msub> <mrow> <mo>(</mo> <msubsup> <mi>x</mi> <mi>Rid</mi> <mi>l</mi> </msubsup> <mo>-</mo> <msubsup> <mi>W</mi> <mi>id</mi> <mi>l</mi> </msubsup> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>c</mi> <mn>4</mn> </msub> <msub> <mi>r</mi> <mn>4</mn> </msub> <mrow> <mo>(</mo> <msubsup> <mi>x</mi> <mi>Rid</mi> <mi>l</mi> </msubsup> <mo>-</mo> <msubsup> <mi>W</mi> <mi>id</mi> <mn>0</mn> </msubsup> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <msubsup> <mi>x</mi> <mi>Rid</mi> <mrow> <mi>l</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <msubsup> <mi>x</mi> <mi>Rid</mi> <mi>l</mi> </msubsup> <mo>+</mo> <msubsup> <mi>v</mi> <mi>Rid</mi> <mrow> <mi>l</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>

步骤4.5、从各划分方案中,找到相应的适应值最大的历史最差解Wil+1

步骤4.6、判断反向学习是否结束,若反向学习次数达到L,则返回并令跳转到步骤2;否则跳转到步骤4.3,继续进行反向学习。

9.根据权利要求8所述的基于反向学习半径粒子群优化的任务划分方法,其特征在于:步骤4.2中:在反向学习初始化时,Wi0是从中随机选择两两之间距离大于排异半径的划分方案集合,其中,若集合内划分方案个数不足N,则随机生成满足条件的划分方案填满Wi0;反向学习初始化后,Wil表示的历史最差划分方案。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1