【发布时间】:2018-10-13 15:23:43
【问题描述】:
我是 CPLEX 的新手,我想知道如何使用 OPL 定义像 xijk 这样的决策变量,但仅限于带有下标 i < j 或 i ≠ j 的那些。
代码是这样的
int jobsNum = ...;
int machinesNum = ...;
range jobs = 0..jobsNum-1
range machines = 0..machinesNum-1;
dvar boolean x[jobs][jobs][machines];
x[jobs][jobs][machines]是job i和job j在机器k上的相对处理顺序,但是这样写会引入一些冗余变量,不知道能不能写成这样的
dvar boolean x[i in jobs][j in jobs: j < i][machines];
【问题讨论】:
-
请提供您的代码示例
-
@Federico Navarrete 嗨,我已经编辑了我的问题并提供了一个简单的例子,谢谢!