问题标签 [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.
optimization - 如何确定哪些约束或变量边界使 GAMS 模型不可行?
我的 GAMS 模型 (NLP) 中的求解摘要返回以下内容:
我的一个变量的界限是:
如果我将界限更改为:
然后模型收敛并给出以下结果:
事实证明,最终的变量级别是
即使解决方案(0.12)在搜索空间内,GAMS 怎么能确定模型在第一种情况下不可行(上限 = 0.15)?(顺便说一句,我正在使用 ANTIGONE 求解器)
此外,是否有任何有条不紊的方法来确定哪些约束/变量界限导致模型不可行?
为了找到这个(看似不合逻辑的)错误,我不得不花费数小时猜测和检查模型中的任意细节,没有押韵或理由。必须有更好的方法,对吧?
constraints - GAMS:如何制定约束 $x_{a,i,v+1,l} - x_{a,i,v,l} \leq y_{a,i,v,l}$?
我在 GAMS 中制定约束时遇到问题。
我的约束如下:
x_{a,i,v+1,l} - x_{a,i,v,l} \leq y_{a,i,v,l}
和 sum(v,y_{a,i,v,l}) \leq 1。
我曾多次尝试制定它,但我认为(我知道)我做错了。
我在游戏中将其写为:
con15(a,i,v,l)$(ord(v) lt 17).. x(a,i,v,l)$(ord(v) eq ord(v)+1) - x(a, i,v,l) =l= u(a,i,v,l);
con16(a,i,l).. sum(v, u(a,i,v,l)) =l= 1;
一些额外的信息:
我“员工”/i1*i11/
l “天” /l1*l31/
一个“依赖于飞行计划的项目”/a1/
v “小时” /v1*v18/
在约束 con15 中,我说它只适用于小于或等于 17 的 ord(v),这是因为我们有 v1 到 v18。
x 和 y 也是二进制的。
当我运行 GAMS 时,我得到了正常的编译和解决方案。问题是该解决方案违反了我的约束 con16 和 con15。
我使用 ord 和 $ 正确吗?
最好的哈士奇
constraints - 使用 IF 语句进行约束
我正在使用 GAMS 解决网络分布问题,这是我第一次使用 GAMS。我有以下约束(参见图片),我想在游戏中编写但不断出错。尝试使用 IF 语句或任何其他方法来解决它。变量 z 是一个已经声明过的二进制变量。
谢谢!
set - 在 GAMS 中设置条件
我有一组节点 i 并创建了一个别名 (i,j)。现在我有一个参数 c(i,j) 我希望i元素被独特地映射到j 。例如,
set i /a,b,c/ ;
alias (i,j) ;
c(i,j) /#i.#j/ ;
点运算符映射我不想包含的所有元素,例如 aa、bb、cc。如何编写只考虑 ab、ac、bc 的条件?
谢谢
subset - 年度数据的每日子集
我正在尝试根据每小时的分辨率在一年内优化能源生产过程。从电网购买的电价根据一天的两次有两个不同的值;07:00-18:00 价格为 10,18:00-07:00 价格为 5。
时间设置如下:
如何自动创建 P_el,这样直到第 8760 小时才需要手动编写不同的集合?
gams-math - 在 GAMS 中使用 for 循环生成数据
plan
是数据中的矩阵。
如何在GAMS
. 请帮忙。
python - 如何从 GAMS Python API 运行中获取返回码
有没有办法通过在 GAMS Python API 中运行 GamsJob 来获取返回码?意思是,在我执行 job.run() 之后,此执行的返回代码是否存储在我可以访问的某个地方?
python - GAMS 和 Python / 在 Mac 上连接这两者的挑战
尽管我浏览了 GAMS Python API 教程,但在尝试运行 transport.py 时收到以下错误消息。
有人可以在这里帮助我吗?我正在使用 Python 3.6 和 GAMS 24.8。我猜我的系统上没有正确链接 Python 和 GAMS?!
提前致谢!
r - write.fwf 列名不与值对齐
以下代码生成一个表,其列名与其值不对齐:
如何使列名与每列的值对齐(以使表格可以被 GAMS 读取)?
find - GAMS:从解决方案中检索信息
GAMS:我想我有一个非常简单的问题,但是我被卡住了,想知道是否有人可以在这里提供帮助。
我的模型的简化版本如下所示:
p(i,t) 和 e(i,t) 相关:
现在我想从解决方案中检索信息:假设我想知道 te(i,t) 在什么情况下具有特定值,例如 --> e(i,t)= x(i) 或其他公式化的 e(i ,t=TD)=x(i) 找到 TD,因此 x(i) 取决于 i。有谁知道我怎么能把它写到我的 GAMs 模型中?需要明确的是,我不想更改我的解决方案和我运行的模型的任何内容;我只想从给定的解决方案中检索这些信息。
到目前为止,我尝试了几件事,但没有任何效果。我认为这一定很简单,有人可以帮忙吗?谢谢!