一种合作协同差分进化方法和装置制造方法及图纸

技术编号:21273293 阅读:27 留言:0更新日期:2019-06-06 07:50
本发明专利技术提供了一种合作协同差分进化方法和装置,通过获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群;在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;利用协同机制合并所述低维子种群,获得高维种群的完整解。解决了现有算法不能在有效时间内求解高维优化问题,缺少具有优势的为大规模优化问题进行求解方法的技术问题。达到针对大规模优化问题,利用CC的优势结合云计算分布式计算优势,提出了一种新的基于Spark的合作协同差分进化算法,提高了CC框架的收敛速度,具有求解精度高,速度快,可扩展性好的技术效果。

A Cooperative Cooperative Differential Evolution Method and Device

The invention provides a cooperative cooperative differential evolution method and device, by obtaining high-dimensional problems; by random grouping method, the high-dimensional problems are decomposed into several low-dimensional sub-problems, in which each low-dimensional sub-problem corresponds to a sub-population; at the main control node of cloud platform, each low-dimensional sub-population is distributed by using Spark's elastic distributed data model. Solution; The low-dimensional sub-population is merged by the cooperative mechanism to obtain the complete solution of the high-dimensional population. It solves the problem that the existing algorithms can not solve the high-dimensional optimization problem in effective time, and lacks the technical problems that have the advantage of solving the large-scale optimization problem. In order to solve large-scale optimization problems, a new cooperative differential evolution algorithm based on Spark is proposed, which combines the advantages of CC and distributed computing of cloud computing. This algorithm improves the convergence speed of CC framework, and has high precision, fast speed and good scalability.

【技术实现步骤摘要】
一种合作协同差分进化方法和装置
本专利技术涉及高维优化
,尤其涉及一种合作协同差分进化方法和装置。
技术介绍
差分进化算法(DifferentialEvolution,DE)是一种基于实数编码的全局优化算法,因其简单、高效以及具有全局并行性等特点,近年来已成功应用到工业设计和工程优化等领域。研究人员对DE算法进行了改进和创新并取得了一些成果。比如Brest等人构造了控制参数的自适应性方法并提出了自适应DE算法(jDE)。Wang等人提出了复合DE算法(CoDE),其将精心选择的三种变异策略和三组控制参数按照随机的方法进行组合。这些研究成果主要集中于低维问题(30维),然而当面向高维问题(1000维)时,这些DE算法的性能将急剧下降,而且搜索时间随着维数成指数增长,求解极为困难,“维灾难”问题依然存在。为了有效求解高维优化问题,学者们提出不同的策略,其中具有代表性的是协同进化(CooperativeCoevolution,CC)。研究人员已将CC应用到多个领域,如大规模黑盒优化问题、SCA问题、FII算法、CCPSO算法、DG2算法,然而它们在求解高维优化问题时,采用串行方式求解,因此,问题求解需要较长的计算时间,很难在有效时间内提供满意的解。近年来云计算已应用到大规模信息处理领域中,获得了成功。因此,有必要将云计算的分布式处理能力与CC的优势相结合,为大规模优化问题的求解提供新方法。但本专利技术申请人发现上述现有技术至少存在如下技术问题:现有技术中的算法不能在有效时间内求解高维优化问题,缺少具有优势的为大规模优化问题进行求解的方法的技术问题。专利技术内容本专利技术实施例提供了一种合作协同差分进化方法和装置,解决了现有技术中的算法不能在有效时间内求解高维优化问题,缺少具有优势的为大规模优化问题进行求解的方法的技术问题。鉴于上述问题,提出了本专利技术实施例提供了一种合作协同差分进化方法和装置。第一方面,本专利技术提供了一种合作协同差分进化方法,所述方法包括:获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群;在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;利用协同机制合并所述低维子种群,获得高维种群的完整解。优选的,所述在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解,包括:通过Parallelize方法对所述子种群进行并行初始化;将并行初始化后的子种群采用“键-值”的方式存放在内存中;根据keyi值将子种群分区保存在不同的主控结点上;利用RDD的并行操作算子对各子种群并行进化。优选的,所述利用RDD的并行操作算子对各子种群并行进化,包括:每个分区中的子种群并行执行DE算法的变异、交叉、选择操作,获得第一轮计算的最优个体;所述子种群在计算个体适应度值时,选取第一轮的最优个体合和所述子种群组成完整的种群并进行局部寻优。优选的,所述利用协同机制合并所述低维子种群,获得高维种群的完整解,包括:通过collect算子将并行进化后的各子种群合并生成新种群;获得每个所述低维子问题在所述高维问题的位置信息;按照所述位置信息合并成新种群,并通过全局搜索获得高维种群的完整解。第二方面,本专利技术提供了一种合作协同差分进化装置,所述装置包括:第一获得单元,所述第一获得单元用于获得高维问题;第一求解单元,所述第一求解单元用于在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;第二获取单元,所述第四获取单元用于利用协同机制合并所述低维子种群,获得高维种群的完整解。优选的,所述装置还包括:第一初始化单元,所述第一初始化单元用于通过Parallelize方法对所述子种群进行并行初始化;第一执行单元,所述第一执行单元用于将并行初始化后的子种群采用“键-值”的方式存放在内存中;第一保存单元,所述第一保存单元用于根据keyi值将子种群分区保存在不同的主控结点上;第二执行单元,所述第二执行单元用于利用RDD的并行操作算子对各子种群并行进化。优选的,所述装置还包括:第三获得单元,所述第三获得单元用于每个分区中的子种群并行执行DE算法的变异、交叉、选择操作,获得第一轮计算的最优个体;第三执行单元,所述第三执行单元用于所述子种群在计算个体适应度值时,选取第一轮的最优个体合和所述子种群组成完整的种群并进行局部寻优。优选的,所述装置还包括:第一合并单元,所述第一合并单元用于通过collect算子将并行进化后的各子种群合并生成新种群;第四获得单元,所述第四获得单元用于获得每个所述低维子问题在所述高维问题的位置信息;第四执行单元,所述第四执行单元用于按照所述位置信息合并成新种群,并通过全局搜索获得高维种群的完整解。第三方面,本专利技术提供了一种合作协同差分进化装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群;在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;利用协同机制合并所述低维子种群,获得高维种群的完整解。第四方面,本专利技术提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群;在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;利用协同机制合并所述低维子种群,获得高维种群的完整解。本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:本专利技术实施例提供的一种合作协同差分进化方法和装置,通过获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群,利用CC处理高维问题的优势,对高维问题进行降维处理;再将所述子种群放在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解,实现使CC框架结合云处理,利用云处理的并行性对各子问题进行求解,提高了处理速度;最后利用协同机制将得到的所述低维子种群优化个体进行合并,获得高维种群的完整解,从而实现了有效处理高维大规模优化问题,提高求解速度,避免了处理大规模优化问题时求解计算时间过长的问题,从而解决了现有技术中的算法不能在有效时间内求解高维优化问题,缺少具有优势的为大规模优化问题进行求解的方法的技术问题。达到了针对大规模优化问题,利用CC处理高维问题的优势结合云计算分布式计算优势,提出了一种新的基于Spark的合作协同差分进化算法SparkDECC算法,提高了CC框架的收敛速度,具有求解精度高,速度快,可扩展性好的技术效果。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明图1为本专利技术实施例中一种合作协同差分进化方法的流程示意图;图2为本专利技术本文档来自技高网...

