问题标签 [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.

0 投票
1 回答
86 浏览

debugging - 在游戏中写 sum 并不适用于集合的所有成员

我想在游戏中这样写总和:设置 s/A,B,C/R(machinery,food) 。. . machine_product..sum(目的地,x(machinery,A,Destination))=e=0

但是程序给了我错误,因为 A 和机器没有设置,它们是集合的成员我怎么能写这个

0 投票
1 回答
76 浏览

gams-math - GAMS中的sum+sum方程问题

我定义了以下等式来计算系统消耗的总功率的总和:

TotalPower.. systemPower =e= sum(J,P(J)) + sum(I,CP(I));

但是,变量 systemPower 只得到第二个总和的结果,而不是两者!。P(J)的声明如下:

P.LO(I)=0;

P.up(I)=100;

Pl('i1')=2;

Pl('i2')=3;

拜托,谁能解释为什么我得到一个总和的结果?我该怎么做才能两者兼得?我也尝试将它们分开为不同的值,但我得到了相同的结果。

先感谢您。

0 投票
1 回答
1117 浏览

excel - 如何使用循环从 GAMS 中的多个 excel 表中导入数据?

我想导入存储在 k excel 表中的三维参数 p(i,j,k) 的数据,但 GAMS 不允许我在循环中使用美元控制语句。有没有办法使用循环或其他流控制语句(如“for”或“while”)来做到这一点?

我需要做这样的事情,但这似乎是不可能的:

0 投票
1 回答
1146 浏览

integer - CPLEX 错误 3019:未能解决 MIP 子问题

我已经在 GAMS 中编写了我的混合整数模型 (MIP),并尝试使用 CPLEX 来解决它。我遇到了这个错误:

CPLEX 错误 3019:未能解决 MIP 子问题

我的 PC 上有 4 个内核和 16 GB RAM。最优性差距设置为 1%。

经过大量搜索,我找到了一些建议(没有解决方案),我都尝试了,但没有运气。每次优化因错误而终止大约需要 30 分钟到 60 分钟。这些是我尝试过的组合:

  1. 我将迭代限制增加到 100 万。错误 3019。
  2. 一些放松“feasoptmode 3”。错误 3019。
  3. 使用“mipemphasis 1”优先考虑可行性而不是最优性。错误 3019。
  4. 使用“subalg 3”更改解决子问题的算法。错误 3019。

然后添加松弛:

  1. “feasopt 1”、“feastoptmode 3”、“mipemphasis 1”。记不清

还添加启发式:

  1. “feasopt 1”、“feastoptmode 3”、“mipemphasis 1”、“fpheur 2”和“userheurfreq 20”。记不清
  2. “feasopt 1”、“feastoptmode 3”、“mipemphasis 1”、“fpheur 2”和“userheurfreq 30”、“subalg 4”。记不清

[更新]另外,

  1. “mipemphasis 1”和“subalg 4”。错误 3019。

  2. “mipemphasis 4”、“subalg 5”和“preind 0”。错误 3019。

  3. “fpheur -1”、“heurfreq -1”、“rinsheur -1”、“preind 0”、“mipemphasis 1”、“mipsearch 1”。错误 3019。(所有启发式方法均已关闭)

到目前为止,我有 250 万个变量。我改变了模型(研究期间),并以两种不同的方式将变量数量减少了一半,同样的错误。

我现在没有想法了。

以下是我使用过的一些链接(由于我在网站上没有足够的积分,所以我不能发布超过两个链接。我放了最重要的):

I. Link1 (IBM):在求解 MIP 时快速找到好的可行解决方案的 CPLEX 策略

二、Link2 (IBM):混合整数程序的 CPLEX 性能调整

0 投票
1 回答
98 浏览

gams-math - 在 GAMS 中跟踪值变化

我有一个名为 Lambda 的变量,我想跟踪这个值在每次迭代中是如何变化的。我在 GAMS 中使用了动态集,并定义了以下变量:

test1.l(S)=(trackvalue.l(S-1)+trackvalue.l(S))/trackvalue.l(S);

我不能在循环中使用它,任何人都可以帮助我将结果放入一个变量中吗?或者任何人都可以给我一些提示如何应用它?

先感谢您

0 投票
1 回答
51 浏览

gams-math - GAMS 中决策变量和方程的声明

在我的功率控制优化问题中,我只有功率向量 P(I) 作为决策变量。但是,它涉及到 SINR 和系统总功率的计算,因此,我的问题是:我是否需要将 SINR 和系统总功率声明为变量,因为它们包括 P(I) 或者仅将 P(I) 放入变量和系统会根据它改变一切吗?

先感谢您。

0 投票
1 回答
1366 浏览

gams-math - 在 GAMS 美元中使用变量

我有一个 GAMS 代码,我想要一个 if 语句。我已经阅读了有关美元状况的信息,我认为它可以帮助我。阅读GAMS 用户指南,它说:

美元条件

本节介绍美元运算符,它是 GAMS 最强大的功能之一。美元运算符以逻辑条件运行。术语 $(condition) 可以读作“使得条件有效”,其中条件是逻辑条件。

注意: 美元逻辑条件不能包含变量。但是,允许使用可变属性(如 .l 和 .m)。

美元运算符用于对条件赋值、表达式和方程进行建模。以下小节提供了一个示例,将阐明其用法。下一节将分别讨论使用美元条件对条件赋值、表达式和方程进行建模的主题。

我已经在我的代码中尝试过,但我仍然发现总是同样的错误:

*** C:\route\Filename.gms 中的错误 53

不允许内生$操作

这是我的实际代码:

(如果变量大于或等于另一个变量,我想将其值更改为 0)。我也尝试过 .l 属性:

但随后出现下一个错误(仅在 .l 定义中)

*** C:\route\Filename.gms 中的错误 8

')' 预期的

请问,有人可以帮忙吗?

提前致谢!!

0 投票
1 回答
330 浏览

python - 在执行 py 文件时遇到模块导入错误

请帮我解决这个问题,出现以下错误,

回溯(最后一次调用):文件“abdm.py”,第 9 行,从 core.api 导入 rest_api 文件“D:\Mydev\Development\abdm\core\api.py”,第 3 行,从核心导入数据、任务

这是代码和目录路径

目录路径:

  • abdm
      • 初始化.py
      • api.py
    • abdm.py

我正在使用 Python 3.5。任何帮助,将不胜感激。

这是跟踪:

0 投票
1 回答
336 浏览

r - 循环 GAMS 优化模型进行迭代

我在 GAMS 中编写了一个调度模型,通过最小化系统成本进行优化。我想循环运行模型;运行优化,保存输出,改变单个参数(storageCap)——每次迭代将其增加一小部分,然后再次运行模型。GDXRRW 似乎无法在 R v.3.3.1 上运行——“你头发上的虫子”。

0 投票
1 回答
296 浏览

arrays - 在 GAMS 中将二维数组转换为一维数组

我在游戏中有一个二维数组,我想将其转换为一维数组。

即我有

现在我想要类似的东西:

通过遍历所有行和所有列并写出值,上述数组的所有元素都应该成为 one_dim_array 的元素。

我试过了:

但是,GAMS 似乎不理解这个 n%index% 符号并返回一个错误,它不是一个集合。有什么办法可以规避这个?

非常感谢!