问题标签 [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 回答
1368 浏览

gams-math - 如何从 GAMS 的集合中获取一个元素?

我有一个集合
I workers /W1,W2,W3/ 和变量 T(I) 时间 Wi 做他的工作我需要编写一个函数 T1<=T2,所以我需要获取集合 I 的第一个和第二个元素。如何我这样做?这个方程 eq1; eq1 .. T(I('1')) =le= T(I('2')) 不起作用

0 投票
1 回答
78 浏览

r - 下载 CSV_GDX_tools.exe 包

我必须使用 GAMS 和 R 来提取数据,但是我是 R 的新用户,以前从未使用过 GAMS。我需要下载一个名为的包CSV_GDX_tools.exe,但我不知道那是什么......

当我尝试在 R 中安装它时,我收到以下错误消息:

install.packages 中的警告:包“CSV_GDX_tools.exe”不可用(对于 R 版本 3.3.2)

谁能帮助我如何以及在哪里可以下载该软件包?

0 投票
1 回答
463 浏览

math - 我怎样才能在 GAMS 中写出像这个方程这样的循环?

我倾向于在 GAMS 中编写一些代码,其中包含一个排除某些索引的循环,我怎样才能编写一些类似异常的循环?

在这些方程中 u , o 和 v,I1 一起具有不同的索引 j;这个循环怎么写?

0 投票
1 回答
269 浏览

gams-math - 下面的等式是否在 MIP 模型中表示

如标题所述

sum((r,l), Mer.l(e,r) * Mel(e,l)) =e= 0;

我用一个GAMS mip模型解决一个问题,mer(e,r)和mel(e,l)都是二进制变量,如果我没有写.l后缀,编译会Endogenous relational operations require model type "dnlp""报错,但我不是确定上面的方程保持原来的意思是 Mer(e,r) 仍然是一个变量吗?并且它仍然可以随着mip求解过程而改变吗?

0 投票
1 回答
67 浏览

gams-math - 如何约束整数变量超出整数区间

正如标题中提到的,如何使用线性约束来确保整数n在 ( n1 , n2 ) 之外,其中n,n1,n2都是整数,并且区间不是 [ n1 , n2 ]。

我将 GAMS 中的问题表述为

n2 - n1 =l= abs(2*n - n2 - n1)

abs()在 MIP 模型中是不允许的。

谢谢

0 投票
1 回答
65 浏览

indexing - GAMS 索引查询

您好我正在尝试优化一个函数,该函数涉及由集合 L /1*10/ 索引的变量 s(L) 的组件;

我创建了包含偶数的集合 L 的子集 Leven (Leven /2,4,6,8,10/)

我想写下一个方程,它将 s(L) 的偶数分量设置为奇数分量值的两倍。

请问我应该怎么写这样的方程?

我打算把它写成

方程(Leven).. s(Leven) =E= s(Leven-1)*2;

然而,以上是错误的,例如对于 Leven = 4,s(Leven-1) 被解释为 s(2) 而不是 s(3) ..

非常感谢

0 投票
1 回答
65 浏览

mathematical-optimization - 总和的条件范围

我有一个条件,我需要对一组接下来的 5 个元素求和。

我的条件是: sum(neighbor(x)) = 1 wrt x,从 x+1 到 x+5

不幸的是,由于我需要在方程的域中有 x,所以我实际上不允许对 x 求和。

有谁知道如何实现这样的约束?

0 投票
1 回答
654 浏览

gams-math - 如何像在其他语言中使用“break”一样离开 GAMS 循环?

我想知道你们中是否有人知道如何在其他语言中使用诸如“break”之类的命令来退出循环。

0 投票
1 回答
237 浏览

matrix - 包含矩阵幂的方程

我有一个形式为 A^n*b =e= c 的方程,其中 A 是矩阵,b & c 是列向量。

n 是我的模型的固定数字,由常数确定。它很可能有数百个,并且会针对不同的解决方案进行更改。

A 是变量矩阵,b & c 是常数。

如何在游戏中制定 A^n*b =e= c?

可选:导致我这样做的模型是,我有一个带有连接矩阵 con(x,x2) 的图,表示当 x 和 x2 连接时 x 和 x2 之间的连接性。我想计算2个任意节点之间的连接,2个节点x到x2之间的连接是从x到x2的所有路径的连接之和。一条路径的连通性是该路径上所有连接的乘积。有没有更聪明的方法来制定这个约束,这样我就不必做矩阵求幂了?

A 不是对称的或可逆的,而是半正定的。

0 投票
0 回答
112 浏览

gams-math - 什么是 GAMS 中的原始不可行解?

我正在使用 GAMS 解决包含二进制变量的 MILP 问题。但是,解决方案存在问题。令人惊讶的是,我看到解决方案中的一个二进制变量的找到值为“-1”,另一个为“2”。这是不可接受的。我不知道发生了什么。GAMS 给了我信息primal infeasible