0
GAMS:我想我有一個非常簡單的問題,但是我被卡住了,想知道是否有人可以在這裏幫忙。GAMS:從解決方案中檢索信息
我的模型的簡化版本是這樣的:
set(i,t) ;
parameter price
D;
variable p(i,t)
e(i,t);
equations
Equation1
obj.. C=sum((i,t), p(i,t)*price);
Model file /all/ ;
Solve file minimizing C using MIP ;
Display C.l;
P(1,t)和E(I,T)的關係:
Equation1 .. e(i,t)=e=e(i,t-1)+p(i,t)*D
現在我想要檢索信息從解決方案:讓我說我想知道在什麼te(我,噸)有一個特定的價值,例如 - > e(i,t)= x(i)或以其他方式表述e(i,t = TD)= x(i)找到TD,其中x(i)因此取決於i。有誰知道我可以如何寫入我的GAM模型?要明確我不想改變我的解決方案和我運行的模型;我只想從給出的解決方案中檢索這些信息。
到目前爲止,我嘗試了一些事情,沒有任何工作。我認爲這一定很簡單,任何人都可以幫忙嗎?謝謝!
感謝你的快速反應和這個工作!我已經嘗試了幾次,以便通過有序集合來實現這一點,但是您的響應最終顯示了正確的方式! – ima
只是最後一個問題:在GDX文件中,t的數字出現在答案的旁邊。但是,當顯示或卸載它時,我最終會看到帶有yes和empty單元格的整個圖表。有沒有辦法只導出T的值而不是整個圖? – ima
T是我的例子中的一個集合,所以它實際上沒有任何價值。所以我不完全確定你的意思是什麼「在GDX文件中t的數量出現在答案旁邊」。但是如果一組中只有一個元素並想從中得到一個數字,那麼可能需要檢查這裏的ord運算符: set tt/t1 * t10/ t(tt)/ t5 /; scalar selectedT; (t(tt),ord(tt));其中, display selectedT; – Lutz