问题标签 [opl]
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.
constraint-programming - CP - OPL 切片输入数组
我想我需要一些关于 OPL 语言的帮助:/ 我的代码如下:
我想要做的是从Modes
仅包含元组的 opId 字段的结构中提取 m 个一维数组。每个test[m]
数组都必须包含它对应的元素:即元组md
where的 opId 字段md.mch =m
。
我从上面的代码中得到的错误是“Cannot use type int[] for int”。似乎上述函数的右侧返回了一个整数,但我在想all()
运算符是我可以用来完成这项工作的那个。
提前致谢
cplex - 写最大函数
我想在 OPL 中编写一个最小函数。
我希望 Q6 应该等于 and 的最小值Max_Rema*Dem[p]
,sum(m in M)Q4[m][n]
其中Max_Rema
andDem[p]
是参数。这个怎么写?
cplex - 在 CPLEX 中求和
我想在 IBM cplex 中划分两个 dvar cplex :
我得到
函数 operator/(dvar float+,dvar float+) 在上下文 CPLEX 中不可用
如何解决这个问题?
variables - 过滤 dvar 并在约束中使用
如何按特定标准过滤 dvar 数组并将此结果存储在 dexpr 数组中,以便稍后在约束中使用?我必须这样做,因为我必须评估比较索引 n 和 nk 的某些条件,其中 dvar [n] 和 dvar [nk] 不为零。
我正在使用 Ilog Cplex 社区版的第 12 版。
cplex - 在 .dat 文件中输入数据
我正在解决一个多周期问题。有 6 个客户和 3 个期间。客户的需求在excel中写成如下:
我在 .dat 中写了如下内容: Dem from SheetRead(sheet,"Data!B3:D8");
它给出了一个错误
cplex - CPLEX 中的“索引超出范围”错误
在以下代码中,我无法运行我的程序,并且每次都会弹出错误“IBM ILOG Concert 异常:IloIntRangeI::getValue(IloInt index): index is out of bound”。
我写的代码片段如下
如果我写“y elem_y[nx][1..3]”而不是“y elem_y[nx][1..L]”,程序运行得非常好。如何消除此错误,因为在大型程序的情况下我总是不知道 L 的值。
optimization - 即使代码没有错误,我也无法模拟 CPLEX 模型
我对我正在尝试编写的 CPLEX 代码有一些疑问。代码本身(模型)似乎写得很好,但是在填充数据时出现错误。注意:模型中没有任何限制,因为我试图对模型进行试验只是为了看看它是否有效。
这是代码:
这是数据:
*注意:在旅行时间之前的弧的每个间隙(最后一个间隙值=5)必须是来自出发节点、到达节点和起始节点的数据,但它没有显示,我不知道为什么*
另一个疑问:关于模型的约束,我不知道如何将它们写入 CPLEX。
1)开始时间<=到达时间<=结束时间//(对于每个到达节点)
2) x * (到达时间 (节点 i) + 旅行时间) <= 到达时间 (节点 j)
3)将每辆卡车的变量到达时间初始化为0。(在模拟开始时)
4)每个到达节点的需求必须等于(选择的弧线*卡车容量)的总和
太感谢了。
mysql - 将 CPLEX OPL 模型与 MySQL DB 连接
我想在 CPLEX OPL 模型中使用来自外部 MySQL 数据库的数据。
据我了解,这应该可以通过 OPL 的DBConnection和 ODBC 实现。对于连接字符串的构造,我找到了这个信息。
现在我开始了一个测试项目'test.mod':
和'test.dat':
目前,我收到 DBConnection 行的此错误:“数据解析错误:语法错误,意外(标识符),期待来自或到。”
现在我想知道是否有可能连接 CPLEX/OPL 和 MySQL?或者,如果我可能缺少启用 ODBC 的内容,或者我的连接字符串语法不正确。
cplex - 在 OPL 中定义嵌套集
我需要定义一组由一组元组组成的元组
可以代表我的问题的另一种方式是一组集合(一组链接)。唯一成功的试验是定义一组元组,每个元组都有一组字符串,但我需要将其扩展到一组元组。在OPL中可以吗?
cplex - 从 OPL CPLEX 中的表格初始化 2D 元组数组
我在 OPL CPLEX 中创建了一个二维元组数组。我可以直接从 .dat 文件初始化数组,但是当我从 excel 工作表初始化它时,会弹出错误“N:int,a:float with 2 dimension not supported for sheet”。似乎不存在从工作表初始化 2D 元组数组的功能。是这种情况还是我犯了一些错误?另外,还有其他方法可以解决这个问题吗?我附上下面的代码片段。