問題タブ [nonlinear-optimization]

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 に答える
198 参照

z3 - 非線形制約での z3 タイムアウト

非線形の実数演算に z3 を使用すると、タイムアウトの問題が発生します。次のコードは、4 次元超長方形の体積が 50000 を超えており、いくつかの制約も満たしているかどうかを確認するものです。しかし、z3 は 1 分以内に応答できません。速くする方法は?

興味深いことに、">" と "<" の一部を "<=" と ">=" に置き換えると、z3 ソルバーは 2 秒で答えを返すことができます。対応するコードは次のとおりです。なぜこれが起こるのか誰にも分かりますか?

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

solver - スパース線形制約付き非線形最小二乗のソルバー

ヤコビアンが常にスパースであることがわかっている非線形最小二乗問題を解決するためのアルゴリズムまたはソルバーはありますか?ソリューションは次のいずれかで制約されます:

  1. 線形等式制約とボックス制約
  2. 一般的な線形不等式の制約
0 投票する
1 に答える
598 参照

matlab - 変数を Fortran IMSL neqnf 非線形方程式ソルバーに渡すにはどうすればよいですか?

MATLAB プログラムを Fortran に変換する作業を行っています (MATLAB の機能の一部を利用しながら)。IMSL で利用可能なルーチンを利用しようとしています。非線形方程式ソルバー neqnf を提供しますが、サブルーチンがいつ呼び出されるかによって変化する変数を渡す方法を理解できませんでした (たとえば、MATLAB の fsolve でできるように)。たとえば、以下は、neqnf を呼び出す Fortran で記述された MATLAB の mexFunction です。サブルーチン sub には、解くべき連立方程式が含まれています。2 つの線形方程式の係数と切片の変数を neqnf から sub に渡すにはどうすればよいですか?

ありがとう!

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

java - Apache Commons の最適化に関する問題

Apache Commons が提供する Java 最適化ライブラリを使用して、制約付きの非線形 267 次元最適化問題を解決しようとしています。

解読の3日後、これは私が持っているものです:

}

何らかの理由で、optimize.optimize() がヌル ポインター エラーをスローしています。たぶん私はばかげているだけですが、これを機能させる方法がわかりません。

エラーは次のとおりです。

org.apache.commons.math3.optim.nonlinear の org.apache.commons.math3.optim.nonlinear.scalar.noderiv.BOBYQAOptimizer.setup(BOBYQAOptimizer.java:2401) でのスレッド "main" java.lang.NullPointerException での例外.scalar.noderiv.BOBYQAOptimizer.doOptimize(BOBYQAOptimizer.java:236) at org.apache.commons.math3.optim.nonlinear.scalar.noderiv.BOBYQAOptimizer.doOptimize(BOBYQAOptimizer.java:49) at org.apache.commons.math3 .optim.BaseOptimizer.optimize(BaseOptimizer.java:143) org.apache.commons.math3.optim.BaseMultivariateOptimizer.optimize(BaseMultivariateOptimizer.java:66) org.apache.commons.math3.optim.nonlinear.scalar.MultivariateOptimizer .optimize(MultivariateOptimizer.java:64) で Test.Code.optimize2.main(optimize2.java:39)

0 投票する
0 に答える
392 参照

r - neldermead fminsearch R

OBJECTIVE : 既知の行列 A と行列 C があります。C は未知の行列 BC の関数であり、A はほぼ等しいはずです。そのため、見つけたい未知の B を使用して AC を最小化しようとします。これには fminsearch を選択します。

1) 私のコスト関数では、ベクトル B を受け取り、それを使用してコスト関数を計算します。計算されたコスト関数は、ベクトルに変換してベクトルを返す行列です。

2) fminsearch を呼び出す/使用する直前に、B をベクトルとして定義し、B を初期化します (行列を定義し、ベクトルに変換します)。fminsearch を呼び出し、アルゴリズムの開始点として B を送信します。問題は滑らかではなく、不連続です。

5回繰り返した後、エラーが発生しました:

コード フラグメントは次のとおりです。

内部の変数はグローバルであり、実際の値を提供しています:

0 投票する
0 に答える
1439 参照

c# - Solver Foundation Services を使用した非線形最適化

制約のある非線形最適化の問題があります。ソルバー アドインを使用して Microsoft Excel で解決できますが、C# で再現するのに問題があります。

Microsoft Solver Foundation dll をインストールしました

これは、次のコードを適用した例です: http://msdn.microsoft.com/en-us/library/gg261758(v=vs.93).aspx?cs-save-lang=1&cs-lang=csharp#コード スニペット 3

基本的に、私のコードには、RHO と NU という 2 つのパラメーターがあります。二乗和を最小化する最適値を取得する必要があります。RHO には 1 つの値しかなく、NU には 1 つの値しかないので、コードに RHO[s] と NU[s] を入れるのが間違っていることはわかっていますが、それらを RHO と NU に置き換えるとエラーが発生します。

もう 1 つの問題は、この例では、コードが「目標」タイプの「燃料」と呼ばれる 1 つの最適な変数を探すことです。私の場合、最適化する必要がある変数が 2 つあります。

明らかに、プログラムは最後の行で壊れており、「伝播する解決策はありません」と書かれています。

私のコードを修正する方法を知っている人はいますか?? どんな助けでも大歓迎です!

これは私のコードです:

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

algorithm - MATLAB - 方程式系の lsqnonlin

次のようなシステムがあります。

係数 [AO] の値はわかっているので、[x,y] を推定しようとしています (p の値を最小化することによって)。必要に応じて、最初の推測 [x0,y0] があります。

私は、matlab での関数処理にあまり精通していません。これをどのようにプログラムできますか (RLS ソリューションを使用して - lsqnonlin について考えさせられました)。lsqnonlin を使用する必要がありますか?

MATLAB 2010b を使用しています。みんなありがとう。

PS: 時々、追加の方程式 (これら 2 つに似たもの) を使用して、システムを過剰決定します。それでも機能しますか?

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

r - R の非線形最小二乗法 - Heligman Pollard モデル パラメーターに適合する Levenberg Marquardt

コスタキスの紙の解を再現しようとしています。この論文では、de Heligman-Pollard モデルを使用して、要約された死亡表を完全な生命表に拡張します。モデルには、適合する必要がある 8 つのパラメーターがあります。著者は修正された Gauss-Newton アルゴリズムを使用しました。このアルゴリズム (E04FDF) は、コンピュータ プログラムの NAG ライブラリの一部です。Levenberg Marquardt は、同じ一連のパラメーターを生成するべきではありませんか? LM アルゴリズムのコードまたはアプリケーションの何が問題になっていますか?