遗传算法中,锦标赛选择(竞赛选择)是如何作为选择算子的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1228个文字,预计阅读时间需要5分钟。
传承算法,是解决优化问题最常用的算法,也是最早的群智能算法。传承算法主要包括选择、交叉、变异等算子,其中对DNA个体的编码方式分为实数编码和二进制编码等。如今,随着学的深入,传承算法在优化领域中的应用更加广泛。
遗传算法,是最常用的解决优化问题的算法,是最早的群智能算法。遗传算法中主要包括,选择、交叉、变异算子,其中对DNA个体的编码方式分为实数编码和二进制编码等。今日由于学习和工作需要对该算法进行了一些了解,对该算法中常用的竞赛选择方式做如下笔记:
遗传算法中的竞赛选择方式是一种放回抽样,几元竞赛就是一次性在总体中取出几个个体,然后在这些个体中取出最优的个体放入保留到下一代种群的集合中。需要保存多少个体就重复此操作几次。
以下为python2.7写的代码,已经测试过,共两个文件,可以通过修改mycmp.py中的比较函数以适应不同需求。
tournament_selection.py
1 #!/usr/bin/env python2 #encoding:UTF-8
3 import random
4 import numpy as np
5 from mycmp import mycmp
6
7 """
8 锦标赛方式选择, 选择出个体编号
9 indicateValueDict {个体索引号:(Value1, Value2), }
10 key为索引号,从0开始。value为元组,一般不超过两个元素。
本文共计1228个文字,预计阅读时间需要5分钟。
传承算法,是解决优化问题最常用的算法,也是最早的群智能算法。传承算法主要包括选择、交叉、变异等算子,其中对DNA个体的编码方式分为实数编码和二进制编码等。如今,随着学的深入,传承算法在优化领域中的应用更加广泛。
遗传算法,是最常用的解决优化问题的算法,是最早的群智能算法。遗传算法中主要包括,选择、交叉、变异算子,其中对DNA个体的编码方式分为实数编码和二进制编码等。今日由于学习和工作需要对该算法进行了一些了解,对该算法中常用的竞赛选择方式做如下笔记:
遗传算法中的竞赛选择方式是一种放回抽样,几元竞赛就是一次性在总体中取出几个个体,然后在这些个体中取出最优的个体放入保留到下一代种群的集合中。需要保存多少个体就重复此操作几次。
以下为python2.7写的代码,已经测试过,共两个文件,可以通过修改mycmp.py中的比较函数以适应不同需求。
tournament_selection.py
1 #!/usr/bin/env python2 #encoding:UTF-8
3 import random
4 import numpy as np
5 from mycmp import mycmp
6
7 """
8 锦标赛方式选择, 选择出个体编号
9 indicateValueDict {个体索引号:(Value1, Value2), }
10 key为索引号,从0开始。value为元组,一般不超过两个元素。

