您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

最小化具有numpy数组作为参数的python函数

5b51 2022/1/14 8:21:15 python 字数 2684 阅读 525 来源 www.jb51.cc/python

我是python的新手,我有以下问题:我试图最小化一个python函数,它有一个numpy数组作为其参数之一.当我使用scipy.optimize.fmin时,它会将我的数组转换为一个列表(导致函数无法评估).是否有一个优化函数可以接受numpy数组作为函数参数?提前致谢!-MB编辑:这是我正在谈论的一个例子,由@EOL提供:import scipy.opt

概述

我是python的新手,我有以下问题:我试图最小化一个python函数,它有一个numpy数组作为其参数之一.当我使用scipy.optimize.fmin时,它会将我的数组转换为一个列表(导致函数无法评估).是否有一个优化函数可以接受numpy数组作为函数参数?

提前致谢!

-MB

编辑:这是我正在谈论的一个例子,由@EOL提供:

import scipy.optimize as optimize
import numpy as np

def rosen(x):
    print x
    x=x[0]
    """The Rosenbrock function"""
    return sum(100.0*(x[1:]-x[:-1]**2.0)**2.0 + (1-x[:-1])**2.0)
x0 = np.array([[1.3,0.7,0.8,1.9,1.2]])
xopt = optimize.fmin(rosen,x0,xtol=1e-8,disp=True)
#[ 1.3  0.7  0.8  1.9  1.2]
#(note that this used to be a numpy array of length 0,#Now it's "lost" a set of brackets")

import scipy.optimize as optimize
def rosen(x):
    """The Rosenbrock function"""
    return sum(100.0*(x[1:]-x[:-1]**2.0)**2.0 + (1-x[:-1])**2.0)
x0 = [1.3,1.2]
xopt = optimize.fmin(rosen,disp=True)
# Optimization terminated successfully.
#          Current function value: 0.000000
#          Iterations: 339
#          Function evaluations: 571
print(xopt)
# [ 1.  1.  1.  1.  1.]

这有帮助吗?如果没有,您可以修改此示例以显示变成列表的内容吗?

总结

以上是编程之家为你收集整理的最小化具有numpy数组作为参数的python函数全部内容,希望文章能够帮你解决最小化具有numpy数组作为参数的python函数所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