为什么我应用matlab自带的遗传算法工具箱求函数最小值,,每次运行结果都不一样?
2个回答
推荐于2017-12-16
展开全部
一样才怪!遗传算法是一种带有随机性的搜索型的求解全局最优解的方法。随机性就是在优化过程中变量的取值是随机变化的,但是这种变化是朝向全局最优的方向随机变化。但是当种群数量足够大,而且进化代数足够多的时候,最优解是具有稳定性的,虽然每次都不一样,但是最优解的变化一般不会很大。
myfun没有给出,这个是ga函数求解的部分设置,通过改变populationsize和generations可以达到获得稳定最优解的目的。变异概率和杂交概率也有一定的影响,在局部收敛的情况下可以增大变异概率等来避免局部最优。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询