遗传算法和粒子群算法求
解非线性函数最大值问题
遗传算法可以简便求解组合优化问题,具备适应面广泛的特点。
它来源于进化论,即认为优良的基因为基础的模式经过优胜劣汰得以
继承,二较差的基因将被逐步淘汰,最终得到群体大部分个体都具有
优良基因构成的模式,具有很强的环境适应性。下面结合非线性函数
最大值问题,给出求解其最大值的遗传算法步骤。
问题:
4 3 2
max 1/ 4 2 / 3 1/ 2 2 2.4177f x x x x+ + +-= -
遗传算法基本步骤如下:
步骤1 选择二进制编码方式,设定染色体长度
,群体的规模
,
设定交叉概率和变异概率,确定终止准则;
步骤2 给出
个染色体的初始种群
,
,产生
初始解
;
步骤 3 比较
个初始解的值,选取最大的函数值
,令
;
步骤 4 若满足停止规则,则输出当前最优解
,退出计算;否
则,计算选择概率:
1
( ) / ( )
m
i
i
p t i t i
=
=
å
采用轮盘转的仿真方法;
步骤5 通过单点交叉,以0.85 的交叉概率获;
步骤 6 以变异概率 0.1,使得染色体基因突变,取得染色体种群,
令
,返回步骤 3。
评论1