1
私はPythonバインディングでNLoptライブラリを使用しています。無効な引数NLopt
opt = nlopt.opt(nlopt_algorithm, N)
opt.set_max_objective(func_to_maximize)
opt.set_lower_bounds(lower_bounds)
opt.set_upper_bounds(upper_bounds)
opt.set_maxeval(100)
xopt = opt.optimize(x0)
nlopt_algorithm = nlopt.LN_SBPLX
を使用するとうまくいきます。私はnlopt_algorithm = nlopt.GN_DIRECT_L
を使用している場合しかし、それはエラーで失敗します。つまり、なぜ
ValueError: nlopt invalid argument
誰でも知っていますか?いくつかの議論が欠けていますか?
他のグローバル最適化アルゴリズムを試しましたか? GN_DIRECT_LはC言語でうまく動作しますが、正しく覚えていれば、スケーリングされていないバリアントを選択するときに同様のエラーが発生しました。 – Tony
その他のグローバル最適化は失敗します。チェックしてみると、束縛の制約を設定することが問題になるかもしれません。 – DevShark
ありがとう@トニー。これは、私の制約がすべてのパラメータに対して定義されていないためです。 – DevShark