fgoalattain如何迭代的

基本遗传算法有三个基本参数:1. 茭叉因子2.变异因子,3.种群数量一个目标函数,一个停止条件

这三个基本参数、停止条件和目标函数影响着迭代效率和最后求出的最优解;

三个基本参数的设置直接影响着求出的解是局部最优还是全局最优;

停止条件的设置直接影响迭代次数以及最终解的精度;

如果停止條件没有则可能进入死循环永远迭代,三个基本参数和目标函数设置的不好会导致求出的解不是最优解,

一般迭代次数是通过试出来嘚如下图

算法在迭代15次之后,适应度函数基本没有变化了或者说算法已经收敛,为了减少计算时间算法里就可以把停止迭代次数设為一个大于15的值。

遗传算法还可以通过适应度函数来控制迭代次数也就是你的优化目标。比如你想要误差值少于0.01时的解那么你就可以設置为当目标函数小于0.01时,停止迭代(PS:建议设置为连续多次目标值小于0.01时再取消避免陷入局部最优)。

此外还可以设置为收敛之后,就停止迭代但是这种方式有可能会满足不了你的要求,比如要求为0.01那么当0.02时收敛了,那么就很可能满足不了要求不过这个可以通過设置交叉和变异参数进行一定的规避。

目前没有通用研究能够证明迭代一定次数后得到的结果一定是你想要的最优解,只能通过设置停止条件使你想要的

}

我要回帖

更多关于 多次迭代 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信