一种云环境下的知识服务多任务调度优化方法及其构建的调度系统与流程

文档序号:15847051发布日期:2018-11-07 09:14阅读:150来源:国知局
一种云环境下的知识服务多任务调度优化方法及其构建的调度系统与流程

本发明涉及一种云环境下的知识服务多任务调度优化方法及其构建的调度系统,属于云环境下的知识服务领域。

背景技术

集团企业云服务平台可以为用户提供产品全生命周期的的制造服务,而流动于产品制造全生命周期活动中各个环节的知识资源,则是支撑云服务系统运行的核心,其涉及各类跨领域多学科多专业的海量、分布、多源、异构知识资源。由于集团企业云服务平台面向的是大规模复杂产品的协同制造过程,企业用户向平台提出知识服务需求的云服务集涉及设计、分析、制造、控制等多学科领域之间的协同仿真及并行计算求解任务,各任务之间协同性较强,对知识资源的需求较高且各不相同。因此,面对复杂多变的用户需求及多源异构的知识资源,如何通过有效的任务调度策略对高动态性和执行时间随机性的服务任务进行均衡分配,将成为提升集团企业知识服务能力的关键问题。微粒群算法是一种基于群落特性的全局搜索优化算法,具有较强的自适应与自组织能力,是一种解决大规模任务调度问题的有效手段。

目前,微粒群算法在解决任务调度问题时,很容易陷入局部极值,进而出现“早熟”收敛现象,难以克服云环境下集团企业知识服务多任务调度过程存在的实时动态性和执行时间随机性的问题。



技术实现要素:

针对上述现有技术存在的问题及不足,本发明提供了一种云环境下的知识服务多任务调度优化方法及其构建的调度系统,用以解决在云环境下知识服务调度过程中存在的实时动态性和执行时间随机性问题,提高知识服务过程响应速度,优化云环境下的知识服务系统性能。

本发明的技术方案是:一种云环境下的知识服务多任务调度优化方法,通过确定云环境下的知识服务多任务调度的优化目标函数和约束条件,并使用基于大数据环境下的多群落双向驱动协作搜索算法对目标进行优化。

所述优化目标函数具体为:

构建以知识服务时间kt最短、知识服务质量kq最优、知识服务成本kc最低为目标的知识服务调度优化目标函数:

知识服务时间kt的函数为:式中,zab表示知识服务任务a的第b个子任务的决策变量;tab表示知识服务任务a的第b个子任务执行的服务时间;t'ab表示知识服务任务a的第b个子任务执行的通讯等待时间;αt1和αt2表示权重系数;sa表示任务a的子任务总量;n表示任务总量,rand()在[0,1]范围内随机变化,y=0,1,2;

知识服务质量kq的函数为:式中,dab表示用户对知识服务任务a的第b个子任务的知识资源服务的满意程度;μa表示满意程度修正系数;n表示任务总量;

知识服务成本kc的函数为:式中,cab表示知识服务任务a的第b个子任务所需的计算成本;cab'表示知识服务任务a的第b个子任务所需的通信成本;cab”表示知识服务任务a的第b个子任务所需的技术成本,αc1、αc2和αc3表示权重系数;n表示任务总量。

所述约束条件具体为:

最大服务时间约束u1,表示每个知识服务任务的实际完成时间不能超过其最大的限定时间,即:式中,ktmaxa表示知识服务任务a的允许最大服务限定时间;

知识服务成本约束u2,表示每个知识服务任务的服务成本不能超过最高服务成本,即:式中,kcmaxa表示知识服务任务a所能支付的最高服务成本;

知识服务任务时序约束u3,表示有时序约束关系的前一服务任务的结束时间不能超过下一任务的开始时间,即:hst,a≤hend,a+1;式中,hst,a表示任务a完成后的结束时间;hend,a+1表示任务a+1的开始时间;

知识资源服务准确性约束u4,表示提供的知识资源及知识服务能力必须满足知识服务任务的能力需求,即:式中,aca表示知识服务任务a需要实现的知识资源服务准确性;tiab表示知识服务任务a的第b个子任务的知识资源服务的及时性指标评价值;csab表示知识服务任务a的第b个子任务的知识资源服务的相符性指标评价值;αa1、αa2分别为权重系数。

所述基于大数据环境下的多群落双向驱动协作搜索算法,具体为:

步骤1:对群落微粒进行编码,使群落中的每个微粒表示一个知识服务任务调度问题的潜在解;

