[发明专利]一种基于变邻域搜索策略的云资源分配方法有效
申请号: | 201810468836.2 | 申请日: | 2018-05-16 |
公开(公告)号: | CN108664330B | 公开(公告)日: | 2019-12-10 |
发明(设计)人: | 孟凡超;闫庚哲;初佃辉;周学权;郑宏珍 | 申请(专利权)人: | 哈尔滨工业大学(威海) |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/12 |
代理公司: | 37249 济南舜昊专利代理事务所(特殊普通合伙) | 代理人: | 李舜江 |
地址: | 264209 山东省威海市哈*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 邻域搜索 资源分配 多目标遗传算法 资源优化 云服务 局部搜索能力 全局搜索能力 资源分配问题 调用关系图 云计算资源 保证服务 建立服务 算法结合 算法效率 问题模型 遗传算法 多目标 云应用 分配 求解 部署 租用 服务 | ||
1.一种基于变邻域搜索策略的云资源分配方法,其特征在于,方法包括:
步骤1:建立SOA模式云应用的服务关系图;
服务关系图为G=(S,E),其中S={Sj|1≤j≤Ns}为结点的集合,表示云服务种类,其中Sj表示第j种云服务类型,Ns表示云服务种类的总数;E={(s,s′)|s,s′∈S}为边的集合,表示云服务之间的交互关系,对于表示从s到s′存在交互关系,包括顺序关系、选择关系、并发关系和循环关系;
步骤2:定义SOA模式云应用的服务质量;
服务质量定义为QoS={S,V,RT,TP,ER},其中S={sj|1≤j≤Ns}表示云服务种类的集合,其中sj表示第j种云服务类型,Ns表示云服务种类的总数;V={vj|1≤j≤Nv}表示云资源种类的集合,其中vj表示第j种云资源类型,Nv表示云资源种类的总数;RT:S×V→R为云服务响应时间函数,其中RT(si,vj)为云服务i部署在云资源j上的响应时间;TP:S×V→R为云服务吞吐率函数,其中TP(si,vj)为云服务i部署在云资源j上的吞吐率;ER:S×V→R为云服务错误率函数,其中ER(si,vj)为云服务i部署在云资源j上的错误率;
步骤3:定义SOA模式云应用的部署方案;
部署方案定义为CDS={D,DV,DS},其中D={dj|1≤j≤Nn}表示云资源实例集,其中dj表示第j个云资源实例,Nn表示云资源实例的个数;DV:D×V→{0,1}为云资源实例类型函数,其中DV(di,vj)=1表示云资源实例di类型为vj,DV(di,vj)=0表示云资源实例di类型不为vj;DS:D×S→{0,1}为云服务部署实例函数,其中DS(di,sj)=1表示云资源实例di上部署了服务sj的实例,DS(di,sj)=0表示云资源实例di上没有部署服务sj的实例;
步骤4:建立多目标云资源优化分配问题模型;
多目标优化的云资源分配问题模型定义为:
定义部署成本:
,
其中RC(vi)为租用类型是vi的云资源所需费用;
定义响应时间:所有服务实例响应时间的均值代表系统整体的响应时间大小;
定义吞吐率:所有服务实例吞吐率的均值代表系统整体的吞吐率大小;
定义错误率:所有服务实例错误率的最大值代表系统整体的错误率大小;
约束条件:|D|>0,至少有一个云资源实例;每个服务必须至少部署一个实例;每个云资源实例上必须存在一个服务实例;部署在一个云资源实例上的所有服务实例的计算能力必须小于该云资源实例最大计算能力,其中CA(di,sj)为服务sj在云实例di中所需的计算能力,CR(di)为云实例di最大计算能力;部署在一个云资源实例上的所有服务实例的内存空间必须小于该云资源实例最大内存空间,其中MA(di,sj)为服务sj在云实例di中所需的内存空间,MR(di)为云实例di最大内存空间;
步骤5:基于变邻域搜索策略,优化分配多目标云资源;
基于染色体编码,对部署的云服务实例进行编码;每一条染色体代表一个部署方案,包含一组基因序列和云资源类型映射表;基因序列中每一个基因代表一个部署的服务实例,基因序列的长度代表总部署的服务实例数;每个基因的取值由一个二元组(s,v)表示,其中s表示部署的服务类型编号,v表示部署的云资源编号;云资源类型映射表中Vi表示编号为i的云资源实例类型,每个云资源实例都是从1开始编号,且保证编号的连续性;
基于遗传算法寻优,依据群体中个体的适应度,适应度函数是评价群体中个体好坏的标准,适应度函数的选取直接影响到遗传算法的收敛速度以及寻找最优解的能力;并给出了种群中个体p的适应度值F(p)的计算方法为:
F(p)=DV(p)+SV(p)
其中,DV(p)表示个体p的支配值,为所有低于或等于该个体支配等级的个体的总数;SV(p)表示个体p的稀疏值,为所在非支配集当中,拥挤距离小于该个体拥挤距离的个体总数;并认为两个个体pi和pj,当pi所有目标值都优于或等于pj且至少存在一个目标值优于pj时则称pi支配pj;
基于变邻域搜索规则;设计最优解的邻域,通过参考在部署优化领域预设的阈值,针对服务性能和部署成本2个目标制定了多条邻域搜索规则;
增加一个新的云实例,并从当前已部署的云实例中迁移部分性能指数低的服务实例;
升级一个云实例的类型,找到整体负荷指数大的云实例并升级至性能云资源类型;
迁移一个服务实例,找到性能指数低的服务实例并迁移至其他负荷指数小的云实例上;
部署一个新服务实例,找到负载指数大的服务类型并创建一个新实例部署在任一台云资源实例上;
合并两个云实例,找到负荷指数低的云资源实例,将其部署的服务实例迁移至其他云实例上,并释放当前实例;
降低一个云实例的类型,找到整体负荷指数小的云实例并降低至成本低的云资源类型;
基于变邻域搜索策略的多目标云资源优化分配问题求解;
Step 1、初始化算法参数,包括繁殖次数GMAX,种群规模POPSIZE,交叉概率RATE;
Step 2、产生初始种群P,并计算种群适应度;
Step 3、根据种群P中适应度值,选择出适应度最大的两个个体pi和pj;
Step4、随机生成r∈(0,1),如果r<RATE,采用交叉操作对个体pi和pj进行进化,并对不可行个体进行修复;否则,分别对pi和pj随机使用一种邻域搜索规则进行邻域搜索,并保留适应度高的个体;
Step 5、将产生的新个体添加到种群P′中,并去除重复个体,重复执行上一步骤直至种群P’个体数n与种群规模POPSIZE的相等;
Step 6、计算新种群P′适应度,合并种群P′和P,按照适应度高低排序并保留前POPSIZE个体作为种群P;
Step7、判断迭代次数i与繁殖次数GMAX大小,如果i<GMAX,执行Step 3;否则,执行Step 8;
Step 8、计算种群P中各个体的适应度值,输出适应度最大个体p作为最优解。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学(威海),未经哈尔滨工业大学(威海)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810468836.2/1.html,转载请声明来源钻瓜专利网。