【发布时间】:2016-06-13 07:08:29
【问题描述】:
我在使用 IloRange 编写约束时遇到问题。没有编译错误但代码没有运行。
在代码中,ad_sales.u_j[j] 是一个变量,而 demand[j] 和 lambda[j] 是参数。我用于 ILoRange 的语法是 ilorange(env, lower bound, variable, upper bound)。
我需要找到一组约束的对偶,这就是我切换到 IloRange 的原因。如果我使用以下命令而不是 Ilorange,则代码运行良好。
for(IloInt j=0; j<data.n; j++)
model_ad.add(ad_sales.u_j[j] <= demand[j]*lambda[j]);
但以下不起作用:
IloRangeArray cons(env, data.n);
for(IloInt j=0; j<data.n; j++)
{
cons.add(IloRange(env, 0, ad_sales.u_j[j],demand[j]*lambda[j]));
//model_ad.add(cons[j]);
}
model_ad.add(cons);
非常感谢您的帮助。
谢谢
【问题讨论】:
标签: c++ constraints cplex