CN116467084A - 一种基于蚁群优化的猫群算法云计算资源调度方法及*** - Google Patents

一种基于蚁群优化的猫群算法云计算资源调度方法及*** Download PDF

Info

Publication number
CN116467084A
CN116467084A CN202310462751.4A CN202310462751A CN116467084A CN 116467084 A CN116467084 A CN 116467084A CN 202310462751 A CN202310462751 A CN 202310462751A CN 116467084 A CN116467084 A CN 116467084A
Authority
CN
China
Prior art keywords
cat
cloud computing
cloud
computing resource
resource scheduling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310462751.4A
Other languages
English (en)
Inventor
赵莎莎
闫焕文
林奇锋
陈何
张登银
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202310462751.4A priority Critical patent/CN116467084A/zh
Publication of CN116467084A publication Critical patent/CN116467084A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了云计算领域的一种基于蚁群优化的猫群算法云计算资源调度方法及***,包括:调度云计算虚拟***中的云计算资源执行云任务;采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;重复迭代设定次数输出最终猫群中猫的位置,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解;在更短的时间和更低的成本下实现负载均衡的云计算资源调度,使云计算***兼顾成本和性能。

Description

一种基于蚁群优化的猫群算法云计算资源调度方法及***
技术领域
本发明属于云计算技术领域,具体涉及基于蚁群优化的猫群算法云计算资源调度方法及***。
背景技术
随着云计算技术的蓬勃发展,大数据对计算机的要求日益增加,若有大量数据待处理的情况下,单一的计算机并不能满足需求,这时便引入云计算,它是用来解决超大规模的数据处理,本质上是结合多台计算机形成一个统一的***,该技术可以使得计算处理大型数据的时候更加高效,不过在此过程中,任务调度成为了一个很重要的问题。
云计算***中,随着用户数量的不断增多,提交的任务数量也在成倍增加,这就需要将资源更合理地充分利用以便处理这些提交的任务并在更短的时间和更低的成本下实现负载均衡的调度,不断提升用户满意度。但是现有算法中都未考虑到多目标优化的效率问题,并且云计算***无法兼顾成本和性能。
发明内容
本发明提供了一种基于蚁群优化的猫群算法云计算资源调度方法及***,在更短的时间和更低的成本下实现负载均衡的云计算资源调度,使云计算***兼顾成本和性能。
为达到上述目的,本发明所采用的技术方案是:
本发明第一方面提供了一种基于蚁群优化的猫群算法云计算资源调度方法,包括:
在Cloudsim仿真平台中搭建云计算虚拟***,创建云任务并按照需求设定云任务的个数和长度;调度云计算虚拟***中的云计算资源执行云任务;
根据所有云任务的总执行时间和总执行成本建立适应度函数;将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;
在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A,在初始解A的基础上通过蚁群算法进行搜索获得初始解B;根据适应度值选择初始解A和初始解B作为搜寻结果;将搜寻模式组的猫所在位置位置存储至记忆池中;
在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;
将总执行时间和总执行成本作为帕累托的两个目标,对搜寻结果和跟踪结果进行多目标择优获得帕累托解集;根据帕累托解集更新所述猫群中猫的位置;重复迭代设定次数输出最终猫群中猫的位置,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解。
优选的,在Cloudsim仿真平台中搭建云计算虚拟***的方法包括:
在cloudsim平台初始化Cloudsim包,根据云计算环境创建虚拟机并对虚拟机参数进行设定,所述虚拟机的参数包括编号、用户ID、资源处理器速度和CPU数量;
创建数据中心datacenter和DatacenterBroker形成云计算虚拟***,所述数据中心datacenter用于管理虚拟机的一组物理计算节点;所述DatacenterBroker用于调度云计算虚拟***中的云计算资源执行云任务。
优选的,根据所有云任务的总执行时间和总执行成本建立适应度函数的方法包括:
计算云任务的总执行时间,表达公式为:
公式中,Texeij表示为云任务的总执行时间,exeij为虚拟机的执行时间,i为云任务编号,j为虚拟机编号,m是云计算虚拟***中虚拟机个数,n是云任务个数,ci代表被分配给虚拟机的云任务集合,npej×Vmipsj代表第j个虚拟机的处理器速度,若任务i被分配给第j个虚拟机,则xij=1反之其值为0;
计算云任务的总执行成本,表达公式为:
公式中,为一台虚拟机执行成本,/>为云任务的行成本,V costj是第j个虚拟机每小时的成本;
根据所有云任务的总执行时间和总执行成本建立适应度函数,表达公式为:
公式中,MinF(x)表示为适应度函数。
优选的,在初始解A的基础上通过蚁群算法进行搜索获得初始解B的方法包括:
将蚂蚁放置于每个计算节点上,根据轮盘赌概率选择下一台虚拟机,在蚂蚁所经途中留下信息素,根据信息素浓度为蚂蚁种群提供搜索线索;
所述蚂蚁种群的搜索半径RS,计算公式为
公式中,Nbest表示为所有初始解A中的最优解对应猫的位置;Nworst表示为所有初始解A中的最差解对应猫的位置。
优选的,还包括:在猫群算法中对记忆池中每个猫的位置进行变异操作,表达公式为:
X'k=(1±SRDk*R)*Xk
公式中,X'k为猫的新变异位置,Xk为猫的当前位置,R为随机数;SRD为设定的初始变异算子值,SRDk为迭代到第k代的变异算子值,ωmax为最大迭代次数,ωk为当前迭代次数。
优选的,追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果的方法包括:
对追踪模式组中猫的速度和位置进行更新,表达公式为:
Vh,k+1=Vh,kh,k×c×r×(Xk,best(t)-Xh,k(t))
Xh,k+1(t)=Xh,k(t)+Vh,k+1
公式中,Vh,k+1表示为第k+1次迭代中第h只猫的速度,Vh,k表示为第k次迭代中第h只猫的速度,c表示为设定常量,r表示为0到1的随机数,ωh,k表示为第k次迭代中第h只猫的步长;Xk,best(t)表示为第k次迭代中猫群中最优解位置;Xh,k(t)表示为第k次迭代中第h只猫的位置;Xh,k+1(t)表示为第k+1次迭代中第h只猫的位置。
优选的,计算追踪模式组中猫的步长,表达公式为:
公式中,ωmax表示为最大惯性系数;ωmin表示为最小惯性系数,F(xh,k)为第k次迭代的第h只猫的适应度值,Fk,min为猫群第k次迭代的最差适应度,Fk,average为第k次迭代的猫群的平均适应度值。
优选的,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解的方法包括:
根据最终猫群中每只猫的位置输出对应的云计算资源调度策略,记为备选策略Pc
计算备选策略Pc的负载均衡差BL,表达公式为:
AVL=Texeij/m
公式中,AVL为所有虚拟机完成其上分配任务的时间之和的平均值;
计算备选策略Pc的服务质量,表达公式为:
公式中,QoS(x)表示为备选策略Pc的服务质量,θ表述为执行时间的权重系数;
根据服务质量和负载均衡差BL由所有备选策略Pc中寻找出云计算资源调度策略的全局最优解。
本发明第二方面提供了一种基于蚁群优化的猫群算法云计算资源调度方法的应用***,包括:
模型搭建模块,用于在Cloudsim仿真平台中搭建云计算虚拟***,创建云任务并按照需求设定云任务的个数和长度;调度云计算虚拟***中的云计算资源执行云任务;
划分模块,用于根据所有云任务的总执行时间和总执行成本建立适应度函数;将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;
搜寻模块,用于在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A,在初始解A的基础上通过蚁群算法进行搜索获得初始解B;根据适应度值选择初始解A和初始解B作为搜寻结果;将搜寻模式组的猫所在位置位置存储至记忆池中;
跟踪模块,用于在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;
输出模块,用于将总执行时间和总执行成本作为帕累托的两个目标,对搜寻结果和跟踪结果进行多目标择优获得帕累托解集;根据帕累托解集更新所述猫群中猫的位置;重复迭代设定次数输出最终猫群中猫的位置,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解。
优选的,所述Cloudsim仿真平台包括网络层、云资源层、云服务层、虚拟服务层和用户接口层以及用户代码单元;所述网络层用于模拟真实网络拓扑;所述云服务层用于创建数据中心datacenter;所述云服务层用于按照设定的策略对云计算资源进行分配;所述虚拟服务层用于对虚拟机生命周期的管理;所述用户接口层用于提供任务请求和计算节点之间的连接;所述用户代码单元用于设定仿真规格。
本发明第三方面提供了计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述猫群算法云计算资源调度方法的步骤。
与现有技术相比,本发明的有益效果:
本发明中将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;通过搜寻模式组的猫和追踪模式组的猫搜寻最优解,收敛速度更快,同时容易搜索到全局最优解。
本发明中在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A,在初始解A的基础上通过蚁群算法进行搜索获得初始解B;根据适应度值选择初始解A和初始解B作为搜寻结果;引入蚁群算法进行对比更新,引导猫群在搜寻阶段往最优解靠近,减少盲目性带来的影响,有效提升了搜寻结果的质量,减少了猫群搜寻模式下变异带来的随机性和不确定性。
本发明中在猫群算法中对记忆池中每个猫的位置进行变异操作,在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;将猫群的SRD变异因子设为逐步递减,由于初期变异算子较高可以增加种群的多样性,有效避免陷入局部最优,后期将其减小有助于种群的收敛。
附图说明
图1是本发明实施例提供的Cloudsim***框架图;
图2是本发明实施例提供的基于Cloudsim平台资源调度流程图;
图3是本发明实施例提供的蚁群优化的猫群算法流程图;
图4是本发明实施例提供的基于猫群算法资源调度的结构框图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例一
如图1至图4所示,一种基于蚁群优化的猫群算法云计算资源调度方法,包括:
在Cloudsim仿真平台中搭建云计算虚拟***的方法包括:
在cloudsim平台初始化Cloudsim包,根据云计算环境创建虚拟机并对虚拟机参数进行设定,所述虚拟机的参数包括编号、用户ID、资源处理器速度和CPU数量;
创建数据中心datacenter和DatacenterBroker形成云计算虚拟***,所述数据中心datacenter用于管理虚拟机的一组物理计算节点;所述DatacenterBroker用于调度云计算虚拟***中的云计算资源执行云任务。
创建云任务并按照需求设定云任务的个数和长度;调度云计算虚拟***中的云计算资源执行云任务;在云计算场景下自由地建立模型结构并根据需求进行仿真模拟等操作,包括计算资源、内存、存储器和带宽的专用接口,具有高效性和便捷性;
将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;将猫群中猫的数量设为n,设定记忆池SMP大小、变化域SRD、变化数CDC、自身位置判断SPC以及交结合率MR;
根据所有云任务的总执行时间和总执行成本建立适应度函数的方法包括:
计算云任务的总执行时间,表达公式为:
公式中,Texeij表示为云任务的总执行时间,exeij为虚拟机的执行时间,i为云任务编号,j为虚拟机编号,m是云计算虚拟***中虚拟机个数,n是云任务个数,ci代表被分配给虚拟机的云任务集合,npej×Vmipsj代表第j个虚拟机的处理器速度,若任务i被分配给第j个虚拟机,则xij=1反之其值为0;
计算云任务的总执行成本,表达公式为:
公式中,为一台虚拟机执行成本,/>为云任务的行成本,Vcostj是第j个虚拟机每小时的成本;
根据所有云任务的总执行时间和总执行成本建立适应度函数,表达公式为:
MinF(x)={(Texeij,Texe cos tij)}
公式中,MinF(x)表示为适应度函数。
根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;通过搜寻模式组的猫和追踪模式组的猫进行全局搜寻最优解;在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A;
在初始解A的基础上通过蚁群算法进行搜索获得初始解B的方法包括:
将蚂蚁放置于每个计算节点上,根据轮盘赌概率选择下一台虚拟机,在蚂蚁所经途中留下信息素,根据信息素浓度为蚂蚁种群提供搜索线索;在经过的路径上留下信息素,相同时间内多只蚂蚁经过同一路径时该路径的信息素浓度会较其他路径更高,最终对整个种群形成正反馈机制;采用的是正反馈机制,蚂蚁一直向最优解靠拢,引入蚁群算法进行对比更新,引导猫群在搜寻阶段往最优解靠近,减少盲目性带来的影响,有效提升了搜寻结果的质量,减少了猫群搜寻模式下变异带来的随机性和不确定性。
所述蚂蚁种群的搜索半径RS,计算公式为
公式中,Nbest表示为所有初始解A中的最优解对应猫的位置;Nworst表示为所有初始解A中的最差解对应猫的位置。
根据适应度值选择初始解A和初始解B作为搜寻结果;将搜寻模式组的猫所在位置位置存储至记忆池中;
在猫群算法中对记忆池中每个猫的位置进行变异操作,表达公式为:
X'k=(1±SRDk*R)*Xk
公式中,X'k为猫的新变异位置,Xk为猫的当前位置,R为随机数;SRD为设定的初始变异算子值,SRDk为迭代到第k代的变异算子值,ωmax为最大迭代次数,ωk为当前迭代次数。
将猫群的SRD变异因子设为逐步递减,由于初期变异算子较高可以增加种群的多样性,有效避免陷入局部最优,后期将其减小有助于种群的收敛。
在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中,具体过程为:
计算追踪模式组中猫的步长,表达公式为:
公式中,ωmax表示为最大惯性系数;ωmin表示为最小惯性系数,F(xh,k)为第k次迭代的第h只猫的适应度值,Fk,min为猫群第k次迭代的最差适应度,Fk,average为第k次迭代的猫群的平均适应度值。
当k次迭代的适应度值小于平均值时,使用局部搜索,当适应度值大于平均值时,说明离最优解较远,采用全局搜索方式,扩大搜索范围。
对追踪模式组中猫的速度和位置进行更新,表达公式为:
Vh,k+1=Vh,kh,k×c×r×(Xk,best(t)-Xh,k(t))
Xh,k+1(t)=Xh,k(t)+Vh,k+1
公式中,Vh,k+1表示为第k+1次迭代中第h只猫的速度,Vh,k表示为第k次迭代中第h只猫的速度,c表示为设定常量,r表示为0到1的随机数,ωh,k表示为第k次迭代中第h只猫的步长;Xk,best(t)表示为第k次迭代中猫群中最优解位置;Xh,k(t)表示为第k次迭代中第h只猫的位置;Xh,k+1(t)表示为第k+1次迭代中第h只猫的位置。
将总执行时间和总执行成本作为帕累托的两个目标,对搜寻结果和跟踪结果进行多目标择优获得帕累托解集;根据帕累托解集更新所述猫群中猫的位置;重复迭代设定次数输出最终猫群中猫的位置;
由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解的方法包括:
根据最终猫群中每只猫的位置输出对应的云计算资源调度策略,记为备选策略Pc
计算备选策略Pc的负载均衡差BL,表达公式为:
AVL=Texeij/m
公式中,AVL为所有虚拟机完成其上分配任务的时间之和的平均值;
计算备选策略Pc的服务质量,表达公式为:
公式中,QoS(x)表示为备选策略Pc的服务质量,θ表述为执行时间的权重系数;
根据服务质量和负载均衡差BL由所有备选策略Pc中寻找出云计算资源调度策略的全局最优解,不仅提升了稳定性,减少了任务处理时间还有效地保证了调度过程中虚拟机负载均衡。
实施例二
一种基于蚁群优化的猫群算法云计算资源调度方法的应用***,所述***可以应用于实施例一所述的多域证书双向认证方法,应用***包括:
模型搭建模块,用于在Cloudsim仿真平台中搭建云计算虚拟***,创建云任务并按照需求设定云任务的个数和长度;调度云计算虚拟***中的云计算资源执行云任务;
划分模块,用于根据所有云任务的总执行时间和总执行成本建立适应度函数;将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;
搜寻模块,用于在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A,在初始解A的基础上通过蚁群算法进行搜索获得初始解B;根据适应度值选择初始解A和初始解B作为搜寻结果;将搜寻模式组的猫所在位置位置存储至记忆池中;
跟踪模块,用于在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;
输出模块,用于将总执行时间和总执行成本作为帕累托的两个目标,对搜寻结果和跟踪结果进行多目标择优获得帕累托解集;根据帕累托解集更新所述猫群中猫的位置;重复迭代设定次数输出最终猫群中猫的位置,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解。
所述Cloudsim仿真平台包括网络层、云资源层、云服务层、虚拟服务层和用户接口层以及用户代码单元;所述网络层用于模拟真实网络拓扑;所述云服务层用于创建数据中心datacenter;所述云服务层用于按照设定的策略对云计算资源进行分配;所述虚拟服务层用于对虚拟机生命周期的管理;所述用户接口层用于提供任务请求和计算节点之间的连接;所述用户代码单元用于设定仿真规格。
实施例三
计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现实施例一所述猫群算法云计算资源调度方法的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (10)

