gpt4 book ai didi

python - matlab 的 fminsearch 的 numpy/scipy 模拟

转载 作者:太空狗 更新时间:2023-10-29 16:53:06 26 4
gpt4 key购买 nike

我正在使用 numpy 将一些 Matlab 代码转换为 python .一切都很顺利,但最近我遇到了 fminsearch功能。

所以,简而言之:有没有一种简单的方法可以在 python 中制作这样的东西:

banana = @(x)100*(x(2)-x(1)^2)^2+(1-x(1))^2;
[x,fval] = fminsearch(banana,[-1.2, 1])

这将返回

x = 1.0000    1.0000
fval = 8.1777e-010

到目前为止,我还没有发现任何在 numpy 中看起来相似的东西。我发现唯一相似的是 scipy.optimize.fmin .基于它的定义

Minimize a function using the downhill simplex algorithm.

但是现在我找不到用这个函数来写上面提到的Matlab代码

最佳答案

这只是从 Matlab 语法到 Python 语法的直接转换:

import scipy.optimize

banana = lambda x: 100*(x[1]-x[0]**2)**2+(1-x[0])**2
xopt = scipy.optimize.fmin(func=banana, x0=[-1.2,1])

输出:

Optimization terminated successfully.
Current function value: 0.000000
Iterations: 85
Function evaluations: 159
array([ 1.00002202, 1.00004222])

关于python - matlab 的 fminsearch 的 numpy/scipy 模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19070943/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com