我在CPlex中有一个MIP模型。
-
在每次迭代中,我使用不同的。dat文件来解决问题。
-
我将决策变量解值保存在多维数组中,如" array [iteration][I]", " I "是决策变量的索引和迭代表示不同的实例(不同的.dat文件)。
-
我想到达"Array[1][I]"当"iteration = 2"时,它会显示"Array[1][i]= [a IloNumVar]"
main{ for(var datFile in thisOplModel.datFiles) { iteration+=1; var opl = new IloOplModel(def,cplex); var data= new IloOplDataSource(datFile); opl.addDataSource(data); opl.generate(); tempX[iteration]= new Array(); tempY[iteration]= new Array(); for(var i =1; i_node<=node; i ++){ tempX[iteration][i]= new Array(); tempY[iteration][i]= new Array(); if (iteration==1){ cplex.solve() tempX[iteration][i]= opl.X[i]; //When I want to print temp[1][i] values at iteration is equal to 1, it print the values. writeln("tempX: ", tempX[1][i]); } } if (iteration==2){ for(var i_node=1; i_node<=node; i_node++){ //When I am at iteration 2, i want to reach previous iteration values but it brings "[a IloNumVar]" writeln("tempX: ", tempX[1][i]); } } opl.end(); }
}
代替
tempX[iteration][i]= opl.X[i];
I would try
tempX[iteration][i]= opl.X[i].solutionValue;