跳到内容
← 全部问题

链接约束 Xi≤CiYiX_i \le C_i Y_i 如何强制执行开/关生产规则?

链接约束 Xi≤CiYiX_i \le C_i Y_i 通过将容量限制 CiC_i 与二元激活变量 YiY_i 相乘来强制执行开/关生产规则。当机器处于活动状态(Yi=1Y_i=1)时,约束变为 Xi≤CiX_i \le C_i,允许生产达到满容量。当机器处于非活动状态(Yi=0Y_i=0)时,约束变为 Xi≤0X_i \le 0。结合非负性要求 Xi≥0X_i \ge 0,这迫使生产恰好为零。

适用条件

  • XiX_i 是机器 ii 上的生产数量。
  • YiY_i 是机器 ii 的二元激活指示符。
  • CiC_i 是机器 ii 的最大容量。
  • 强制执行 Xi≥0X_i \ge 0。

理解与推导

  1. 从约束 Xi≤CiYiX_i \le C_i Y_i 开始。
  2. 情况 1:假设 Yi=1Y_i = 1(机器活动)。代入得到 Xi≤Ci⋅1X_i \le C_i \cdot 1,即 Xi≤CiX_i \le C_i。
  3. 情况 2:假设 Yi=0Y_i = 0(机器非活动)。代入得到 Xi≤Ci⋅0X_i \le C_i \cdot 0,即 Xi≤0X_i \le 0。
  4. 应用非负性约束 Xi≥0X_i \ge 0。
  5. 得出在情况 2 中,XiX_i 必须为 0 的结论。
  6. 验证约束是否正确建模了逻辑依赖关系。

例子

对于容量为 400 的机器 1,约束是 X1≤400Y1X_1 \le 400Y_1。如果 Y1=1Y_1=1,X1≤400X_1 \le 400。如果 Y1=0Y_1=0,X1≤0X_1 \le 0,并且由于 X1≥0X_1 \ge 0,X1=0X_1=0。

容易误解的地方

  • 认为 YiY_i 仅记录使用情况而不影响生产界限。
  • 认为当 Yi=0Y_i=0 时 XiX_i 可以为负。
  • 假设该约束在没有 XiX_i 的非负性条件下也能起作用。

观看对应讲解

继续追问

答案依据视频资料生成并经过独立核验。若有疑问,请核对原视频或联系原作者。