0

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

例如,是否可以执行以下操作:

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

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

4

1 回答 1

3

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

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

where不是 OPL 语言的一部分。

于 2014-07-24T17:24:25.337 回答