問題タブ [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.
matlab - 非線形最小二乗ミカエリス・メンテン パラメーター推定に Matlab を使用する方法
一連の測定値があり、線形近似を作成し始めました (このプロットのように)。パラメーターの線形最小二乗推定と、V_{max}
MatlabK_{m}
のこのコードから:
これにより、問題なく見えるフィット感が得られます。次に、同じことをしたかったのですが、非線形最小二乗法を使用しました。ただし、フィットは常に間違っているように見えます。その試みのコードは次のとおりです。
これは、M-ファイルでこの関数を必要とします:
コードを実行すると、私の問題が表示されます。しかし、うまくいけば、私とは異なり、私が間違っていることがわかります。
python-2.7 - Pythonで3つの非線形方程式を解く方法
解決する必要がある次の 3 つの非線形方程式のシステムがあります。
-xyt + HF = 0
-2xzt + 4yzt - xyt + 4z^2t - M1F = 0
-2xt + 2yt + 4zt - 1 = 0
ここで、x、HF、および M1F は既知のパラメーターです。したがって、y、z、および t は計算されるパラメーターです。
問題の解決を試みます。
しかし、問題は、使用したい場合はscipy.optimize.fsolve
、最初の推測を入力する必要があるということです。私の場合、初期条件はありません。
Pythonで3つの未知数を持つ3つの非線形方程式を解く別の方法はありますか?
編集:
私には条件があることがわかりました!条件は、HF > M1F、HF > 0、および M1F > 0 です。
python-2.7 - Pythonでscipy.optimizeを使用した初期推測
pythonを使用してコーディングするには、次の問題があります。
x、y、z、t、HF、M1F、M2F の 7 つのパラメータがあります。ユーザーはこれら 3 つのいずれかを入力する必要があり、プログラムは残りを計算する必要があります。
私が持っている関係は次のとおりです。
問題の解決を試みます。
7 つのパラメーターがあり、ユーザーは 3 を入力する必要があります => 4 つのパラメーターが残ります。つまり、4 つの未知数を持つ 4 つの非線形方程式系を解くことがすべてです。
scipy.optimize
非線形方程式系を解くために使用できるオンラインを読みました。しかし、私は最初の推測が必要です。
問題の物理に戻ると、次の初期条件があります。
を使用して問題を解決できるように、これらの初期条件はどのように初期推定を得るのに役立ちますscipy.optimize
か?
r - 任意の制約を伴う R での最適化
Excel で実行しましたが、R で適切なシミュレーションを実行する必要があります。
F(x)
関数(x
はベクトル) を最小化する必要がありますがsum(x)=1
、すべての値が でx
あり[0,1]
、別の関数であるという制約がありますG(x) > G_0
。
optim
とで試してみましたconstrOptim
。それらのどれもあなたにこのオプションを与えません。
python - openopt と scipy を使用して動的制約のある非線形最適化システムを解く際のエラー
動的 ( h(x, x', u) = 0 ) 制約 を受ける非線形最適制御問題を解こうとしています。
f
(x) = (u(t) - u(0)(t))^2 # u0(t) は、システムに提供される初期入力
h(x) = y'(t) - 積分(sqrt (u(t))*y(t) + y(t)) = 0 # 非線形微分方程式
-2 < y(t) < 10 # システム状態はこの範囲に限定される
-2 < u(t) < 10 # システム状態はこの範囲に制限されます
u0(t) # 任意の区分線形関数として定義されます
openopt と scipy を使用して、問題を Python コードに変換しようとしました。
問題は、 y0 = 10のように正の初期値 y0 でコードを実行すると、満足のいく結果が得られることです。しかし、y0 = 0または負のy0 = -1を与えると
、nlp 問題は不足し、次のように
述べます 。区分的
線形の初期 u0 で、関数 at の最初の範囲に 0 以外の数値を入力すると、次のよう
になります
。
何か案は ?
前もって感謝します。t < 3
u0 = np.piecewise(t, [t < 3, and_(3 <= t, t < 6), 6 <= t], [2, lambda t: t - 3, lambda t: -t + 9])
u0 = np.piecewise(t, [t < 3, and_(3 <= t, t < 6), 6 <= t], [0, lambda t: t - 3, lambda t: -t + 9])