【技术保护点】
1.一种合作协同差分进化方法,其特征在于,所述方法包括:获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群;在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;利用协同机制合并所述低维子种群,获得高维种群的完整解。

【技术特征摘要】
1.一种合作协同差分进化方法,其特征在于,所述方法包括:获得高维问题;通过随机分组方法将所述高维问题分解成多个低维子问题,其中,所述每个低维子问题对应一个子种群;在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解;利用协同机制合并所述低维子种群,获得高维种群的完整解。2.如权利要求1所述的方法,其特征在于,所述在云平台的主控结点上,利用Spark的弹性分布式数据模型,对每个低维子种群进行分布式求解,包括:通过Parallelize方法对所述子种群进行并行初始化;将并行初始化后的子种群采用“键-值”的方式存放在内存中;根据keyi值将子种群分区保存在不同的主控结点上;利用RDD的并行操作算子对各子种群并行进化。3.如权利要求2所述的方法,其特征在于,所述利用RDD的并行操作算子对各子种群并行进化,包括:每个分区中的子种群并行执行DE算法的变异、交叉、选择操作,获得第一轮计算的最优个体;所述子种群在计算个体适应度值时,选取第一轮的最优个体合和所述子种群组成完整的种群并进行局部寻优。4.如权利要求1所述的方法,其特征在于,所述利用协同机制合并所述低维子种群,获得高维种群的完整解,包括:通过collect算子将并行进化后的各子种群合并生成新种群;获得每个所述低维子问题在所述高维问题的位置信息;按照所述位置信息合并成新种群,并通过全局搜索...

【专利技术属性】
技术研发人员:杨天若张顺利谭旭杰冯君
申请(专利权)人:华中科技大学鄂州工业技术研究院华中科技大学
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1