步骤2:初始化群落微粒个体p,赋予其随机的位置x和速度v,此时每个微粒的位置矢量均代表一种有效的知识资源分配方案;设定群落个数q,群落成员内微粒迭代次数,微粒加速系数c1、c2;

步骤3:依据设定的群落个数q,将初始化的微粒个体平均分配到q个进程中,形成大小为的群落,对于取整后剩余的微粒个体随机分配到q个进程中,同时根据目标函数计算q个群落中每个微粒个体的适应值;

步骤4:计算群落i的全局最优适应值fi(i=1,2,...,q),并依据判定阈值ft将所有群落划分为模范群落mc和普通群落cc;

步骤5:计算群落i的节点强度si(i=1,2,..,q),并依据si对相应类别群落的最优位置进行评价,得到所属类中最大节点强度si对应的群落最优位置作为该所属类别群落间的最优位置;

步骤6:各微粒群落依据双向驱动协同进化机制进行迭代进化,具体包括:

步骤7:重复执行步骤5~步骤6,并获得全局最优解,直到达到迭代次数;

所述目标函数为采用线性加权法对知识服务多任务调度过程中的三个目标函数进行整合,构造的整体适应度函数,如下:

式中,fh(x)对应的优化目标分别为“知识服务时间最短”、“知识服务质量最优”和“知识服务成本最低”,即:ωh是三个优化目标对应的权重系数,满足:

所述步骤1具体为:

步骤1.1:定义微粒的位置矢量为矩阵x:n×m;其中每一行代表一个知识服务任务的分配情况,每一列代表一个知识资源的服务情况,如下:

其中,xaw∈{0,1},a=1,2,...n,w=1,2,...m,n表示任务总量,m表示知识资源总量,m=n,满足每一行元素有且只有1个元素值为1,每一列元素可以有多个元素值为1;若xaw=1,表示知识服务任务a分配到知识资源w上执行,否则xaw=0;每个知识资源均可以同时向多个任务请求提供服务;知识服务任务可以分配到任意一个知识资源上执行且知识服务任务必须被分配到一个知识资源上执行;知识服务任务在执行过程中不能被中断,即同一个知识服务任务不允许同时分配到多个知识资源上;

步骤1.2:定义微粒的速度矩阵v:n×m表示微粒为达到目标状态所需要对当前任务分配情况的基本交换次序,如下:

所述微粒的速度需满足:vaw∈{0,1},vaw+vwa=0或1,a=1,2,...n,w=1,2,...m。

一种云环境下的知识服务多任务调度系统,所述系统包括:

任务调度缓冲模块,用于多用户并发请求时,根据系统的服务能力,将部分用户任务请求暂时储存,以保证用户任务与平台资源服务能力平衡,提高系统对用户请求的响应速度;

任务解析模块,用于解析用户提交的知识服务任务需求,将模糊、杂糅的服务任务进行降解,使其形成多个低粒度、能够由知识资源直接服务的知识服务任务集合;

知识资源调度模块,用于初步的知识资源匹配工作,将用户请求的任务特征与知识资源的静态属性进行匹配计算,得到可充分满足所述知识服务任务集服务需求的知识资源集合;

负载监管模块,用于对知识服务平台在服务过程中知识资源的运行及负载情况进行监控,动态调整服务的知识资源;集成容错迁徙策略以解决因突发事件导致服务中断的情况,确保知识服务过程的顺利完成;

知识资源调度引擎模块,用于保证知识服务任务调度过程高效准确进行;该模块集成云环境下的知识服务多任务调度优化方法,对知识服务任务与所需的知识资源之间进行合理调度,形成最优的知识服务任务分配方案,并将其提交到知识服务平台进行执行,以完成知识服务任务的调度过程。

本发明的有益效果是:

1、本发明针对优化目标中的知识服务时间引入动态随机函数,可以有效模拟平台在实际运行过程中服务时间的动态随机特征,体现调度优化算法对知识服务过程动态性和随机性的适应能力,提高知识服务过程的响应效率;

2、所述知识服务多任务调度优化方法,通过二进制编码方式建立了微粒位置矢量与知识资源分配的映射关系,将优化算法映射到离散数据空间,并采用多群落双向驱动机制实现普通群落与模范群落间的协同交互搜索,增强算法对随机调度任务的适应能力,有效解决知识服务多任务调度的优化问题。

附图说明

图1是云环境下的知识服务多任务调度系统框架示意图;

