如何使输出以数组为输入的函数的多个最小值的函数?

时间:2020-06-27 04:17:24

标签: python optimization scipy scipy-optimize scipy-optimize-minimize

a1 = [array] #shape = (m,)
a2 = [array] #shape = (n,)
a  = func(a1,a2) # func returns an array of shape = (n, m)
# a is an array of shape = (n, m)
a_sol = [] # empty list
for i in a1:
    f = lambda x: float(func(np.array(i), np.array(x)))
    res = scipy.optimize.minimize_scalar(f)
    a_sol.append(res)

有没有没有for循环的方法?不是一次传递a1的每个元素,有没有一种方法可以一次找到a1的所有值的最小值,而无需使用for循环?

1 个答案:

答案 0 :(得分:0)

from functools import partial

func1 = partial(func, array1)
scipy.optimize.minimize(func1)

我不明白您对函数返回数组的含义。最小化数组是什么意思?