我有一个问题:我试图找到一个函数的最小值,该函数取决于我也想更改的几个参数。让我们举一个简化的例子:
import numpy as np
import scipy.optimize as opt
def f(x, a, b, c):
f = a * x**2 + b * x + c
return f
Run Code Online (Sandbox Code Playgroud)
我想找到使 a、b、c 的不同值集的函数最小化的 x,比如说
a = [-1, 0, 1]
b = [0, 1, 2]
c = [0, 1]
Run Code Online (Sandbox Code Playgroud)
ATM 我有三个嵌套循环和一个最小化:
for p1 in a:
for p2 in b:
for p3 in c:
y = opt.minimize(f, x0=[0, ], args=(p1, p2, p3, ))
print(y)
Run Code Online (Sandbox Code Playgroud)
这对于我正在进行的计算来说确实很慢,但到目前为止我还没有找到更好的方法。那么,有谁知道一种可以让我提高效率的方法或方案吗?