cplex c ++音乐会技术中的集合和指数

时间:2016-09-20 11:03:15

标签: c++ cplex

我的配方中有以下几组和指数。我无法在cplex c ++音乐会技术中声明它。我应该将“ Nsd ”视为二维矩阵吗? γ,N(γ)和A(γ)怎么样?感谢任何帮助。

N  = set of nodes

A  = set of arcs

s  Є N  =  index used for  sources

d  Є N  =  index used for  destinations

Nsd  =  set of acceptable paths that connect  s and d.

 γ Є Nsd  = index used for network paths

N(γ)  = set of nodes along path γ

A(γ) = set of arcs along path γ

1 个答案:

答案 0 :(得分:0)

就像@rkersh评论的那样,如果你提供一段代码会更好。在任何情况下,如果我理解正确,你不确定如何声明和使用一组带有2个索引的变量。

如果确实如此,您可以使用以下代码来声明一个适合表示变量的二维矩阵的新类型

typedef IloArray<IloNumVarArray> NumVarMatrix;

然后声明你的变量你可以使用像

这样的东西
NumVarMatrix variable_name(env, number_of_rows);
    for(i = 0; i < number_of_rows; i++)
        variable_name[i] = IloNumVarArray(env, number_of_columns, 0, 1, ILOINT); // ILOINT or any other type that you see fit

我建议您查看cplex附带的示例文件facility.cpp,以便查看完整的工作示例。

cplex附带的许多其他示例非常有助于概述您可以做什么以及如何做。