我正在尝试使用method = 'Anneal'
来最小化功能
我已经在一个名为opts
的字典中使用'lower': 0.0
和'upper': 1.0
来指定边界
我在选项参数中传递了opts
优化工作,我得到了答案
但是,最佳解决方案的值高于我设定的上限
知道我做错了什么吗?应该以任何其他方式设置界限吗?
答案 0 :(得分:0)
如果您需要一个尊重边界规范并且不需要衍生物的优化器:
scipy 包含fmin_cobyla,它支持任何类型的约束,不需要衍生物。它不是全局优化器(但另一方面,我不相信模拟退火也可以保证全局优化)。
NLOpt有一个Python接口,包含更高效的 BOBYQA 算法,用于带有变量边界的非线性优化。