元素方法约束编程的困难

时间:2016-07-21 18:55:42

标签: optimization cplex constraint-programming ilog

我很难设法如何建模约束。我正在尝试解决运输问题,其中一个限制因素如下:

t[s[i]] >= t[i] + travelTime (i, s[i])

其中t是访问节点i的时间,s是节点i的后继变量(t和s是变量)。

我还有旅行时间矩阵:

int time = travelTime(int origin, int destination) 

定义节点对之间的传播时间。 我已将约束定义如下:

for (int i : set){
  IloIntExpr expr = model.linearIntExpr();
  expr = model.sum(model.element(t, s[i]), model.prod(t[i], -1));
  IloIntExpr next = model.element(range(0, nbNodes), s[i]);
  model.addGe(expr, travelTime(i, next));
}

***范围函数生成[0,1, ... ,nbNodes][size(s) = size(t) = nbNodes]

现在问题是next正在返回IloIntExpr,我希望int将其传递给travelTime(int, int),而且IloIntExpr也不会施法者int。 什么可以解决我的问题。 我非常感谢这方面的任何帮助。

0 个答案:

没有答案