我当前正在从事的项目需要对功能进行优化。
为了使优化过程在查找全局最小值方面更加可靠,我想对可以预先指定的每个变量使用几个初始猜测。
在下文中,我将初始猜测的列表(ipp_term,ipp_ci,i_risky_w)随机化,以展示初始猜测的列表。 我想将这些清单输入为种子(第13行)。
upper_term = max(term)
upper_ci = max(ci)
ipp_term = np.random.uniform(0,upper_term,30)
ipp_ci = np.random.uniform(0,upper_ci,30)
i_risky_w = np.random.uniform(0,1,30)
bds = [(0,1), (0,upper_term), (0,upper_ci)]
scipy.optimize.differential_evolution(
optInsInv_opt, bounds = bds, strategy='best1bin', maxiter=None,
popsize=1, tol=0.00001, mutation=(0.5, 1), recombination=0.7,
**seed=[i_risky_w, ipp_term, ipp_ci, i_risky_w],**
callback=None, disp=True, polish=True, init='latinhypercube')
从文档中我了解到有两种初始化填充参数的方法,但据我了解,它们也是随机生成的!
有人知道如何更改scipy.optimize.differential_evolution包,以便我可以使用自己的初始猜测列表,或者可以告诉我另一个具有类似算法的库吗?
感谢您的帮助!