[发明专利]一种基于双目标优化遗传算法的作业调度方法有效
申请号: | 201110069031.9 | 申请日: | 2011-03-22 |
公开(公告)号: | CN102141935A | 公开(公告)日: | 2011-08-03 |
发明(设计)人: | 刘瑞贤;张晋锋;李麟;孙一鸣 | 申请(专利权)人: | 曙光信息产业(北京)有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06N3/12 |
代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
地址: | 100084 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 双目 优化 遗传 算法 作业 调度 方法 | ||
1.一种基于双目标优化遗传算法的作业调度方法,其特征在于:步骤如下:
A、生成初始种群:将一个作业调度序列编码为作业序列串,一个作业序列串就是一个个体,随机生成POPSIZE个个体,要保证所有个体都是可行解,所有个体组成一个种群;
B、交叉:种群中的每个偶数序号个体与其后相邻的个体作为一对,以交叉概率CROSS_P交换它们之间的部分染色体,交叉点随机;交叉操作后调整交叉后生成的个体,保证其有效性;
C、变异:每个个体的每一位都以变异概率MUTATE_P与另外一位交换;变异后调整新产生的个体;
D、评估:计算每个个体的两个目标函数,其一为f(x),表示从第一个作业开始执行到最后一个作业完成的个体对应作业调度序列的总执行时间;其二为表示个体对应的作业调度序列的总能耗的g(x);
E、选择:使D所述目标函数f和g较小的个体进入下一代;
F、遗传代数加一,若超过最大遗传代数MAX_GENARATION则执行G,继续循环,否则执行C;
G、在最后的种群中,对每个个体计算优先级函数h(x),h(x)的计算方法为:对一个个体对应的作业调度序列,按先后顺序对每个作业x计算优先级低于x且在作业调度序列中排在x之前的作业个数count,个体的取h(x)最小的个体作为最终解,该个体对应的作业调度序列就是本算法的最后结果。
2.如权利要求1所述一种基于双目标优化遗传算法的作业调度方法,其特征在于:需要输入
节点信息:节点个数、节点资源信息、节点功耗信息;
作业信息:一次调度的作业个数n、每个作业需要的CPU核数、每个作业预计运行时间、每个作业的优先级;
遗传算法相关参数:种群大小POPSIZE、最大遗传代数MAX_GENARATION、交叉概率CROSS_P、变异概率MUTATE_P。
3.如权利要求1所述一种基于双目标优化遗传算法的作业调度方法,其特征在于:步骤D中g(x)的计算方法为:
D1、对每个作业x,对x占用的所有节点依次按照一定方法计算x在每个节点上的能耗;
D2、作业x在x占用的所有节点上的能耗之和就是作业x的能耗;
D3、所有作业的能耗之和,加上所有节点的空闲能耗就是作业调度序列的总能耗。
4.如权利要求3所述一种基于双目标优化遗传算法的作业调度方法,其特征在于:所述D1中一定方法是每个作业的能耗是该作业在它占用的所有节点上分摊的能耗总和;每个节点的功率由运行于其上的所有作业分摊,首先按照作业占用的CPU核数按比例划分,然后将空闲核的功率均分到所有作业上;作业与作业之间共享节点,伴随作业x的开始或结束,与作业x共享节点的作业的功率会产生变化;对繁忙节点按作业个数变化划分时间段,每个时间段内各个作业的功率就可以计算出来,作业在每个时间段内的能耗等于该时间段的时长与作业功率之积;作业在一个节点上各时间段的能耗之和就是作业在该节点的能耗。
5.如权利要求1所述一种基于双目标优化遗传算法的作业调度方法,其特征在于:所述E步骤中选择f和g较小的个体的方法为:
E1、对每个个体设三个变量value1,value2,value3,初始均为0;
E2、在种群中依次取个体i,对每个i执行E3;
E3、在种群中依次取个体j,若f(j)≥f(i)且g(j)≥f(i),则j对应的valuel值加一,若f(j)≥f(i)且g(j)<f(i)则j对应的value2值加1,若f(j)<f(i)且g(j)≥f(i)则j对应的value3值加1;
E4、完成E2后,取所有value1值为1的个体,重复若干次进入下一代种群;
E5、取若干value2最小的个体,再取若干value3最小的个体进入下一代种群,使下一代种群大小达到POPSIZE。
6.如权利要求1所述一种基于双目标优化遗传算法的作业调度方法,其特征在于:所述步骤B交叉,操作对象可以改为随机选择任意两个个体。
7.如权利要求1所述一种基于双目标优化遗传算法的作业调度方法,其特征在于:所述步骤D评估,计算g(x)可以改为以节点为对象,由每个节点在不同时间段的能耗累加得到单个节点能耗,再将所有节点的能耗累加得到作业调度序列的能耗g(x)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业(北京)有限公司,未经曙光信息产业(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110069031.9/1.html,转载请声明来源钻瓜专利网。