matlab数学建模-遗传算法基本原理

目录

1.遗传操作

2.选择

3.交叉

4.变异

5.终止条件


1.遗传操作

对群体里的个体,按照环境适应度,施加一定的操作,实现优胜劣汰的进化过程。

可以使得问题一代一代的优化,逼近最优解。

三基本遗传算子:选择、交叉 和 变异。

个体遗传算子的操作在扰动情况下进行,向最优解迁移的规则是随机的,这种随机化操作是高校有向的搜索,而不是传统随机搜索那种无向搜索。

操作效果,与三种遗传算子所取 操作概率、编码方法、群体大小、初始群体和适应度函数的设定密切相关。

2.选择

选择的目的是把优化算子遗传到下一代,或配对交叉产生新的个体再遗传到下一代。

选择操作建立在个体的适应度评价之上。

常用选择算子:适应度比例、随机遍历抽样、局部选择。

3.交叉

交叉是起到核心作用的遗传操作。

把两个父代结构替换重组,生成新个体。通过交叉,搜索能力得到飞速提高。

1)实值重组:离散重组、中间重组、线性重组、扩展线性重组。

2)二进制交叉:单点交叉、多点交叉、均匀交叉、洗牌交叉、缩小代理交叉。

单点交叉:设一个交叉点,交叉点前后的个体的部分互换,生成两个新个体。

A 0101 (交叉点) 000

B 0111  (交叉点) 101

生成C,D

C 0101 101

D 0111 000

4.变异

按个体编码表示方法,分实值变异和二进制变异。

变异算子操作步骤:

1)对所有个体事先设定概率判断是否变异。

2)对变异个体,随机选择变异位进行变异。

变异目的:

1)使遗传算法有局部的搜索能力

2)使遗传算法维持群体多样性,放置出现未成熟收敛。

交叉算子作为主要算子,变异算子因其局部搜索能力是辅助算子,相互配合,所以兼顾全局和局部搜索能力。

相互配合:群体在进化中,线图某个搜索空间或超平面,依靠交叉不能摆脱,通过变异可以帮助摆脱。

相互竞争:交叉形成的积木块,可能被变异破坏,有效配合交叉和变异操作是遗传算法的重要研究内容。

基本变异算子,挑出一个或者几个基因座,对基因值做变动。

1010 变异后 1011

变异率很小,一般取0.001到0.01

5.终止条件

最优个体适应度达到阈值、最优个体或群体的适应度不再上升、迭代次数达到预设次数,算法终止。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值