文档介绍:遗传算法及其MATLAB实现
汇报人:潘敬波
苑嘉伟
李琪
定义
生物学基础
实现步骤
程序实例
工具箱核心函数的用法
应用领域
遗传算法的概念
遗传算法是模拟达尔文生物进化论的自然选择和孟德尔遗传学机理的计算模型;
它是一种搜索的最优解的方法。
遗传算法的生物学原理
生物学指出,自然界的生物的基因对环境的适应度不同,通过自然选择,最终会留下适应度最高的基因;
遗传算法通过用计算机模拟自然选择,根据适应度不同优胜劣汰以求得最优解。
遗传算法的实现步骤
1编码
2解码
3个体适应度评估
4复制
5交配
6突变
7倒位
编码:对自变量的编号
设某一参数的取值范围为(L,U),使用长度为k的二进制编码表示该参数,则它有种不同的编码,该参数编码时的对应关系为
000000000000=0→L
000000000001=1→L+△
000000000010=2→L+2△
……
1**********= -1→U
易知: △=
解码
解码的目的是为了将不直观的二进制数据还原成十进制,并求出对应的自变量的值。设某一个体的二进制编码为
则对应的解码公式为
遗传算法的编码和解码在宏观上对应生物的基因型和表现型,在微观上可以对应DNA的转录和翻译过程。
个体适应度评估
,转换为真实值。
。
,对于极大值问题,适应度可作为目标函数值。
复制
复制运算是根据个体适应度大小决定其下代遗传的可能性,若种群中个体总数为N,个体i的适应度为,则个体i被选中的几率
个体适应度越高,被选取的几率越大,它的遗传基因会在种群中扩散;否则,则会被逐渐淘汰。
交配运算
交配运算就是单点或多点进行交叉的算子。
如
01001011 10010101
01000101 10011011