Я новичок в python, и у меня возникла следующая проблема: я пытаюсь свести к минимуму функцию python, у которой в качестве одного из аргументов используется массив numpy Когда я использую scipy.optimize.fmin, он превращает мой массив в список (в результате чего функция не может оценить). Существует ли функция оптимизации, которая принимает числовые массивы в качестве аргументов функции?
Заранее спасибо!
-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")