别是要预先确定好目标函数值为负数时的处理方法。设所求解的问题为:maxfx,x∈D对于求目标函数最小值的优化问题,理论上只需简单地对其增加一个负号就可将其转化为求目标函数最大值的问题,即mi
fxmaxfx当优化问题是求函数最大值,并且目标函数总取正值时,可以直接设定个体的适应度函数值Fx就等于相应的目标函数值
fx,即Fxfx
但实际目标优化问题中的目标函数有正也有负,优化目标有求函数最大值,也有求函数最小值,显然上面两式保证不了所有情况下个体的适应度都是非负数这个要求,必须寻求出一种通用且有效的由目标函数值到适应度之间的转换关系,有它来保证个体适应度总取非负值。为满足适应度取负值的要求基本遗传算法一般采用下面方法将目标函数值fx变换为个体的适应度Fx对于求目标函数最大值的优化方法问题,变换方法为
fxCmi
Fx
0
fxCmi
0时,
fxCmi
≤0时,
式中,Cmi
为一个适当的相对比较小的数,它可以是预先指定的一个较小的数,或进化到当前代为止的最小目标函数值,又或当前代或最近几代群体中的最小目标函数值。(3)基本遗传操作方法①比例选择:选择或称复制,建立在对个体适应度进行评价的基础之上。其作用是从当前群体中选择出一些比较优良的个体,并将其复制到下一代群体中。基本遗传算法采用比例选择的方法,所谓比例选择,是指个体在选择操作中被选中的概率与该个体的适应度大小成正比。②单点交叉:单点交叉又称简单交叉,是遗传算法所使用的交叉操作方法。③基本位变异:基本位变异石最简单和最基本的变异操作,也是基本遗传算法中所使用的变异操作方法。对于基本遗传算法中用二进制编码符号串所表示的个体,对需要进行变异
f操作的某一基因,若原有基因值为0,则变异操作将该基因值变为1;反之,若原有基因值为1,则变异操作将其变为0(4)基本遗传算法的运行参数执行基本遗传算法时,有4个参数需要事先指定。它们是群体的大小M、交叉概率pc、变异概率pm及终止的代数T①群体大小M群体的大小M表示群体中所含个体的数量。当M取值较小时,可提高遗传算法的运算速度,但却降低了群体的多样性,有可能会引起遗传算法的早熟现象;而当M取值较大时,又会使得遗传算法的运行效率偏低。一般建议范围是20100交叉概率pc。交叉操作室遗传算法产生新个体的主要方法,所以交叉概率一般应取较大值。但若取值过大的话,它又会破坏群体活动的r