CN113238484B - 基于智能群岛并行粒子群方法 - Google Patents
基于智能群岛并行粒子群方法 Download PDFInfo
- Publication number
- CN113238484B CN113238484B CN202110506886.7A CN202110506886A CN113238484B CN 113238484 B CN113238484 B CN 113238484B CN 202110506886 A CN202110506886 A CN 202110506886A CN 113238484 B CN113238484 B CN 113238484B
- Authority
- CN
- China
- Prior art keywords
- particles
- population
- particle
- parallel
- island
- 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Automation & Control Theory (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于智能群岛并行粒子群方法,包括S1、建立基于并行处理单元软件的双重群岛架构;S2、引入飞行地图、离线手段、导航粒子、约束前置和衍生内容,实现智能的飞行方向调整;S3、通过岛间竞争带来的各个种群自然生长,从而创立了自动控制环境下并行粒子群的硬件与软件整体环境;S4、通过虚拟分散处理单元的并行化改造,进而搭建虚拟并行处理单元,形成双重粗粒度并行结构,即所谓双重群岛并行计算架构;本发明的有益效果是:通过添加部分满足算力要求的多个控制器形成的计算集群或者运用现有闲置计算资源形成的计算集合实行并行化处理。
Description
技术领域
本发明涉及自动控制技术领域,具体为基于智能群岛并行粒子群方法。
背景技术
随着流域集控在水电领域的推广与实践,流域内水电机组实现了控制意义上的数据共享,这使得各种基于智慧能源技术的新算法、新应用得以逐次展开,例如流域内电站与站内的有功优化分配,从而提出了更为广泛的、深入的、快速的计算需求,这使得当前在自动控制领域承担计算任务的控制器设备不能完全胜任。对这些设备进行垂直方向的升级,即提高中央处理单元的计算速度和内存的容量,仍然不能满足大负载运算的需要并且造价昂贵,因此利用并行计算集群在水平方向实现计算能力的拓展是公认的解决计算能力瓶颈的理想方法,粒子群算法具有天然的并行计算特征,因此称作并行粒子群。在并行粒子群的三种典型方法中,粗粒度并行粒子群模拟了群岛中各个岛屿上粒子群的独立进化以及岛屿之间的有效关联,在并行粒子群算法中有比较突出的应用,但是每个岛屿只有一个粒子群,种群的丰富性不足,而且传统粒子群的飞行公式中所考虑的方向调整办法使得飞行过程比较容易陷入局地最小值而不能自拔,在线应用时又不能充分利用历史信息,拉长了整个进化进程,在自动控制环境内搭建并行计算集群,是指利用具有满足算力要求的多个控制器形成集群或者现有闲置计算资源的集群,无论新增的具有并行计算能力的控制器还是并行化处理的现有闲置计算资源,均具有控制级计算设备的安全等级,因此具有现实的可行性;
从已经公开的发明及其相关文献来看,目前在基于智能化群岛的并行粒子群算法设计方面没有相关专利,大多数发明集中在并行粒子群的实现手段上,例如专利《分布式内存并行计算优化深度信息网络的短期负荷预测方法》(公开号CN109816144A)提出一种利用RDD集合在分布式内存上建立Spark平台的并行方法;例如专利《一种基于自适应线程束的GPU并行粒子群优化方法》(公开号CN106502632A,授权号CN106502632B)利用GPU加速执行的改进CUDA并行架构方式,使得粒子群算法在单个主机的并行度进一步提高。这些专利均需要借助国外的知识产权或者商业软件,缺少完全独立自主的科研基因,因而受到的限制较多。此外从自动控制领域来看,业内现有的分散式控制架构本身所具备的并行特性没有被充分地挖掘利用,在现有分散控制系统架构上实现并行计算仍是空白;针对满足算力要求的多个控制器形成的计算集群或者现有闲置计算资源形成的计算集群实行并行化处理,通过智能群岛的多种新方法实现改进的并行粒子群算法,使得控制领域中的一些智能应用可以从并行计算的高效性中获益,获得强大的算力,从而具备实时在线的能力。本发明是针对基于智能群岛的并行粒子群算法而展开的,事实上本发明提供的以并行处理单元为基础的并行计算架构适用于大部分适用并行计算的在线优化问题。
发明内容
本发明的目的在于提供基于智能群岛并行粒子群方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:基于智能群岛并行粒子群方法,包括以下步骤:
S1、建立基于并行处理单元软件的双重群岛架构;
S2、引入飞行地图、离线手段、导航粒子、约束前置和衍生内容,实现智能的飞行方向调整;
S3、通过岛间竞争带来的各个种群自然生长,从而创立了自动控制环境下并行粒子群的硬件与软件整体环境;
S4、通过虚拟分散处理单元的并行化改造,进而搭建虚拟并行处理单元,形成双重粗粒度并行结构,即所谓双重群岛并行计算架构;
S5、完成S1-S4,统称为基于智能群岛的并行粒子群算法;
作为本发明的一种优选方案:所述双重群岛架构包括并行处理单元PPU和分散处理单元DPU,所述并行处理单元PPU是执行并行计算任务的DPU或分散处理单元DPU的并行拓展,所述飞行地图是指针对所求解的数学命题以离线的手段进行基于智能群岛的并行粒子群计算分析,得出地图网格上的数学最优解的集合;所述离线手段是指进行离线的计算;所述导航粒子是指从飞行地图出发所建立的用于飞行导航的粒子,导航粒子隶属于各自的种群,为种群的飞行提供方向的指引作用;
所述衍生内容包括在建立飞行方向时拓展衍生项、逃离项和导航项,所述飞行方向是指粒子群中每一个飞行粒子在决定下一步的飞行目标时,由引向最优坐标的各个因素综合计算的飞行向量,飞行粒子从当前坐标出发叠加该飞行向量即得到下一个飞行目标;所述衍生项是指粒子群内所有确定了飞行方向后整个粒子群的多样性指标低于预设数值时,为了保证种群多样性,避免陷入局地最小值采取的一个分项;所述逃离项是指粒子群内单个粒子确定了飞行方向后,更新的粒子坐标刚好位于约束条件所限制的解域空间内;所述导航项是指粒子从当前坐标趋向于导航粒子坐标的飞行向量分项;
作为本发明的一种优选方案:所述约束前置是指当发现更新的粒子坐标刚好位于约束条件所限制的不可到达解域空间内时引入逃离项,使得更新的粒子坐标远离约束空间,所述岛间竞争是指每个种群的每次进化过程结束后立即得出本种群的综合适应度指标;
建立双重群岛的并行粒子群计算结构,鉴于分散处理单元在自动控制领域广泛使用,沿袭传统的分散处理单元为DPU以及分散处理单元软件为VDPU的定义,定义实现并行计算部署的分散处理单元为PPU,定义具有并行计算功能的分散处理单元软件为VPPU,所述VPPU是指完成分散处理单元基本功能之外还能完成并行计算功能的软件,并行处理单元PPU是执行并行计算任务的DPU,并行处理单元PPU是分散处理单元DPU的并行拓展,PPU的并行不是指同时运行的多个独立的DPU,也不是指同步运行的多重冗余DPU,而是指进行了并行计算部署的多个PPU;
引入岛间竞争形成动态种群,预先设定每个种群初始的种群规模一致,包括导航粒子与若干飞行粒子,飞行粒子分为休眠与唤醒两种状态,种群中所有飞行粒子的唤醒率也设定为一致,当飞行粒子处于休眠状态时该粒子不参与当前阶段的进化过程,当飞行粒子处于唤醒状态时该粒子参与当前阶段的进化过程,当种群接受其他种群优秀粒子的迁入时,相同数量的休眠状态飞行粒子被唤醒,加入到飞行粒子的群体,种群规模自然生长,设置粒子饥饿度指标E,用于设定粒子进行休眠状态的忍耐次数,如果平庸粒子连续E代适应度下降,则粒子将被强制催眠,进入休眠状态,种群规模自然萎缩,种群中粒子的数量设定了上限与下限,当种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,当种群萎缩到下限时,不再进行粒子的强制催眠。
所述A1中的PPU既指包含了VPPU的并行处理单元设备,也指包含了VPPU的具有闲置计算能力的自动控制网络内其他设备,所述自动控制网络内其他设备包括工程师站、操作员站、历时站、接口站,这些站点的CPU处于“应征”的工作状态,当站点未被使用或者使用过程存在较大的时间间隙时,即出现了大量的计算能力闲置时,利用这些闲置算力开设VPPU,既充分利用现有资源,也在网络安全性方面得到既有的保护,一些计算任务较轻的DPU也可以提供闲置算力用于提供额外的VPPU运行空间,这就形成了一个PPU上运行多个VPPU的情形,在并行粒子群计算的视角里即形成了一个岛屿上运行多个并行粒子群的情形,这既是计算资源的充分利用,也是利用多核CPU实时并行计算的有力手段,所述一个PPU上运行了多个VPPU,而PPU本身在自动控制系统中可以进行分布式布置,所有分布式布置的PPU之间共享一个冗余的数据网络,形成实时数据总线,实时数据总线上每一个PPU设备都有全局实时数据集的一个拷贝并且同时维护公有数据在数据总线上的流通,使得每个PPU上的数据得到同步,每个VPPU运行一个粒子群,则一个PPU就形成一个群岛,PPU内有多少个并行的VPPU,这个群岛就由多少岛屿组成;进而实时数据总线上并行的PPU形成一个双重群岛,实时数据总线上开设了多少个PPU,就有多少个并行的群岛组成一个更大范围的群岛,由于不论是运行在同一个PPU中的VPPU还是不同PPU中的VPPU,均位于同一个实时数据总线之上,维护拥有同一个数据结构的全局实时数据集,所述实时数据总线上的流通是指PPU实时数据总线上建立的网间传递,所述网间是指PPU的全局实时数据集之间的信息交互,由于全网通报具有实时刷新数据集的效果,如果不同的PPU对同一个点均进行通报,会引发信息多重闪现,因此需要PPU对数据集的点进行严格管理,实时数据总线上的流通是并行的,每个PPU在自己的计算循环的进行过程中或者一个计算循环完成后,均独立地向外广播公有数据,同时刷新本地全局实时数据集,亦即其他群岛需要的本岛重要信息如本岛最佳粒子、本岛平均适应度、种群多样性指标被广播到数据总线上为其他群岛接收,而本岛基础信息如粒子坐标、适应度均在本地刷新,双重群岛的任意一级均不专门设置决策中心,故而每个岛屿都是平级的、相互独立的,除了粒子迁徙之外不产生决策信息交流;相对应地,在每个岛内设置一个决策中心,负责群内的信息统计、群内的进化迭代、公有信息发送与接收,所述公有信息包括优化目标的更新、群岛所需要的本岛重要信息、本岛所需要的群岛重要信息。
所述A2中的式中字母V、X、t、b、k、c、r分别代表速度、坐标、时刻、在线判断系数、多样性系数、权重系数、随机数,下标p表示粒子,范围1~P,P为岛内粒子个数,受种群动态进化的影响每座岛不同的进化时期数值不同;上标i表示群岛,范围1~I,I为全部群岛个数;上标s表示粒子群,范围1~S,S为全部粒子群个数,公式子项(1)(2)(3)分别表示惯性项、开发项和探索项,为传统粒子群算法的基础内容,其中为t时刻为止粒子历史最佳适应度对应的坐标,为t时刻粒子群内最佳粒子坐标,为粒子当前坐标,公式子项(4)为导航项,当本发明在线使用时b=1,离线使用时b=0,为导航粒子坐标,导航粒子在本次进化任务确定时被指定,在整个进化过程中保持不变;k为导航粒子导航信号强弱标志,其范围为0~1,在进化初期为1,导航作用最强,而后逐步变化到0,导航作用消失,导航信号的变化取决于群内多样性指标当其小于ME时令k=0,多样性指标计算公式为:分子为当前时刻的粒子群多样性系数,分母为接收到进化目标时初始态的粒子群多样性系数,其中d为粒子维度,范围是1~D,D为最大维度,L为该粒子维度下的极值;公式子项(5)为衍生项,为衍生粒子,加入衍生粒子后的群内多样性指标数值增加,有
所述A3中的每一个粒子群内部存在天然的竞争,在每次进化完成后每个粒子都计算出自己的适应度指标根据高低的顺序对适应度指标进行排序,排序靠前的称为优秀粒子,排序靠后的称为平庸粒子;优秀粒子不仅提高了本种群的适应度,还更容易被迁徙到其他种群,帮助其他种群的成长;相反地,平庸粒子不仅降低了本种群的适应度,而且可能会被强制催眠,失去飞行能力;在每一个粒子群受命进行进化计算的初始阶段,优秀粒子和平庸粒子之间的差别较为明显,每个粒子群的每次进化过程结束后立即得出本种群的综合适应度指标,用来标识该种群在整个岛群中的竞争力,所述综合适应度可以采用统计学方法获得,其中平均适应度因其计算简单而成为计算的选择,其公式为其中Pi,s为群岛i中第s个粒子群中粒子的个数,为其中一个粒子的适应度,由一次进化完成后计算获得,所有种群的进化过程中均不断刷新平均适应度并且告知所有种群,故而整个群岛的平均适应度随之得出,其公式为每个粒子群的相对适应度指标可以计算,其公式为所述相对适应度指标,各岛在进化计算受命开始的初期相差不大,随着动态种群的不断演进,种群之间的差距越来越大,相对适应度指标的差距也越来越大,设定一个关注指标βE,当βi,s<βE的时候该种群不再被纳入观察名单,甚至被终止计算,在所有的群岛之间进行相对适应度指标的排序,从高到底依次排列后的顺序为N,N=1,2,...,I·S,这个顺序代表了粒子群种群之间的优劣,比较后排名靠前的称为优秀种群,排名靠后的称为平庸种群,优秀种群的竞争力较强,具有强大的吸引力,使得更多的优秀粒子迁徙而来,从而不断地增强种群实力;相反,平庸种群的吸引力较弱,不容易得到更多优秀粒子的加入,从而越发平庸乃至退出竞争,进行岛间粒子迁徙,迁徙是针对优秀粒子而进行的,所述迁徙是指这些优秀粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,决定迁徙的数量或者迁徙率大小的原则是平均适应度越大的种群获得越多的其他种群优秀粒子的迁入,平均适应度越小的种群则越难以获得其他种群的优秀粒子,设定迁徙个数为X=I·S-N,当种群相对适应度指标排序N越靠前,其数值越小,其获得的迁入个数就越多。
作为本发明的一种优选方案:所述种群包括导航粒子和飞行粒子,所述飞行粒子分为休眠与唤醒两种状态,所述种群中所有飞行粒子初始唤醒率一致,所述飞行粒子处于休眠状态时该粒子不参与当前阶段的进化过程,所述飞行粒子处于唤醒状态时该粒子参与当前阶段的进化过程,所述种群接受其他种群优秀粒子的迁入时,相同数量的休眠状态飞行粒子被唤醒,加入到飞行粒子的群体,所述种群规模自然生长,所述种群中的平庸粒子超过忍受限度之后将被强制催眠,进入休眠状态,种群规模自然萎缩,种群中粒子的数量设定了上限与下限,所述种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,所述种群萎缩到下限时,不再进行粒子的强制催眠。
作为本发明的一种优选方案:所述优秀粒子是指每个种群中适应度最高的粒子的集合,所述优秀粒子的迁徙是指这些粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,所述平庸粒子是指每个种群中适应度低于整个岛群平均适应度的粒子,所述平庸粒子连续适应度下降,则粒子将被强制催眠。
与现有技术相比,本发明的有益效果是:本发明新颖且实用性强,充分利用自动控制系统现有的网络和计算资源,通过添加部分满足算力要求的多个控制器形成的计算集群或者运用现有闲置计算资源形成的计算集合实行并行化处理,通过双重群岛、导航粒子、约束前置与多样性衍生、动态种群多种新方法形成智能群岛,从而实现改进的并行粒子群算法,使得控制领域中的一些智能应用可以从并行计算的高效性中获益,获得强大的算力,从而具备实时在线的能力。
附图说明
图1为本发明双重群岛架构示意图;
图2为本发明并行处理单元软件逻辑结构示意图;
图3为本发明在线与离线手段下粒子飞行方向示意图;
图4为本发明并行处理单元的实施准备流程示意图;
图5为本发明基于智能群岛的并行粒子群计算流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-5,本发明提供一种技术方案:基于智能群岛并行粒子群方法,包括以下步骤:
S1、建立基于并行处理单元软件的双重群岛架构;
S2、引入飞行地图、离线手段、导航粒子、约束前置和衍生内容,实现智能的飞行方向调整;
S3、通过岛间竞争带来的各个种群自然生长,从而创立了自动控制环境下并行粒子群的硬件与软件整体环境;
S4、通过虚拟分散处理单元的并行化改造,进而搭建虚拟并行处理单元,形成双重粗粒度并行结构,即所谓双重群岛并行计算架构;
S5、完成S1-S4,统称为基于智能群岛的并行粒子群算法。
双重群岛架构包括并行处理单元PPU和分散处理单元DPU,并行处理单元PPU是执行并行计算任务的DPU或分散处理单元DPU的并行拓展,飞行地图是指针对所求解的数学命题以离线的手段进行基于智能群岛的并行粒子群计算分析,得出地图网格上的数学最优解的集合;离线手段是指进行离线的计算;导航粒子是指从飞行地图出发所建立的用于飞行导航的粒子,导航粒子隶属于各自的种群,为种群的飞行提供方向的指引作用,提高了计算效率,衍生内容包括在建立飞行方向时拓展衍生项、逃离项和导航项,飞行方向是指粒子群中每一个飞行粒子在决定下一步的飞行目标时,由引向最优坐标的各个因素综合计算的飞行向量,飞行粒子从当前坐标出发叠加该飞行向量即得到下一个飞行目标;衍生项是指粒子群内所有确定了飞行方向后整个粒子群的多样性指标低于预设数值时,为了保证种群多样性,避免陷入局地最小值采取的一个分项;逃离项是指粒子群内单个粒子确定了飞行方向后,更新的粒子坐标刚好位于约束条件所限制的解域空间内;导航项是指粒子从当前坐标趋向于导航粒子坐标的飞行向量分项,解决飞行过程中的盲目性、陷入局地最小特性、进入约束空间特性,约束前置是指当发现更新的粒子坐标刚好位于约束条件所限制的不可到达解域空间内时引入逃离项,使得更新的粒子坐标远离约束空间,岛间竞争是指每个种群的每次进化过程结束后立即得出本种群的综合适应度指标,竞争力越强的种群具有越强大的吸引力,获得更多的优秀粒子迁徙而来,从而不断地增强种群实力,种群包括导航粒子和飞行粒子,飞行粒子分为休眠与唤醒两种状态,种群中所有飞行粒子初始唤醒率一致,飞行粒子处于休眠状态时该粒子不参与当前阶段的进化过程,飞行粒子处于唤醒状态时该粒子参与当前阶段的进化过程,种群接受其他种群优秀粒子的迁入时,相同数量的休眠状态飞行粒子被唤醒,加入到飞行粒子的群体,种群规模自然生长,种群中的平庸粒子超过忍受限度之后将被强制催眠,进入休眠状态,种群规模自然萎缩,种群中粒子的数量设定了上限与下限,种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,种群萎缩到下限时,不再进行粒子的强制催眠,提高了种群的计算效率,优秀粒子是指每个种群中适应度最高的粒子的集合,优秀粒子的迁徙是指这些粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,平庸粒子是指每个种群中适应度低于整个岛群平均适应度的粒子,平庸粒子连续适应度下降,则粒子将被强制催眠。
基于智能群岛并行粒子群方法,包括以下步骤:
A1、建立双重群岛的并行粒子群计算结构,鉴于分散处理单元在自动控制领域广泛使用,沿袭传统的分散处理单元为DPU以及分散处理单元软件为VDPU的定义,定义实现并行计算部署的分散处理单元为PPU,定义具有并行计算功能的分散处理单元软件为VPPU,VPPU是指完成分散处理单元基本功能之外还能完成并行计算功能的软件,并行处理单元PPU是执行并行计算任务的DPU,并行处理单元PPU是分散处理单元DPU的并行拓展,PPU的并行不是指同时运行的多个独立的DPU,也不是指同步运行的多重冗余DPU,而是指进行了并行计算部署的多个PPU;
A3、引入岛间竞争形成动态种群,预先设定每个种群初始的种群规模一致,包括导航粒子与若干飞行粒子,飞行粒子分为休眠与唤醒两种状态,种群中所有飞行粒子的唤醒率也设定为一致,当飞行粒子处于休眠状态时该粒子不参与当前阶段的进化过程,当飞行粒子处于唤醒状态时该粒子参与当前阶段的进化过程。当种群接受其他种群优秀粒子的迁入时,相同数量的休眠状态飞行粒子被唤醒,加入到飞行粒子的群体,种群规模自然生长。设置粒子饥饿度指标E,用于设定粒子进行休眠状态的忍耐次数,如果平庸粒子连续E代适应度下降,则粒子将被强制催眠,进入休眠状态,种群规模自然萎缩。种群中粒子的数量设定了上限与下限,当种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,当种群萎缩到下限时,不再进行粒子的强制催眠。
A1中的PPU既指包含了VPPU的并行处理单元设备,也指包含了VPPU的具有闲置计算能力的自动控制网络内其他设备,自动控制网络内其他设备包括工程师站、操作员站、历时站、接口站,这些站点的CPU处于“应征”的工作状态,当站点未被使用或者使用过程存在较大的时间间隙时,即出现了大量的计算能力闲置时,利用这些闲置算力开设VPPU,既充分利用现有资源,也在网络安全性方面得到既有的保护,一些计算任务较轻的DPU也可以提供闲置算力用于提供额外的VPPU运行空间,这就形成了一个PPU上运行多个VPPU的情形,在并行粒子群计算的视角里即形成了一个岛屿上运行多个并行粒子群的情形,这既是计算资源的充分利用,也是利用多核CPU实时并行计算的有力手段,一个PPU上运行了多个VPPU,而PPU本身在自动控制系统中可以进行分布式布置,所有分布式布置的PPU之间共享一个冗余的数据网络,形成实时数据总线,实时数据总线上每一个PPU设备都有全局实时数据集的一个拷贝并且同时维护公有数据在数据总线上的流通,使得每个PPU上的数据得到同步。每个VPPU运行一个粒子群,则一个PPU就形成一个群岛,PPU内有多少个并行的VPPU,这个群岛就由多少岛屿组成;进而实时数据总线上并行的PPU形成一个双重群岛,实时数据总线上开设了多少个PPU,就有多少个并行的群岛组成一个更大范围的群岛,由于不论是运行在同一个PPU中的VPPU还是不同PPU中的VPPU,均位于同一个实时数据总线之上,维护拥有同一个数据结构的全局实时数据集,实时数据总线上的流通是指PPU实时数据总线上建立的网间传递,网间是指PPU的全局实时数据集之间的信息交互,由于全网通报具有实时刷新数据集的效果,如果不同的PPU对同一个点均进行通报,会引发信息多重闪现,因此需要PPU对数据集的点进行严格管理,实时数据总线上的流通是并行的,每个PPU在自己的计算循环的进行过程中或者一个计算循环完成后,均独立地向外广播公有数据,同时刷新本地全局实时数据集,亦即其他群岛需要的本岛重要信息如本岛最佳粒子、本岛平均适应度、种群多样性指标被广播到数据总线上为其他群岛接收,而本岛基础信息如粒子坐标、适应度均在本地刷新,双重群岛的任意一级均不专门设置决策中心,故而每个岛屿都是平级的、相互独立的,除了粒子迁徙之外不产生决策信息交流;相对应地,在每个岛内设置一个决策中心,负责群内的信息统计、群内的进化迭代、公有信息发送与接收,公有信息包括优化目标的更新、群岛所需要的本岛重要信息、本岛所需要的群岛重要信息;
A2中的式中字母V、X、t、b、k、c、r分别代表速度、坐标、时刻、在线判断系数、多样性系数、权重系数、随机数,下标p表示粒子,范围1~P,P为岛内粒子个数,受种群动态进化的影响每座岛不同的进化时期数值不同;上标i表示群岛,范围1~I,I为全部群岛个数;上标s表示粒子群,范围1~S,S为全部粒子群个数,公式子项(1)(2)(3)分别表示惯性项、开发项和探索项,为传统粒子群算法的基础内容,其中为t时刻为止粒子历史最佳适应度对应的坐标,为t时刻粒子群内最佳粒子坐标,为粒子当前坐标,公式子项(4)为导航项,当本发明在线使用时b=1,离线使用时b=0,为导航粒子坐标,导航粒子在本次进化任务确定时被指定,在整个进化过程中保持不变;k为导航粒子导航信号强弱标志,其范围为0~1,在进化初期为1,导航作用最强,而后逐步变化到0,导航作用消失,导航信号的变化取决于群内多样性指标当其小于ME时令k=0,多样性指标计算公式为:分子为当前时刻的粒子群多样性系数,分母为接收到进化目标时初始态的粒子群多样性系数,其中d为粒子维度,范围是1~D,D为最大维度,L为该粒子维度下的极值。公式子项(5)为衍生项,为衍生粒子,加入衍生粒子后的群内多样性指标数值增加,有
A3中的每一个粒子群内部存在天然的竞争,在每次进化完成后每个粒子都计算出自己的适应度指标根据高低的顺序对适应度指标进行排序,排序靠前的称为优秀粒子,排序靠后的称为平庸粒子。优秀粒子不仅提高了本种群的适应度,还更容易被迁徙到其他种群,帮助其他种群的成长;相反地,平庸粒子不仅降低了本种群的适应度,而且可能会被强制催眠,失去飞行能力。在每一个粒子群受命进行进化计算的初始阶段,优秀粒子和平庸粒子之间的差别较为明显,每个粒子群的每次进化过程结束后立即得出本种群的综合适应度指标,用来标识该种群在整个岛群中的竞争力,综合适应度可以采用统计学方法获得,其中平均适应度因其计算简单而成为计算的选择,其公式为其中Pi,s为群岛i中第s个粒子群中粒子的个数,为其中一个粒子的适应度,由一次进化完成后计算获得,所有种群的进化过程中均不断刷新平均适应度并且告知所有种群,故而整个群岛的平均适应度随之得出,其公式为每个粒子群的相对适应度指标可以计算,其公式为相对适应度指标,各岛在进化计算受命开始的初期相差不大,随着动态种群的不断演进,种群之间的差距越来越大,相对适应度指标的差距也越来越大,设定一个关注指标βE,当βi,s<βE的时候该种群不再被纳入观察名单,甚至被终止计算,在所有的群岛之间进行相对适应度指标的排序,从高到底依次排列后的顺序为N,N=1,2,...,I·S,这个顺序代表了粒子群种群之间的优劣,比较后排名靠前的称为优秀种群,排名靠后的称为平庸种群,优秀种群的竞争力较强,具有强大的吸引力,使得更多的优秀粒子迁徙而来,从而不断地增强种群实力;相反,平庸种群的吸引力较弱,不容易得到更多优秀粒子的加入,从而越发平庸乃至退出竞争,进行岛间粒子迁徙,迁徙是针对优秀粒子而进行的,迁徙是指这些优秀粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,决定迁徙的数量或者迁徙率大小的原则是平均适应度越大的种群获得越多的其他种群优秀粒子的迁入,平均适应度越小的种群则越难以获得其他种群的优秀粒子,设定迁徙个数为X=I·S-N,当种群相对适应度指标排序N越靠前,其数值越小,其获得的迁入个数就越多。
具体的,结合图1说明双重群岛的架构,所有分布式布置的并行处理单元之间共享一个冗余的数据网络,形成实时数据总线,实时数据总线上每一个并行处理单元设备都有全局实时数据集的一个拷贝并且同时维护公有数据在数据总线上的流通,使得每个并行处理单元上的数据得到同步,根据实时数据总线,对多个并行处理单元进行分布式布置,均挂载在实时数据总线之上,形成一层群岛;同时每一个并行处理单元之上可以运行多个并行处理单元软件,形成第二层群岛,每个并行处理单元软件空间中运行一个粒子群,则一个并行处理单元就形成一个群岛,并行处理单元内有多少个并行的并行处理单元软件空间,这个群岛就由多少岛屿组成;进而实时数据总线上并行的并行处理单元形成一个双重群岛,数据总线上挂载了多少个并行处理单元,就有多少个并行的群岛组成一个更大范围的群岛,图2进一步提供了并行处理单元软件逻辑结构,是基于图1的进一步说明,在每一个并行处理单元软件中都包含相同的结构,首先通过与实时数据总线的硬件连接与软件连接,本机保存的全局实时数据集的一个拷贝与整个数据总线上任意一个并行处理单元软件中的全局实时数据集的拷贝结构相同,当预设的公有数据被广播时,每个并行处理单元软件得到同步更新,此外每个并行处理单元保留有自己的私有数据,不向外广播,减少数据总线的流量,在每个全局实时数据集的支持下,根生了诸多算法逻辑,简单而言分为决策中心和粒子飞行两种,决策中心逻辑负责群内的信息统计、群内的进化迭代、公有信息发送与接收,公有信息包括优化目标的更新、群岛所需要的本岛重要信息、本岛所需要的群岛重要信息,粒子飞行逻辑负责对粒子的自身进行处理,包括休眠与唤醒状态的切换、适应度的计算,每一个并行处理单元的算法逻辑均相同,便于设计工作的简化。
结合图3说明在线与离线手段下粒子智能飞行方向,首先飞行方向导入惯性项开发项探索项与传统的并行粒子群算法相同,这是反映了粒子飞行惯性的影响、粒子历史最优的影响以及粒子群最优的影响的综合影响,代表了粒子群的基本方向,图中*1、*2、*3即为上述三个传统向量的目标值点,其次地,当在线使用时引入导航项导航粒子在本次进化任务确定时被指定,在整个进化过程中保持不变,通过公式计算粒子群多样性指标,从而决定导航粒子导航信号强弱标志,由于在整个粒子群的飞行过程中固定其坐标不施进化,可以对当前粒子产生稳定的导航作用,故而导航信号越强,对粒子的指引作用越强,图中*4即为导航向量的目标值点,导航项分项帮助粒子群的整体进化获得方向性指引,从而减少飞行初期的盲目性,加快进化进程,再次地,当离线使用时,粒子群内所有确定了飞行方向后整个粒子群的多样性指标低于预设数值时,在飞行方向的反向空间里的找到一个使得种群多样性指标上升的随机向量,该向量生成后与原飞行向量综合而成为新的飞行方向,图中*5即为衍生向量的目标值点,最次地,粒子群内单个粒子确定了飞行方向后检验其飞行坐标,如果更新的粒子坐标刚好位于约束条件所限制的解域空间内时引入逃离项,使得更新的粒子坐标远离约束空间,避免一次计算浪费,逃离项的生成为在本次生成的新方向的对称侧建立向量,向量的数值大小由公式参数决定。
结合图4说明并行处理单元的实施准备流程:步骤4010,实施过程开始,本发明是基于现代自动控制系统而建立的,因此以分散控制系统的铺设完备为开始条件,这包括分散控制系统的控制器与控制站点设备、控制网络与信息网络,分散控制系统的建立是为基础的自动控制服务的,本发明基于这个基本条件而开始实施;
步骤4020,进行算力勘察,算力勘察从两部分进行,一部分是本发明针对目标所需要的算力估算,无论粒子群算法是否并行进行,在每一个并行处理单元上的主要算力需求来自于适应度计算,根据针对目标的不同,在某一个算力条件下适应度计算可能短至几个纳秒,也可能长至数秒,若是离线方式还可能达到数个小时,因此需要根据针对目标实时性的需求确定算力;另一部分是本发明实施所基于的分散控制系统的现有计算单元的闲置算力,根据并行处理单元软件的算力需求判断并行处理单元软件可以开设的个数,从而判断计算集群的规模,一般来说,针对同一个计算目标,并行计算集群的规模越大,并行计算的效率越高;
步骤4030,当前分散控制系统的闲置算力不足,或者闲置算力充分但是需要为基础自动控制保留充分裕度时,则考虑新增并行处理单元,是为新增PPU,新增的PPU需要满足分散控制网络的接入标准,接入后将成为原有分散控制系统的一个组成部分而非异类,新增PPU自带并行处理单元软件VPPU,VPPU开启后将成为原有分散控制系统的一个组成部分而非异类,一个新增PPU上可以运行多个VPPU,形成一个岛屿上运行多个并行粒子群的情形,这既是计算资源的充分利用,也是利用多核CPU实时并行计算的有力手段;
步骤4032,针对具有闲置算力的分散处理单元开设VPPU,根据算力的充裕程度可以开启不同的VPPU个数,VPPU开启后将成为原有分散控制系统的一个组成部分而非异类,具有闲置算力的分散处理单元上可以运行多个VPPU,形成一个岛屿上运行多个并行粒子群的情形,这既是计算资源的充分利用,也是利用多核CPU实时并行计算的有力手段;
步骤4040,对新增PPU分配IP地址和端口,对闲置算力开设的VPPU分配端口,IP地址与端口是并行处理单元软件在分散控制网络上的地址标识,同一个PPU具有相同的IP地址,不同的VPPU具有不同的端口,分配IP地址与端口时确保与分散控制网络现有计算设备不相冲突,在分散控制系统里,端口的配置通常与分散处理单元软件的编号相对应,因此并行处理单元软件也遵循这个原则,保证了VPPU开启后将为原有分散控制系统所识别并且成为其一个组成部分;
步骤4050,针对并行处理单元建立全局测点列表,它是分散处理单元全局点表的一个部分,与分散处理单元全局点表的其他部分属于同一个全局点表内,在严格受控的条件下可以进行信息的互换与赋值,并行点表使得分散控制网络上的信息广播具备了并行特性,使得并行计算具备了并行的信息交互手段,并行点表建立后,但完成所有的VPPU启动后并行的全局实时数据集相应建立;
步骤4060,开启所有预设的VPPU,VPPU开启后自动搜寻并且连接分散控制网络,成为分散控制网络的一个组成部分,以此同时,并行全局实时数据集自动融接,并行数据通过实时数据总线进行数据交互,这些内容同时也是步骤4070的组成部分,此外系统检查还包括几个重要内容,例如对计算容量边界的检查,以考察所设计的VPPU开设情况是否在所处的分散控制网络计算设备中不超过计算能力的边界而留有裕度,再如对并行处理单元与主控单元之间的连接是否如初设预期,主控单元对并行处理单元任务的下达是否通畅、并行处理单元的并行计算结果反馈是否通畅;再如并行处理单元通过生命信号的传递是否到位,主控单元是否能够通过生命信号来调整并行计算的分配,系统检查还包括信息安全的检测;
步骤4080,启动并且完成系统检查以后,并行处理单元集群基本建立,从而具备并行应用条件,设计并且运行的并行控制与并行计算逻辑均能够在分散控制网络上并行交互,需要注意的是并行处理单元集群上的任意一个并行处理单元软件上运行的算法组态均相同,并行处理单元发布公用信息时以本单元的编号进行自动标识;
步骤4090,算法组态设计完成后下载到并行处理单元软件中,并行计算即告开始;
步骤4100,本发明所服务的基于智能群岛的并行粒子群算法可以以离线的手段进行计算分析,得出飞行地图,并且以全局实时数据集的方式实行标注,成为粒子群飞行时可以依赖的成熟轨迹,飞行地图离线生成后表达为全局实时数据集的数据信息,这些数据信息可以被保存到磁盘文件,也可以从磁盘文件读入全局实时数据集;
步骤4110,并行处理单元集群进入待命状态,向主控单元发送生命信号并且接受主控单元的并行计算任务分配;
结合图5说明基于智能群岛的并行粒子群计算流程:
步骤5010,本发明基于智能群岛的并行粒子群算法不能单独运行于分散控制系统之上,而是依赖于基于分散控制网络构建的并行处理单元集群,因此,完整地实现并行处理单元集群的实施准备流程是本流程开始的必要条件;
步骤5020,并行粒子群算法开始以后,首先判断是否为初次任务,当本次计算为初次任务时进行粒子的随机唤醒,是为步骤5031,当本次计算为非初次任务时进行粒子的选择性唤醒与休眠,是为步骤5030,所谓初次任务是指并行粒子群创建以后第一次从主控单元接受计算任务,是指并行处理单元集群建立后的第一次计算任务,此时计算组态下载后,各个并行处理单元已经拥有了同等数量的大量可以执行计算任务的粒子,这些粒子初始态均为休眠态,根据计算任务的需要所设定的粒子群规模成为唤醒粒子的总数,这个唤醒过程是随机的,当初次计算任务完成以后的历次并行计算,包括主控单元下达不同的并行计算任务,均为非初次计算,此时粒子群经过前次计算已经具有一定的规模,各个并行处理单元受动态种群的影响其规模并不统一;(1),当本次计算仍为当前计算任务的后续计算时,根据种群多样性的要求进行粒子能力的甄别,如果优秀粒子在所有种群中表现突出,则粒子将被多次迁徙到其他种群,使得其他种群发展壮大,如果平庸粒子连续若干代适应度下降,则粒子将被强制催眠,进入休眠状态,本种群规模自然萎缩,种群中粒子的数量设定了上限与下限,当种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,当种群萎缩到下限时,不再进行粒子的强制催眠,因此,这个唤醒/休眠的过程是根据种群的动态变化要求而进行的;(2),当本次计算为主控单元新发布的计算任务时,由于前次并行计算完成后,各个种群经历“优胜劣汰”之后的规模不尽相同,优秀的种群规模很大,平庸的种群仍有一定的数量,为了保证下一轮并行计算初始的种群多样性,需要将所有的种群规模恢复到根据计算任务的需要所预设的规模,由于计算目标通常为具有连续性的在线优化,前次优化结果对后续计算具有一定的影响力,意即前次并行计算完成后的优秀粒子群在后续并行计算中保持优秀的几率一般大于平均,因此出于保持优秀种群基因的目的,优秀的粒子群择劣进行休眠,平庸粒子群则随机性地进行唤醒,最终在后续并行计算开始之前所有的粒子群保持了同等规模;
步骤5040,种群规模确定后,进行是否初代进化的判断,当判定为初代进化时,进行粒子坐标的随机定义,是为步骤5041,当判定为非初代进化时,进入粒子进化过程,是为步骤5040,该步骤也是并行粒子群计算的主要步骤,是本发明的智能群岛方法的集中体现,无论随机坐标还是智能群岛方法确定的坐标,粒子的坐标都具有实时的唯一性,即每个粒子进入到适应度计算之前拥有唯一的坐标,直到下次进化开始;
步骤5050,粒子进行几种传统的粒子群飞行向量分项计算,其中惯性项为粒子从当前坐标沿袭前次飞行方向的飞行向量分项,其中开发项为粒子从当前坐标趋向于本粒子历史最优坐标的飞行向量分项,其中探索项为粒子从当前坐标趋向于本粒子群最优坐标的飞行向量分项,这些飞行向量分项的计算均基于前次进化计算的结果或者粒子的优秀历史轨迹;
步骤5060,当应用为在线时引入导航项,是为步骤5061,当应用为离线时引入衍生项,是为步骤5070,应用是否为在线的区分依据不是是否实时运行的区分,即不是工程现场应用与实验室应用的区分,工程现场实时运行时也有离线的应用,这通常发生在主控单元没有发布并行计算任务而飞行地图有候命的地图更新计算请求时,这时候的应用属于离线方式,应用是否为在线方式的一个重要依据为主控单元是否发布有并行计算任务并且仍在执行中,此为在线方式,其他均为非在线方式,离线方式是非在线方式的一种;
步骤5061从飞行地图出发建立用于飞行导航的粒子,隶属于各自的种群,在整个粒子群的飞行过程中固定其坐标不施进化,从而对当前粒子产生稳定的导航作用,如果进化计算结束后种群最优秀的这部分粒子团结在导航粒子的合理范围之内,说明飞行地图起到了导航的作用;否则说明飞行地图出现了偏差,预示着生态环境的改变,即进行离线获取飞行地图的系统预设条件发生了变化,这时候飞行地图的导航作用受到了削弱,如果判定这种削弱不是暂时性的,那么飞行地图根据这种偏差及时地调整自己的坐标信息,并且发出警告,提示飞行地图其他坐标下的导航过程中必要的警醒,同时在并行计算系统空闲时间进行有组织的飞行地图更新,即分批次、有重点地采用离线手段更新部分乃至全部飞行地图;
步骤5070判定粒子群内所有确定了飞行方向后整个粒子群的多样性指标低于预设数值时,为了保证种群多样性,加入一个衍生项作为飞行分量的分项,以避免陷入局地最小值不能自拔,衍生项是在飞行方向的反向空间里的一个随机向量,该向量生成后与原飞行向量综合而成为新的飞行方向;
步骤5080综合了惯性项、开发项、探索项、衍生项和导航项得出新的飞行方向,该矢量的具体计算见公式(1)~(5),此时引入前次在线判断的结果,为步骤5090,当处于离线状态时直接更新下一轮粒子坐标,为步骤5100,当处于在线状态时,则进入步骤5091,调整飞行方向之后再更新粒子坐标,更新粒子坐标的方法相同,见公式(6);
步骤5091判别更新的粒子坐标是否刚好位于约束条件所限制的解域空间内,若是,则考虑到该粒子坐标必然使得此次进化计算被淘汰,导致粒子群计算资源的浪费,造成在线计算的负担,因此引入逃离项,是为步骤5092,使得更新的粒子坐标远离约束空间,实行约束前置,经过逃离项修正之后重新调整飞行方向,是为步骤5093,而后归入到步骤5100;
步骤5100中接受步骤5041的融入,至此粒子坐标更新完毕,具备下一轮进化计算的基础,开始进入步骤5110计算粒子适应度;
步骤5110计算粒子适应度,该计算针对所有坐标更新就绪的粒子并行展开,由于该计算为粒子群计算的核心,也占据了粒子群主要的计算资源耗费,并且受初始条件和边界条件的影响所有粒子的耗费并不相同,因此,所有粒子自从每一次并行计算任务受命之后就开始了不同的进化历程,占据不同的计算资源,所有的粒子进化计算、种群的动态演化、群岛的相互影响都是在异步状态下完成的,并不限定每一路计算过程的同步,这既符合进化的一般规律,也满足了计算资源充分利用的需求;
步骤5120是在适应度计算完成后进行的粒子评价,粒子评价是在粒子群内完成的,通过粒子评价得出种群内粒子的发展情况,区分出种群内的优秀粒子和平庸粒子,粒子评价是为下一轮可能进行的进化计算服务的,是粒子群自我评估的重要进程,由于进化计算的异步特性,群内评价存在一定的偏颇,不过由于粒子饥饿度的存在,避免了平庸粒子的误判,也由于粒子群计算的反复进行,避免了“伪”优秀粒子迁徙的不利影响;
步骤5130进行满足性的条件判断,若当前的进化结果满足并行计算预设的目标,本轮并行计算结束,进入待命状态,是为步骤5140;若当前的进化结果尚未满足预设目标,则进入步骤5131和步骤5132,优秀粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,平均适应度越大的种群获得越多的其他种群优秀粒子的迁入,平均适应度越小的种群则越难以获得其他种群的优秀粒子,同时如果平庸粒子连续适应度下降,则粒子将被强制催眠,从而转入步骤5020,进行粒子群种群的动态更新,继而进入下一轮进化计算,直至最终完成计算目标。
在本发明的描述中,需要理解的是,术语“同轴”、“底部”、“一端”、“顶部”、“中部”、“另一端”、“上”、“一侧”、“顶部”、“内”、“前部”、“中央”、“两端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”、“第三”、“第四”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,由此,限定有“第一”、“第二”、“第三”、“第四”的特征可以明示或者隐含地包括至少一个该特征。
在本发明中,除非另有明确的规定和限定,术语“安装”、“设置”、“连接”、“固定”、“旋接”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (3)
1.基于智能群岛并行粒子群方法,其特征在于,包括以下步骤:
S1、建立基于并行处理单元软件的双重群岛架构;
S2、引入飞行地图、离线手段、导航粒子、约束前置和衍生内容,实现智能的飞行方向调整;
S3、通过岛间竞争带来的各个种群自然生长,从而创立了自动控制环境下并行粒子群的硬件与软件整体环境;
S4、通过虚拟分散处理单元的并行化改造,进而搭建虚拟并行处理单元,形成双重粗粒度并行结构,即所谓双重群岛并行计算架构;
S5、完成S1-S4,统称为基于智能群岛的并行粒子群算法;
所述双重群岛架构包括并行处理单元PPU和分散处理单元DPU,所述并行处理单元PPU是执行并行计算任务的DPU或分散处理单元DPU的并行拓展,所述飞行地图是指针对所求解的数学命题以离线的手段进行基于智能群岛的并行粒子群计算分析,得出地图网格上的数学最优解的集合;所述离线手段是指进行离线的计算;所述导航粒子是指从飞行地图出发所建立的用于飞行导航的粒子,导航粒子隶属于各自的种群,为种群的飞行提供方向的指引作用;
所述衍生内容包括在建立飞行方向时拓展衍生项、逃离项和导航项,所述飞行方向是指粒子群中每一个飞行粒子在决定下一步的飞行目标时,由引向最优坐标的各个因素综合计算的飞行向量,飞行粒子从当前坐标出发叠加该飞行向量即得到下一个飞行目标;所述衍生项是指粒子群内所有确定了飞行方向后整个粒子群的多样性指标低于预设数值时,为了保证种群多样性,避免陷入局地最小值采取的一个分项;所述逃离项是指粒子群内单个粒子确定了飞行方向后,更新的粒子坐标刚好位于约束条件所限制的解域空间内;所述导航项是指粒子从当前坐标趋向于导航粒子坐标的飞行向量分项;
所述约束前置是指当发现更新的粒子坐标刚好位于约束条件所限制的不可到达解域空间内时引入逃离项,使得更新的粒子坐标远离约束空间,所述岛间竞争是指每个种群的每次进化过程结束后立即得出本种群的综合适应度指标;
所述A2中的式中字母V、X、t、b、k、c、r分别代表速度、坐标、时刻、在线判断系数、多样性系数、权重系数、随机数,下标p表示粒子,范围1~P,P为岛内粒子个数,受种群动态进化的影响每座岛不同的进化时期数值不同;上标i表示群岛,范围1~I,I为全部群岛个数;上标s表示粒子群,范围1~S,S为全部粒子群个数,公式子项(1)(2)(3)分别表示惯性项、开发项和探索项,为传统粒子群算法的基础内容,其中为t时刻为止粒子历史最佳适应度对应的坐标,为t时刻粒子群内最佳粒子坐标,为粒子当前坐标,公式子项(4)为导航项,当本发明在线使用时b=1,离线使用时b=0,为导航粒子坐标,导航粒子在本次进化任务确定时被指定,在整个进化过程中保持不变;k为导航粒子导航信号强弱标志,其范围为0~1,在进化初期为1,导航作用最强,而后逐步变化到0,导航作用消失,导航信号的变化取决于群内多样性指标当其小于ME时令k=0,多样性指标计算公式为:分子为当前时刻的粒子群多样性系数,分母为接收到进化目标时初始态的粒子群多样性系数,其中d为粒子维度,范围是1~D,D为最大维度,L为该粒子维度下的极值,公式子项(5)为衍生项,为衍生粒子,加入衍生粒子后的群内多样性指标数值增加,有
A3、引入岛间竞争形成动态种群,预先设定每个种群初始的种群规模一致,包括导航粒子与若干飞行粒子,飞行粒子分为休眠与唤醒两种状态,种群中所有飞行粒子的唤醒率也设定为一致,当飞行粒子处于休眠状态时该粒子不参与当前阶段的进化过程,当飞行粒子处于唤醒状态时该粒子参与当前阶段的进化过程,当种群接受其他种群优秀粒子的迁入时,相同数量的休眠状态飞行粒子被唤醒,加入到飞行粒子的群体,种群规模自然生长,设置粒子饥饿度指标E,用于设定粒子进行休眠状态的忍耐次数,如果平庸粒子连续E代适应度下降,则粒子将被强制催眠,进入休眠状态,种群规模自然萎缩,种群中粒子的数量设定了上限与下限,当种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,当种群萎缩到下限时,不再进行粒子的强制催眠;
所述A3中的每一个粒子群内部存在天然的竞争,在每次进化完成后每个粒子都计算出自己的适应度指标根据高低的顺序对适应度指标进行排序,排序靠前的称为优秀粒子,排序靠后的称为平庸粒子,优秀粒子不仅提高了本种群的适应度,还更容易被迁徙到其他种群,帮助其他种群的成长;相反地,平庸粒子不仅降低了本种群的适应度,而且可能会被强制催眠,失去飞行能力,在每一个粒子群受命进行进化计算的初始阶段,优秀粒子和平庸粒子之间的差别较为明显,每个粒子群的每次进化过程结束后立即得出本种群的综合适应度指标,用来标识该种群在整个岛群中的竞争力,所述综合适应度可以采用统计学方法获得,其中平均适应度因其计算简单而成为计算的选择,其公式为其中Pi,s为群岛i中第s个粒子群中粒子的个数,为其中一个粒子的适应度,由一次进化完成后计算获得,所有种群的进化过程中均不断刷新平均适应度并且告知所有种群,故而整个群岛的平均适应度随之得出,其公式为每个粒子群的相对适应度指标可以计算,其公式为所述相对适应度指标,各岛在进化计算受命开始的初期相差不大,随着动态种群的不断演进,种群之间的差距越来越大,相对适应度指标的差距也越来越大,设定一个关注指标βE,当βi,s<βE的时候该种群不再被纳入观察名单,甚至被终止计算,在所有的群岛之间进行相对适应度指标的排序,从高到底依次排列后的顺序为N,N=1,2,...,I·S,这个顺序代表了粒子群种群之间的优劣,比较后排名靠前的称为优秀种群,排名靠后的称为平庸种群,优秀种群的竞争力较强,具有强大的吸引力,使得更多的优秀粒子迁徙而来,从而不断地增强种群实力;相反,平庸种群的吸引力较弱,不容易得到更多优秀粒子的加入,从而越发平庸乃至退出竞争,进行岛间粒子迁徙,迁徙是针对优秀粒子而进行的,所述迁徙是指这些优秀粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,决定迁徙的数量或者迁徙率大小的原则是平均适应度越大的种群获得越多的其他种群优秀粒子的迁入,平均适应度越小的种群则越难以获得其他种群的优秀粒子,设定迁徙个数为X=I·S-N,当种群相对适应度指标排序N越靠前,其数值越小,其获得的迁入个数就越多;
A1、建立双重群岛的并行粒子群计算结构,鉴于分散处理单元在自动控制领域广泛使用,沿袭传统的分散处理单元为DPU以及分散处理单元软件为VDPU的定义,定义实现并行计算部署的分散处理单元为PPU,定义具有并行计算功能的分散处理单元软件为VPPU,所述VPPU是指完成分散处理单元基本功能之外还能完成并行计算功能的软件,并行处理单元PPU是执行并行计算任务的DPU,并行处理单元PPU是分散处理单元DPU的并行拓展,PPU的并行不是指同时运行的多个独立的DPU,也不是指同步运行的多重冗余DPU,而是指进行了并行计算部署的多个PPU;
所述A1中的PPU既指包含了VPPU的并行处理单元设备,也指包含了VPPU的具有闲置计算能力的自动控制网络内其他设备,所述自动控制网络内其他设备包括工程师站、操作员站、历时站、接口站,这些站点的CPU处于“应征”的工作状态,当站点未被使用或者使用过程存在较大的时间间隙时,即出现了大量的计算能力闲置时,利用这些闲置算力开设VPPU,既充分利用现有资源,也在网络安全性方面得到既有的保护,一些计算任务较轻的DPU也可以提供闲置算力用于提供额外的VPPU运行空间,这就形成了一个PPU上运行多个VPPU的情形,在并行粒子群计算的视角里即形成了一个岛屿上运行多个并行粒子群的情形,这既是计算资源的充分利用,也是利用多核CPU实时并行计算的有力手段,所述一个PPU上运行了多个VPPU,而PPU本身在自动控制系统中可以进行分布式布置,所有分布式布置的PPU之间共享一个冗余的数据网络,形成实时数据总线,实时数据总线上每一个PPU设备都有全局实时数据集的一个拷贝并且同时维护公有数据在数据总线上的流通,使得每个PPU上的数据得到同步,每个VPPU运行一个粒子群,则一个PPU就形成一个群岛,PPU内有多少个并行的VPPU,这个群岛就由多少岛屿组成;进而实时数据总线上并行的PPU形成一个双重群岛,实时数据总线上开设了多少个PPU,就有多少个并行的群岛组成一个更大范围的群岛,由于不论是运行在同一个PPU中的VPPU还是不同PPU中的VPPU,均位于同一个实时数据总线之上,维护拥有同一个数据结构的全局实时数据集,所述实时数据总线上的流通是指PPU实时数据总线上建立的网间传递,所述网间是指PPU的全局实时数据集之间的信息交互,由于全网通报具有实时刷新数据集的效果,如果不同的PPU对同一个点均进行通报,会引发信息多重闪现,因此需要PPU对数据集的点进行严格管理,实时数据总线上的流通是并行的,每个PPU在自己的计算循环的进行过程中或者一个计算循环完成后,均独立地向外广播公有数据,同时刷新本地全局实时数据集,亦即其他群岛需要的本岛重要信息如本岛最佳粒子、本岛平均适应度、种群多样性指标被广播到数据总线上为其他群岛接收,而本岛基础信息如粒子坐标、适应度均在本地刷新,双重群岛的任意一级均不专门设置决策中心,故而每个岛屿都是平级的、相互独立的,除了粒子迁徙之外不产生决策信息交流;相对应地,在每个岛内设置一个决策中心,负责群内的信息统计、群内的进化迭代、公有信息发送与接收,所述公有信息包括优化目标的更新、群岛所需要的本岛重要信息、本岛所需要的群岛重要信息。
2.根据权利要求1所述的基于智能群岛并行粒子群方法,其特征在于:所述种群包括导航粒子和飞行粒子,所述飞行粒子分为休眠与唤醒两种状态,所述种群中所有飞行粒子初始唤醒率一致,所述飞行粒子处于休眠状态时该粒子不参与当前阶段的进化过程,所述飞行粒子处于唤醒状态时该粒子参与当前阶段的进化过程,所述种群接受其他种群优秀粒子的迁入时,相同数量的休眠状态飞行粒子被唤醒,加入到飞行粒子的群体,所述种群规模自然生长,所述种群中的平庸粒子超过忍受限度之后将被强制催眠,进入休眠状态,种群规模自然萎缩,种群中粒子的数量设定了上限与下限,所述种群自然生长超过上限时,即所有的休眠粒子均被唤醒时,不再增加粒子群规模,所述种群萎缩到下限时,不再进行粒子的强制催眠。
3.根据权利要求1所述的基于智能群岛并行粒子群方法,其特征在于:所述优秀粒子是指每个种群中适应度最高的粒子的集合,所述优秀粒子的迁徙是指这些粒子在其他种群内得到复制,使得其他种群获得了优秀粒子,所述平庸粒子是指每个种群中适应度低于整个岛群平均适应度的粒子,所述平庸粒子连续适应度下降,则粒子将被强制催眠。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110506886.7A CN113238484B (zh) | 2021-05-10 | 2021-05-10 | 基于智能群岛并行粒子群方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110506886.7A CN113238484B (zh) | 2021-05-10 | 2021-05-10 | 基于智能群岛并行粒子群方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113238484A CN113238484A (zh) | 2021-08-10 |
CN113238484B true CN113238484B (zh) | 2023-01-03 |
Family
ID=77133014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110506886.7A Active CN113238484B (zh) | 2021-05-10 | 2021-05-10 | 基于智能群岛并行粒子群方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113238484B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625534B (zh) * | 2022-03-01 | 2024-04-09 | 航天科工智能运筹与信息安全研究院(武汉)有限公司 | 基于灵活配置实现性能提优的复杂算力系统并行处理系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807900A (zh) * | 2010-03-10 | 2010-08-18 | 北京航空航天大学 | 基于并行遗传重采样的粒子滤波技术 |
CN101819651A (zh) * | 2010-04-16 | 2010-09-01 | 浙江大学 | 粒子群算法在多机上并行执行的方法 |
CN106951957A (zh) * | 2016-09-21 | 2017-07-14 | 常州信息职业技术学院 | 粒子群优化算法、多计算机并行处理方法及系统 |
CN111427690A (zh) * | 2020-03-25 | 2020-07-17 | 杭州意能电力技术有限公司 | 分散处理单元并行计算方法 |
-
2021
- 2021-05-10 CN CN202110506886.7A patent/CN113238484B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807900A (zh) * | 2010-03-10 | 2010-08-18 | 北京航空航天大学 | 基于并行遗传重采样的粒子滤波技术 |
CN101819651A (zh) * | 2010-04-16 | 2010-09-01 | 浙江大学 | 粒子群算法在多机上并行执行的方法 |
CN106951957A (zh) * | 2016-09-21 | 2017-07-14 | 常州信息职业技术学院 | 粒子群优化算法、多计算机并行处理方法及系统 |
CN111427690A (zh) * | 2020-03-25 | 2020-07-17 | 杭州意能电力技术有限公司 | 分散处理单元并行计算方法 |
Non-Patent Citations (8)
Title |
---|
Enhancing evolutionary multifactorial optimization based on particle swarm optimization;Tian Xie 等;《2016 IEEE Congress on Evolutionary Computation》;20161121;全文 * |
Performance Evaluation of Parallel Particle Swarm Optimization for Multicore Environment;Eman Abdulaziz Abdullah 等;《2018 International Conference on Advanced Science and Engineering》;20181129;全文 * |
Three parameter Weibull distribution estimation based on particle swarm optimization;Zhen Li 等;《2018 13th IEEE Conference on Industrial Electronics and Applications》;20180628;全文 * |
Two New Parallel Algorithms Based on QPSO;Yuxia Qian 等;《Applied Mechanics and Materials》;20150331;全文 * |
基于GPU的群智能算法研究与实现;韩文成;《中国优秀硕士学位论文全文数据库信息科技辑》;20190815;全文 * |
基于双层多目标粒子群优化算法的输变电工程立项决策研究;刘志清 等;《电网与清洁能源》;20170925;第33卷(第09期);全文 * |
基于岛屿群体模型的并行粒子群优化算法;黄芳等;《控制与决策》;20060228(第02期);全文 * |
水电站水库优化调度的改进粒子群算法;张双虎等;《水力发电学报》;20070225(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113238484A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110231976B (zh) | 一种基于负载预测的边缘计算平台容器部署方法及系统 | |
CN103729248B (zh) | 一种基于缓存感知的确定待迁移任务的方法和装置 | |
CN102207891B (zh) | 对数据划分分布式环境实现动态划分和负载均衡的方法 | |
CN101458634B (zh) | 负载均衡调度方法和装置 | |
Ouyang et al. | Importance-different charging scheduling based on matroid theory for wireless rechargeable sensor networks | |
CN114356543A (zh) | 一种基于Kubernetes的多租户机器学习任务资源调度方法 | |
CN108519917A (zh) | 一种资源池分配方法和装置 | |
CN103080903A (zh) | 调度器、多核处理器系统以及调度方法 | |
CN103699433B (zh) | 一种于Hadoop平台中动态调整任务数目的方法及系统 | |
CN113238484B (zh) | 基于智能群岛并行粒子群方法 | |
CN111404818B (zh) | 一种面向通用多核网络处理器的路由协议优化方法 | |
CN110647398A (zh) | 一种面向边缘计算的基于任务关键度和时效性的交叉口控制任务调度方法 | |
CN111858033A (zh) | 基于集群和多进程的负载均衡方法 | |
CN115629865B (zh) | 一种基于边缘计算的深度学习推理任务调度方法 | |
CN112559122B (zh) | 一种基于电力专用安防设备的虚拟化实例管控方法及系统 | |
CN111309488A (zh) | 无人机集群的计算资源共享方法与系统及计算机存储介质 | |
CN117955985B (zh) | 一种基于并行计算的节点压力寻优方法 | |
Geng et al. | Accelerating distributed machine learning by smart parameter server | |
CN113360245A (zh) | 基于移动云计算深度强化学习的物联网设备任务下载方法 | |
CN116663639A (zh) | 一种梯度数据同步方法、系统、装置及介质 | |
CN115967433A (zh) | 一种基于动态时变性的卫星边缘计算卸载方法和装置 | |
CN115118666A (zh) | 一种负载重新分配方法及装置 | |
CN114675963A (zh) | 光伏5g基站系统中基于设备优先级的多任务处理方法 | |
CN114595052A (zh) | 一种基于图分割算法的分布式通信负载均衡方法 | |
CN113448707A (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 |