锦标赛选择(Tournament Selection)

每次从种群中取一定数量(n)的个体(放回抽样),选择其中适应度较好的进入子代种群。重复该操作直到种群规模到和原来的种群规模一样。几元锦标赛就代表一次性从总体中抽取几个个体,然后从中选择最优的个体保留到下一代种群。

步骤如下:

  1. 确定每次选择的个体数量N。(二元锦标赛选择即选择2个个体)

  2. 从种群中随机选择N个个体(每个个体被选择的概率相同) ,根据每个个体的适应度值,选择其中适应度值最好的个体进入下一代种群。

  3. 重复步骤(2)多次(重复次数为种群的大小),直到新的种群规模达到原来的种群规模。

优点:

  1. 更小的复杂度,无需对所有适应度进行排序处理
  2. 不易陷入局部最优点
  3. 易于并行化处理

代码如下:

% Tournament 本次使用二元锦标赛选择,即每次选择两个个体
clear
clc% 设置种群大小为10,其适应度值Fit,使用随机函数生成,取值范围[0,1]
Fit = rand(10,1)
% 选择的个体索引
Sel = [];for i = 1:length(Fit)% 随机选择两个个体temp = randi(10,1,2);    % 比较这两个个体的适应度值大小,选择大的if Fit(temp(1)) >= Fit(temp(2))Sel(i) = temp(1);elseSel(i) = temp(2);end
endSel = Sel'

结果分析:

Fit =0.31030.32890.27670.38930.28000.46010.37390.40230.41710.6204
Sel =77410968379

选择最多的是第7个个体,其适应度值为 0.3739。

与轮盘赌选择结果不一样~~

锦标赛选择算法及 matlab 实现相关推荐

  1. 2018-4-8蚁群算法---包子阳《智能优化算法以及Matlab实现》第五章

    资料来源: <智能优化算法以及matlab实现>包子阳  余继周 编著 第五章-----蚁群算法 是一种元启发式优化算法(自己理解:就是作为群体的单位个体也就是元,在里面充当着随机的选择搜 ...

  2. matlab整定串级pid,PID算法在Matlab串级控制中的应用

    PID算法在Matlab串级控制中的应用 自114 1112002039 陈艳 前言:这个专题是由王娟老师给我们授课,我感觉收获挺大的,尤其是matlab仿真软件的使用,为我以后的实验课打下良好的基础 ...

  3. 文本分类中的特征词选择算法系列科普(前言AND 一)

    (转载请注明出处,作者:finallyliuyu) 前言: 经了解,园子里有很多已经工作,但是对信息检索和自然语言处理感兴趣的同仁,也有很多相关领域的从业者.目前本人正在从事文本特征选择方面的研究.所 ...

  4. matlab的数值计算方法,数值计算方法中的一些常用算法的Matlab源码

    数值计算方法中的一些常用算法的Matlab源码,这些程序都是原创,传上来仅供大家参考,不足之处请大家指正,切勿做其它用途-- 说明:这些程序都是脚本函数,不可直接运行,需要创建函数m文件,保存时文件名 ...

  5. 多目标人工秃鹫优化算法(MATLAB源码分享,智能优化算法) 提出了一种多目标版本的人工秃鹫优化算法(AVOA)

    多目标人工秃鹫优化算法(MATLAB源码分享,智能优化算法) 提出了一种多目标版本的人工秃鹫优化算法(AVOA),用于多目标优化问题. AVOA的灵感来源于非洲秃鹫的生活方式. 档案.网格和领导者选择 ...

  6. 数模算法 — 蒙特卡罗算法及Matlab案例

    本文为博主编写文章,未经博主允许转载,转载请注明出处:https://blog.csdn.net/weixin_42604241/article/details/97382158 蒙特卡罗算法(方法) ...

  7. FA(萤火虫算法)MATLAB源码详细中文注解

    以优化SVM算法的参数c和g为例,对FA(萤火虫算法)MATLAB源码进行了逐行中文注解. 完整程序和示例文件地址:http://download.csdn.net/detail/u013337691 ...

  8. NSGA3算法及其MATLAB版本实现(转载)

    wayjj的博客 "NSGA3算法及其MATLAB版本实现" https://blog.csdn.net/wayjj/article/details/78954506 一丶NSGA ...

  9. KNN算法的matlab学习日志123

    KNN算法的matlab学习日志123 K邻近算法--普通的方法入门级通用 本质原理是样本集中的数据与其所属分类存在的对应关系. 首先,了解下K-近邻算法的一般流程: 1.收集数据 2.准备数据 3. ...

最新文章

  1. Android模拟器emulator-arm.exe出现错误
  2. 160 - 3 Afkayas.2
  3. java自适应table_Java 设置Word中的表格自适应的3种方式
  4. 包r语言_R语言入门之寻找你的R包
  5. vs2005部署报表服务器项目老提示输入用户名密码解决办法
  6. 数据操纵:SELECT, INSERT, UPDATE, DELETE
  7. 嵌入式系——软件管理工程
  8. 互联网卫星地图服务比较
  9. 算法导论随笔(十四):NP完全性之P问题、NP问题、NPC问题和NP难问题
  10. dbeaver(下载、安装图文过程)
  11. 闹剧还是情有可原?联想撤回科创板上市申请后,股价大跌13%
  12. 苹果cms V10搭建教程 教你如何使用苹果cms搭建一款电影/影视网站【第一节】
  13. 关于移动端音乐没有自动播放的问题
  14. tomcat发布应用报错Error starting child
  15. Linux(12)Debain系统安装远程控制软件
  16. t分布 u分布 卡方分布_f分布t分布与卡方分布
  17. 智能网联交通系统的关键技术与发展
  18. 树莓派摄像头安装教程!超详细!
  19. 游戏资讯 APP,包括四大主要板块【新闻】【视频】【美图】【个人中心(未完成)】
  20. 283、无线网桥的连接方式有哪些?多条宽带如何叠加

热门文章

  1. NYOJ326_Dining(最大流)
  2. 产生唯一的id(idworker工具类)
  3. 做一只展翅翱翔的雄鹰
  4. 新鲜出炉的三维动画应用领域,学3D建模好工作找不完
  5. OSPF的LSA类型 ——连载四ASBR汇总LSA
  6. 十二星座匹配对象_水瓶座最佳配对对象是谁
  7. 采用策略模式实现订单支付多种方式
  8. access字段相加_access如何对一行的几列求和
  9. vba根据列名获取列号 获取总列数 求和
  10. 通过银行卡号获取银行卡所属银行