問題タブ [gams-math]
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.
modeling - GAMS と AMPL 代数モデリング言語の比較
GAMS と AMPL のユーザーから、それぞれの言語の長所と短所について意見を聞きたいです。
syntax - x(i,j) で $ を使用するにはどうすればよいですか - GAMS
私はこれを試してみましたが、うまくいかず、そのようなエラーが発生しました。
式 ST3(i$(ord(i) LE (5) および ord(i) GE (1)),k$(ord(k) LE (19) および ord(k) GE (1)));
* * $10,185 $195,96
ST3(i$(ord(i) LE (5) および ord(i) GE (1)),k$(ord(k) LE (19) および ord(k) GE (1))) ..
* * $148,8 $36 $409
IN(i,k) + sum(j, X(j,k+1)*p(i,j)) + W(i,k+1) - W(i,k) - sum(j, X( j,k)*p(i+1,j)) - IN(i+1,k) =E=0;
8 ')' が必要です
10 ',' が必要です
36 '=' または '..' または ':=' または '$=' 演算子はステートメントの残りを無視する必要があります
96 識別子とテキストの間に必要な空白 (-または- 識別子に不正な文字) (-または- 前の行に「;」がないかチェック)
148 ディメンションが異なります - シンボルは、宣言されているよりも多い/少ないインデックスで参照されています
185 セット識別子または '*' が必要です
195 シンボルが別のタイプで再定義されました
409 認識できないアイテム - 「;」を探して新しいステートメントを見つけるためにスキップします またはやり直すためのキーワード
これらのコード部分を修正するにはどうすればよいですか?
matrix - GAMS、行列直接代入
GAMS で 3D テーブルに値を代入したいと考えています。しかし、Matlabのようには機能しないようです.....運がいいですか?コードは次のとおりで、問題は最後の数行にあります。
recursion - GAMSでパラメータを再帰的に定義する方法は?
自然な再帰関係を持つパラメーターのセットを定義する必要があります。
これは、一連の (9 つの) パラメータ S に対して階乗関数を定義しようとする MWE です。
"delta1" は、1 だけ異なるソート順の要素のペアを含む関係です。論理的には、f の定義は階乗関数の定義と一致します (入力 1 から 9 の場合) が、GAMS は f が気に入らないようです。再帰的に定義されます。GAMS コンパイルの出力は次のようになります。
質問:
GAMS でパラメーターを再帰的に定義することは可能ですか? そうでない場合、回避策は何ですか?
(PS十分な担当者がいる人は、タグ「GAMS」を作成して、この質問に追加する必要があります。)
modeling - 方程式の書き方
これらの方程式を書きたい:
SUM関数を使用する必要があることは知っていますが、正確にはわかりませんが、変換できません。方程式のセクションにどのように記述できますか? ここに私のコードの一部があります:
loops - GAMSのループ内にループを書く方法
Var1
決定論的モデルがあり、2つのパラメーターを変更するたびにモデルを数回実行して、Var2
それらが結果にどのように影響するかを確認したいと思います。モデルを次のように要約できます。
ここで、x、yは変数、var1、z1、var2、およびz2はパラメーターです。var1に10の異なる値を、var2に10の異なる値を試して、結果を取得したいと思います。
そのための最善の方法を教えてください。
c++ - c++ をゲーム ソフトウェアにリンクする
createprocess() 関数を使用して c++ を GAMS ソフトウェアにリンクしたいと考えています。このコードを使用しましたが、GAMS ソフトウェアを開くだけです。GAMS ソフトウェアを開いた後、プログラムが file.gms を自動的に実行するようにします。
私を助けてください。本当にありがとう。
linux - GAMS、Linuxシェルで標準出力をファイルに保存する方法は?
GAMS 実行プロセスの標準出力をファイルに保存するにはどうすればよいですか? .lst ファイルは非常に大きいので、ソリューション プロセスだけが必要です。
cplex - IISレポートを理解するGAMS CPLEX
CPLEX オプティマイザーで GAMS を使用しています。CPLEX オプティマイザー内にはオプション「iis」があり、これにより、還元不可能で一貫性のない一連の制約が生成されます。iis オプションを 1 (または 0 以外に設定したと思いますが、0 と 1 でしかテストしていません) に設定すると、iis 方程式と変数が一覧表示されます。
しかし、私の問題は、このリストが有用な、または簡単に消費できる方法で提供されていないことです。IIS の一部である方程式セット内の特定の方程式をリストする代わりに、この方程式が見つかるコード内の行をリストします。しかし、線は GAMS 自体によって生成されたものであり、この形で理解することは実用的でもユーザーフレンドリーでもありません。
たとえば、一連の行を含む iis レポートを受け取りました。各行は次のようになります:
=E 'upper: ' 445793 ' < 7432.
しかし、意味不明
なことを次のように、よりユーザーフレンドリーなものに変換できることを私は知っています
: しかし、この使いやすい形式を複製することはできないようです。
GAMSのサポートに問い合わせたのですが、対応が遅いのでこちらのコミュニティにお願いしようと思いました。
ありがとうございました!