我之前问过我的问题。但是,因为我没有输入我的代码,所以我从来没有得到我的答案。我是 CPLEX 的新手,我需要帮助。我的代码试图解决 ap 中值问题。我创建了一个 OPL 项目,其中包含一个 mod 和一个数据文件。代码是:
//
execute{
var before = new Date();
temp = before.getTime();
}
execute {
var f = new IloOplInputFile("1.csv");
...
}
}
writeln(index);
writeln(weight);
}
float d[...][...];
execute {
var f = new IloOplInputFile("2.csv");
...
}
writeln(d);
}
}
dvar boolean x[...][...];
dvar boolean y[...];
// Objective Function
dvar float obj;
minimize obj;
//Constraints
subject to {
...
}
//Get the runtime in ms
float soltime;
execute{
var after = new Date();
soltime = after.getTime()-temp;
}
...
//Output in a CSV file
execute{
...
var f=new IloOplOutputFile("3.csv");
f.writeln(...);
f.close();
}
这不是一个完整的代码。我只想展示我的代码包含一些执行块并最小化目标函数及其约束。因为我使用大型数据集解决这个问题需要很多时间。我想将此求解时间限制为 1 小时,并尝试更改下限和上限之间的差距。但是当我尝试使用时:
execute PARAMS{
CPLEX.tilim=...
CPLEX.egap=...
}
在我的代码中,没有发生任何事情。我知道我得到了一些答案,比如我需要在流程控制或脚本中做这件事,或者......但我想知道更多细节我应该做什么。我需要修改文件吗?我应该添加一些文件吗?请帮我。