1.一种基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,包括:
在Cloudsim仿真平台中搭建云计算虚拟***,创建云任务并按照需求设定云任务的个数和长度;调度云计算虚拟***中的云计算资源执行云任务;
根据所有云任务的总执行时间和总执行成本建立适应度函数;将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;
在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A,在初始解A的基础上通过蚁群算法进行搜索获得初始解B;根据适应度值选择初始解A和初始解B作为搜寻结果;将搜寻模式组的猫所在位置位置存储至记忆池中;
在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;
将总执行时间和总执行成本作为帕累托的两个目标,对搜寻结果和跟踪结果进行多目标择优获得帕累托解集;根据帕累托解集更新所述猫群中猫的位置;重复迭代设定次数输出最终猫群中猫的位置,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解。
2.根据权利要求1所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,在Cloudsim仿真平台中搭建云计算虚拟***的方法包括:
在cloudsim平台初始化Cloudsim包,根据云计算环境创建虚拟机并对虚拟机参数进行设定,所述虚拟机的参数包括编号、用户ID、资源处理器速度和CPU数量;
创建数据中心datacenter和DatacenterBroker形成云计算虚拟***,所述数据中心datacenter用于管理虚拟机的一组物理计算节点;所述DatacenterBroker用于调度云计算虚拟***中的云计算资源执行云任务。
3.根据权利要求2所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,根据所有云任务的总执行时间和总执行成本建立适应度函数的方法包括:
计算云任务的总执行时间,表达公式为:
公式中,Texeij表示为云任务的总执行时间,exeij为虚拟机的执行时间,i为云任务编号,j为虚拟机编号,m是云计算虚拟***中虚拟机个数,n是云任务个数,ci代表被分配给虚拟机的云任务集合,npej×Vmipsj代表第j个虚拟机的处理器速度,若任务i被分配给第j个虚拟机,则xij=1反之其值为0;
计算云任务的总执行成本,表达公式为:
公式中,为一台虚拟机执行成本,/>为云任务的行成本,V cos tj是第j个虚拟机每小时的成本;
根据所有云任务的总执行时间和总执行成本建立适应度函数,表达公式为:
公式中,MinF(x)表示为适应度函数。
4.根据权利要求2所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,在初始解A的基础上通过蚁群算法进行搜索获得初始解B的方法包括:
将蚂蚁放置于每个计算节点上,根据轮盘赌概率选择下一台虚拟机,在蚂蚁所经途中留下信息素,根据信息素浓度为蚂蚁种群提供搜索线索;
所述蚂蚁种群的搜索半径RS,计算公式为
公式中,Nbest表示为所有初始解A中的最优解对应猫的位置;Nworst表示为所有初始解A中的最差解对应猫的位置。
5.根据权利要求1所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,还包括:在猫群算法中对记忆池中每个猫的位置进行变异操作,表达公式为:
X'k=(1±SRDk*R)*Xk
公式中,X'k为猫的新变异位置,Xk为猫的当前位置,R为随机数;SRD为设定的初始变异算子值,SRDk为迭代到第k代的变异算子值,ωmax为最大迭代次数,ωk为当前迭代次数。
6.根据权利要求5所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果的方法包括:
对追踪模式组中猫的速度和位置进行更新,表达公式为:
Vh,k+1=Vh,kh,k×c×r×(Xk,best(t)-Xh,k(t))
Xh,k+1(t)=Xh,k(t)+Vh,k+1
公式中,Vh,k+1表示为第k+1次迭代中第h只猫的速度,Vh,k表示为第k次迭代中第h只猫的速度,c表示为设定常量,r表示为0到1的随机数,ωh,k表示为第k次迭代中第h只猫的步长;Xk,best(t)表示为第k次迭代中猫群中最优解位置;Xh,k(t)表示为第k次迭代中第h只猫的位置;Xh,k+1(t)表示为第k+1次迭代中第h只猫的位置。
7.根据权利要求6所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,计算追踪模式组中猫的步长,表达公式为:
公式中,ωmax表示为最大惯性系数;ωmin表示为最小惯性系数,F(xh,k)为第k次迭代的第h只猫的适应度值,Fk,min为猫群第k次迭代的最差适应度,Fk,average为第k次迭代的猫群的平均适应度值。
8.根据权利要求3所述的基于蚁群优化的猫群算法云计算资源调度方法,其特征在于,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解的方法包括:
根据最终猫群中每只猫的位置输出对应的云计算资源调度策略,记为备选策略Pc
计算备选策略Pc的负载均衡差BL,表达公式为:
AVL=Texeij/m
公式中,AVL为所有虚拟机完成其上分配任务的时间之和的平均值;
计算备选策略Pc的服务质量,表达公式为:
公式中,QoS(x)表示为备选策略Pc的服务质量,θ表述为执行时间的权重系数;
根据服务质量和负载均衡差BL由所有备选策略Pc中寻找出云计算资源调度策略的全局最优解。
9.根据权利要求1至权利要求8任一项所述一种基于蚁群优化的猫群算法云计算资源调度方法的应用***,包括:
模型搭建模块,用于在Cloudsim仿真平台中搭建云计算虚拟***,创建云任务并按照需求设定云任务的个数和长度;调度云计算虚拟***中的云计算资源执行云任务;
划分模块,用于根据所有云任务的总执行时间和总执行成本建立适应度函数;将猫的位置代表为云计算资源的分配方案,以适应度函数为优化目标,采用猫群算法对云计算资源调度策略进行优化求解;根据预先设定的结合率将猫群分为搜寻模式组和追踪模式组;
搜寻模块,用于在搜寻模式组的猫搜寻最优云计算资源调度策略阶段引入蚁群算法;通过搜寻模式组的猫搜寻获得初始解A,在初始解A的基础上通过蚁群算法进行搜索获得初始解B;根据适应度值选择初始解A和初始解B作为搜寻结果;将搜寻模式组的猫所在位置位置存储至记忆池中;
跟踪模块,用于在记忆池中寻找当前最优解的位置;通过追踪模式组的猫朝向当前最优解的位置移动获得跟踪结果;将追踪模式组的猫所在位置位置存储至记忆池中;
输出模块,用于将总执行时间和总执行成本作为帕累托的两个目标,对搜寻结果和跟踪结果进行多目标择优获得帕累托解集;根据帕累托解集更新所述猫群中猫的位置;重复迭代设定次数输出最终猫群中猫的位置,由最终猫群中猫的位置寻找出云计算资源调度策略的全局最优解。
10.计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1至权利要求8任一项所述猫群算法云计算资源调度方法的步骤。
CN202310462751.4A 2023-04-26 2023-04-26 一种基于蚁群优化的猫群算法云计算资源调度方法及*** Pending CN116467084A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310462751.4A CN116467084A (zh) 2023-04-26 2023-04-26 一种基于蚁群优化的猫群算法云计算资源调度方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310462751.4A CN116467084A (zh) 2023-04-26 2023-04-26 一种基于蚁群优化的猫群算法云计算资源调度方法及***

