Python 将差分进化与joblib.parallel并行使用
我的目的是并行执行以下代码:Python 将差分进化与joblib.parallel并行使用,python,Python,我的目的是并行执行以下代码: from scipy.optimize import rosen, differential_evolution bounds = [(0,2), (0, 2), (0, 2), (0, 2), (0, 2)] result = differential_evolution(rosen, bounds) print(result) 为此,我正在joblib库中尝试parallel方法。所以 from scipy.optimize import rosen, d
from scipy.optimize import rosen, differential_evolution
bounds = [(0,2), (0, 2), (0, 2), (0, 2), (0, 2)]
result = differential_evolution(rosen, bounds)
print(result)
为此,我正在joblib
库中尝试parallel
方法。所以
from scipy.optimize import rosen, differential_evolution
from joblib import Parallel, delayed
bounds = [(0,2), (0, 2), (0, 2), (0, 2), (0, 2)]
a= Parallel(n_jobs=1)(delayed(differential_evolution)((rosen, bounds)))
print(a)
但不幸的是,它不起作用。在我能理解的几乎所有例子中,它们都有一个变量函数。因此,我发现实现这个差分进化
优化方法来并行最小化Rosenbrock函数非常令人困惑
感谢您的帮助如果您只有一个函数调用,那么它就无法并行化。只有当一个函数被一组不同的参数调用时,才会发生并行化。
differential_evolution
函数具有并行化自身的能力:@TimRoberts感谢您的响应。您的第一条评论帮助我认识到,要使joblib正常工作,您需要几个独立的计算。。。。顺便说一下,对于workers
参数,我在执行时也遇到了一个错误: