CN117093364A - 实时量测数据的并行处理方法及系统、电子设备、介质 - Google Patents

实时量测数据的并行处理方法及系统、电子设备、介质 Download PDF

Info

Publication number
CN117093364A
CN117093364A CN202310991745.8A CN202310991745A CN117093364A CN 117093364 A CN117093364 A CN 117093364A CN 202310991745 A CN202310991745 A CN 202310991745A CN 117093364 A CN117093364 A CN 117093364A
Authority
CN
China
Prior art keywords
time
measurement data
task
real
time windows
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.)
Granted
Application number
CN202310991745.8A
Other languages
English (en)
Other versions
CN117093364B (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.)
State Grid Corp of China SGCC
State Grid Hunan Electric Power Co Ltd
Information and Telecommunication Branch of State Grid Hunan Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
State Grid Hunan Electric Power Co Ltd
Information and Telecommunication Branch of State Grid Hunan Electric Power Co Ltd
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 State Grid Corp of China SGCC, State Grid Hunan Electric Power Co Ltd, Information and Telecommunication Branch of State Grid Hunan Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202310991745.8A priority Critical patent/CN117093364B/zh
Publication of CN117093364A publication Critical patent/CN117093364A/zh
Application granted granted Critical
Publication of CN117093364B publication Critical patent/CN117093364B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • 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)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Physiology (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Genetics & Genomics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种实时量测数据的并行处理方法及系统、电子设备、介质,该方法通过先收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求,通过时间窗口的方式对设备上报量测数据的特性进行了细粒度分析,以便于后续对整体实时性进行细粒度量级的优化。并且,还将并行量测数据档案关联任务处理问题转化为一个任务分配问题进行求解,由于该任务分配问题以最小化所有时间窗口的任务处理时间的极差的和作为优化目标,不仅仅在细粒度的时间窗口内使得任务分配较为均匀,而且在总体上也使得任务分配较为均匀,可以很好地做到整体负荷均衡,有效提高了量测数据处理的整体时效性。

Description

实时量测数据的并行处理方法及系统、电子设备、介质
技术领域
本发明涉及电力物联网技术领域,特别地,涉及一种实时量测数据的并行处理方法及系统、电子设备、计算机可读取的存储介质。
背景技术
电网作为现代工业和生活中不可或缺的基础设施,对电网进行实时监测和数据分析是保证电网的正常运行和安全稳定的极为关键的环节之一。电网量测数据是指在电力系统中通过各种传感器获取的电压、电流、功率等信号数据,这些数据可以反映出电力系统的实时状态以及各个设备的运行状况。考虑到通信成本等因素,设备上报的量测数据通常仅通过设备ID作为唯一索引,而设备的档案(包括设备厂家、设备生产日期、设备采集的用电用户名等)存储在相应的数据库中,量测数据档案关联任务是一项基本且数量庞大的任务,该任务是指系统收到一条量测数据后,基于该数据的设备ID关联到相应的设备档案,从而为其他应用提供服务。由于电网规模庞大,设备上报的海量量测数据需实时进行档案关联,而数据并行处理可以有效加快量测数据处理的速度,保障量测数据档案关联的实时性和准确性。但是,当前大多数并行处理方法通常是将多个任务分配给多个服务器,每个服务器可以并行运行多个进程来处理任务,由于量测数据是流数据,数据上报的时间具有不确定性,在任何时间都可能有数据上传到系统,因此,量测数据具有以下特点:一是无边界的流数据,二是量测数据所对应的设备是无序的,不同设备上报数据的频率不一致且数据到达系统的时间不一致。因此,现有的并行处理方法并未根据实时量测数据的特性进行设计,使得不同进程的数据处理负荷出现较大差距,进而出现有些进程的算力富余,而有些进程则无法在容忍时间内处理完数据,最终影响数据处理的整体实时性。
发明内容
本发明提供了一种实时量测数据的并行处理方法及系统、电子设备、计算机可读取的存储介质,以解决并行处理方法无法保证实时量测数据处理的整体实时性的技术问题。
根据本发明的一个方面,提供一种实时量测数据的并行处理方法,包括以下内容:
收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求;
根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题;
对构建的优化问题进行求解,得到满足条件的最优分配矩阵,并根据最优分配矩阵将多个任务分配至多个进程进行并行处理。
进一步地,所述收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求的过程具体包括以下内容:
收集每个设备多天上报的历史量测数据;
将一天均匀划分为多个时间窗口;
统计得到每个设备在每个时间窗口的平均算力需求。
进一步地,所述收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求的过程还包括以下内容:
将多个设备均匀分成多个组别,每个组别作为一个任务,对每个组别中的多个设备在同一时间窗口的平均算力需求进行求和计算,得到每个任务在不同时间窗口的算力需求。
进一步地,所述根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题的过程包括以下内容:
构建多个进程与多个任务之间的分配矩阵;
基于分配矩阵和每个设备在不同时间窗口的算力需求计算得到多个进程在同一时间窗口下处理任务所需时间的极差;
统计得到所有时间窗口处理任务所需时间的极差的和,并以其最小化作为优化目标构建优化问题。
进一步地,该优化问题表示为:
C1:
C2:
C3:
其中,K表示时间窗口的总数量,N表示任务的总数量,M表示进程的总数量,α表示每个时间间隔的最大可容忍处理时间差距且为常数,dk表示多个进程在时间窗口k下处理任务所需时间的极差,表示分配矩阵中的元素,当/>时,意味着任务n分配给进程m进行处理。
进一步地,所述对构建的优化问题进行求解,得到满足条件的最优分配矩阵的过程包括以下内容:
设计基于整数编码的染色体编码方案;
随机初始化种群;
计算初始种群中每个个体的适应度值;
基于锦标赛选择算子和适应度值计算结果选取进行交叉变异的父代个体,得到由多个父母对组成的优胜者集合;
对优胜者集合中的每对父母个体执行交叉变异,得到子代种群,并计算子代种群中每个个体的适应度值;
采用精英保留策略进行种群更新,不断迭代直至达到最大迭代次数,并从满足约束的多个个体中选取适应度最小的个体作为最优解,从而得到最优分配矩阵。
进一步地,在执行交叉变异时,采取下式计算交叉概率和变异概率:
其中,PC表示交叉概率,PC 表示交叉概率的下边界,t表示当前进化代数,maxt表示最大进化代数,rand(0.5,1)表示0.5到1之间的随机数,Pm表示变异概率,Pm 分别表示变异概率的上边界和下边界。
另外,本发明还提供一种实时量测数据的并行处理系统,包括:
历史数据分析模块,用于收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求;
优化问题构建模块,用于根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题;
优化问题求解模块,用于对构建的优化问题进行求解,得到满足条件的最优分配矩阵,并根据最优分配矩阵将多个任务分配至多个进程进行并行处理。
另外,本发明还提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如上所述的方法的步骤。
另外,本发明还提供一种计算机可读取的存储介质,用于存储对实时量测数据进行并行处理的计算机程序,所述计算机程序在计算机上运行时执行如上所述的方法的步骤。
本发明具有以下效果:
本发明的实时量测数据的并行处理方法,通过先收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在一天内不同时间窗口的算力需求,从而通过时间窗口的方式对设备上报量测数据的特性进行了细粒度分析,以便于后续对整体实时性进行细粒度量级的优化。并且,还将并行量测数据档案关联任务处理问题转化为一个任务分配问题进行求解,由于该任务分配问题以最小化所有时间窗口的任务处理时间的极差的和作为优化目标,不仅仅在细粒度的时间窗口内使得任务分配较为均匀,而且在总体上也使得任务分配较为均匀,虽然不同进程分配的档案数量可能不一样,但是不同时间窗口的任务量相差不大,可以很好地做到整体负荷均衡,有效提高了实时量测数据处理的整体时效性,大大提高了对其他应用的服务质量。
另外,本发明的实时量测数据的并行处理系统同样具有上述优点。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明优选实施例的实时量测数据的并行处理方法的流程示意图。
图2是图1中步骤S1的子流程示意图。
图3是图1中步骤S1的另一子流程示意图。
图4是图1中步骤S2的子流程示意图。
图5是图1中步骤S3的子流程示意图。
图6是图5中步骤S32的子流程示意图。
图7是本发明优选实施例中的交叉概率随进化代数的变化曲线示意图。
图8是本发明优选实施例中的变异概率随进化代数的变化曲线示意图。
图9是本发明另一实施例的实时量测数据的并行处理系统的模块结构示意图。
具体实施方式
以下结合附图对本发明的实施例进行详细说明,但是本发明可以由下述所限定和覆盖的多种不同方式实施。
可以理解,如图1所示,本发明的优选实施例提供一种实时量测数据的并行处理方法,包括以下内容:
步骤S1:收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求;
步骤S2:根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题;
步骤S3:对构建的优化问题进行求解,得到满足条件的最优分配矩阵,并根据最优分配矩阵将多个任务分配至多个进程进行并行处理。
可以理解,本实施例的实时量测数据的并行处理方法,通过先收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在一天内不同时间窗口的算力需求,从而通过时间窗口的方式对设备上报量测数据的特性进行了细粒度分析,以便于后续对整体实时性进行细粒度量级的优化。并且,还将并行量测数据档案关联任务处理问题转化为一个任务分配问题进行求解,由于该任务分配问题以最小化所有时间窗口的任务处理时间的极差的和作为优化目标,不仅仅在细粒度的时间窗口内使得任务分配较为均匀,而且在总体上也使得任务分配较为均匀,虽然不同进程分配的档案数量可能不一样,但是不同时间窗口的任务量相差不大,可以很好地做到整体负荷均衡,有效提高了实时量测数据处理的整体时效性,大大提高了对其他应用的服务质量。
可以理解,在本发明中,假设系统中存在个设备的档案,系统为集群网络,存在P台服务器{s1,s2,…,sP},每台服务器上可以并行运行多个进程来处理任务。假设系统整体的计算能力是满足任务的算力需求,但是,一方面服务器的算力分配不均,每台服务器的算力不同,另一方面,系统整体算力没有远远超过任务的算力需求。因此,需要合理地为每个进程分配任务以保障数据处理的时效性。假设系统中总共存在M个用于处理档案关联任务的进程,这些进程实际上分布在不同的服务器上,一台服务器可能包括多个进程。简单起见,对这些进程进行顺序编号,即{1,2,…,M},令ωm表示第m个进程的算力。
可以理解,由于量测数据是流数据,数据上报的时间具有不确定性,在任何时间都可能有数据上传到系统,因此,量测数据具有以下特点:一是无边界的流数据,二是量测数据所对应的设备是无序的,不同设备上报的数据的频率不一致且数据到达系统的时间不一致。基于量测数据的上述特点,为了对设备的历史量测数据进行有效的统计分析,本发明首次提出了基于时间窗口的概念,将一个时间窗口内收到的量测数据归类到该窗口以支撑统计分析。具体地,如图2所示,在所述步骤S1中,所述收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求的过程具体包括以下内容:
步骤S11:收集每个设备多天上报的历史量测数据;
步骤S12:将一天均匀划分为多个时间窗口;
步骤S13:统计得到每个设备在每个时间窗口的平均算力需求。
具体地,先收集每个设备共I天上报的历史量测数据,然后,将一天均匀划分为K个时间窗口,最后,统计得到每个设备在每个时间窗口所需的平均算力,具体采用下式进行计算:
其中,表示设备n在时间窗口k下所需的平均算力,/>表示设备n在第i天中的第k时间窗口内的历史量测数据数量,/>表示设备n在第i天中的第k时间窗口内的第t条历史量测数据所需的算力。在计算得到每个设备在每个时间窗口的平均算力需求后,即可将每个设备的算力需求作为一个任务进行分配。
可以理解,上述过程中得到了每个设备在不同时间窗口的算力需求,但是由于设备数量巨大,若直接将每个设备上传的量测数据作为一个任务进行求解的复杂度极高,并且考虑到单独一个设备所需的算力较小,为了提高后续算法求解的速度与准确度。作为优选的,如图3所示,所述步骤S1还包括以下内容:
步骤S14:将多个设备均匀分成多个组别,每个组别作为一个任务,对每个组别中的多个设备在同一时间窗口的平均算力需求进行求和计算,得到每个任务在不同时间窗口的算力需求。
可以理解,本发明通过将多个设备进行均匀分组,即将个设备均匀分为N组,每组可视为一个任务,由此,一个任务是指对该任务范围内的多个设备的实时量测数据进行档案关联处理。相应的,后续中Hn k也指代任务n的任务范围内多个设备在时间窗口k所需的总算力,简称任务n在时间窗口k所需的算力。
可以理解,如图4所示,在所述步骤S2中,根据每个任务在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题,具体过程包括以下内容:
步骤S21:构建多个进程与多个任务之间的分配矩阵;
步骤S22:基于分配矩阵和每个任务在不同时间窗口的算力需求计算得到多个进程在同一时间窗口下处理任务所需时间的极差;
步骤S23:统计得到所有时间窗口处理任务所需时间的极差的和,并以其最小化作为优化目标构建优化问题。
具体地,本发明将并行量测数据档案关联任务处理问题转化为一个任务分配问题,即存在M个进程与N组任务,如何进行任务分配使得每个进程在每个时间窗口处理任务所需的时间相差不大。首先,构建M个进程与N组任务之间的分配矩阵,令σ表示维度为M×N的分配矩阵,满足即分配方案需满足一个任务只能由一个进程处理。
然后,基于分配矩阵以及历史数据统计出来的每个任务在不同时间窗口的算力需求计算得到每个进程在同一时间窗口下处理任务所需的时间,具体基于下式进行计算:
其中,表示进程m在时间窗口k下处理任务所需的时间,ωm表示进程m的计算能力。从原则上来说,不同进程在同一时间窗口处理任务所需的时间差应该越小越好,因此,在计算出每个进程在时间窗口k下处理任务所需的时间后,本发明使用极差来表示时间差异,具体为:
其中,dk表示时间窗口k下的极差,即多个进程在时间窗口k下处理任务所需时间的极差,和/>分别表示所有进程在时间窗口k下完成任务处理的最长时间和最短时间。其中,/>α表示每个时间间隔的最大可容忍处理时间差距且为常数,并且α须不大于时间窗口的长度,以保证数据处理的实时性要求。
可以理解,dk越小仅仅在局部上表明在该时间窗口下任务分配较为均匀,而全部时间窗口上的不同进程任务处理的时间差异的和越小则说明任务分配在总体上越均匀。因此,本发明采用累加全部时间窗口上的极差作为优化目标,即:因此,该优化问题可表示为:
C1:
C2:
C3:
其中,K表示时间窗口的总数量,N表示任务的总数量,M表示进程的总数量,α表示每个时间间隔的最大可容忍处理时间差距且为常数,dk表示多个进程在时间窗口k下处理任务所需时间的极差,表示分配矩阵中的元素,当/>时,意味着任务n分配给进程m进行处理。其中,约束条件C1表示在时间窗口k的极差须不超过最大容忍上限α,约束条件C2表示一个任务只能由一个进程进行处理,由此可减少内存消耗,约束条件C3表示分配矩阵中的元素取值范围为0或1。
可以理解,上述问题的优化目标是最小化所有时间窗口的任务处理时间的极差的和,保证全局视角的任务处理延时最小化。同时,通过约束条件C1使得在局部时间窗口范围内,每个进程完成任务处理的时间差异在允许的范围内,保证数据处理的实时性。最后,通过约束条件C2使得不同任务分配到不同的进程中,那么在档案关联任务中,设备档案的集合将被分割为M个互不重叠的子块,每个进程只需要读取子块上的设备的档案数据,降低了内存的消耗。
可以理解,在所述步骤S2中构建的优化问题即是找到一个满足条件的分配矩阵σ,使得最小化。虽然单独某个时间窗口的分配可以基于贪心算法、匈牙利算法等求解得到一组次优解,但是考虑全部的时间窗口,这些方法无法做到全局的最优。这是因为分配方案是影响全局的,基于一个时间窗口确定了一个分配方案后,该方案在其他窗口下不一定是最优的,因此,该优化问题是一个较为复杂的问题。为了对上述优化问题进行求解,本发明提出基于改进遗传算法的求解算法。具体地,如图5所示,在所述步骤S3中,所述对构建的优化问题进行求解,得到满足条件的最优分配矩阵的过程包括以下内容:
步骤S31:设计基于整数编码的染色体编码方案;
步骤S32:随机初始化种群;
步骤S33:计算初始种群中每个个体的适应度值;
步骤S34:基于锦标赛选择算子和适应度值计算结果选取进行交叉变异的父代个体,得到由多个父母对组成的优胜者集合;
步骤S35:对优胜者集合中的每对父母个体执行交叉变异,得到子代种群,并计算子代种群中每个个体的适应度值;
步骤S36:采用精英保留策略进行种群更新,转步骤S34不断迭代直至达到最大迭代次数,并从满足约束的多个个体中选取适应度最小的个体作为最优解,从而得到最优分配矩阵。
具体地,在所述步骤S31中,由于每个任务只能分配到一个进程中,而任务一旦分配给一个进程,那么该任务下所有设备的档案会相应地读入到该进程中,以支持档案关联任务。基于上述约束,本发明采用整数编码,即一条染色体编码为:{ο1,ο2,…,οN},其中o1∈{1,2,…,M},οn表示任务n的设备档案放置在进程on。显然,这样的染色体编码方案天然地满足约束条件C2和C3。
可以理解,在所述步骤S32中,完全随机初始化的解虽然能够增加解的多样性,但是很可能不满足约束条件且导致收敛速度较慢,很难找到较优的解。为了改善上述问题,本发明还改进初始化种群方式,提出了基于贪心算法的随机初始化方法。具体地,如图6所示,所述随机初始化种群的过程具体为:
步骤S321:计算每个任务在所有时间窗口的平均算力需求,即:
其中,θn表示任务n在所有时间窗口的平均算力需求。
步骤S322:计算在集群所拥有的总算力下,处理完这些量测数据所需的平均时间,即:
其中,avg表示集群处理完所有任务所需的平均时间。
步骤S323:基于贪心算法随机初始化种群,即初始化种群规模为Np的种群中的每一个个体。
其中,所述步骤S323具体包括以下内容:
A1:先将任务索引集合{1,2,…,N}进行随机打乱,表示为B,m设置为1,初始化个体的染色体编码o={ο1,ο2,…,οN}为长度为N的零向量,累加和sum=0,索引i=0。
A2:获取打乱后的索引集合的第i个值B[i],令n=B[i],将染色体第n个位置on赋值为m,sum=sum+θnm,i=i+1。
A3:若索引集合遍历结束,则转A4;若sum<avg,则直接转步骤A2;若sum≥avg,则m=m+1,sum=0,转步骤A2。
A4:基于微调策略调整染色体。基于染色体编码向量o计算得到极差向量{d1,d2,…,dK},若其中存在dk>α,即不满足约束条件C1,则将二者的max对应进程中的任务随机调出到min/>对应的进程,直到满足条件dk≤α后转A5;若不存在dk>α,则表明该解满足约束条件C1,该解是一组可行解,转A6。
A5:微调结束后,可能引起其他极差向量的元素值不满足约束C1,因此一次微调结束后需重新计算极差向量,若一直存在dk>α的情况则还需继续进行微调,即转A4,否则成功生成一个可行的个体。可选地,为了避免算法陷入死循环,若微调预设次数后该解依旧不可行,则转A1重新随机生成一个个体。另外,由于本发明考虑提供的算力是超过任务需求的算力,因此可行解并不是很难生成。
A6:返回一个满足全部约束条件的可行个体。
经过上述步骤后,可以得到一个初始种群,令t表示当前进化代数,则初始化t=0,此时父代种群即为种群规模为NP的初始种群。
可以理解,本发明采用贪心算法随机初始化种群,可以有效提高初始种群的质量,有利于提高后续求解的准确性和收敛速度。
可以理解,在所述步骤S33中,基于步骤S2的数学建模,本发明中的适应度函数即为:由于染色体编码的缘故,则/>相应地变化为:/>
可以理解,在所述步骤S34中,从父代种群中随机选取2个个体,并选择其中适应度值较低的个体作为优胜者A。然后,再从父代种群Pt p中随机选取2个个体,选择其中适应度值较低的个体作为优胜者B。若A与B是同一个个体,由于同一个体交叉操作不会产生带有新基因型的个体,因此需重复此步骤,保证A与B是不同的个体。然后,将A与B作为一对父母对加入到优胜者集合中,重复上面的步骤生成多个父母对,直到优胜者集合的长度为Np/2为止。
可以理解,在所述步骤S35中,首先,基于交叉算子进行交叉:生成一个随机数r1,若r1<Pc,Pc表示交叉概率,则执行单点交叉操作生成两个子代个体;反之,则子代个体是直接复制父代个体产生。
然后,两个子代个体执行变异操作最终生成新的子代个体。对子代个体的每个基因位,生成一个随机数r2,若r2<Pm,Pm表示变异概率,则执行变异操作生成两个新的子代个体;反之,则新的子代个体是直接复制父代个体产生。具体的变异公式如下:
其中,β表示变异尺度,取值范围为β∈[1,M],%表示取模操作,rand()表示随机数,表示向上取整操作。上式使得变异概率越大则发生变异的值变化范围越小,但是变异概率越小则发生变异的值的范围越大。
对每对父母对执行上述过程,最终可得到Np个新的子代个体组成的子代种群然后基于S33步骤中的方式计算子代种群/>中每个子代个体的适应度值。
作为优选的,本发明还改进了交叉概率和变异概率的生成方式,提出了一种自适应交叉变异概率方法,具体为:
其中,PC表示交叉概率,PC 表示交叉概率的下边界,t表示当前进化代数,maxt表示最大进化代数,rand(0.5,1)表示0.5到1之间的随机数,Pm表示变异概率,Pm 分别表示变异概率的上边界和下边界。作为一种示例,maxt设定为300,PC 设定为0.6,Pm 设定为0.01,设定为0.1。
可以理解,上式使得交叉概率以先快后慢的趋势变小,变异概率则以先慢后快的趋势变大,分别如图7和图8所示。在进化前期,较大的交叉概率可以快速增加种群的多样性,进而快速发现较优的解,加速种群收敛速度;而随着种群的不断进化,种群个体之间的差异性逐渐缩小,此时逐渐降低交叉概率便能更快地收敛到局部最优解。而变异概率则随着迭代的进行逐步增加,这样可以保证算法在初期具有足够的多样性,搜寻更广的解空间,找到更多的可能最优解;而在后期,较大的变异概率有助于跳出局部最优解,则可以加速收敛,快速达到最终的解。不同于其他自适应方法,本发明中的自适应函数通过加权指数函数使得变化趋势是非线性的,这是因为在进化前期需要更多的交叉操作以加快收敛,而后期种群收敛则不需要太多的交叉操作,所以交叉概率的变化速度先慢后快;同理,变异概率的变化速度先慢后快是由于进化前期种群多样性较大,变异操作的效果不明显,而后期种群收敛了,则变异操作能帮助搜索更宽的区域,有助于快速搜索到最优解。此外,本发明中,通过加权随机数使得交叉概率和变异概率变化的总体趋势不变,但局部存在波动,可以更好地模拟交叉变异的随机性。
可以理解,在所述步骤S36中,合并子代种群和父代种群,即Pt=Pt p∪Pt o,由于优化问题是最小化问题,因此对种群Pt基于适应度值的大小进行升序排序,然后保留前面Np/2个优势个体,紧接着从后面(3Np)/2的个体中基于轮盘赌方法选择Np/2个保留下来的个体。这样做一方面可以避免进化过程中最优解不会丢失,另一方面平衡了保留下来个体的优质性与多样性。然后,令t=t+1,转步骤S34重复迭代,直至达到最大迭代次数maxt,即t>maxt则迭代结束。迭代结束后,从满足约束的个体中选取适应度最小的个体作为最优解,表示为Pbest,然后,基于Pbest的染色体编码方案{ο1,ο2,…,οN}可以得到对应的任务分配方案,其中,进程m分配的档案集合可表示为
可以理解,在所述步骤S3中,通过改进的遗传算法对优化问题进行求解得到最优分配矩阵后,基于分配方案{Sm},将相应的任务所包含的设备档案写入到对应的进程中,由此将档案集合拆分为多个互相不重合的子集,避免了档案的重复写入,从而可以实现不同进程并行处理实时量测数据。
可选地,为了使得一条实时数据流到来时,可以快速决定该数据由哪个进程处理,本发明还为档案建立一个长度为的哈希表,表示为/>其中,IDn表示设备n的ID,ρn∈{1,2,…,M}表示设备n的档案存储在进程ρn中,即需将设备n的数据交给该进程处理。由此可以以O(1)的时间复杂度确定数据流交由哪个进程进行处理,再者结合遗传算法求解得到的分配方案可以均衡不同进程的任务量,由此有效提高量测数据档案关联的时效性。
另外,如图9所示,本发明的另一实施例还提供一种实时量测数据的并行处理系统,优选采用如上所述的并行处理方法,该系统包括:
历史数据分析模块,用于收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求;
优化问题构建模块,用于根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题;
优化问题求解模块,用于对构建的优化问题进行求解,得到满足条件的最优分配矩阵,并根据最优分配矩阵将多个任务分配至多个进程进行并行处理。
可以理解,本实施例的实时量测数据的并行处理系统,通过先收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在一天内不同时间窗口的算力需求,从而通过时间窗口的方式对设备上报量测数据的特性进行了细粒度分析,以便于后续对整体实时性进行细粒度量级的优化。并且,还将并行量测数据档案关联任务处理问题转化为一个任务分配问题进行求解,由于该任务分配问题以最小化所有时间窗口的任务处理时间的极差的和作为优化目标,不仅仅在细粒度的时间窗口内使得任务分配较为均匀,而且在总体上也使得任务分配较为均匀,虽然不同进程分配的档案数量可能不一样,但是不同时间窗口的任务量相差不大,可以很好地做到整体负荷均衡,有效提高了实时量测数据处理的整体时效性,大大提高了对其他应用的服务质量。
可以理解,本系统实施例的各个模块与上述方法实施例的各个步骤相对应,故各个模块的具体工作过程在此不再赘述,参考上述方法实施例即可。
另外,本发明的另一实施例还提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如上所述的方法的步骤。
另外,本发明的另一实施例还提供一种计算机可读取的存储介质,用于存储对实时量测数据进行并行处理的计算机程序,所述计算机程序在计算机上运行时执行如上所述的方法的步骤。
一般计算机可读取存储介质的形式包括:软盘(floppy disk)、可挠性盘片(flexibledisk)、硬盘、磁带、任何其与的磁性介质、CD-ROM、任何其余的光学介质、打孔卡片(punch cards)、纸带(paper tape)、任何其余的带有洞的图案的物理介质、随机存取存储器(RAM)、可编程只读存储器(PROM)、可抹除可编程只读存储器(EPROM)、快闪可抹除可编程只读存储器(FLASH-EPROM)、其余任何存储器芯片或卡匣、或任何其余可让计算机读取的介质。指令可进一步被一传输介质所传送或接收。传输介质这一术语可包含任何有形或无形的介质,其可用来存储、编码或承载用来给机器执行的指令,并且包含数字或模拟通信信号或其与促进上述指令的通信的无形介质。传输介质包含同轴电缆、铜线以及光纤,其包含了用来传输一计算机数据信号的总线的导线。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种实时量测数据的并行处理方法,其特征在于,包括以下内容:
收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求;
根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题;
对构建的优化问题进行求解,得到满足条件的最优分配矩阵,并根据最优分配矩阵将多个任务分配至多个进程进行并行处理。
2.如权利要求1所述的实时量测数据的并行处理方法,其特征在于,所述收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求的过程具体包括以下内容:
收集每个设备多天上报的历史量测数据;
将一天均匀划分为多个时间窗口;
统计得到每个设备在每个时间窗口的平均算力需求。
3.如权利要求2所述的实时量测数据的并行处理方法,其特征在于,所述收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求的过程还包括以下内容:
将多个设备均匀分成多个组别,每个组别作为一个任务,对每个组别中的多个设备在同一时间窗口的平均算力需求进行求和计算,得到每个任务在不同时间窗口的算力需求。
4.如权利要求1所述的实时量测数据的并行处理方法,其特征在于,所述根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题的过程包括以下内容:
构建多个进程与多个任务之间的分配矩阵;
基于分配矩阵和每个设备在不同时间窗口的算力需求计算得到多个进程在同一时间窗口下处理任务所需时间的极差;
统计得到所有时间窗口处理任务所需时间的极差的和,并以其最小化作为优化目标构建优化问题。
5.如权利要求4所述的实时量测数据的并行处理方法,其特征在于,该优化问题表示为:
其中,K表示时间窗口的总数量,N表示任务的总数量,M表示进程的总数量,α表示每个时间间隔的最大可容忍处理时间差距且为常数,dk表示多个进程在时间窗口k下处理任务所需时间的极差,表示分配矩阵中的元素,当/>时,意味着任务n分配给进程m进行处理。
6.如权利要求1所述的实时量测数据的并行处理方法,其特征在于,所述对构建的优化问题进行求解,得到满足条件的最优分配矩阵的过程包括以下内容:
设计基于整数编码的染色体编码方案;
随机初始化种群;
计算初始种群中每个个体的适应度值;
基于锦标赛选择算子和适应度值计算结果选取进行交叉变异的父代个体,得到由多个父母对组成的优胜者集合;
对优胜者集合中的每对父母个体执行交叉变异,得到子代种群,并计算子代种群中每个个体的适应度值;
采用精英保留策略进行种群更新,不断迭代直至达到最大迭代次数,并从满足约束的多个个体中选取适应度最小的个体作为最优解,从而得到最优分配矩阵。
7.如权利要求6所述的实时量测数据的并行处理方法,其特征在于,在执行交叉变异时,采取下式计算交叉概率和变异概率:
其中,PC表示交叉概率,PC表示交叉概率的下边界,t表示当前进化代数,maxt表示最大进化代数,rand(0.5,1)表示0.5到1之间的随机数,Pm表示变异概率,和Pm分别表示变异概率的上边界和下边界。
8.一种实时量测数据的并行处理系统,其特征在于,包括:
历史数据分析模块,用于收集多个设备在多天上报的历史量测数据,基于时间窗口对历史量测数据进行分析,得到每个设备在不同时间窗口的算力需求;
优化问题构建模块,用于根据每个设备在不同时间窗口的算力需求,以最小化所有时间窗口的任务处理时间的极差的和作为优化目标构建优化问题;
优化问题求解模块,用于对构建的优化问题进行求解,得到满足条件的最优分配矩阵,并根据最优分配矩阵将多个任务分配至多个进程进行并行处理。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如权利要求1~7任一项所述的方法的步骤。
10.一种计算机可读取的存储介质,用于存储对实时量测数据进行并行处理的计算机程序,其特征在于,所述计算机程序在计算机上运行时执行如权利要求1~7任一项所述的方法的步骤。
CN202310991745.8A 2023-08-08 2023-08-08 实时量测数据的并行处理方法及系统、电子设备、介质 Active CN117093364B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310991745.8A CN117093364B (zh) 2023-08-08 2023-08-08 实时量测数据的并行处理方法及系统、电子设备、介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310991745.8A CN117093364B (zh) 2023-08-08 2023-08-08 实时量测数据的并行处理方法及系统、电子设备、介质

Publications (2)

Publication Number Publication Date
CN117093364A true CN117093364A (zh) 2023-11-21
CN117093364B CN117093364B (zh) 2024-04-02

Family

ID=88776539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310991745.8A Active CN117093364B (zh) 2023-08-08 2023-08-08 实时量测数据的并行处理方法及系统、电子设备、介质

Country Status (1)

Country Link
CN (1) CN117093364B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164273A (zh) * 2012-09-06 2013-06-19 佳都新太科技股份有限公司 一种利用自扩展的阻塞算法将同步服务调用转换为异步并行式调用的方法
CN105224393A (zh) * 2015-10-15 2016-01-06 西安电子科技大学 一种JT-CoMP在C-RAN架构下的虚拟机调度机制
US20170200079A1 (en) * 2016-01-13 2017-07-13 International Business Machines Corporation Efficient generation of stochastic spike patterns in core-based neuromorphic systems
CN109522120A (zh) * 2018-11-14 2019-03-26 重庆邮电大学 一种基于Hadoop的智能家居管理平台
CN112990624A (zh) * 2019-12-13 2021-06-18 顺丰科技有限公司 一种任务分配方法、装置、设备及存储介质
US11455290B1 (en) * 2020-06-29 2022-09-27 Amazon Technologies, Inc. Streaming database change data from distributed storage
CN115617690A (zh) * 2022-11-02 2023-01-17 电子科技大学 基于改进自适应遗传算法的并行测试任务调度方法
CN115730432A (zh) * 2022-11-09 2023-03-03 国网湖南省电力有限公司 物联网数据处理任务的调度方法及系统、设备、存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164273A (zh) * 2012-09-06 2013-06-19 佳都新太科技股份有限公司 一种利用自扩展的阻塞算法将同步服务调用转换为异步并行式调用的方法
CN105224393A (zh) * 2015-10-15 2016-01-06 西安电子科技大学 一种JT-CoMP在C-RAN架构下的虚拟机调度机制
US20170200079A1 (en) * 2016-01-13 2017-07-13 International Business Machines Corporation Efficient generation of stochastic spike patterns in core-based neuromorphic systems
CN109522120A (zh) * 2018-11-14 2019-03-26 重庆邮电大学 一种基于Hadoop的智能家居管理平台
CN112990624A (zh) * 2019-12-13 2021-06-18 顺丰科技有限公司 一种任务分配方法、装置、设备及存储介质
US11455290B1 (en) * 2020-06-29 2022-09-27 Amazon Technologies, Inc. Streaming database change data from distributed storage
CN115617690A (zh) * 2022-11-02 2023-01-17 电子科技大学 基于改进自适应遗传算法的并行测试任务调度方法
CN115730432A (zh) * 2022-11-09 2023-03-03 国网湖南省电力有限公司 物联网数据处理任务的调度方法及系统、设备、存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
THU REIN WIN等: "Optimized Resource Allocation Model in Cloud Computing System", 《2019 INTERNATIONAL CONFERENCE ON ADVANCED INFORMATION TECHNOLOGIES (ICAIT)》, 5 December 2019 (2019-12-05), pages 49 - 54 *
张鹤望: "基于深度学习的非侵入式电网负荷监测方法", 《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》, 15 April 2022 (2022-04-15), pages 042 - 767 *

Also Published As

Publication number Publication date
CN117093364B (zh) 2024-04-02

Similar Documents

Publication Publication Date Title
CN113064879B (zh) 数据库参数调整方法、装置及计算机可读存储介质
WO2021104096A1 (zh) 容器云环境下的任务调度方法、装置、服务器及存储装置
CN109066710B (zh) 一种多目标无功优化方法、装置、计算机设备及存储介质
CN110474808B (zh) 一种流量预测方法及装置
CN108287666B (zh) 用于云存储环境的数据存储方法及装置
CN110389820B (zh) 一种基于v-TGRU模型进行资源预测的私有云任务调度方法
CN108924198A (zh) 一种基于边缘计算的数据调度方法、装置及系统
CN108288089A (zh) 用于生成卷积神经网络的方法和装置
CN113642938B (zh) 一种智能化生产管理方法及系统
CN114585006B (zh) 基于深度学习的边缘计算任务卸载和资源分配方法
CN111784061A (zh) 一种电网工程造价预测模型的训练方法、装置和设备
CN112580259A (zh) 基于遗传算法的智能矿山自动配矿方法及系统
CN116823059A (zh) 一种指标评估方法及装置、电子设备、存储介质
CN108256632A (zh) 信息处理方法和装置
CN117093364B (zh) 实时量测数据的并行处理方法及系统、电子设备、介质
CN111160649A (zh) 一种资源调度方案获取方法及装置
CN117170980B (zh) 一种服务器硬件异常预警方法、装置、设备及存储介质
CN114186479A (zh) 冲压工艺参数处理方法、装置、电子设备及存储介质
CN115730432B (zh) 物联网数据处理任务的调度方法及系统、设备、存储介质
CN114282658B (zh) 一种针对流量序列分析及预测的方法、设备和介质
CN115293056A (zh) 一种面向Modelica模型的多目标优化算法
CN115358314A (zh) 风电功率预测模型的训练和功率预测的方法、装置和设备
CN114691370A (zh) 一种基于遗传算法的任务分配方法和装置
CN114678114A (zh) 应用于智慧医疗的大数据挖掘评估方法及大数据挖掘系统
Nhu et al. Optimizing resource scaling in network slicing

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