关于在CPLEX中输入数据



我有两个文件,一个用于数据,另一个用于代码。我在代码文件中定义了几个Tuple,当我试图在数据文件中输入数据时,我收到了一个错误,指出变量P已经定义。P是在代码文件中定义的,但是我必须在数据文件中输入值。

在模型(.mod)中,为了告诉数据将在。dat中,您应该使用…

例如,zoodat.mod

int nbKids=...;
float costBus40=...;
float costBus30=...;

dvar int+ nbBus40;
dvar int+ nbBus30;

minimize
costBus40*nbBus40  +nbBus30*costBus30;

subject to
{
40*nbBus40+nbBus30*30>=nbKids;
} 
execute DISPLAY_After_SOLVE
{
writeln("The minimum cost is ",cplex.getObjValue());
writeln("We will use ",nbBus40," 40 seats buses and ",nbBus30," 30 seats buses ");
}

和zoodat.dat

nbKids=300;
costBus40=500;
costBus30=400; 

和关于你的评论

mod

int Numofpaths=1;
tuple path{string origin;string nodeA;string nodeB; string nodeC;string destination;} ;
path paths[1..Numofpaths]=...;

.dat

paths=[<"A","B","C","D","E">];

正常工作

最新更新