我想用变量 x[i][j][k] 对问题建模。
参考手册中没有提到如何创建大小大于 1 维的变量。
我想用变量 x[i][j][k] 对问题建模。
参考手册中没有提到如何创建大小大于 1 维的变量。
此片段显示了在 [0,1] 中创建三个索引连续变量 x、x[i][j][t] 的示例:
IloNumVar[][][] x = new IloNumVar[numNodes][numNodes][numDays];
for(int i = 0; i < numNodes; i++)
{
for(int j = 0; j < numNodes; j++)
{
//cplex is an instance of class IloCplex
x[i][j] = cplex.numVarArray(numDays, 0, 1);
}
}
多维建模非常常规。
此外,IBM 的“使用 IBM ILOG CPLEX CP Optimizer 建模 – 实际调度示例”实际上是一个非常好的起点。它有许多多维示例,尽管大多数与 OPL 中的示例一样,但您不必使用这些示例。
而且,这是一个使用二维的完整示例。 具体来说,变量 nutrPerFood 具有 i 和 j 作为维度。
// nutrPerFood[i][j] nutrition amount of nutrient i in food j
double[][] nutrPerFood;
你打电话时使用它IloMPModeler
本教程对熟悉各种 Ilog 调用也很有帮助。
希望有帮助。