在遗传算法的运行过程中,存在着对其性能产生重大影响的一组参数。这组参数在初始阶段或群体进化过程中需要合理的选择和控制,以使遗传算法以最佳的搜索轨迹达到最优解。主要参数包括染色体位串长度L,群体规模n,杂交概率pc,变异概率pm以及终止代数T。许多学者进行了大量实验研究,给出了最优参数建议(De Jong,Grefenstette,Schaffer)。
(1)位串长度L:位串长度L的选择取决于特定问题解的精度。要求的精度越高,位串越长,但需要更多的计算时间。为提高运算效率,变长度位串或者在当前所达到的较小可行性域内重新编码,是一种可行的方法,并显示了良好性能。
(2)群体规模n:大群体含有较多模式,为遗传算法提供了足够的模式采样容量,可以改进遗传算法搜索的质量,防止成熟前收敛。但大群体增加了个体适应性评价的计算量,从而使收敛速度降低。一般情况下专家建议n=20~200。
(3)杂交概率pc:杂交概率控制着杂交算子的应用频率,在每一代新的群体中,需要对pc×n个个体的染色体结构进行杂交操作。杂交概率越高,群体中新结构的引入越快,已获得的优良基因结构的丢失速度也相应升高。而杂交概率太低则可能导致搜索阻滞。一般取pc=0.6~1.00。(www.xing528.com)
(4)变异概率pm:变异操作是保持群体多样性的有效手段,杂交结束后,交配池中的全部个体位串上的每位基因按差异率pm随机改变,因此每代中大约发生pm×n×L次变异。变异概率太小,可能使某些基因位过早丢失的信息无法恢复;而变异概率过高,则遗传搜索将变成随机搜索。一般pm=0.005~0.01。
(5)终止代数T:终止代数T是表示遗传算法运行结束条件的一个参数,T表示遗传算法运行到指定的进化代数之后就停止运行,并将当前群体中的最佳个体作为所求解的问题的最优解输出。一般建议的取范围是100~1000。至于遗传算法的终止条件,还可以利用某种判定准则,当判定出群体已经进化成熟且不再有进化的趋势,就可以终止算法的运行。
实际上,上述参数与问题的类型有着直接的关系。问题的目标函数越复杂,参数选择就越困难。从理论上来讲,不存在一组适用于所有问题的最佳参数值,随着问题特征的变化,有效参数的差异往往非常显著。如何设定遗传算法的控制参数以使遗传算法的性能得到改善,还需要结合实际问题深入研究,以及有赖于遗传算法理论研究的新进展。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。