【问题标题】:How do I reduce the summation of a binary variable Integer Linear Programming如何减少二进制变量整数线性规划的总和
【发布时间】:2019-07-18 23:20:14
【问题描述】:

我正在处理一个优化问题,其中我有一个具有 3 个索引的变量

二进制变量:Viup

整数变量:Xi

我试图施加一个约束,以使执行任务的成本不应超过固定数量(此处为预算),即使该任务由多台机器执行,每个任务的成本也应仅计算一次多次。

我想对 Viup 中的值求和,这样对于 i 的每个值,总和不应超过 1 或可能为 0,这样我就可以形成一个类似的方程

Viup 之和 * Xi

请帮助学习制定 ILP 方程

【问题讨论】:

    标签: optimization mathematical-optimization linear-programming


    【解决方案1】:

    如果我理解正确,您需要知道在所有i 中固定u,p 中的任何一个Viup 是否为1。

    如果您正在执行最小化,一种方法是引入二进制指标变量d_i 和新约束

    sum_i(V_iup)-B*d_i<=0
    

    其中Bsum_i(V_iup) 的常数和上限。现在,如果d_i=1,则sum_i(V_iup)&gt;=0,否则,如果d_i=0,则sum_i(V_iup)=0

    您现在可以将预算总和重写为:

    d_i*X_i<=Budget
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多