《遗传算法原理及应用》笔记—并行遗传算法
2021/9/19 12:05:17
本文主要是介绍《遗传算法原理及应用》笔记—并行遗传算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
五、并行遗传算法
笔者最近在学习遗传算法,希望可以通过笔记对遗传算法做一个简要的介绍与记录。也欢迎小伙伴们一起学习交流。
文章目录
- 五、并行遗传算法
- 5.1 遗传算法的并行化
- 5.1.1 遗传算法并行化的目的
- 5.1.2 遗传算法的并行性分析
- 5.1.3 并行遗传算法的实现方法分类
- 5.1.4 并行遗传算法的硬件支持环境及性能评价
- 5.2 实现并行遗传算法的标准型并行方法
- 5.2.1 标准型并行方法的基本思想
- 5.3 使用并行遗传算法的分解型并行方法
- 5.3.1 分解型并行方法的基本思想
- 5.3.2分解型并行遗传算法的形式化定义与描述
- 5.3.3 子群体信息交换模型
- 5.4 伪并行遗传算法
- 5.4.1 伪并行遗传算法的基本思想
- 5.4.2 伪并行遗传算法描述
- 5.4.3 伪并行遗传算法在多峰值函数全局最优化计算中的应用
- 总结
5.1 遗传算法的并行化
5.1.1 遗传算法并行化的目的
遗传算法的主要目的是 提高遗传算法的运行速度
5.1.2 遗传算法的并行性分析
- 个体适应度评价的并行性
- 整个群体中各个个体适应度评价的并行性
- 子代群体产生过程的并行性
- 基于群体分组的并行性
5.1.3 并行遗传算法的实现方法分类
- 标准并行方法
- 分解型并行方法
5.1.4 并行遗传算法的硬件支持环境及性能评价
- 加速比:
S p = T 1 T p S_p=\frac{T_1}{T_p} Sp=TpT1
5.2 实现并行遗传算法的标准型并行方法
5.2.1 标准型并行方法的基本思想
遗传算法的第一种并行性,即个体适应度评价的并行性,它依赖于所处理的问题。
遗传算法的第二种、第三种并行性,实对群体中各个个体进行遗传操作的并行性。在实现的时候,在一个全局调度,协调机构的作用下,各台处理机分别对各个个体进行适应度评价,并在同步信号的作用下,多个处理机共同参与全部个体在全局存储器中进行的选择、交叉和变异等遗传运算。
5.3 使用并行遗传算法的分解型并行方法
5.3.1 分解型并行方法的基本思想
推荐这种算法。
但是还有如下的几个问题:
- 子群的划分方式
- 粗粒度还是细粒度
- 信息交换方式
- 参加信息交换的对象
- 交换信息的内容
- 交换时间或者频率
- 交换信息量
5.3.2分解型并行遗传算法的形式化定义与描述
并行遗传算法可以形式化地定义一个6元组:
P
G
A
=
(
D
M
M
,
X
,
Z
,
Δ
,
Θ
,
S
G
A
)
PGA=(DMM,X,Z,\Delta,\Theta,SGA)
PGA=(DMM,X,Z,Δ,Θ,SGA)
其中,DMM是实现并行遗传算法的并行机或者局域网中各个处理器
p
i
p_i
pi所组成的集合。X是各处理器信息交换对象所组成的集合
Z是信息交换的内容
Δ
\Delta
Δ是进行信息交换的时间间隔或者频率
Θ
\Theta
Θ 信息交换时的个体替换操作算子
SGA是各处理机上运行的基本遗传算法
5.3.3 子群体信息交换模型
- 踏脚石群体模型
这个模型的各个子群体中所含个体的数量多于1,各个子群体在其处理机上并行独立地运行简单遗传算法,子群体间的信息交换只能在地理上邻接处理机之间进行。 - 岛屿群体模型
也叫粗粒度并行遗传算法。在这个模型中每个处理机上子群体所含的个体数量大于1,各个子群体在其各自的处理机上的并行独立地运行简单遗传算法,并且以随机的时间间隔、在随机选择的处理机之间交换个体信息。 - 邻居群体模型
也叫做 细粒度并行遗传算法。该模型中每个处理机上只分配一个个体,即子群体只由一个个体组成,每个子群体之和与其海明距离为1的“邻居”子群体相互交换信息。
异步并行优化策略就是基于该模型的一个并行遗传算法
5.4 伪并行遗传算法
5.4.1 伪并行遗传算法的基本思想
在简单遗传算法中利用并行遗传算法的思想,将群体划分为一些子群体,个子群体按一定的模式分别进行独立进化,在适当的时候某一些子群体之间交换一些信息。这样就可以维持群体的多样性,从而达到抑制早熟现象的效果。
5.4.2 伪并行遗传算法描述
5.4.3 伪并行遗传算法在多峰值函数全局最优化计算中的应用
总结
这就是并行遗传算法的基本内容了,并行的方法是解决 早熟的一种方式,可以进行提高遗传算法的速度。这篇关于《遗传算法原理及应用》笔记—并行遗传算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现
- 2024-05-30我们小公司,哪像华为一样,用得上IPD(集成产品开发)?