問題タブ [differential-evolution]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
709 参照

python - 目的関数に名前付きタプル引数がある場合、scipy.optimize.differential_evolution を並行して実行することはできません

モデリング コードをよりきれいにするために、namedtuples を使用してモデル パラメーターを管理しています。SciPy の差分進化の並列化された実装を使用して、モデルをデータに適合させたいのですが、連続してしか機能しません。

のドキュメントでdifferential_evolutionは、並列最適化のために目的関数が「pickleable」でなければならないと規定しています。目的関数の引数で名前付きタプルを使用すると、この要件に違反するようです。モデリング コードがパラメーターを処理する方法を完全に書き直す必要のない回避策はありますか?

簡単な例を以下に示します。

コード:

プログラム出力:

0 投票する
2 に答える
709 参照

python - scipy.optimize difference_evolution は人口サイズの制限を無視しているようです

次のコードを使用して実験を行い、DE を使用してより複雑な問題を最適化する方法の学習を開始します。整数を扱うことができるオプティマイザーが必要です。

popsize を設定すると問題が発生します。予想よりも多くの人口を取得し、それを 0 に設定すると、最初の人口に対して 10 個の要素が取得され、次に他の人口に対して 5 つの要素が取得され、maxiter に到達します。

これは、上記のコードで得られる出力の例です

私が間違っていることを本当に理解していません。少なくとも popsize=0 でエラーが発生すると予想していました。さらに、編集する必要がある初期人口サイズを設定するための他の隠しパラメーターはありますか?

私はまだ初心者です。数週間前に Python を使い始めたので、簡単な説明に本当に感謝しています。

時間を割いて回答してくださった皆さん、どうもありがとうございました。

スティーブ

0 投票する
1 に答える
135 参照

python - Scipy Differential Evolution の初期解の入力

初期解または初期解の行列をScipyライブラリから微分進化関数にフィードする方法を知っている人はいますか?

ドキュメントにはそれが可能かどうかは説明されていませんが、最初のソリューションの実装は珍しいことではありません。Scipy は非常に広く使用されているので、そのような機能を期待しています。