我尝试使用scipy.optimize.dual_annealing
来最小化8个参数的函数。搜索空间(由我的bounds
定义)相当广阔,但我知道解决方案接近x0
。因此,在阅读了找到here的文档之后,我决定使用visit
参数的较小值,默认值为2.62,应该在范围(0,3)内。你知道吗
当我使用visit=0.8
时,我得到了一个运行时警告:在log中遇到了无效值,事实上,在源代码中我发现:
self._factor2 = np.exp((4.0 - self._visiting_param) * np.log(self._visiting_param - 1.0))
(第62号法律公告)_退火.py)
(基本上self._visiting_param
被严格地预先赋值为visit
)
所以我想可能文件是错的,访问的范围是(1,3)。你知道吗
当我使用visit=1.2
时,我得到了一个FloatingPointError:在log中遇到了无效值,这是由于
x *= np.exp(-(self._visiting_param - 1.0) * np.log(self._factor6 / factor4) / (3.0 - self._visiting_param))
(第121号法律公告)_退火.py)
其中self._factor6
为负。你知道吗
这是一个真正的错误,一个错误的文档,还是只是我误解了什么?为了在x0附近搜索,visit
参数可以使用哪些值?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