作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在尝试使用 scipy 优化函数。我对变量有一些限制,从这个链接:http://docs.scipy.org/doc/scipy-0.14.0/reference/tutorial/optimize.html ,看起来 SLSQP 正是我想要的。在他们的示例中,他们对输入的结果有一个明确定义的公式,从中可以找到梯度。我有一个极其令人厌恶的计算密集型函数,它计算电磁场如何从金属壁反弹,这绝不可以用封闭形式表达(我正在使用 MEEP FDTD Python 模拟,如果你感兴趣的话)。 scipy 中是否有内置的等效函数可以为您找到函数的梯度然后进行优化?或者,等效地,scipy 中是否内置了一个函数(任何基本的 python 库都可以),它可以为我找到函数的梯度,然后我可以将其传递到这个优化程序中?任何建议将不胜感激。
最佳答案
由于您无法轻松计算梯度,因此使用无梯度优化算法可能会有所返回。以下是 SciPy 中可用的一些功能的概述:
http://scipy-lectures.github.io/advanced/mathematical_optimization/#gradient-less-methods
还有盆地跳跃算法,该算法与模拟退火类似,但该页面未提及:
http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.basinhopping.html
关于python - 在不显式定义梯度的情况下优化 scipy 中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26739550/
我是一名优秀的程序员,十分优秀!