图2是知识服务多任务调度优化方法流程示意图;

图3是知识服务平台中刀轨计算知识服务任务调度仿真实验图(y=0);

图4是知识服务平台中刀轨计算知识服务任务调度仿真实验图(y=1);

图5是知识服务平台中刀轨计算知识服务任务调度仿真实验图(y=2)。

具体实施方式

实施例1:如图1所示,一种云环境下的知识服务多任务调度系统,所述系统包括:

任务调度缓冲模块,用于多用户并发请求时,根据系统的服务能力,将部分用户任务请求暂时储存,以保证用户任务与平台资源服务能力平衡,提高系统对用户请求的响应速度;

任务解析模块,用于解析用户提交的知识服务任务需求,将模糊、杂糅的服务任务进行降解,使其形成多个低粒度、能够由知识资源直接服务的知识服务任务集合;

知识资源调度模块,用于初步的知识资源匹配工作,将用户请求的任务特征与知识资源的静态属性进行匹配计算,得到可充分满足所述知识服务任务集服务需求的知识资源集合;

负载监管模块,用于对知识服务平台在服务过程中知识资源的运行及负载情况进行监控,动态调整服务的知识资源;集成容错迁徙策略以解决因突发事件导致服务中断的情况,确保知识服务过程的顺利完成;

知识资源调度引擎模块,用于保证知识服务任务调度过程高效准确进行;该模块集成云环境下的知识服务多任务调度优化方法,对知识服务任务与所需的知识资源之间进行合理调度,形成最优的知识服务任务分配方案,并将其提交到知识服务平台进行执行,以完成知识服务任务的调度过程。

一种云环境下的知识服务多任务调度优化方法,通过确定云环境下的知识服务多任务调度的优化目标函数和约束条件,并使用基于大数据环境下的多群落双向驱动协作搜索算法对目标进行优化。

本发明所述的知识服务多任务调度优化方法流程如图2所示,选择某流体机械集团企业云知识服务平台中复杂曲面刀轨计算知识服务任务调度过程,对所述知识服务多任务调度优化方法进行测试分析。

知识服务平台中刀轨计算知识服务流程包括:曲面造型、工艺规划、铣削参数计算、刀轨计算、后置处理、加工环境构建、加工仿真和仿真分析8项知识服务子任务,记为任务集合t={t1,t2,…,t8}(任务集合中的标识如t1与后面文字描述中,知识服务任务a=1情况,指代相同;其它标识同理);任务集合t对应的可用知识资源集为kr={kr1,kr2,…,kr8}(知识资源中的标识如kr1与后面文字描述中,知识资源w=1情况,指代相同;其它标识同理);采集知识服务平台上8项知识服务子任的服务时间、服务质量以及服务成本等实测样本数据如表1所示。

表1各知识资源相应的服务参数

表中,

进一步地,可以设置所述优化方法的具体步骤如下:

步骤1:构建以知识服务时间kt最短、知识服务质量kq最优、知识服务成本kc最低为目标的知识服务调度优化目标函数;

(1)知识服务时间kt的函数为:式中,zab表示表示知识服务任务a的第b个子任务的决策变量;tab表示知识服务任务a的第b个子任务执行的服务时间;t'ab表示知识服务任务a的第b个子任务执行的通讯等待时间;αt1和αt2表示权重系数;sa表示任务a的子任务总量;n表示任务总量;rand()在[0,1]范围内随机变化,y=0,1,2;引入动态随机函数rand(),用以反映知识服务调度过程的随机动态特征。

(2)知识服务质量kq的函数为:

式中,dab表示用户对知识服务任务a的第b个子任务的知识资源服务的满意程度;μa表示满意程度修正系数;n表示任务总量。

(3)知识服务成本kc的函数为:

式中,cab表示知识服务任务a的第b个子任务所需的计算成本;cab'表示知识服务任务a的第b个子任务所需的通信成本;cab”表示知识服务任务a的第b个子任务所需的技术成本,αc1、αc2和αc3表示权重系数;n表示任务总量。

步骤2:构建知识服务调度优化目标函数的约束条件;

(1)最大服务时间约束u1,表示每个知识服务任务的实际完成时间不能超过其最大的限定时间,即:

式中,ktmaxa表示知识服务任务a的允许最大服务限定时间。

(2)知识服务成本约束u2,表示每个知识服务任务的服务成本不能超过最高服务成本,即:

式中,kcmaxa表示知识服务任务a所能支付的最高服务成本。

