CN109067834B - 基于振荡式惯性权重的离散粒子群调度算法 - Google Patents

基于振荡式惯性权重的离散粒子群调度算法 Download PDF

Info

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
Application number
CN201810697077.7A
Other languages
English (en)
Other versions
CN109067834A (zh
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 CN201810697077.7A priority Critical patent/CN109067834B/zh
Publication of CN109067834A publication Critical patent/CN109067834A/zh
Application granted granted Critical
Publication of CN109067834B publication Critical patent/CN109067834B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling 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)对每个粒子的速度和位置进行更新:
Figure BDA0001713648540000021
Figure BDA0001713648540000022
Figure BDA0001713648540000023
其中,c1和c2是加速常数,rand1()和rand2()是在0到1之间的随机数,
Figure BDA0001713648540000029
Figure BDA0001713648540000028
是表示粒子在第t次迭代后的速度和位置,
Figure BDA0001713648540000024
Figure BDA0001713648540000025
表示粒子第t+1 次迭代后的速度和位置,ω是惯性权重,
Figure BDA0001713648540000026
是全局最优解,
Figure BDA0001713648540000027
是个体最优解;
S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2。
作为本发明进一步改进的技术方案,步骤S1具体包括:
S10,对粒子群中每个粒子的初始位置进行初始化;
S11,对粒子群中每个粒子的初始速度进行初始化。
作为本发明进一步改进的技术方案,步骤S10中,每个粒子的初始位置服从均匀分布。
作为本发明进一步改进的技术方案,步骤S11中,每个粒子的初始速度服从均匀分布。
作为本发明进一步改进的技术方案,步骤S2中,在计算每个粒子对应的完工时间时,需要建立任务与虚拟机的映射效率,具体步骤如下:
步骤1,对粒子进行编码,定义粒子的维度为n,即有n个任务,分配m台虚拟机执行任务,其中m≤n;定义粒子的第i个维度是j,即任务i 分配到j号虚拟机执行;
步骤2,用户发出任务请求,各个虚拟机得出完成每个任务所需时间的执行时间矩阵:
Figure BDA0001713648540000031
步骤3,计算得出每个任务的最大完工时间Makespan。
作为本发明进一步改进的技术方案,最大完工时间Makespan由以下公式计算获得:
Figure BDA0001713648540000032
其中,Sj表示j号虚拟机上执行的任务集合。
作为本发明进一步改进的技术方案,粒子第t+1次迭代速度
Figure BDA0001713648540000035
被限定在虚拟机数量的10%-20%之间。
作为本发明进一步改进的技术方案,速度
Figure BDA0001713648540000033
的矢量和位置
Figure BDA0001713648540000034
的矢量的每个维度都遵循公式(1)。
本发明的有益效果是:本发明采用振荡式惯性权重的离散粒子群调度算法,提高了迭代前期的全局开发能力和迭代后期的局部探索能力,通过不断的迭代最终建立任务到虚拟机的映射坐标。
附图说明
图1为现有技术中云计算资源调度模型。
图2为本发明基于振荡式惯性权重的离散粒子群调度算法的流程图。
图3为本发明基于振荡式惯性权重的离散粒子群调度算法的振荡式惯性权重的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施方式对本发明进行详细描述。
本发明提供一种基于振荡式惯性权重的离散粒子群调度算法,在本发明中,首先要建立任务与虚拟机的映射效率。
具体步骤如下:
步骤1,对粒子进行编码,定义粒子的维度为n,即有n个任务,分配m台虚拟机(即资源节点)执行任务,其中m≤n;定义粒子的第i个维度是j,即任务i分配到j号虚拟机执行;
步骤2,用户发出任务请求,各个虚拟机得出完成每个任务所需时间的执行时间矩阵:
Figure BDA0001713648540000041
每个任务的完工时间取决于执行时间最长的虚拟机,可得最大完工时间Makespan的公式,最大完工时间是评估算法的性能指标,最大完工时间越短,用户满意度越高。
步骤3,计算得出每个任务的最大完工时间Makespan:
Figure BDA0001713648540000042
其中,Sj表示j号虚拟机上执行的任务集合。
请参图2所示,基于上述的数据结构,下面提供一种基于振荡式惯性权重的离散粒子群调度算法,包括如下步骤:
S1,对粒子群中每个粒子的参数进行初始化;
S2,根据公式(B)计算每个粒子的最大完工时间,并找出全局最优解gbest和个体最优解pbest
S3,根据公式(1)-(3)对每个粒子的速度和位置进行更新:
Figure BDA0001713648540000051
Figure BDA0001713648540000052
Figure BDA0001713648540000053
其中,c1和c2是加速常数,rand1()和rand2()是在0到1之间的随机数,
Figure BDA0001713648540000058
Figure BDA0001713648540000059
是表示粒子在第t次迭代后的速度和位置,
Figure BDA0001713648540000054
Figure BDA0001713648540000055
表示粒子第t+1 次迭代后的速度和位置,ω是惯性权重,
Figure BDA0001713648540000056
是全局最优解,
Figure BDA0001713648540000057
是个体最优解;
S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2,直到达到迭代次数为止。
具体来讲,步骤S1包括如下步骤:
S10,对粒子群中每个粒子的初始位置进行初始化,每个粒子的初始位置服从均匀分布,Xi~U(0,Vmnum),其中,Vmnum是虚拟机的个数;
S11,对粒子群中每个粒子的初始速度进行初始化,每个粒子的初始速度服从均匀分布,即vi~U(0,Vmnum)。
在上述公式中,c1和c2是加速常数,分别表示粒子对自身的历史最优解和种群全局最优解的依赖程度。rand1()和rand2()是在0到1之间的随机数,增加粒子寻优过程的随机性,防止粒子过早向同一方向移动。
Figure BDA0001713648540000066
Figure BDA0001713648540000067
是表示粒子在第t次迭代后的速度和位置,速度
Figure BDA0001713648540000064
的矢量和位置
Figure BDA0001713648540000065
的矢量的每个维度都遵循公式(1),
Figure BDA0001713648540000061
Figure BDA0001713648540000062
表示粒子第t+1次迭代后的速度和位置,粒子的速度
Figure BDA0001713648540000063
被限定在虚拟机数量的10%-20%之间,防止跑出问题域。ω是惯性权重,可以决定粒子对当前速度参考的比重,如果ω较大,则子具有强大的探索能力,可以跨越更远的距离,便于寻找全局最优解;如果ω较小,意味着粒子拥有更好的局部寻优能力。
如图3所示,为本发明中振荡式惯性权重的示意图,公式(2)是本发明提出的振荡式惯性权重,在粒子探索初期具有较大的值,利于粒子全局探索,然后周期振荡减小,便于粒子局部探索和全局调整位置。
本发明采用的一种基于振荡式惯性权重的离散粒子群调度算法是一种启发式仿生学算法,利用鸟类群体个体对信息的共享机制,使整个群体的运动在问题的解空间中产生从无序到有序的演化过程,从而获得最优解。在粒子群算法中,每个粒子都是依靠自身的飞行经验以及种群的飞行经验来调整自己的位置和速度。在搜索过程中,单个个体找到个体的最优解,也称为局部极值,而对于整个种群,所有个体的局部极值中的最优位置,就是群体最优解,称作全局极值。在整个搜索过程中,粒子通过迭代不断更新自己的位置和速度,通过定义的适应度函数来调整评估自身位置的优劣,最终找到全局最优解。
综上所述,本发明提供一种基于振荡式惯性权重的离散粒子群调度算法,通过绝对值向上取余映射离散化粒子群算法,使每个粒子的维度与任务的数量相对应,粒子的坐标与任务分配到虚拟机的映射坐标相对应;采用振荡式惯性权重的离散粒子群调度算法,提高了迭代前期的全局开发能力和迭代后期的局部探索能力,通过不断的迭代最终建立任务到虚拟机的映射坐标。从而,本发明大幅度缩短了云计算中的任务调度的时间,提高了对用户请求的反馈速度,提升了云平台的服务质量。
以上实施例仅用于说明本发明而并非限制本发明所描述的技术方案,对本说明书的理解应该以所属技术领域的技术人员为基础,尽管本说明书参照上述的实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,所属技术领域的技术人员仍然可以对本发明进行修改或者等同替换,而一切不脱离本发明的精神和范围的技术方案及其改进,均应涵盖在本发明的权利要求范围内。

Claims (3)

1.一种基于振荡式惯性权重的离散粒子群调度算法,其特征在于:包括如下步骤:
S1,对粒子群中每个粒子的初始位置和初始速度进行初始化,其中每个粒子的初始位置和初始速度均服从均匀分布;
S2,建立任务与虚拟机的映射效率,计算每个粒子的完工时间,并找出全局最优解gbest和个体最优解pbest;具体步骤如下:
步骤1,对粒子进行编码,定义粒子的维度为n,即有n个任务,分配m台虚拟机执行任务,其中m≤n;定义粒子的第i个维度是j,即任务i分配到j号虚拟机执行;
步骤2,用户发出任务请求,各个虚拟机得出完成每个任务所需时间的执行时间矩阵:
Figure FDA0002733193600000011
步骤3,计算得出每个任务的最大完工时间Makespan:
Figure FDA0002733193600000012
其中,Sj表示j号虚拟机上执行的任务集合;
S3,根据公式(1)-(3)对每个粒子的速度和位置进行更新:
Figure FDA0002733193600000013
Figure FDA0002733193600000014
Figure FDA0002733193600000015
公式(1)中,c1和c2是加速常数,rand1()和rand2()是在0到1之间的随机数,
Figure FDA0002733193600000016
Figure FDA0002733193600000017
是表示粒子在第t次迭代后的速度和位置,
Figure FDA0002733193600000018
Figure FDA0002733193600000019
表示粒子第t+1次迭代后的速度和位置,ω是惯性权重,
Figure FDA00027331936000000110
是全局最优解,
Figure FDA00027331936000000111
是个体最优解;公式(2)中,c表示振荡周期数,i代表具体的迭代次数,Imax表示粒子的最大迭代次数,ωmin1代表ω第一个迭代周期的下限,ωmin2代表ω第二个迭代周期的下限,并且ωmin1≤ω≤ωmin1+1;
S4,判断是否达到迭代次数,若达到迭代次数,则终止并输出结果;若未达到迭代次数,则循环进入步骤S2。
2.如权利要求1所述的基于振荡式惯性权重的离散粒子群调度算法,其特征在于:粒子第t+1次迭代速度
Figure FDA0002733193600000021
被限定在虚拟机数量的10%-20%之间。
3.如权利要求1所述的基于振荡式惯性权重的离散粒子群调度算法,其特征在于:速度
Figure FDA0002733193600000022
的矢量和位置
Figure FDA0002733193600000023
的矢量的每个维度都遵循公式(1)。
CN201810697077.7A 2018-06-29 2018-06-29 基于振荡式惯性权重的离散粒子群调度算法 Active CN109067834B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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