CN115730432B - 物联网数据处理任务的调度方法及系统、设备、存储介质 - Google Patents
物联网数据处理任务的调度方法及系统、设备、存储介质 Download PDFInfo
- Publication number
- CN115730432B CN115730432B CN202211400632.8A CN202211400632A CN115730432B CN 115730432 B CN115730432 B CN 115730432B CN 202211400632 A CN202211400632 A CN 202211400632A CN 115730432 B CN115730432 B CN 115730432B
- Authority
- CN
- China
- Prior art keywords
- local
- population
- task
- individuals
- chromosome
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000012545 processing Methods 0.000 title claims abstract description 43
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 41
- 210000000349 chromosome Anatomy 0.000 claims description 62
- 238000004364 calculation method Methods 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 20
- 108090000623 proteins and genes Proteins 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 18
- 230000035772 mutation Effects 0.000 claims description 9
- 230000002068 genetic effect Effects 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 238000009826 distribution Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 3
- 238000012821 model calculation Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 238000010353 genetic engineering Methods 0.000 claims description 2
- 238000005457 optimization Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种物联网数据处理任务的调度方法及系统、设备、存储介质,该方法通过将多目标优化问题融合到染色体适应度计算中,相比于现有加权求和转化为单目标优化求解的方式,可以有效地避免人为主观因素的影响。并且,采用了具有局部搜索能力的NSGA‑II算法进行迭代求解,相比于现有的NSGA‑II算法,通过基于距离的概率模型选择搜索个体,然后对该个体进行局部搜索产生更优的个体,有效地解决了现有NSGA‑II算法在求解时容易陷入局部最优的问题,大大加快了算法的收敛速度、降低了局部搜索的复杂度。
Description
技术领域
本发明涉及电力物联网技术领域,特别地,涉及一种物联网数据处理任务的调度方法及系统、电子设备、计算机可读取的存储介质。
背景技术
在加速建设新型电力系统的背景下,企业级实时量测中心汇聚了电网各环节的非电采集量测数据,其包含了海量物联网设备的实时量测数据,每天有大量的物联网数据处理任务产生,这给电网资源管理和资产运行维护带来了巨大的困难。新型电力系统的发展需要实时监测各类数据接入、处理与应用等作业的系统参数,进而对系统周转时间进行优化,需要强化电力数据挖掘速度与任务处理效率,为配电网提供实时的数据分析和高效的任务处理。因此,如何构建一种高效的电力大数据分析与作业处理模型,强化动态任务调度与高效资源管理,对电网业务的发展与新型电力系统实时分析的应用都至关重要。
近年来,电力系统趋向于利用云计算将物联网数据处理任务映射到虚拟机进行处理,对海量的物联网数据进行分布式存储和并行计算。实时量测中心接收到大量的数据存储和计算请求,可为电网各业务提供实时的海量大数据处理与分析,而如何优化这些数据处理任务的执行速度和执行成本成了一个关键性的问题。一般来说,实时量测中心需要及时将任务映射到可用的虚拟机来处理这些请求,主要关注的点有任务完成的时间、任务完成的成本和虚拟机的负载均衡。但是,计算性能越强的虚拟机的计算成本往往越高,而计算的速度越快,完成任务的速度越快。换言之,任务完成时间、任务完成的成本以及虚拟机的负载均衡之间是存在矛盾的三个目标,不可能同时达到最优,显然,该问题是一个多目标优化问题,如何设计一种多目标优化算法求得一种调度策略使得这三个目标达到均衡有着显著的意义,而现有技术中尚未提出相关的解决方案。
发明内容
本发明提供了一种物联网数据处理任务的调度方法及系统、电子设备、计算机可读取的存储介质,以在数据处理任务的调度过程中实现任务完成时间、任务完成成本和虚拟机负载均衡这三个目标达到均衡。
根据本发明的一个方面,提供一种物联网数据处理任务的调度方法,包括以下内容:
获取任务集合和系统资源信息;
基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型;
采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解;
从迭代结束后得到的帕累托前沿中选取一种任务调度策略进行任务调度。
进一步地,所述基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型的过程具体为:
令A={A1,A2,…,AN}表示一条染色体,其中,AN∈{1,2,…,M},M表示虚拟机的数量,AN表示任务TN被分配到第AN台虚拟机上;
对于染色体A,令Km表示分配到第m台虚拟机的任务集合,则第m台虚拟机执行完任务集合Km中的所有任务所需的时间为:
其中,cn和ln分别表示任务Tn的长度和输入文件大小,rm和tm分别表示第m台虚拟机的处理速度和带宽;
则任务最大完成时间为:
f1(A;T,V)=max(time1,time2,...,timeM)
其中,T={T1,T2,...,TN},表示获取的电力云计算任务集合,N表示任务数量,V={V1,V2,...VM}表示虚拟机集合;
所有任务完成所需的成本为:
其中,costm=timem*qm,qm表示第m台虚拟机的单位成本;
虚拟机的平均负载量为:
则染色体适应度计算模型为:
进一步地,所述采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解的过程包括以下内容:
初始化父代种群;
对父代种群进行遗传操作得到同等规模的子代种群;
组合父代种群和子代种群以得到第一代新种群,并对第一代新种群执行局部搜索得到局部种群;
组合父代种群、子代种群和局部种群以得到第二代新种群,从第二代新种群中选取多个优秀个体组成下一代父代种群,且下一代父代种群的规模与初始化的父代种群相同;
不断迭代至最大迭代次数,返回迭代结束后得到的父代种群的帕累托前沿。
进一步地,在初始化父代种群的过程中,一半的个体采用随机初始化,另一半的个体采用概率模型进行初始化,概率模型为:其中,rm和qm分别表示第m台虚拟机的处理速度和单位成本;
再对进行归一化,归一化模型为:/>M表示虚拟机的数量,每个任务基于概率分布ρm选择执行的虚拟机。
进一步地,遗传操作包括选择操作、交叉操作和变异操作,在变异操作过程中,对于任一染色体A上的基因An以P′m的概率发生变异,即:
其中,randn()表示[0,1)的随机数,而f(An)=(randint(1,M)+An)%M+1,randint(1,M)表示从[1,M]中随机生成一个整数,%M表示对M进行取模。
进一步地,所述对第一代新种群执行局部搜索得到局部种群的过程具体为:
初始化局部种群;
根据快速非支配排序算法从第一代新种群中选出帕累托前沿,将帕累托前沿中每个维度的数据归一化到区间[0,1],并计算每个元素到原点的距离;
将距离映射为概率模型;
基于概率模型从帕累托前沿中选择一个个体作为局部搜索个体;
基于局部搜索个体生成N个局部个体,若生成的局部个体不被局部搜索个体所支配,则将该局部个体加入局部种群,否则,丢弃该局部个体;
不断迭代至最大迭代次数,并返回局部种群。
进一步地,所述基于局部搜索个体生成N个局部个体的过程具体为:
将局部搜索个体的基因转化为二进制串,二进制串的长度固定为[log2M],若不足位则用0填充;
随机翻转二进制串中的一位以得到新的二进制串;
将新的二进制串转换为整数,并对转换后的整数进行修正;
利用修正后的整数代替原有位置的基因,从而产生一个局部个体。
另外,本发明还提供一种物联网数据处理任务的调度系统,包括:
数据获取单元,用于获取任务集合和系统资源信息;
模型构建单元,用于基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型;
模型计算单元,用于采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解;
任务调度单元,用于从迭代结束后得到的帕累托前沿中选取一种任务调度策略进行任务调度。
另外,本发明还提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如上所述的方法的步骤。
另外,本发明还提供一种计算机可读取的存储介质,用于存储进行物联网数据处理任务调度的计算机程序,所述计算机程序在计算机上运行时执行如上所述的方法的步骤。
本发明具有以下效果:
本发明的物联网数据处理任务的调度方法,先获取任务集合和系统资源信息,然后基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型,将任务完成时间、任务完成成本和虚拟机负载均衡的多目标问题求解融合到染色体的适应度计算中,然后采用具有局部搜索能力的NSGA-II算法进行迭代求解,最后从迭代结束后得到的帕累托前沿中根据实际需求选取一种任务调度策略进行任务调度。在本方法中,通过建立的染色体编码模型,使得可以采用NSGA-II算法来求解任务调度问题,并且可以得到一组可行的任务调度方案,从而可以根据实际需求选择不同的调度方案来执行。并且,通过将任务完成时间、任务完成成本和虚拟机负载均衡设计为多目标优化问题并融合到染色体适应度计算中,相比于现有将多个指标加权求和转化为单目标优化求解的方式,可以有效地避免人为主观因素的影响。并且,采用了具有局部搜索能力的NSGA-II算法进行迭代求解,相比于现有的NSGA-II算法,本发明通过基于距离的概率模型选择搜索个体,然后对该个体进行局部搜索产生更优的个体,有效地解决了现有NSGA-II算法在求解时容易陷入局部最优的问题,大大加快了算法的收敛速度、降低了局部搜索的复杂度。
另外,本发明的物联网数据处理任务的调度系统同样具有上述优点。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明优选实施例的物联网数据处理任务的调度方法的流程示意图。
图2是图1中步骤S3的子流程示意图。
图3是本发明优选实施例的具有局部搜索能力的NSGA-II进化算法的逻辑流程图。
图4是本发明优选实施例的进化算法生成新种群的示意图。
图5是图2中步骤S33的子流程示意图。
图6是本发明优选实施例中基于概率模型选择局部搜索个体的示意图。
图7是本发明优选实施例中通过局部搜索使得帕累托前沿向原点靠近的示意图。
图8是图5中步骤S335的子流程示意图。
图9是本发明另一实施例的物联网数据处理任务的调度系统的单元结构示意图。
具体实施方式
以下结合附图对本发明的实施例进行详细说明,但是本发明可以由下述所限定和覆盖的多种不同方式实施。
如图1所示,本发明的优选实施例提供一种物联网数据处理任务的调度方法,包括以下内容:
步骤S1:获取任务集合和系统资源信息;
步骤S2:基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型;
步骤S3:采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解;
步骤S4:从迭代结束后得到的帕累托前沿中选取一种任务调度策略进行任务调度。
可以理解,本实施例的物联网数据处理任务的调度方法,先获取任务集合和系统资源信息,然后基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型,将任务完成时间、任务完成成本和虚拟机负载均衡的多目标问题求解融合到染色体的适应度计算中,然后采用具有局部搜索能力的NSGA-II算法进行迭代求解,最后从迭代结束后得到的帕累托前沿中根据实际需求选取一种任务调度策略进行任务调度。在本方法中,通过建立的染色体编码模型,使得可以采用NSGA-II算法来求解任务调度问题,并且可以得到一组可行的任务调度方案,从而可以根据实际需求选择不同的调度方案来执行。并且,通过将任务完成时间、任务完成成本和虚拟机负载均衡设计为多目标优化问题并融合到染色体适应度计算中,相比于现有将多个指标加权求和转化为单目标优化求解的方式,可以有效地避免人为主观因素的影响。并且,采用了具有局部搜索能力的NSGA-II算法进行迭代求解,相比于现有的NSGA-II算法,本发明通过基于距离的概率模型选择搜索个体,然后对该个体进行局部搜索产生更优的个体,有效地解决了现有NSGA-II算法在求解时容易陷入局部最优的问题,大大加快了算法的收敛速度、降低了局部搜索的复杂度。
可以理解,在所述步骤S1中,令T={T1,T2,...,TN}表示获取的N个电力云计算任务的集合,Tn表示集合T中的第n个电力云计算任务,Tn={cn,ln},其中,cn表示任务Tn的长度,即完成任务Tn所需的算力,ln分别表示任务Tn的输入文件大小。令V={V1,V2,...VM}表示系统中的虚拟机集合,M为虚拟机的数量,Vm表示第m台虚拟机,其中,每台虚拟机的资源信息表示为Vm={rm,tm,qm},rm,tm,qm分别表示第m台虚拟机的处理速度、带宽和单位成本。在本发明中,假设任务是一个个传输到虚拟机上执行的,当一个任务结束后,下一个任务才会传输到虚拟机上。此外,假设虚拟机满足任务所需的空间,即不存在虚拟机运行空间不足的情况。
显然,对于一个任务Tn而言,ln和tm决定了将任务Tn传输到虚拟机Vm所需的时间,而cn和rm则决定了虚拟机Vm执行完任务Tn所需的时间,而后再结合qm则决定了虚拟机Vm处理任务Tn所需的成本。然而,任务的数量是非常多的,如何将任务合理地分配到有限数量的虚拟机上,使得以较小的成本的同时以较快的速度完成所有的任务,此外还需使得虚拟机的负载较为均衡,这需要寻求合适的任务调度策略。
可以理解,在所述步骤S2中,所述基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型的过程具体为:
令A={A1,A2,…,AN}表示一条染色体,其中,基因AN∈{1,2,…,M},M表示虚拟机的数量,基因AN则表示任务TN被分配到第AN台虚拟机上;其中,采用整数编码的染色体编码方式,有利于加快染色体适应度的计算速度。
对于染色体A,令Km表示分配到第m台虚拟机的任务集合,则第m台虚拟机执行完任务集合Km中的所有任务所需的时间为:
其中,cn和ln分别表示任务Tn的长度和输入文件大小,rm和tm分别表示第m台虚拟机的处理速度和带宽。
则任务最大完成时间则为所有虚拟机中最晚完成任务的那台虚拟机所决定,其表示为:
f1(A;T,V)=max(time1,time2,...,timeM)
其中,T={T1,T2,...,TN},表示获取的电力云计算任务集合,N表示任务数量,V={V1,V2,...VM}表示虚拟机集合。
所有任务完成所需的成本为:
其中,costm=timem*qm,qm表示第m台虚拟机的单位成本。
并且,将在虚拟机上完成任务的时间作为虚拟机的负载量,则虚拟机的平均负载量可表示为:
因此,在多目标优化中,染色体A的适应度即为向量[f1(A;T,V),f2(A;T,V),f3(A;T,V)],则染色体适应度计算模型为:
可以理解,本发明通过将任务完成时间、任务完成成本和虚拟机负载均衡的多目标问题求解融合到染色体的适应度计算中,从而可以在染色体适应度不断迭代更新的过程中得到最优的调度方案,使得f1(A;T,V),f2(A;T,V),f3(A;T,V)三者都尽可能地小。
可以理解,如图2和图3所示,在所述步骤S3中,所述采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解的过程包括以下内容:
步骤S31:初始化父代种群;
步骤S32:对父代种群进行遗传操作得到同等规模的子代种群;
步骤S33:组合父代种群和子代种群以得到第一代新种群,并对第一代新种群执行局部搜索得到局部种群;
步骤S34:组合父代种群、子代种群和局部种群以得到第二代新种群,从第二代新种群中选取多个优秀个体组成下一代父代种群,且下一代父代种群的规模与初始化的父代种群相同;
步骤S35:不断迭代至最大迭代次数,返回迭代结束后得到的父代种群的帕累托前沿。
可以理解,本发明采用的具有局部搜索能力的NSGA-II算法相比于传统NSGA-II算法的最大不同之处在于本发明引入了局部搜索,可以有效地解决传统NSGA-II算法存在的容易陷入局部最优的问题,从而具备跳出局部最优解的能力,还能加快算法的收敛速度。如图4所示,其先基于父代种群Pt经过遗传操作生成子代种群Qt,然后基于父代种群Pt和子代种群Qt通过局部搜索生成局部种群Lt,紧接着,合并这三个种群并通过快速非支配排序进行分级,图4中分级为F1的个体集合即是该种群的帕累托前沿,最后基于拥挤距离计算算子和精英保留策略选出与父代种群Pt同等规模的个体作为下一代父代种群P(t+1)。通过上述步骤反复进行迭代,直到达到最大迭代次数。迭代结束后,选取帕累托前沿作为算法的输出结果,提供给系统进行处理。
具体地,在所述步骤S31中,令t=0表示当前的代数,初始化规模为Np的父代种群Pt,Pt中每个个体的编码采用步骤S2中的染色体编码方式。为了加快搜索的速度同时保持种群的多样性,Pt中一半的个体采用随机初始化,而另一半的个体采用概率模型进行初始化,具体的概率模型为:其中,rm和qm分别表示第m台虚拟机的处理速度和单位成本。
然后,再对进行归一化,归一化模型为:/>M表示虚拟机的数量,每个任务基于概率分布ρm选择执行的虚拟机,从而使得性价比较高的虚拟机被选中的概率更大,由此可生成部分较好的初始解,有利于加快搜索速度。
在所述步骤S32中,遗传操作包括选择操作、交叉操作和变异操作,其中,在选择操作上采用锦标赛算子,即从父代种群Pt中随机选择出若干个个体,然后从中选出最优的个体作为父代个体1,然后再次重复得到父代个体2,再对这两个个体先后进行交叉和变异操作得到两个子代,反复迭代,直至子代种群Qt的个体数量与父代种群Pt相同。而在交叉操作上,由于染色体编码采用整数编码,故而可以采用单点交叉操作、两点交叉、均匀交叉等交叉操作方式,这些交叉操作方式都不会出现不满足约束的解,有利于加快搜索速度。
而在变异操作过程中,由于可能会出现不满足约束的解,因此,本发明将传统变异操作改进为可修正的均匀变异操作。具体地,对于任一染色体A上的基因An以P′m的概率发生变异,即:
其中,randn()表示[0,1)的随机数,而f(An)=(randint(1,M)+An)%M+1,randint(1,M)表示从[1,M]中随机生成一个整数,%M表示对M进行取模。通过取模操作使得变异后的染色体依旧是可行解。
在所述步骤S33中,将组合父代种群Pt和子代种群Qt,从而得到第一代新种群即然后再对第一代新种群P~t执行局部搜索。其中,如图5所示,所述对第一代新种群执行局部搜索得到局部种群的过程具体为:
步骤S331:初始化局部种群;
步骤S332:根据快速非支配排序算法从第一代新种群中选出帕累托前沿,将帕累托前沿中每个维度的数据归一化到区间[0,1],并计算每个元素到原点的距离;
步骤S333:将距离映射为概率模型;
步骤S334:基于概率模型从帕累托前沿中选择一个个体作为局部搜索个体;
步骤S335:基于局部搜索个体生成N个局部个体,若生成的局部个体不被局部搜索个体所支配,则将该局部个体加入局部种群,否则,丢弃该局部个体;
步骤S336:不断迭代至最大迭代次数,并返回局部种群。
具体地,先初始化局部种群Lt,令令/>然后,根据快速非支配排序算法从第一代新种群中选出帕累托前沿,表示为PF,由于本发明中是三个优化目标,因此PF中每个元素都是三维的数据,然后将帕累托前沿中每个维度的数据归一化到区间[0,1]。紧接着,计算每个元素到原点的距离,距离计算公式为:/>其中,/>表示个体m的第i个目标的值,dm表示个体m到原点的距离,显然dm的取值范围为[0,1]。
然后,将距离映射为概率模型:再基于概率模型pm从PF中依概率选择一个个体作为局部搜索个体。基于概率模型可知,距离原点越近则被选中的概率越大,在理想情况下,对距离原点最近的个体进行局部搜索更有可能产生更优的解,使得帕累托前沿向原点靠近,从而加速收敛速度。但是,局部搜索是对基因型进行局部搜索,即并不能事先判断局部搜索产生的个体的表现型的好坏,因此,有时距离原点近的个体进行局部搜索的性能还不如对距离原点远的个体进行局部搜索。因此,如图6所示,本发明基于概率模型选择进行局部搜索的个体,然后如图7所示,对局部搜索个体进行局部搜索生成一些局部个体,使得帕累托前沿向原点靠近,从而使得距离原点越近的个体进行局部搜索的可能性越大,但是也使得局部搜索具备一定的随机性,进而使得跳出局部最优的能力和增加种群多样性的能力增强。此外,对一个个体进行局部搜索,降低了算法复杂度,避免局部搜索花费的时间太长。
其中,如图8所示,所述基于局部搜索个体生成N个局部个体的过程具体为:
步骤S3351:将局部搜索个体的基因转化为二进制串,二进制串的长度固定为[log2M],若不足位则用0填充;
步骤S3352:随机翻转二进制串中的一位以得到新的二进制串;
步骤S3353:将新的二进制串转换为整数,并对转换后的整数进行修正;
步骤S3354:利用修正后的整数代替原有位置的基因,从而产生一个局部个体。
具体地,基于概率模型选择的局部搜索个体D可视为长度为N的集合,其中每个基因的合法取值范围为[1,M],因此,本发明中只修改D中的第i个基因来生成一个局部个体。首先,将局部搜索个体中以整数编码的基因转化为二进制串,二进制串的长度固定为[log2M],若不足位则用0填充。然后,随机翻转该二进制串中的任一位得到新的二进制串,再将新的二进制串转换为整数X,并且将整数X按照下式进行修正:
X’=X%M+1
其中,X%M表示X对M进行取模,通过取模修正,以避免基因的值不合法,即防止其不在[1,M]范围内。
最后,用修正后的X’代替原有位置的基因,从而产生一个局部个体。
通过上述方法迭代,由于局部搜索个体的长度为N,因此,总共可以产生N个局部个体。
可以理解,本发明中通过微调基因进行局部搜索,使得个体的表现型发生细微的改变,更容易把握个体表现型的优劣,相比于改变多个基因产生的局部个体,其个体的表现型的不确定性很大,不一定能使得局部搜索往好的方向进行搜索,收敛速度反而变慢。
在生成N个局部个体后,如果生成的局部个体不被局部搜索个体D所支配,则将该局部个体加入到局部种群Lt中,否则,则丢弃该局部个体。
不断进行迭代,直至最大迭代次数,则停止迭代,并返回最终的局部种群Lt。
可以理解,再组合Pt、Qt和Lt以得到第二代新种群Gt,即Gt=Pt∪Qt∪Lt。然后,基于NSGA-II的快速非支配排序算法、拥挤距离计算算子和精英保留策略,从第二代新种群Gt中选取出Np个优秀个体组成下一代父代种群P(t+1)。令t=t+1,则下一代父代种群仍表示为Pt。
然后,不断重复上述步骤S32~S34,直至达到最大迭代次数,则停止迭代,并返回父代种群Pt的帕累托前沿。
可以理解,在所述步骤S4中,通过步骤S3的迭代求解,输出的帕累托前沿中是一组可行的任务调度方案,其都满足多目标优化目标,从而可以根据实际需求从一组可行的任务调度方案中选择适配的调度方案来执行任务调度。
另外,如图9所示,本发明的另一实施例还提供一种物联网数据处理任务的调度系统,优选采用如上所述的调度方法,该系统包括:
数据获取单元,用于获取任务集合和系统资源信息;
模型构建单元,用于基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型;
模型计算单元,用于采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解;
任务调度单元,用于从迭代结束后得到的帕累托前沿中选取一种任务调度策略进行任务调度。
可以理解,本实施例的物联网数据处理任务的调度系统,先获取任务集合和系统资源信息,然后基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型,将任务完成时间、任务完成成本和虚拟机负载均衡的多目标问题求解融合到染色体的适应度计算中,然后采用具有局部搜索能力的NSGA-II算法进行迭代求解,最后从迭代结束后得到的帕累托前沿中根据实际需求选取一种任务调度策略进行任务调度。在本系统中,通过建立的染色体编码模型,使得可以采用NSGA-II算法来求解任务调度问题,并且可以得到一组可行的任务调度方案,从而可以根据实际需求选择不同的调度方案来执行。并且,通过将任务完成时间、任务完成成本和虚拟机负载均衡设计为多目标优化问题并融合到染色体适应度计算中,相比于现有将多个指标加权求和转化为单目标优化求解的方式,可以有效地避免人为主观因素的影响。并且,采用了具有局部搜索能力的NSGA-II算法进行迭代求解,相比于现有的NSGA-II算法,本发明通过基于距离的概率模型选择搜索个体,然后对该个体进行局部搜索产生更优的个体,有效地解决了现有NSGA-II算法在求解时容易陷入局部最优的问题,大大加快了算法的收敛速度、降低了局部搜索的复杂度。
可以理解,本实施例的系统中的各个单元分别与上述方法实施例中的各个步骤相对应,故各个单元的工作过程和工作原理在此不再赘述,参考上述方法实施例即可。
另外,本发明的另一实施例还提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如上所述的方法的步骤。
另外,本发明的另一实施例还提供一种计算机可读取的存储介质,用于存储进行物联网数据处理任务调度的计算机程序,所述计算机程序在计算机上运行时执行如上所述的方法的步骤。
一般计算机可读取存储介质的形式包括:软盘(floppy disk)、可挠性盘片(flexibledisk)、硬盘、磁带、任何其与的磁性介质、CD-ROM、任何其余的光学介质、打孔卡片(punch cards)、纸带(paper tape)、任何其余的带有洞的图案的物理介质、随机存取存储器(RAM)、可编程只读存储器(PROM)、可抹除可编程只读存储器(EPROM)、快闪可抹除可编程只读存储器(FLASH-EPROM)、其余任何存储器芯片或卡匣、或任何其余可让计算机读取的介质。指令可进一步被一传输介质所传送或接收。传输介质这一术语可包含任何有形或无形的介质,其可用来存储、编码或承载用来给机器执行的指令,并且包含数字或模拟通信信号或其与促进上述指令的通信的无形介质。传输介质包含同轴电缆、铜线以及光纤,其包含了用来传输一计算机数据信号的总线的导线。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (5)
1.一种物联网数据处理任务的调度方法,其特征在于,包括以下内容:
获取任务集合和系统资源信息;
基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型;
采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解;
从迭代结束后得到的帕累托前沿中选取一种任务调度策略进行任务调度;
所述采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解的过程包括以下内容:
初始化父代种群;
对父代种群进行遗传操作得到同等规模的子代种群;
组合父代种群和子代种群以得到第一代新种群,并对第一代新种群执行局部搜索得到局部种群;
组合父代种群、子代种群和局部种群以得到第二代新种群,从第二代新种群中选取多个优秀个体组成下一代父代种群,且下一代父代种群的规模与初始化的父代种群相同;
不断迭代至最大迭代次数,返回迭代结束后得到的父代种群的帕累托前沿;
在初始化父代种群的过程中,一半的个体采用随机初始化,另一半的个体采用概率模型进行初始化,概率模型为:其中,rm和qm分别表示第m台虚拟机的处理速度和单位成本;
再对进行归一化,归一化模型为:/>M表示虚拟机的数量,每个任务基于概率分布ρm选择执行的虚拟机;
遗传操作包括选择操作、交叉操作和变异操作,在变异操作过程中,对于任一染色体A上的基因An以Pm′的概率发生变异,即:
其中,randn()表示[0,1)的随机数,而f(An)=(randint(1,M)+An)%M+1,randint(1,M)表示从[1,M]中随机生成一个整数,%M表示对M进行取模;
所述对第一代新种群执行局部搜索得到局部种群的过程具体为:
初始化局部种群;
根据快速非支配排序算法从第一代新种群中选出帕累托前沿,将帕累托前沿中每个维度的数据归一化到区间[0,1],并计算每个元素到原点的距离;
将距离映射为概率模型:dm表示元素m到原点的距离,PF表示帕累托前沿,pm表示选择元素m作为局部搜索个体的概率;
基于概率模型从帕累托前沿中选择一个个体作为局部搜索个体;
基于局部搜索个体生成N个局部个体,若生成的局部个体不被局部搜索个体所支配,则将该局部个体加入局部种群,否则,丢弃该局部个体;
不断迭代至最大迭代次数,并返回局部种群;
所述基于局部搜索个体生成N个局部个体的过程具体为:
将局部搜索个体的基因转化为二进制串,二进制串的长度固定为[log2M],若不足位则用0填充;
随机翻转二进制串中的一位以得到新的二进制串;
将新的二进制串转换为整数,并对转换后的整数进行修正;
利用修正后的整数代替原有位置的基因,从而产生一个局部个体。
2.如权利要求1所述的物联网数据处理任务的调度方法,其特征在于,所述基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型的过程具体为:
令A={A1,A2,…,AN}表示一条染色体,其中,AN∈{1,2,…,M},M表示虚拟机的数量,AN表示任务TN被分配到第AN台虚拟机上;
对于染色体A,令Km表示分配到第m台虚拟机的任务集合,则第m台虚拟机执行完任务集合Km中的所有任务所需的时间为:
其中,cn和ln分别表示任务Tn的长度和输入文件大小,rm和tm分别表示第m台虚拟机的处理速度和带宽;
则任务最大完成时间为:
f1(A;T,V)=max(time1,time2,...,timeM)
其中,T={T1,T2,...,TN},表示获取的电力云计算任务集合,N表示任务数量,V={V1,V2,...VM}表示虚拟机集合;
所有任务完成所需的成本为:
其中,costm=timem*qm,qm表示第m台虚拟机的单位成本;
虚拟机的平均负载量为:
则染色体适应度计算模型为:
3.一种物联网数据处理任务的调度系统,采用如权利要求1或2所述的方法,其特征在于,包括:
数据获取单元,用于获取任务集合和系统资源信息;
模型构建单元,用于基于获取的任务集合和系统资源信息建立染色体编码模型,并构建染色体适应度计算模型;
模型计算单元,用于采用具有局部搜索能力的NSGA-II算法对染色体适应度计算模型进行迭代求解;
任务调度单元,用于从迭代结束后得到的帕累托前沿中选取一种任务调度策略进行任务调度。
4.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如权利要求1或2所述的方法的步骤。
5.一种计算机可读取的存储介质,用于存储进行物联网数据处理任务调度的计算机程序,其特征在于,所述计算机程序在计算机上运行时执行如权利要求1或2所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211400632.8A CN115730432B (zh) | 2022-11-09 | 2022-11-09 | 物联网数据处理任务的调度方法及系统、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211400632.8A CN115730432B (zh) | 2022-11-09 | 2022-11-09 | 物联网数据处理任务的调度方法及系统、设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115730432A CN115730432A (zh) | 2023-03-03 |
CN115730432B true CN115730432B (zh) | 2024-05-28 |
Family
ID=85295540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211400632.8A Active CN115730432B (zh) | 2022-11-09 | 2022-11-09 | 物联网数据处理任务的调度方法及系统、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115730432B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117093364B (zh) * | 2023-08-08 | 2024-04-02 | 国网湖南省电力有限公司 | 实时量测数据的并行处理方法及系统、电子设备、介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488568A (zh) * | 2015-11-30 | 2016-04-13 | 清华大学 | 一种基于目标重要性分解的模因演化多目标优化调度方法 |
CN105975342A (zh) * | 2016-04-29 | 2016-09-28 | 广东工业大学 | 基于改进布谷鸟搜索算法的云计算任务调度方法及系统 |
CN107944543A (zh) * | 2017-12-11 | 2018-04-20 | 福州大学 | 一种选择多目标量子粒子群算法领导粒子的方法 |
CN109361725A (zh) * | 2018-08-14 | 2019-02-19 | 西安电子科技大学 | 基于多目标遗传算法的车联网云系统资源分配方法 |
CN109670655A (zh) * | 2019-01-30 | 2019-04-23 | 华北电力大学(保定) | 一种电力系统多目标粒子群优化调度方法 |
CN110543151A (zh) * | 2019-08-12 | 2019-12-06 | 陕西科技大学 | 基于改进nsga-ⅱ求解车间节能调度问题的方法 |
CN110570134A (zh) * | 2019-09-19 | 2019-12-13 | 郑州航空工业管理学院 | 一种改进的文化基因算法解决柔性车间带运输时间的调度方法 |
CN111754533A (zh) * | 2020-08-20 | 2020-10-09 | 中国计量大学 | 一种基于改进遗传算法和k-均值算法的图像分割方法 |
CN112181598A (zh) * | 2020-10-12 | 2021-01-05 | 内蒙古农业大学 | 基于改进遗传算法的云计算任务调度方法 |
CN113157381A (zh) * | 2020-05-14 | 2021-07-23 | 北京理工大学 | 基于非支配排序和猫头鹰搜索的多工作流调度方法 |
CN114399043A (zh) * | 2021-06-16 | 2022-04-26 | 北京理工大学 | 一种基于非支配排序粒子群遗传算法的车辆位置路由方法 |
CN114741955A (zh) * | 2022-01-25 | 2022-07-12 | 华北电力大学 | 一种基于安全云的多目标优化任务调度方法 |
-
2022
- 2022-11-09 CN CN202211400632.8A patent/CN115730432B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488568A (zh) * | 2015-11-30 | 2016-04-13 | 清华大学 | 一种基于目标重要性分解的模因演化多目标优化调度方法 |
CN105975342A (zh) * | 2016-04-29 | 2016-09-28 | 广东工业大学 | 基于改进布谷鸟搜索算法的云计算任务调度方法及系统 |
CN107944543A (zh) * | 2017-12-11 | 2018-04-20 | 福州大学 | 一种选择多目标量子粒子群算法领导粒子的方法 |
CN109361725A (zh) * | 2018-08-14 | 2019-02-19 | 西安电子科技大学 | 基于多目标遗传算法的车联网云系统资源分配方法 |
CN109670655A (zh) * | 2019-01-30 | 2019-04-23 | 华北电力大学(保定) | 一种电力系统多目标粒子群优化调度方法 |
CN110543151A (zh) * | 2019-08-12 | 2019-12-06 | 陕西科技大学 | 基于改进nsga-ⅱ求解车间节能调度问题的方法 |
CN110570134A (zh) * | 2019-09-19 | 2019-12-13 | 郑州航空工业管理学院 | 一种改进的文化基因算法解决柔性车间带运输时间的调度方法 |
CN113157381A (zh) * | 2020-05-14 | 2021-07-23 | 北京理工大学 | 基于非支配排序和猫头鹰搜索的多工作流调度方法 |
CN111754533A (zh) * | 2020-08-20 | 2020-10-09 | 中国计量大学 | 一种基于改进遗传算法和k-均值算法的图像分割方法 |
CN112181598A (zh) * | 2020-10-12 | 2021-01-05 | 内蒙古农业大学 | 基于改进遗传算法的云计算任务调度方法 |
CN114399043A (zh) * | 2021-06-16 | 2022-04-26 | 北京理工大学 | 一种基于非支配排序粒子群遗传算法的车辆位置路由方法 |
CN114741955A (zh) * | 2022-01-25 | 2022-07-12 | 华北电力大学 | 一种基于安全云的多目标优化任务调度方法 |
Non-Patent Citations (4)
Title |
---|
NSGAⅡ多目标均值聚类的云计算虚拟资源调度研究;石慧;李俊杰;谢志明;陈恩;;计算机与数字工程;20160930(第09期);第1681-1686页 * |
NSGA-II with local search for a multi-objective reactive power compensation problem;Dulce Fernão Pires et al.;Electrical Power and Energy Systems;20120626;第43卷;全文 * |
基于遗传加差分算法的云计算任务调度;葛君伟;孙方方;方义秋;;微电子学与计算机;20161130(第11期);第5-9页 * |
解决多目标旅行商问题的改进NSGA-Ⅱ算法;李霄玉等;工业控制计算机;20181231;第31卷(第4期);第103-104页 * |
Also Published As
Publication number | Publication date |
---|---|
CN115730432A (zh) | 2023-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shen et al. | Robustness measures and robust scheduling for multi-objective stochastic flexible job shop scheduling problems | |
Gong et al. | Interactive MOEA/D for multi-objective decision making | |
CN104866904A (zh) | 一种基于spark的遗传算法优化的BP神经网络并行化方法 | |
CN111612528A (zh) | 用户分类模型的确定方法、装置、设备及存储介质 | |
CN108154237A (zh) | 一种数据处理系统及方法 | |
CN115730432B (zh) | 物联网数据处理任务的调度方法及系统、设备、存储介质 | |
CN108880886B (zh) | 一种跨区域电力系统保护通信网规划方法 | |
CN109815541B (zh) | 轨道交通车辆产品零部件模块划分方法、装置与电子设备 | |
Cai et al. | A hybrid of decomposition and domination based evolutionary algorithm for multi-objective software next release problem | |
Mi et al. | Embedding virtual infrastructure based on genetic algorithm | |
CN113033895A (zh) | 一种多源多点路径规划方法、设备及存储介质 | |
Denysiuk et al. | Neuroevolution for solving multiobjective knapsack problems | |
CN109298930A (zh) | 一种基于多目标优化的云工作流调度方法及装置 | |
Lei et al. | Resource allocation model and double-sphere crowding distance for evolutionary multi-objective optimization | |
Djedović et al. | Optimization of business processes by automatic reallocation of resources using the genetic algorithm | |
Pilát et al. | An evolutionary strategy for surrogate-based multiobjective optimization | |
Ouyang et al. | Amended harmony search algorithm with perturbation strategy for large-scale system reliability problems | |
Morell et al. | A multi-objective approach for communication reduction in federated learning under devices heterogeneity constraints | |
CN112085144A (zh) | 自适应协方差学习引导人工蜂群的方法 | |
CN106611287A (zh) | 云制造中多目标资源无偏好优化配置算法 | |
Al-Faisal et al. | Adaptation of population size in sine cosine algorithm | |
CN115169754B (zh) | 能源调度方法、装置、电子设备及存储介质 | |
CN116339973A (zh) | 基于粒子群优化算法的数字孪生云平台计算资源调度方法 | |
CN110457814A (zh) | 基于混合高斯模型的多模态交叉熵优化算法 | |
CN113220437B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |