【问题标题】:Sum and conditions in linear programming - Cplex // OPL线性规划中的求和和条件 - Cplex // OPL
【发布时间】:2014-07-24 10:24:37
【问题描述】:

是否有一种简单的方法可以将条件应用于 OPL 中的总和或解决此问题?

例如是否可以做类似的事情:

 forall (i in Factories)
    forall( j in Time)
        Stock[i][j] == sum (i_ in Factories where j-LeadTime[i_][i]>0) (expression)

我发现解决此问题的唯一方法是扩展我的数据集以避免超出范围异常,但在我的情况下这没有任何意义,因此我想在之前的总和中应用一个条件。

【问题讨论】:

  • No LeadTime 不是变量。我没有任何错误,因为我没有使用上面的代码。此代码不正确,因为您不能将 where 或 if 条件用于求和,但我的问题是:有没有办法做到这一点?

标签: mathematical-optimization linear-programming cplex ilog opl


【解决方案1】:

: 运算符是将条件添加到 sum 语句的正确方法。你想要类似下面的东西。

 forall (i in Factories)
    forall( j in Time)
        Stock[i][j] == sum (i_ in Factories : j-LeadTime[i_][i]>0) (expression)

where 不是 OPL 语言的一部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-18
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    • 2019-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多