遗传算法学习笔记(一):常用的选择策略依然传奇

遗传算法(GA)是一种模拟生物进化自然选择过程的非确定性搜索方法,源于达尔文的进化论和孟德尔的遗传定律,由美国 Michigan 大学的 Holland教授在 20 世纪 70 年代首先提出。生物理论指出, 生物个体的各种生命表征是由许多基因共同决定的。同一种群的不同生物个体通常拥有不同的基因,因此对外在环境的适应能力也是不同的。 在自然选择的作用下,一部分环境适应能力较差的个体会死亡被淘汰,而环境适应能力较强的个体则更多地存活下来并繁衍后代, 因此比较适应环境的基因会有较大的概率流传到下一代。 一般情况下子代的平均适应力普遍强于父代。 在基因从父代传递到子代的过程中,一部分基因会因为变异而在子代中产生新的基因,这种变异是随机的,有可能增强子代个体的环境适应力,也有可能会降低子代个体的适应力。  遗传算法正是仿照上述理论,将一个问题的解空间编码,每一个编码代表一个个体,建立一个包含潜在的解的群体作为种群,在环境作用下通过选择(selection)、交叉(crossover)和变异(mutation)一代代繁衍,由于子代的环境适应力一般优于父代,因此算法最终能够得到问题的较优解。其中,编码中的每一位代表一个基因,环境作用由适应度函数模拟,适应度函数是判断某个解的优劣程度的函数,通常是目标函数本身或其修改形式。选择又称为选择算子,是指参照适应值函数,按照预先选定的策略随机从父代中挑选一些个体生存下来,剩下的个体则被淘汰。交叉是指仿照自然界基因传递的过程交配,对存活下来的父代个体的某些基因进行优化组合,办法是将两个父代个体某些对应位置的基因互换,以产生新的个体。变异是指对编码的某些位置上的基因按一定概率进行的改变。

轮盘赌选择法是依据个体的适应度值计算每个个体在子代中出现的概率,并按照此概率随机选择个体构成子代种群。轮盘赌选择策略的出发点是适应度值越好的个体被选择的概率越大。因此,在求解最大化问题的时候,我们可以直接采用适应度值来进行选择。但是在求解最小化问题的时候,我们必须首先将问题的适应度函数进行转换,以将问题转化为最大化问题。下面给出最大化问题求解中遗传算法轮盘赌选择策略的一般步骤:

(1)  将种群中个体的适应度值叠加,得到总适应度值==1 ,其中 为种群中个体个数。

(2)  每个个体的适应度值除以总适应度值得到个体被选择的概率

(3)  计算个体的累积概率以构造一个轮盘。

(4)  轮盘选择:产生一个[0,1]区间内的随机数,若该随机数小于或等于个体的累积概率且大于个体1的累积概率,选择个体进入子代种群。

重复步骤(4)次,得到的个体构成新一代种群。

像轮盘赌一样计算选择概率,只是在随机遍历选择法中等距离的选择体,设npoint为需要选择的个体数目,等距离的选择个体,选择指针的距离是1/npoint,第一个指针的位置由[0,1/npoint]的均匀随机数决定。

锦标赛方法选择策略每次从种群中取出一定数量个体,然后选择其中最好的一个进入子代种群。重复该操作,直到新的种群规模达到原来的种群规模。具体的操作步骤如下:

(1) 确定每次选择的个体数量(本文以占种群中个体个数的百分比表示)。

(2) 从种群中随机选择个个体(每个个体入选概率相同) 构成组,根据每个个体的适应度值,选择其中适应度值最好的个体进入子代种群。

(3) 重复步骤(2)次,得到的个体构成新一代种群。

需要注意的是,锦标赛选择策略每次是从个个体中选择最好的个体进入子代种群,因此可以通用于最大化问题和最小化问题,不像轮盘赌选择策略那样,在求解最小化问题的时候还需要将适应度值进行转换。

[1]遗传算法:理论、应用及软件实现/王小平, 曹立明著 西安交通大学出版社,2002

[2]张琛,詹志辉. 遗传算法选择策略比较[J]. 计算机工程与设计,2009,23:5471-5474+5478

