scipy.optimize からの difference_evolution を使用して、関数のグローバル最小値を見つけようとしています。scipy リファレンス ガイドで説明されているように、オプションで設定する必要があります: updates='deferred',workers=number of cores
ただし、コードを実行すると、フリーズして何もしません。この問題を解決するにはどうすればよいですか、またはグローバル オプティマイザーを並列化するためのより良い方法はありますか?
以下は私のコードです:
scipy.optimize.differential_evolution(objective, bnds, args=(),
strategy='best1bin', maxiter=1e6,
popsize=15, tol=0.01, mutation=(0.5, 1),
recombination=0.7, seed=None,
callback=None, disp=False, polish=True,
init='latinhypercube', atol=0,
updating='deferred',workers=2)