(3)知识服务任务时序约束u3,表示有时序约束关系的前一服务任务的结束时间不能超过下一任务的开始时间,即:

hst,a≤hend,a+1

式中,hst,a表示任务a完成后的结束时间;hend,a+1表示任务a+1的开始时间。

(4)知识资源服务准确性约束u4,表示提供的知识资源及知识服务能力必须满足知识服务任务的能力需求,即:

式中,aca表示知识服务任务a需要实现的知识资源服务准确性;tiab表示知识服务任务a的第b个子任务的知识资源服务的及时性指标评价值;csab表示知识服务任务a的第b个子任务的知识资源服务的相符性指标评价值;αa1、αa2分别为权重。

步骤3:采用线性加权法对知识服务多任务调度过程中的三个目标函数进行整合,构造整体适应度函数,如下:

式中,fh(x)对应的优化目标分别为“知识服务时间最短”、“知识服务质量最优”和“知识服务成本最低”,即:ωh是三个优化目标对应的权重系数,满足:

步骤4:对群落微粒进行编码,使群落中的每个微粒表示一个知识服务任务调度问题的潜在解。

步骤4.1:定义微粒的位置矢量为矩阵x:8×8;其中每一行代表一个知识服务任务的分配情况,每一列代表一个知识资源的服务情况,如下:

(1)xaw∈{0,1},满足每一行元素有且只有1个元素值为1,每一列元素可以有多个元素值为1;

(2)若xaw=1,表示知识服务任务a分配到知识资源w上执行,否则xaw=0;

(3)每个知识资源均可以同时向多个任务请求提供服务;

(4)知识服务任务可以分配到任意一个知识资源上执行且知识服务任务必须被分配到一个知识资源上执行;

(5)知识服务任务在执行过程中不能被中断,即同一个知识服务任务不允许同时分配到多个知识资源上;

(6)位置矩阵中的元素xaw与所述步骤1中决策变量zab所指代的知识服务任务a相对应。

步骤4.2:定义微粒的速度矩阵v:8×8;表示微粒为达到目标状态所需要对当前任务分配情况的基本交换次序,如下:

所述微粒的速度需满足:vaw∈{0,1},vaw+vwa=0或1,a=1,2,...8,w=1,2,...8。

步骤5:初始化群落微粒个体p,赋予其随机的位置x和速度v,此时每个微粒的位置矢量均代表一种有效的知识资源分配方案;设定群落个数q,群落成员内微粒迭代次数,微粒加速系数c1、c2;

本实施例中,微粒个体数为100,开启4个并行线程,微粒迭代次数为200,微粒加速常数c1=c2=2。

步骤6:依据设定的群落个数q,将初始化的微粒个体平均分配到q个进程中,形成大小为的群落,对于取整后剩余的微粒个体随机分配到q个进程中,同时根据目标函数计算q个群落中每个微粒个体的适应值;

所述目标函数为步骤3中构造的整体适应度函数;

步骤7:计算群落i的全局最优适应值fi(i=1,2,...,q),并依据判定阈值ft将所有群落划分为模范群落mc和普通群落cc;

步骤8:计算群落i的节点强度si(i=1,2,..,q),并依据si对相应类别群落的最优位置进行评价,得到所属类中最大节点强度si对应的群落最优位置作为该所属类别群落间的最优位置;

步骤9:各微粒群落依据双向驱动协同进化机制进行迭代进化,具体包括:

如下规则中出现的变量若与前面相同,若规则中进行了定义,则以规则中定义的变量含义为准,否则以前面的为准。

规则1:群落内进化规则:每个群落内部的微粒个体均依据如下微粒群迭代公式进行进化,并产生群落的最优位置,其中普通群落的群落最优位置记作gbest,模范群落的群落最优位置记作gbest;

式中:d表示最高维度,表示第t次迭代下微粒个体k在维度为d时的速度,c1、c2表示微粒加速常数,表示第t次迭代下微粒个体k在维度为d时的个体最优位置,表示第t次迭代下群落在维度为d时的最优位置,表示第t次迭代下微粒个体k在维度为d时的位置。

所述微粒群迭代公式满足如下运算规则:

(1)a·θ·b:表示将矩阵a中和矩阵b中数值相同的位置全部置为0,反之为1;若a中某一行元素同时出现两个1,则将其第二个1置为0;

(2)表示依据随机数cl的对应概率值来确定微粒是否进行θ操作;

(3)aθb:表示,若矩阵b中第s行所有元素均为0,则将矩阵a中第s行第s列的元素全部置为0,其它元素作rand{0,1}运算,即随机取0或者1;

(4)表示位置交换操作,当速度矩阵b中的vsv=1时,表示将位置矩阵a第s行中数值为1的元素与第v行中数值为1的元素的列号进行交换。

规则2:群落间双向驱动协同进化规则:

规则2.1:存在gbesth=max{gbest1,gbest2,...,gbestu},gbestj=min{gbest1,gbest2,...,gbestn},且gbesth≥gbestj,则普通群落成员cch进入模范群落,原模范群落中末位群落mcj被舍弃;同时,将模范学习因子引入普通群落内部进化规则:

其中,r1表示模范群落与普通群落间的协作关系,r表示协作关系集合,表示普通群落最优位置集合中的最优值,表示模范群落最优位置集合中的最差值,u表示普通群落的总个数,n表示模范群落的总个数,m代表的是普通群落中微粒个体的数量且m≤p,d代表最高维度,表示第t次迭代下微粒个体k在维度为d时的速度,c1、c2表示微粒加速常数,c3是一个随机数且满足c1rand1+c2rand2+c3∈[0,4],表示第t次迭代下微粒个体k在维度为d时的个体最优位置,表示第t次迭代下群落在维度为d时的最优位置,表示第t次迭代下微粒个体k在维度为d时的位置,表示第t次迭代下普通群落在维度为d时的模范学习因子;

规则2.2:存在群落节点强度对任意均满足得到模范群落间最优位置:其中,r2表示模范群落与模范群落间的协作关系,表示模范群落a的群落节点强度,表示模范群落b的群落节点强度,是模范群落a的群落最优位置,将其作为模范群落间最优位置;

规则2.3:存在群落节点强度对任意均满足得到普通群落间最优位置:其中,r3普通群落与普通群落间的协作关系,表示普通群落e的群落节点强度,表示普通群落f的群落节点强度,是普通群落e的群落最优位置作为普通群落间最优位置;

其中,群落间双向驱动协同进化规则比群落内进化规则的执行优先级更高;

步骤10:重复执行步骤8~步骤9,并获得全局最优解,直到达到迭代次数。

测试实验结果:

按照上述步骤,对复杂曲面零件刀轨计算知识服务任务调度优化过程进行仿真实验,记录算法寻优过程的实验结果,如图3、图4、图5所示(横坐标:迭代次数;纵坐标:适应度值)。

从实验结果中可以看出,在知识服务多任务调度优化过程中,随着知识服务时间随机程度的增加,所述知识服务多任务调度优化方法能够充分发挥多种群协作在执行随机环境下解决复杂多任务调度问题的优势,算法快速趋于稳定并收敛到全局最优值,可有效增强知识资源调度引擎的求解效率,保证云环境下知识服务调度过程的高效准确;

上述过程中:

协作关系单元:设不同群落间的的协同搜索活动为一个二元组(cr),其中c={c1,c2,...,cq}为参与协同搜索活动的群落序列,r:c×c为搜索过程中群落之间的交互依赖关系。称作协作关系单元,其中r1表示模范群落与普通群落间的协作关系,r2表示模范群落与模范群落间的协作关系,r3普通群落与普通群落间的协作关系。协作关系集中不同群落间协作关系单元的个数称作该协作关系集的模,记作||r||,r表示协作关系集合,r1、r2、r3组成r;

协作权重:设为多群落协作网络中不同群落之间的协作权重,其中,ci与co之间的协作权重也称为多群落协作网的边权重;

距离向量:将群落i的群落最优位置分别与该群落内的u个微粒的个体最优位置求差并取绝对值,得到该群落最优位置的距离向量:hi=(h1,h2,…,hu);

响应度:设定合格距离阈值dd,依据响应值evi公式:对距离向量hi进行遍历运算,可得到该群落微粒对群落最优位置的响应值,将响应值按序相加得到该群落最优位置的响应度ei。

群落节点强度:在mccn中,定义群落节点的强度为si,则其中:ωio为群落ci与co之间的协作权重,ei为群落节点的响应度,ui为群落ci的邻域,邻域表示与群落ci存在协作关系的群落的集合

所述如果fi≥ft,则表明该群落具有较强的局部寻优能力,将其作为模范群落,记作mc;如果fi<ft,则表明则该群落具有较强的全局探索能力,将其作为普通群落,记作cc。

上面结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

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