一、适应度函数的调整
1. 如有5个初始个体,适应度分别为100,0.1,0.2,0.3,0.4,第一个个体几乎是其它的100倍,对于竞争来说过于悬殊。
解决办法:取 ,初始个体适应度变为200,100.1,100.2,100.3,100.4,100.5这样就好很多。
适应度函数变换的作用:
- 维持个体差距,保持竞争。
- 避免差距过大,限制竞争。
2. 适应度函数的变化方法
线性变换 :
指数变换 :
归一化变换:
Boltzmann :
二、 适应度共享
共享函数Sh(dij)为:
则共享适用度为:
其中:
三、交叉概率与变异概率的作用
概率高则保证种群多样性,但收敛性变慢;概率低则容易发生早熟现象,得不到全局最优解。
基于a个父代+b子代共同竞争的模式,加大了竞争力度,也有效避免只用子代进行筛选时有可能破坏掉“父代出现了适应度很高,但后来由于交叉破坏掉其适应度形成劣势子代”现象。
1. 优化交叉概率 为自适应交叉概率&