一种基于遗传算法的云资源调度方法

文档序号:9217079阅读:525来源:国知局
一种基于遗传算法的云资源调度方法
【技术领域】
[0001] 本发明涉及一种云计算和虚拟化,具体涉及一种基于遗传算法的云计算资源调度 方法。
【背景技术】
[0002] 智能化信息时代的到来使新的计算模式-云计算诞生。云计算相对于以往的网格 计算,具有超大规模、虚拟化、可伸缩性、按需服务、可管理性等特点,因此备受各大厂商和 研宄者们的关注和青睐。
[0003] 云环境下的资源调度问题从云概念提出之时就被广泛关注,是云计算的一个重要 研宄方向。云计算的调度,是指在某个云环境下,根据该环境下资源的使用策略和不同资源 的消费者需求,在使用者之间进行的资源的调度过程。由于云计算平台的资源是异构的,在 调度时候既要考虑用户需求的动态改变还要考虑系统的协调以及成本因素,因此如何高效 的对云资源进行调度成为云计算研宄的一个难点。
[0004] 资源调度的评价指标包括:集群性能、服务质量、经济效益、负载均衡等。近年来 学者在云环境下的资源调度方面做了很多研宄工作。大多研宄工作关注于性能为中心的调 度,服务质量为中心的调度和以经济原则为目标的调度。但大多数研宄没有考虑任务超时 的成本问题,即云服务提供商承诺的延时赔偿。而且,大多数研宄是基于单一目标,调度过 程中往往会过度优化某一项指标,但恶化其他指标。

【发明内容】

[0005] 为了能更好的解决上述问题,本发明的目的在于提出一种云资源调度方法,该方 法具有较快的调度速度,降低运行商的运营成本,从而提高云服务商经济效益。
[0006] 本发明提供一种基于遗传算法的云资源调度方法,包括如下步骤:
[0007] 步骤1 :初始化各个服务器参数,包括服务器个数以及每个服务器拥有的CPU和内 存信息。给出超时赔偿参数。
[0008] 步骤2 :用户提交任务,用户提交的任务包括如下信息:任务的CPU和内存需求,期 望完成时间。
[0009] 步骤3 :采用改进的遗传算法得到资源调度的分配方案,即任务与服务器的映射 关系。
[0010] 步骤4 :调度器根据步骤3得到的分配方案进行资源调度。
[0011] 优选地,所述步骤3的流程如下:
[0012] (1)编码。对个体进行编码,简单起见选择二进制编码。
[0013] (2)初始化群体的产生。系统随机生成S个任务与服务器的对应序列,即S条染色 体,所有染色体个体组成一个种群。
[0014] 计算适应度值。根据分配方案,计算每台服务器运行时间,以及哪些任务超时,根 据算出个体所需成本w,适应度函数为
其中,1为 服务器i的单位成本,1\为服务器i运行的时间,B为期望时间内没有完成的任务集合,f(b,t)为任务b超时t的成本函数。计算每个个体的适应度。
[0015] (3)选择操作。选择适应度值高的个体演化到下一代种群。
[0016] (4)交叉操作。通过一定的概率R。,选取个体进行交叉,随机产生交叉的位置点, 通过交叉过程产生新的子个体。
[0017] (5)变异操作。根据变异概率Rm对某些个体进行变异,变异是对个体中某个或某 些位进行变异,变异后产生新的子个体。
[0018] (6)是否达到迭代次数,是则选择适应度最大的个体,对该个体进行解码得到任务 与服务器的对应方案。若没有达到迭代次数转到(4)选择出适应度较高的S个个体继续循 环。
[0019] 优选地,上述优化方法,需要输入以下信息:
[0020] (1)服务器信息:云中服务器的个数,每个服务器的CPU、内存信息,每个服务器的 运算成本。
[0021] ⑵任务信息:任务的总个数,每个任务需求的CPU、内存信息,期望完成时间,任 务超时赔偿参数。
[0022] (3)遗传算法参数:种群规模S,终止迭代次数G,交叉概率R。,变异概率Rm。
[0023] 优选地,上述适应度函数是根据整体的运行成本来计算的,对一个个体,如果所有 服务器都有能力执行分配的任务,则计算这种分配方案的运算成本。适应度采用成本的倒 数,成本越大,适应度越低。
[0024] 优选地,上述选择操作采用改进的轮盘赌方法,对适应度较高的个体之间进行保 留,如果保留的个体数达不到种群数S则用轮盘赌方法进行选择余下个体。
[0025] 优选地,上述交叉操作采用单点交叉的方法,以概率R。随机选择要交叉的两个个 体以及要交叉的位置点,产生新的子个体。
[0026] 优选地,上述变异操作采用单点或多点变异方法,根据变异概率&对某些个体进 行变异;如果是评价值高的个体,采用单点变异,减小变异操作对其伤害;如果是评价值低 的个体,采用多点变异,增大往好的个体变异的几率,有利于更好的个体出现。
[0027] 与现有的技术相比,本发明所提供的一种基于遗传算法的云资源调度方法,结合 遗传算法,查找最优速度较快,不易陷入局部最优,容易实现并行化。并在寻优过程中,方法 具有较好的鲁棒性。在考虑资源使用的同时,本发明考虑到了运行成本,并引入任务超时赔 偿,力图降低云服务提供商的运行成本,能有效提高云服务提高商的经济效益。
【附图说明】
[0028] 图1为一种基于遗传算法的云资源调度方法流程图。
[0029] 图2为改进的遗传算法选择操作流程图。
[0030] 图3为改进的遗传算法流程图。
【具体实施方式】
[0031] 下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描 述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权 利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节 以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中 的一些或者所有细节也可以根据权利要求书实现本发明。
[0032] 如上所述,本发明提供一种基于遗传算法的云资源调度方法,通过对云提供商成 本建模,利用遗传算法求出最优解,可以有效地提高云服务提供商的效益。本方法不仅考虑 设备利用成本,还考虑到超时成本,考虑的成本更加全面。同时,在求解最优解过程中,本发 明使用遗传算法进行求解,查找速度快,不易陷入局部最优。
[0033] 以下结合说明书附图和【具体实施方式】对本发明的方法做进一步详细说明。
[0034] 在进入改进遗传算法之前,需要对一些参数初始化,任务的需求参数,与服务器的 配置参数安装实际情况赋值即可。任务的超时参数根据实际情况给出超时采用哪种可选的 计算模型,如一次函数、二次函数,并给出初
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1