CN109067834B - 基于振荡式惯性权重的离散粒子群调度算法 - Google Patents
基于振荡式惯性权重的离散粒子群调度算法 Download PDFInfo
- Publication number
- CN109067834B CN109067834B CN201810697077.7A CN201810697077A CN109067834B CN 109067834 B CN109067834 B CN 109067834B CN 201810697077 A CN201810697077 A CN 201810697077A CN 109067834 B CN109067834 B CN 109067834B
- Authority
- CN
- China
- Prior art keywords
- particle
- task
- iteration
- particle swarm
- scheduling algorithm
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于振荡式惯性权重的离散粒子群调度算法,包括如下步骤:S1,对粒子群中每个粒子的参数进行初始化;S2,计算每个粒子的完工时间,并找出全局最优解gbest和个体最优解pbest;S3,对每个粒子的速度和位置进行更新:S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2。本发明通过振荡式惯性权重的离散粒子群调度算法大幅度缩短了云计算中的任务调度的时间,提高了对用户请求的反馈速度,提升了云平台的服务质量。
Description
技术领域
本发明涉及云计算资源调度领域,具体涉及一种基于振荡式惯性权重的离散粒子群调度算法。
背景技术
随着互联网技术的发展和移动互联网用户的爆发式增长,互联网进一步融合到用户生活的各个方面,这种新情况也给网络提供商带来了新的挑战,如何在网络负载日益加重的情况下满足用户对网络速度以及安全性等方面的要求成为网络提供商亟待解决的问题,并且网络带宽的不断增长使得通过网络访问非本地的计算服务变成可能,云计算就是在这种背景下诞生的。它是以传统计算机技术与网络技术为基础的新型计算模式,融合了虚拟化技术、负载均衡、分布式计算、并行计算以及网络存储等技术。云计算环境下,用户与任务的执行过程分离,用户不需要关心任务在何处以何种方式运行,云计算的目标就是通过网络把抽象的计算、存储、带宽、平台等资源按需提供给用户。
云计算通过MapReduce模型,如图1所示,先将用户的任务请求拆分为众多子任务,然后中心代理将子任务映射到资源节点(虚拟机)进行计算:中心代理根据子任务的大小、带宽、处理能力等要求选择合适的资源节点去执行子任务,最后再将任务合并返回给用户,通过这种方式可以高效的响应用户请求。但是将众多子任务映射到资源节点是NP-hard问题,目前云计算平台采用的调度算法存在一定问题:如单队列调度,简单但资源利用率低;公平调度,支持作业分类调度,但是节点的负载均衡未考虑;容量调度,支持多作业并行执行,但队列设置和队列选择无法自动进行。
鉴于此,确有必要发明一种基于粒子群算法的云计算资源调度方法,以解决上述问题。
发明内容
本发明的目的在于提供一种任务调度时间短,云平台服务质量高的基于振荡式惯性权重的离散粒子群调度算法。
为了实现上述目的,本发明采用如下技术方案:一种基于振荡式惯性权重的离散粒子群调度算法,包括如下步骤:
S1,对粒子群中每个粒子的参数进行初始化;
S2,计算每个粒子的完工时间,并找出全局最优解gbest和个体最优解pbest;
S3,根据公式(1)-(3)对每个粒子的速度和位置进行更新:
其中,c1和c2是加速常数,rand1()和rand2()是在0到1之间的随机数,和是表示粒子在第t次迭代后的速度和位置,和表示粒子第t+1 次迭代后的速度和位置,ω是惯性权重,是全局最优解,是个体最优解;
S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2。
作为本发明进一步改进的技术方案,步骤S1具体包括:
S10,对粒子群中每个粒子的初始位置进行初始化;
S11,对粒子群中每个粒子的初始速度进行初始化。
作为本发明进一步改进的技术方案,步骤S10中,每个粒子的初始位置服从均匀分布。
作为本发明进一步改进的技术方案,步骤S11中,每个粒子的初始速度服从均匀分布。
作为本发明进一步改进的技术方案,步骤S2中,在计算每个粒子对应的完工时间时,需要建立任务与虚拟机的映射效率,具体步骤如下:
步骤1,对粒子进行编码,定义粒子的维度为n,即有n个任务,分配m台虚拟机执行任务,其中m≤n;定义粒子的第i个维度是j,即任务i 分配到j号虚拟机执行;
步骤2,用户发出任务请求,各个虚拟机得出完成每个任务所需时间的执行时间矩阵:
步骤3,计算得出每个任务的最大完工时间Makespan。
作为本发明进一步改进的技术方案,最大完工时间Makespan由以下公式计算获得:
其中,Sj表示j号虚拟机上执行的任务集合。
本发明的有益效果是:本发明采用振荡式惯性权重的离散粒子群调度算法,提高了迭代前期的全局开发能力和迭代后期的局部探索能力,通过不断的迭代最终建立任务到虚拟机的映射坐标。
附图说明
图1为现有技术中云计算资源调度模型。
图2为本发明基于振荡式惯性权重的离散粒子群调度算法的流程图。
图3为本发明基于振荡式惯性权重的离散粒子群调度算法的振荡式惯性权重的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施方式对本发明进行详细描述。
本发明提供一种基于振荡式惯性权重的离散粒子群调度算法,在本发明中,首先要建立任务与虚拟机的映射效率。
具体步骤如下:
步骤1,对粒子进行编码,定义粒子的维度为n,即有n个任务,分配m台虚拟机(即资源节点)执行任务,其中m≤n;定义粒子的第i个维度是j,即任务i分配到j号虚拟机执行;
步骤2,用户发出任务请求,各个虚拟机得出完成每个任务所需时间的执行时间矩阵:
每个任务的完工时间取决于执行时间最长的虚拟机,可得最大完工时间Makespan的公式,最大完工时间是评估算法的性能指标,最大完工时间越短,用户满意度越高。
步骤3,计算得出每个任务的最大完工时间Makespan:
其中,Sj表示j号虚拟机上执行的任务集合。
请参图2所示,基于上述的数据结构,下面提供一种基于振荡式惯性权重的离散粒子群调度算法,包括如下步骤:
S1,对粒子群中每个粒子的参数进行初始化;
S2,根据公式(B)计算每个粒子的最大完工时间,并找出全局最优解gbest和个体最优解pbest;
S3,根据公式(1)-(3)对每个粒子的速度和位置进行更新:
其中,c1和c2是加速常数,rand1()和rand2()是在0到1之间的随机数,和是表示粒子在第t次迭代后的速度和位置,和表示粒子第t+1 次迭代后的速度和位置,ω是惯性权重,是全局最优解,是个体最优解;
S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2,直到达到迭代次数为止。
具体来讲,步骤S1包括如下步骤:
S10,对粒子群中每个粒子的初始位置进行初始化,每个粒子的初始位置服从均匀分布,Xi~U(0,Vmnum),其中,Vmnum是虚拟机的个数;
S11,对粒子群中每个粒子的初始速度进行初始化,每个粒子的初始速度服从均匀分布,即vi~U(0,Vmnum)。
在上述公式中,c1和c2是加速常数,分别表示粒子对自身的历史最优解和种群全局最优解的依赖程度。rand1()和rand2()是在0到1之间的随机数,增加粒子寻优过程的随机性,防止粒子过早向同一方向移动。和是表示粒子在第t次迭代后的速度和位置,速度的矢量和位置的矢量的每个维度都遵循公式(1),和表示粒子第t+1次迭代后的速度和位置,粒子的速度被限定在虚拟机数量的10%-20%之间,防止跑出问题域。ω是惯性权重,可以决定粒子对当前速度参考的比重,如果ω较大,则子具有强大的探索能力,可以跨越更远的距离,便于寻找全局最优解;如果ω较小,意味着粒子拥有更好的局部寻优能力。
如图3所示,为本发明中振荡式惯性权重的示意图,公式(2)是本发明提出的振荡式惯性权重,在粒子探索初期具有较大的值,利于粒子全局探索,然后周期振荡减小,便于粒子局部探索和全局调整位置。
本发明采用的一种基于振荡式惯性权重的离散粒子群调度算法是一种启发式仿生学算法,利用鸟类群体个体对信息的共享机制,使整个群体的运动在问题的解空间中产生从无序到有序的演化过程,从而获得最优解。在粒子群算法中,每个粒子都是依靠自身的飞行经验以及种群的飞行经验来调整自己的位置和速度。在搜索过程中,单个个体找到个体的最优解,也称为局部极值,而对于整个种群,所有个体的局部极值中的最优位置,就是群体最优解,称作全局极值。在整个搜索过程中,粒子通过迭代不断更新自己的位置和速度,通过定义的适应度函数来调整评估自身位置的优劣,最终找到全局最优解。
综上所述,本发明提供一种基于振荡式惯性权重的离散粒子群调度算法,通过绝对值向上取余映射离散化粒子群算法,使每个粒子的维度与任务的数量相对应,粒子的坐标与任务分配到虚拟机的映射坐标相对应;采用振荡式惯性权重的离散粒子群调度算法,提高了迭代前期的全局开发能力和迭代后期的局部探索能力,通过不断的迭代最终建立任务到虚拟机的映射坐标。从而,本发明大幅度缩短了云计算中的任务调度的时间,提高了对用户请求的反馈速度,提升了云平台的服务质量。
以上实施例仅用于说明本发明而并非限制本发明所描述的技术方案,对本说明书的理解应该以所属技术领域的技术人员为基础,尽管本说明书参照上述的实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,所属技术领域的技术人员仍然可以对本发明进行修改或者等同替换,而一切不脱离本发明的精神和范围的技术方案及其改进,均应涵盖在本发明的权利要求范围内。
Claims (3)
1.一种基于振荡式惯性权重的离散粒子群调度算法,其特征在于:包括如下步骤:
S1,对粒子群中每个粒子的初始位置和初始速度进行初始化,其中每个粒子的初始位置和初始速度均服从均匀分布;
S2,建立任务与虚拟机的映射效率,计算每个粒子的完工时间,并找出全局最优解gbest和个体最优解pbest;具体步骤如下:
步骤1,对粒子进行编码,定义粒子的维度为n,即有n个任务,分配m台虚拟机执行任务,其中m≤n;定义粒子的第i个维度是j,即任务i分配到j号虚拟机执行;
步骤2,用户发出任务请求,各个虚拟机得出完成每个任务所需时间的执行时间矩阵:
步骤3,计算得出每个任务的最大完工时间Makespan:
其中,Sj表示j号虚拟机上执行的任务集合;
S3,根据公式(1)-(3)对每个粒子的速度和位置进行更新:
公式(1)中,c1和c2是加速常数,rand1()和rand2()是在0到1之间的随机数,和是表示粒子在第t次迭代后的速度和位置,和表示粒子第t+1次迭代后的速度和位置,ω是惯性权重,是全局最优解,是个体最优解;公式(2)中,c表示振荡周期数,i代表具体的迭代次数,Imax表示粒子的最大迭代次数,ωmin1代表ω第一个迭代周期的下限,ωmin2代表ω第二个迭代周期的下限,并且ωmin1≤ω≤ωmin1+1;
S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810697077.7A CN109067834B (zh) | 2018-06-29 | 2018-06-29 | 基于振荡式惯性权重的离散粒子群调度算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810697077.7A CN109067834B (zh) | 2018-06-29 | 2018-06-29 | 基于振荡式惯性权重的离散粒子群调度算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109067834A CN109067834A (zh) | 2018-12-21 |
CN109067834B true CN109067834B (zh) | 2020-12-15 |
Family
ID=64818500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810697077.7A Active CN109067834B (zh) | 2018-06-29 | 2018-06-29 | 基于振荡式惯性权重的离散粒子群调度算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109067834B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110099415B (zh) * | 2019-04-29 | 2022-11-11 | 哈尔滨工业大学(深圳) | 一种基于流量预测的云无线接入网计算资源分配方法及系统 |
CN110599068A (zh) * | 2019-09-29 | 2019-12-20 | 哈尔滨理工大学 | 一种基于粒子群优化算法的云资源调度方法 |
CN113360275A (zh) * | 2020-03-06 | 2021-09-07 | 中移(上海)信息通信科技有限公司 | 资源调度方法、装置、设备和介质 |
CN111709214B (zh) * | 2020-06-18 | 2022-06-14 | 福州大学 | 基于离散粒子群优化的轨道规划方法 |
CN113222096B (zh) * | 2021-04-30 | 2022-11-11 | 桂林理工大学 | 一种面向云计算任务调度的改进粒子群算法 |
CN113361146B (zh) * | 2021-07-21 | 2023-04-07 | 国网江西省电力有限公司供电服务管理中心 | 一种基于改进粒子群算法的锰铜分流器结构参数优化方法 |
CN117271143B (zh) * | 2023-11-22 | 2024-01-26 | 无锡尚航数据有限公司 | 一种数据中心优化节能调度方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019822A (zh) * | 2012-12-07 | 2013-04-03 | 北京邮电大学 | 一种云环境下收益驱动的大规模处理任务调度方法 |
CN103268529A (zh) * | 2013-04-25 | 2013-08-28 | 中山大学 | 基于集合型离散粒子群优化的云工作流调度方法 |
CN103699446A (zh) * | 2013-12-31 | 2014-04-02 | 南京信息工程大学 | 基于量子粒子群优化算法的多目标工作流动态调度方法 |
CN104536828A (zh) * | 2014-12-26 | 2015-04-22 | 湖南强智科技发展有限公司 | 基于量子粒子群算法的云计算的任务调度方法和系统 |
CN105430706A (zh) * | 2015-11-03 | 2016-03-23 | 国网江西省电力科学研究院 | 一种基于改进粒子群算法的无线传感网络路由优化方法 |
CN108182115A (zh) * | 2017-12-28 | 2018-06-19 | 福州大学 | 一种云环境下的虚拟机负载均衡方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528396B2 (en) * | 2016-11-14 | 2020-01-07 | King Abdulaziz University | Temporal task scheduling in a hybrid system |
-
2018
- 2018-06-29 CN CN201810697077.7A patent/CN109067834B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019822A (zh) * | 2012-12-07 | 2013-04-03 | 北京邮电大学 | 一种云环境下收益驱动的大规模处理任务调度方法 |
CN103268529A (zh) * | 2013-04-25 | 2013-08-28 | 中山大学 | 基于集合型离散粒子群优化的云工作流调度方法 |
CN103699446A (zh) * | 2013-12-31 | 2014-04-02 | 南京信息工程大学 | 基于量子粒子群优化算法的多目标工作流动态调度方法 |
CN104536828A (zh) * | 2014-12-26 | 2015-04-22 | 湖南强智科技发展有限公司 | 基于量子粒子群算法的云计算的任务调度方法和系统 |
CN105430706A (zh) * | 2015-11-03 | 2016-03-23 | 国网江西省电力科学研究院 | 一种基于改进粒子群算法的无线传感网络路由优化方法 |
CN108182115A (zh) * | 2017-12-28 | 2018-06-19 | 福州大学 | 一种云环境下的虚拟机负载均衡方法 |
Non-Patent Citations (2)
Title |
---|
《Performance comparison of Partical Swarm Optimization Variant Models》;Bing Qi;《IEEE》;20140602;全文 * |
《基于改进粒子群的云计算任务调度方法》;蹇旭;《海南热带海洋学院学报》;20180430;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109067834A (zh) | 2018-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109067834B (zh) | 基于振荡式惯性权重的离散粒子群调度算法 | |
Zade et al. | SAEA: A security-aware and energy-aware task scheduling strategy by Parallel Squirrel Search Algorithm in cloud environment | |
Yao et al. | Scheduling real-time deep learning services as imprecise computations | |
Keshk et al. | Cloud task scheduling for load balancing based on intelligent strategy | |
CN111124689A (zh) | 一种集群中容器资源动态分配方法 | |
Abdullah et al. | Integrated MOPSO algorithms for task scheduling in cloud computing | |
CN115330189A (zh) | 一种基于改进飞蛾火焰算法的工作流优化调度方法 | |
Liu et al. | Task scheduling in cloud computing based on improved discrete particle swarm optimization | |
Janani et al. | Research Article Optimization of Virtual Machine Placement in Cloud Environment Using Genetic Algorithm | |
CN117032902A (zh) | 一种基于负载的改进离散粒子群算法的云任务调度方法 | |
Zhang et al. | Hierarchical resource scheduling method using improved cuckoo search algorithm for internet of things | |
Vashishth et al. | A predictive approach to task scheduling for Big Data in cloud environments using classification algorithms | |
Hosseini et al. | Resource allocation optimization in cloud computing using the whale optimization algorithm | |
Seifhosseini et al. | Multi-objective cost-aware bag-of-tasks scheduling optimization model for IoT applications running on heterogeneous fog environment | |
Murad et al. | Comparative study on job scheduling using priority rule and machine learning | |
Chalack et al. | Resource allocation in cloud environment using approaches based particle swarm optimization | |
Jiang et al. | An improved multi-objective grey wolf optimizer for dependent task scheduling in edge computing | |
Kabir et al. | VM placement algorithms for hierarchical cloud infrastructure | |
CN114968554B (zh) | 一种基于核函数映射方式的鲸鱼算法的工作流云调度方法 | |
Negi et al. | Novel hybrid ANN and clustering inspired load balancing algorithm in cloud environment | |
CN117461039A (zh) | 并行机器学习模型的公平同步比较 | |
Jagadish et al. | Task scheduling algorithms in fog computing: A comparison and analysis | |
Ramya et al. | Performance Improvement in Cloud Computing Environment by Load Balancing-A Comprehensive Review | |
Hasan et al. | Internet of things task scheduling in cloud environment using particle swarm optimization | |
Pakhrudin et al. | Cloud service analysis using round-robin algorithm for quality-of-service aware task placement for internet of things services |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |