2) 算法步骤
a) 随机产生初始种群,个体数目一定,每个个体表示为染色体的基因编码
b) 对目标函数值作变换,计算个体的适应度,并判断是否符合优化准则,若符合,输出最佳个体及其代表的最优解,并结束计算,否则转向c)
c) 依据适应度选择再生个体,适应度的个体被选中的概率高,适应度低得个体可能被淘汰
d) 按照交叉概率和双切点交叉方法,生成新的个体
e) 按照一定的变异概率和变异方法,生成新的个体
f) 由交叉和变异产生新一代的种群,返回到b)
3) 算法的matlab实现
在matlab中编程实现的动态线性标定适应值的遗传算法函数为:DblGEGA
功能:用双切点遗传算法求解一文无约束优化问题
调用格式:[xv,fv]=DblGEGA(fitness,a,b,NP,NG,Pc,Pm,eps)
%fitness:待优化的目标函数
%a:自变量下界
%b:自变量上界
%NP:种群大小
%NG:最大进化代数
%Pc:杂交概率
%Pm:变异概率
%eps:自变量离散精度
%xv:目标函数取最小值时的自变量值
%fv:目标函数的最小值本文来自辣%文,论'文.网,毕业论文 www.751com.cn 加7位QQ324~9114找原文
2.7多变异位自适应遗传算法
1) 算法原理
顾名思义,多变异位自适应遗传算法就是在自适应遗传算法中引入多位变异,以增加种群的多样性,多变异位是将自变量的二进制表示的多个位取反。
2) 算法步骤
a) 随机产生初始种群,个体数目一定,每个个体表示为染色体的基因编码
b) 对目标函数值作变换,计算个体的适应度,并判断是否符合优化准则,若符合,输出最佳个体及其代表的最优解,并结束计算,否则转向c)
c) 依据适应度选择再生个体,适应度的个体被选中的概率高,适应度低得个体可能被淘汰
d) 按照一定的交叉概率和交叉方法,生成新的个体
e) 通过自适应方法产生变异概率,如果群体最大适应值等于最小适应值,则只产生一个变异位,否则随机产生变异位的个数,再随机产生每次变异的位置,然后对选中个体进行变异
f) 由交叉和变异产生新一代的种群,返回到b)
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页