一种基于Cloudsim平台上的启发式融合资源动态调度算法的制作方法

文档序号:12887029阅读:1327来源:国知局
一种基于Cloudsim平台上的启发式融合资源动态调度算法的制作方法与工艺

本发明涉及云计算的资源调度算法,属于人工智能和云计算领域。在本体规则库的基础上,本发明涉及布谷鸟搜索算法、蝙蝠算法和萤火虫算法,以及云计算、couldsim云计算模拟器,旨在实现一种新型的启发式融合算法,对比分析任务执行所花费的时间,在食品安全预警本体模型的支持下,得到最优化的云计算资源调度方案。



背景技术:

云计算是在网格计算的基础之上发展起来的一种新兴商业的计算模型,它可以为用户提供各种计算、存储等资源服务以及在internet上运行的社交网络、电子商务等应用服务,是一种新的基于服务的资源提供模式。在这种模式下,用户只在需要的时候通过internet获取相应的计算能力等服务,并为其使用的服务支付费用。云计算可以说是在这种社会新需求的强烈的推动下应运而生的,而它的用时付费的商业模式不仅恰当好处的适应了这种社会新需求的转变,而且具有良好的经济效益优势。

cloudsim是澳大利亚墨尔本大学开发的云计算仿真软件。提供了云计算的特性,支持云计算的资源管理和调度模拟。在调度算法上的改进方面,cloudsim提供了良好的云计算调度算法仿真平台,其中的datacenterbroker类提供的bindcloudlet—tovm(intcloudletid,intvmld)可以将任务单元绑定到指定的虚拟机上运行,开发人员对该类进行扩展,实现自定义的调度策略,完成对调度算法的模拟和测试。

整个云计算资源分配中的关键是选择合理的资源分配算法,现阶段一般从最优跨度(optimalmakespan)、负载均衡(loadbalancing)、服务质量qos(qualityofservice)、经济原则(economicprinciples)四个方面来评价云计算调度算法。

云环境下资源分配的策略有很多种,目前主要利用智能优化算法如遗传算法、蚁群算法、粒子群算法等对云计算的资源进行分配,当然也有一些简单的调度算法,比如轮询法、顺序法、贪心算法等。但是任何算法都存在其优势与不足,例如遗传算法虽然具有快速随机的全局搜索能力,但参数较多,编程实现比较复杂,且容易陷入局部最优;粒子群优化算法初期收敛速度快,后期局部搜索能力不足,收敛速度缓慢,但同遗传算法相比,粒子群优化算法收敛速度快,优化性能上好于遗传算法,并且编程易于实现,需要调整的参数少;而蚁群算法虽具有较好的寻优能力,但初期信息素匮乏,收敛速度慢。所以智能算法与云计算资源调度的结合仍有继续研究的空间。基于此,本专利提出一种新型的启发式融合算法改进云平台的资源调度问题。



技术实现要素:

本发明旨在在食品安全预警本体模型的支持下,减少云端任务所执行的时间,提高效率,提出一种云资源调度方法,该方法具有较快的调度速度,实现资源调度算法的优化。

为此,本发明提出一种基于多资源的任务调度算法,该算法能够在多资源的情况下大大缩短所有任务的平均完成时间,也能一定程度上保证负载均衡。

针对多数优化算法均存在可能以下缺陷之一:

局部搜索能力不够强,在优化后期收敛速度慢、收敛精度不够高;容易出现早熟收敛现象;在寻找局部最优和全局最优之间的平衡能力较弱,在位置迭代的过程中的收敛速度较慢等问题。

本专利主要涉及到在食品安全预警本体模型支持下的融合算法的实现,相应算法的实现过程如下所示:

初始化输入:

分类处理算法库的规模为s,分类任务集合task={task1,task2,...,taskn},n个任务,分类算法库资源的数量为resource,初始化输入由向量来定义,记做xi;初始化的向量坐标为[-(resource-1),resource+1]之间的整数。

结合本体规则及乳制品分类处理的特性,

具体算法步骤如下:(如图3所示)

·对分类算法库s中随机出现的x0进行调度,得到调度结果f(x0);从而计算出作业的总完成时间(sumtasktime)和平均完成时间(avgtasktime);

·将所找向量x0横向移动;同样计算出一个新的调度结果f(x1);

·比较f(x0)与f(x1),差值记做m(x);

·若m(x)>0;,则f(x1)替换f(x0),反之不变;

·重复迭代若干次,对每次得到的最优解组成新的解集合f(x'),对f(x')通过更新公式进行训练;

·对训练后的分类方法库集合再进行随机游走操作;

·从局部最优中多次随机游走从而达到全局最优解;

·得到改进融合算法的最优解,选择最优的分类处理算法。

上述算法的迭代过程主要通过以下公式实现:

目标函数

f(x0)表示初始选择分类方法的分类时间,β表示吸收系数(为固定值),r表示分类算法间的距离。

初始迭代过程:

最优目标的迭代

其中,xi,xj表示i,j两种分类方法的状态,ξ是一个随机参数,εi遵循正态分布。

初始化分类算法xi(i=1,2,…n)

目标函数

f(x0)表示初始选择分类方法的分类时间,β表示吸收系数(为固定值),r表示分类算法间的距离。

经过多次迭代后得到初始迭代最优解集合记为f(x')。

训练过程:

更新公式

其中分别表示第i个分类方法在第t次和第t+1次的分类状态,a表示步长控制量,为点对点乘法,levy(λ)为levy飞行随机搜索的跳跃路径,并且

通过更新公式实现对初始迭代最优解的解集合f(x')实现训练。

随机游走迭代:

xnew=x+εat

其中ε为[-1,1]中的随机数,为x从当前训练集中集中随机选择的一个解,为全体算法在迭代次数为t时的平均时间效率。

在上述算法的迭代过程,根据食品安全预警本体模型规则中的阈值,设置算法的终止条件,记为θ,完成算法迭代之后得到最优解x*

启发式融合算法伪代码如下:

附图说明:

图1为本发明的技术流程图;

图2为云平台资源调度界面;

图3为启发式融合资源动态调度算法。

具体实施方式:

为了验证本发明提出的在食品安全预警本体模型的支持下的新型启发式融合算法在云资源调度中的有效性,将模型在cloudsim云计算模拟器上进行了仿真实验,所有实验都基于eclipse环境中实现的。

(1)当迭代次数不同时,根据适应度函数求得个体的适应度值,可以看到随着迭代次数的增加,最优个体的适应度值不断上升,根据算法终止条件θ,实现最优解的对比分析,说明在负载均衡的前提下,本发明算法的全局搜索能力强,具有很好的收敛性,并根据任务执行时间,实现资源调度效率的提高。

(2)实验对比设计:

主要从两个角度设计实验评价算法,一方面是同等分类任务数量、同样分类方法资源下完成调度的的时间对比;另一方面是同样的分类方法资源下,在规定时间内,完成的分类任务数量对比。

(3)为了证明本发明提出的改进算法的优势,在实验中将本算法与已有的cloudsim中自带的随机分配算法ra(randomallocationscheduling)和轮询算法rr(round-robinscheduling)进行了对比。通过算例对比,指标分析得出本发明提出的调度算法优于rr算法和ra算法的结论。证明本发明可以给云资源的调度方案提供有意义的解决思路,对资源调度算法实现了优化。

(4)补充实验,通过算例将本算法与遗传算法的资源调度效率对比,证明普通智能优化算法的有效性能没有本发明中的启发式融合算法好,体现本发明算法的优越性。

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