在R语言中使用多元非线性回归(nls函数)时,经常会遇到“Error in nls 循环次数超过了50这个最大值”问题。
主要原因在于nls中默认的最大迭代次数为50,此时,只需使用nls.control修改最大迭代次数即可。
比如将最大迭代次数修改为1000
适应度越大,解越优。判断是否已得到近似全局最优解的方法就是遗传算法的终止条件。 在最大迭代次数范围内可以选择下列条件之一作为终止条件:
1. 最大适应度值和平均适应度值变化不大、趋于稳定
2. 相邻GAP代种群的距离小于可接受值,参考“蒋勇,李宏.改进NSGA-II终止判断准则[J].计算机仿真.2009. Vol.26 No.2”
kmeans文档中时这样写的:Description
Perform k-means clustering on a data matrix.
Usage
kmeans(x, centers, iter.max = 10, nstart = 1, algorithm = c("Hartigan-Wong", "Lloyd", "Forgy",
"MacQueen"), trace=FALSE)
所以,默认的最大迭代次数是10,当然我们使用的时候自己来设置!一般10、30、50都行吧!
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)