THE END
0.新闻8点见丨四川泸定6.8级地震已造成雅安市34人遇难|石棉县|四川地震2022年全国体操锦标赛于9月4日至9日在杭州黄龙体育馆举办。张博恒在6日决赛的自由体操项目率先出场,凭借出色发挥逐步扩大分差,最终以总分174.900分夺得冠军。这是张博恒第一次夺得成年组全国比赛的全能冠军。(新华社) 新帅上任 国安战平浙江 9月6日,中超联赛第16轮比赛,北京国安队在主场日照国际足球中心2:2战平浙jvzquC41yy}/3?80eqs0f‚4ctvodnn4JIN?TGTW2738E5_O0jvsm
1.全国大学生龙舟锦标赛为什么选择山东聊城?首页头条全国大学生龙舟锦标赛为什么选择山东聊城? 大众网·海报新闻记者 侯晓 杨潇潇 刘哲忠 实习记者 李雪阳 聊城报道 恰同学少年,挥桨竞渡;赏全国赛事,百舸争流。 最近一段时间的东昌湖可以说热闹非凡,处处洋溢着饱满的青春气息。原来,这里正上演着一场精彩绝伦的全国性的体育赛事——第九届全国大学生龙舟锦标赛。jvzquC41nkgpeqjpi0j{y€|0eqs0u‚yv146339<1v46339<47a>94@9520nuo
2.魔兽世界wlk银色锦标赛快捷功能汇总WA6、银色锦标赛交任务时自动选择钱包 如果你需要选择文书作为战利品,需要将动作代码中的GetQuestReward(2);改成GetQuestReward(1); 7、自动打开包裹,包括: [39883] = true, -- 裂开的卵 [44751] = true, -- 海德尼尔礼品 [45724] = true, -- 冠军的钱包 jvzquC41qn44fvlcog4dqv4in1917;750jznn
3.世界板球锦标赛3中文版手游下载世界板球锦标赛3中文版是一款受欢迎的板球竞技游戏,拥有非常自由的竞技玩法,玩家自由创建角色来操控,随时开启激烈的板球比赛,还拥有各种板球赛事的加入,自由组建各种板球队伍来参加困难且刺激的考验,轻松提升实力和技巧来战胜对手,自由获得更多的冠军和胜利,还拥有各种任务的完成,可以解锁各种板球技能和技巧,轻松获得丰富的奖励,还加入了独 jvzquC41ujuv{xz05fshcvj0eqs0cwitqkj06B=;8;4ivvq
4.世界汽车拉力锦标赛5图文教程攻略分享单机游戏游戏攻略挑战赛:根据在准备界面中的要求来完成赛事。 返回科西嘉:进行线上的锦标赛。 设置菜单 游戏设置-驾驶风格(辅助系统) 刹车辅助:开启或关闭刹车辅助。 稳定辅助:开启或关闭稳定辅助。 车损等级:设置轻微、中等、高度,三种车损等级。 车损效果:选择开启外观损坏或影响操控。 jvzquC41yy}/lk:30pku1ptpin{f1<=:52;`cuq0jvsm
5.锦标赛选择策略详解遗传算法中的锦标赛选择策略每次从种群中取出一定数量个体(放回抽样),然后选择其中最好的一个进入子代种群。重复该操作,直到新的种群规模达到原来的种群规模。几元锦标赛就是一次性在总体中取出几个个体,然后在这些个体中取出最优的个体放入保留到下一代种群的集合中。具体的操作步骤如下: jvzquC41dnuh0lxfp0tfv8}wzktsm8ftvkimg8igvcomu8=257893>
6.NSGA"""选择交叉变异获得新后代:param P: 父代种群:param eta: 变异参数,越大则后代个体越逼近父代:param bound_min: 定义域下限:param bound_max: 定义域上限:param objective_fun: 目标函数:return: 子代种群"""popnum = len(P) # 种群个数Q = []# 二元锦标赛选择for i in range(int(popnum / 2))jvzquC41fjkyz7hp1pkxu8xjqy3639<:5;4ivvq
7.锦标赛选择算法及matlab实现确定每次选择的个体数量N。(二元锦标赛选择即选择2个个体) 从种群中随机选择N个个体(每个个体被选择的概率相同) ,根据每个个体的适应度值,选择其中适应度值最好的个体进入下一代种群。 重复步骤(2)多次(重复次数为种群的大小),直到新的种群规模达到原来的种群规模。 jvzquC41dnuh0lxfp0tfv8kwvwxf3;8781gsvrhng1jfvjnnu1728<5872;
8.用遗传算法优化BP神经网络的初始化参数遗传算法初始化改进可以看到,如果个体的适应度越大,那么它所占的概率空间也就越大,从而被选择的概率也就越大,达到了选择的效果。 锦标赛选择(Tournament Selection): 在每次选择中,随机选择一定数量的个体(称为锦标赛规模),然后从中选择适应度最好的个体作为父代。这种方法对于维护种群的多样性较为有效。jvzquC41dnuh0lxfp0tfv8vsa6<7;=69:1gsvrhng1jfvjnnu1746=;23:<
9.寻找真相,中国的经济增长真的可以用晋升锦标赛假说解释吗?如果存在晋升锦标赛假说成立,且不存在选择偏见,那么β应该显著大于0。 2. 实证结果 图2 回归结果 说明:1-3列为线性概率模型回归结果;4-6列为逻辑回归结果;7-9列为有序逻辑回归结果。 根据回归结果,可以得出如下基本结论: 1)在上述9个模型中,β均为负且不显著,由此说明经济增长和晋升之间没有显著的相关性; jvzquC41dnuh0>6evq4dqv4wa3;17@=771879;984