发布于 2021-11-07 01:53:39
我认为你们两种选择的答案都是否定的。
首先,No:differential_evolution()不会自动重新调整参数值,使其具有类似的数量级。
第二,不:你不应该撤销这些值。
基本上,对于某些方法(例如,leastsq)来说,重新计算是很重要的,因为算法构造并使用了包含所有变量的导数矩阵。如果存在广泛变化的尺度,则矩阵的操纵在数值上是不稳定的。
差分进化不使用这种衍生物(即使它们会有帮助,因此它的缓慢程度令人难以置信)。因此,它不会有这个问题。
尽管如此,从数值计算的稳定性角度来看,我建议反对一些变量的尺度为1.e-12,而其他变量的尺度是1e12。如果您知道标度在1e-6到1e6之外,请重新排列。
https://stackoverflow.com/questions/69864034
复制相似问题