GA代码中的细节

时间:2023-03-08 20:55:37

GA-BLX交叉-Gaussion变异 中的代码细节:

我写了一个GA的代码,在2005测试函数上一直不能得到与实验室其他同学类似的数量级的结果。现在参考其他同学的代码,发现至少有如下问题:

1、在交叉和变异的操作后,应对新产生的个体的每一维度有上下界限制;

2、交叉操作,随机在两个个体上进行交叉。若两个个体相同,则没有做实值交叉。之前的代码忽略了这个问题。新修改的代码中,若两个个体相同,则选择下一个个体进行交叉;

3、变异操作后,结果不一定更好。先留下来精英个体nRemain,再轮盘赌选择N-nRemain个个体,进行交叉操作。