【发布时间】:2018-06-25 11:54:50
【问题描述】:
我可以读取多维数组(例如 excel 中的 3 个维度)。但是将一个 3 维数组从 cplex opl 解决方案写回 excel 似乎是一个问题。有人可以帮忙吗?
【问题讨论】:
-
欢迎来到 SO。照原样,您的问题有点过于宽泛,任何人都无法为您提供帮助。通常的期望是您尝试解决问题,然后向社区展示您迄今为止所做的工作以及您需要帮助解决哪些具体问题。
我可以读取多维数组(例如 excel 中的 3 个维度)。但是将一个 3 维数组从 cplex opl 解决方案写回 excel 似乎是一个问题。有人可以帮忙吗?
【问题讨论】:
诀窍是将数组转换为元组集,然后将 SheetWrite 与该元组集一起使用。
.mod
range A=1..2;
range B=1..3;
range C=1..4;
dvar int X[A][B][C];
subject to
{
forall(a in A,b in B,c in C) X[a][b][c]==a*b*c;
}
tuple someTuple{
int a;
int b;
int c;
int value;
};
{someTuple} someSet = {<i,j,k,X[i][j][k]> | i in A, j in B, k in C};
.dat
SheetConnection sheet("excel.xlsx");
someSet to SheetWrite(sheet,"A1:D24");
【讨论】: