SPGA算法优化设计-vs2010 mfc打包成安装文件

时间:2024-07-05 16:54:06
【文件属性】:

文件名称:SPGA算法优化设计-vs2010 mfc打包成安装文件

文件大小:1.7MB

文件格式:PDF

更新时间:2024-07-05 16:54:06

大数据

2.1 SPGA算法流程 本文将标准遗传算法的并行性和RDD编程模型 相结合,实现了一种粗粒度的并行遗传算法。算法整 体流程如图2所示。首先是初始化种群,然后具体实 现相应的并行遗传算子,这里只是在Spark上并行实 现了遗传算子,并没有做任何实质改进,所以从这个 角度来看SPGA算法相对标准遗传算法在求解精度上 是没有任何优势的,但是SPGA算法会将整个种群划 分为若干个亚种群,而后在集群所拥有的处理器上独 立进行计算,这可以缩短运行时间,发挥并行算法速 度优势。迁移策略是并行遗传算法跟串行遗传算法 的重要不同之处,这里在亚种群之间采用随机迁移策 略,能够解决遗传算法的局部最优问题。 开始 参数设置和种群初始化 类属1完成适应 度评价和迁徙 类属2完成适应 度评价和迁徙 类属n完成适应 度评价和迁徙 类属1完成遗传操作 和产生下一代群体 类属2完成遗传操作 和产生下一代群体 类属2完成遗传操作 和产生下一代群体 … 并行单 元和并 行计算 步骤 是否满足停止条件 结束 是 图2 流程图 2.2 SPGA算法优化设计 mapPartitions和map是RDD上的两个并行操作 算子,mapPartitions的功能是作用一个函数到RDD的 每一个分片(partition)上,map则是对RDD的每个元素 应用一个函数,两者运算后都返回一个新的RDD。由 于遗传算法的适应度计算及变异过程是一种粗粒度 操作,种群中的个体单独计算互不干扰,所以很容易 想到使用map算子。然而在考虑性能时我们发现, map算子需要为所有的个体都初始化一个测试函数, 在大规模种群时产生了大量不必要的内存和计算开 销 。 为 了 避 免 这 种 冗 余 开 销 ,我 们 考 虑 使 用 mapPartitions算子代替map算子,因为mapPartitios算 ·· 44


网友评论