云数据中心的多维云资源调度研究

2018-10-18 06:21姜赛达
三门峡职业技术学院学报 2018年3期
关键词:适应度利用率交叉

◎姜赛达

(商丘职业技术学院 计算机系,河南 商丘 476000)

云计算是由网格计算发展而来的一种更注重商业化的新兴商业计算模式,近年来得到快速的发展和广泛的应用而受到多行业的青睐。由于云计算技术的迅速发展推动了原有数据中心的变革,产生了一种新型的数据中心——云数据中心。云数据中心基于用户,采用分布式技术,根据用户需求为各类云服务提供资源共享架构。在这种资源共享架构下,用户可以根据自己的需要动态使用云数据中心的硬件和软件资源。硬件资源包括了计算、存储和带宽等多种资源,同时用户根据服务使用资源量支付一定的服务费用,因此云数据中心具有:容器化、智能化、高效化、透明化,能够按需服务和计量付费的特点。

1 问题描述

伴随着云计算的广泛应用,现有云数据中心由于云资源种类繁多,不可避免地会产生大量各种类型的碎片资源(计算,存储,带宽等),进而浪费大量资源。因此,从云数据中心的角度来看,希望充分利用碎片资源和充分利用可用的云资源。近年来,云数据中心资源调度方面进行了大量的研究工作。并取得了显著的成果,但目前的高效调度技术还存在一些问题和研究缺陷:①我们没有充分考虑计算,存储,带宽资源等云资源的多样性。②云数据中心用户所获得的服务质量(诸如:云服务用户的需求响应时间和对获得服务结果的满意程度)尚未得到有效保证。③云数据中心提供的各类资源性服务的资源利用率较低。④三种类型的碎片资源(计算,存储和带宽)未有效利用。

为充分利用多种碎片资源,提高多类型云资源利用率。本文提出了一种融合了两种智能优化算法(遗传算法和蚁群算法)多维云资源高效调度方法模型。

2 遗传与蚁群结合算法

作为仿生智能算法的遗传算法和蚁群算法,具有搜索能力强、并行性的特点,应用到云资源调度模型中,用于提高云资源的调度效率。在实际的应用中单一的算法容易陷入局部最优解、收敛速度慢等问题,因此需要对算法进行改进。改进后的遗传蚁群(GA-ACO)算法将遗传算法全局搜索性能强和蚁群算法局部搜索性能强的优势相结合,克服遗传算法局部搜索能力弱和蚁群算法全局搜索能力弱的不足。混合并行遗传蚁群算法利用遗传算法的鲁棒性,随机性和全局收敛性的特点,生成初始信息素分布来解决该问题。通过选择,交叉和变异操作,生成一组新的个体,然后利用蚁群算法,利用群并行性,正反馈,高效率等特点,解决多维云资源高效调度问题以提高效率。显着提高了算法的运行效率和解决方案质量,提高了算法的有效性。

并行遗传和蚁群算法:

2.1 编码

根据云数据中心的资源配置特点,采用整数编码。此编码方式操作意义直观,将并行GA-ACO算法直接应用到编码个体上,这样编码与解空间不用进行转换,在算法的运行效率得到提高,算法的时间和空间复杂度得到改进。

2.2 种群初始化

并行GA-ACO算法中,种群初始化采用随机深度优先搜索算法,从起始源点开始随机选择下一个资源节点,依次继续选择资源节点。在GA-ACO算法的链接时设置迭代范围Gmin≤Gite≤Gmax作为判断条件,进行判断选择,最终搜索遍历获得符合条件的信息节点。

2.3 适应度函数

遗传过程个体的适应度准则通过遗传的适应度函数约束,并行GA-ACO算法中信息个体是资源虚拟机到处理器的映射关系,该映射关系的合理性和适应度,主要表现在数据中心物理资源和带宽资源利用率和任务响应时间。整体资源利用率高,任务响应时间短,映射关系具有合理适应性。

2.4 选择操作

选择操作就是为了选择出种群中的优秀个体进入下一代。每代中个体按照适应度值来判断决定它能够复制到下一代的概率,以繁殖出更接近目标的新个体。通过选择操作,种群中优秀人员的数量不断聚集,演化过程继续朝着最佳解决方案前进。

2.5 交叉操作

交叉操作使用固定的交叉概率,即根据适应度函数的优劣从现代种群中排序。依次选取相邻的两个个体,根据交叉准则以固定单位概率交叉生成两个新个体。这个过程结束,直到下一代个体交叉操作与初始种群个体数量一致。交叉规则如下:①两个父代个体中的一些基因交换形成两个新个体;②一个子个体中的一些染色体被交换以形成新的个体。

2.6 变异操作

变异操作是在交叉操作形成的新一代子个体,以变异操作概率0.05为基础进行变异操作。这种变异操作遵循:在新一代子个体的一些染色体的整数编码中根据概率随机选取一个或多个比特;选取的编码位在新生成的子个体中超出范围,进行删除操作。再次变异初始生成的新个体,进行重复操作。

2.7 信息素设置

各节点的最小值选取信息素的初始值,用于模拟蚂蚁的分泌物的信息素值选取遗传算法求解结果。同时,在蚂蚁行进路径上的路径选择,参照各条路径上信息素值的大小。用概率Pijk(t)表示时间点t蚂蚁i由j节点选择k节点[1],则:

随着路径选择得进行,信息素将逐渐消逝。因此,信息素更新方程为:

同时,τjk(t+1)为+1 时刻节点的信息素,τjk(t)是 t时刻节点的信息素[2]。

2.8 结束条件

并行GA-ACO算法终止条件为:

云数据中心和各子系统所占资源在上式中表示为和,并行GA-ACO算法的流程图如图1所示。

3 实验与分析

为了验证算法模型在云数据中心计算资源调度的可行性及有效性,采用CloudSim实验平台模拟云计算环境进行验证。将基于整数Markov理论的并行GA-ACO算法与贪婪算法 (Greedy Algorithm,GDA)在云数据中心资源调度性能从任务响应时间和计算、存储、带宽资源利用率几个方面进行比较。[3]设置的虚拟机特性和实验环境如下,100到1500台虚拟机,任务到达时间为10到100的随机分布区间,同时考虑计算、存储和带宽等类型资源且资源量100到3000之间。在实验进程中,动态生成的虚拟机节点数在100到1500之间,同时,计算资源、存储资源和带宽资源是生成虚拟机对它们的资源依赖权重。[4]

图1 并行GA-ACO算法的流程

图2 GA-ACO计算、存数和带宽资源利用率

GA-ACO计算、存数和带宽资源利用率表

在图2中,水平坐标表示VM数量,垂直坐标表示并行GA-ACO算法的计算、存储、带宽资源的利用率。实验结果表显示三种资源利用率均有明显提升,并且实验结果显示资源利用率曲线在经历过逐步加速上升后逐渐趋于平稳,表明并行遗传与蚁群结合算法对提升云数据中心的资源利用率具有明显稳定的效果。

4 结束语

笔者提出了一种融合遗传与蚁群算法的资源调度方案,该方案充分考虑了云数据中心的多维资源和资源调度产生的大量碎片,通过实验验证了方案在云数据中心资源高效调度的有效性。

猜你喜欢
适应度利用率交叉
改进的自适应复制、交叉和突变遗传算法
2019年全国煤炭开采和洗选业产能利用率为70.6%
“六法”巧解分式方程
化肥利用率稳步增长
一种基于改进适应度的多机器人协作策略
浅议如何提高涉烟信息的利用率
连数
连一连
基于空调导风板成型工艺的Kriging模型适应度研究
板材利用率提高之研究