如何限制CPLEX参数?

时间:2019-06-08 04:20:25

标签: parameters cplex ibm-ilog-opl

我之前问过我的问题。但是,因为我没有输入代码,所以我从没有得到答案。我是CPLEX的新手,需要帮助。我的代码试图解决p中位数问题。我创建了一个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=...
} 

在我的代码下面,什么都没发生。我知道我得到了一些答案,例如我需要在流控制或脚本中执行此操作,或者...但是我想了解更多详细信息我应该确切地做什么。我需要修改文件吗?我应该添加一些文件吗?请帮助我。

0 个答案:

没有答案