AMPL で微分方程式を解いた経験のある人はいますか? 私はたくさんグーグルで検索しましたが、適切な結果はありません...
Googleグループで、単純な「手作り」の例を見つけましたが、うまくいきません...
それで、私が見つけたこの例。
次の ODE を検討してください。
x' = -ax + u, x(0) = 0.
ここで、a=0.2 はパラメーターです。x = 0 ~ 9 の状態変数。u = 0 ~ 5 の入力変数。これを AMPL で次のように記述できます (教科書のフォワード オイラーを使用)。
param N := 10; # no. of integration steps
param dt := 0.01; # integration step size
param a := 0.2;
set kset ordered := 0..N;
var x{kset}, >= 0, <= 9;
var u{kset}, >= 0, <= 5;
minimize obj: 0;
subject to
c1{k in 1..N}: (x[k] - x[k-1])/dt = -a*x[k-1] + u[k-1];
option solver ipopt;
solve;
display x, u;
ソリューションは、u と x のゼロを提供します...この行のおかげで不思議ではありません
オブジェクトを最小化: 0;
私が理解している限りでは、代数方程式系として問題を表す必要がありますが、この場合の目標関数は何でしょうか?
それで、誰かが提案や適切な例を教えてもらえますか?
前もって感謝します。