Publications (1)

Publication Number Publication Date
CN116467084A true CN116467084A (zh) 2023-07-21

Family

ID=87173305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310462751.4A Pending CN116467084A (zh) 2023-04-26 2023-04-26 一种基于蚁群优化的猫群算法云计算资源调度方法及***

Country Status (1)

Country Link
CN (1) CN116467084A (zh)

Similar Documents

Publication Publication Date Title
CN109947567B (zh) 一种多智能体强化学习调度方法、***及电子设备
Guo et al. Cloud resource scheduling with deep reinforcement learning and imitation learning
Zhang et al. Network-aware virtual machine migration in an overcommitted cloud
CN103631657B (zh) 一种基于MapReduce的任务调度方法
CN112416585B (zh) 面向深度学习的gpu资源管理与智能化调度方法
Guo Task scheduling based on ant colony optimization in cloud environment
CN110688219B (zh) 基于反向混沌布谷鸟搜索的自适应权重负载均衡算法
Kaur et al. Deep‐Q learning‐based heterogeneous earliest finish time scheduling algorithm for scientific workflows in cloud
CN108170530B (zh) 一种基于混合元启发式算法的Hadoop负载均衡任务调度方法
Sathappan et al. Modified genetic algorithm for multiobjective task scheduling on heterogeneous computing system
Keshk et al. Cloud task scheduling for load balancing based on intelligent strategy
CN110008023B (zh) 基于遗传算法的云计算***预算约束随机任务调度方法
Wei et al. Multi-resource balance optimization for virtual machine placement in cloud data centers
CN112084035B (zh) 一种基于蚁群算法的任务调度方法及***
CN111813506A (zh) 一种基于粒子群算法资源感知计算迁移方法、装置及介质
Supreeth et al. Hybrid genetic algorithm and modified-particle swarm optimization algorithm (GA-MPSO) for predicting scheduling virtual machines in educational cloud platforms
CN109710372B (zh) 一种基于猫头鹰搜索算法的计算密集型云工作流调度方法
Chen et al. Task scheduling in grid based on particle swarm optimization
CN114741955A (zh) 一种基于安全云的多目标优化任务调度方法
Saif et al. Hybrid meta-heuristic genetic algorithm: Differential evolution algorithms for scientific workflow scheduling in heterogeneous cloud environment
Shirvani A novel discrete grey wolf optimizer for scientific workflow scheduling in heterogeneous cloud computing platforms
Amini Motlagh et al. A new reliability‐based task scheduling algorithm in cloud computing
Kumari et al. A hybrid approach of genetic algorithm and multi objective PSO task scheduling in cloud computing
CN116089083A (zh) 一种多目标数据中心资源调度方法
CN116467084A (zh) 一种基于蚁群优化的猫群算法云计算资源调度方法及***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination