【问题标题】:Unexpected forall syntax error意外的 forall 语法错误
【发布时间】:2017-05-23 09:55:58
【问题描述】:

所以我想运行这段代码:

constraint ctMachine[Machine];
subject to{
forall(i in Machine)
  forall (k in Week)
  ctMachine[i]: sum(j in Product)
    ResourceConsumption[i][j] * Units[j][k]  <= Capacity[i];

但如果我这样做,我会得到 ctMachine[1] 已分配的错误,这是有道理的。所以我尝试将第二个 for 循环放在 sum 函数之后,如下所示:

constraint ctMachine[Machine];
subject to{


forall(i in Machine)
  ctMachine[i]: sum(j in Product)
  forall(k in Week)
    ResourceConsumption[i][j] * Units[j][k]  <= Capacity[i];

但随后我收到语法错误,出乎意料。但那我该怎么办。我需要所有 k 的约束。我对线性规划和 OPL 相当陌生,所以我现在不知道如何解决这个问题。顺便说一句,我不能只删除约束标签,因为我也需要它。

【问题讨论】:

    标签: linear-programming cplex opl


    【解决方案1】:

    我会删除

    约束 ctMachine[机器];

    然后写

    forall(i 在机器中)
    ct机: 总和(产品中的 j)
    sum(k in Week) 资源消耗[i][j] * 单位[j][k]

    问候

    【讨论】:

      猜你喜欢
      • 2018-08-03
      • 1970-01-01
      • 2011-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-12
      • 2011-10-16
      • 2013-10-12
      相关资源
      最近更新 更多