有关系时的优化:连同其他约束

Optimisation when there are ties: Along with other constraints

我已经成功地使用 R 中的 glpk 插件构建了一个优化模型(最小化),当我的成本矩阵中没有联系时它工作正常。但是,在我的真实数据集中,我在我的成本矩阵中有联系,我想在这种情况下应用 condition/constraint。因此,我想应用的约束是,如果成本矩阵中存在联系,则选择该产品质量高的供应商。如果有人能指出我如何处理这种情况,我将不胜感激。这是我目前编写的代码的 link

这是我的脚本 https://github.com/karthikkommalapati/optimization_contract_bidding_allocation/blob/master/functions.R

所以,如果 cost/score 相同,则使用最大分数矩阵,谁拥有最大分数,谁就中奖。

一种方法如下:

  1. 以最小成本解决问题 objective。假设这有成本 CBEST
  2. 给问题加一个约束:总成本=CBEST
  3. 以最高质量解决问题 objective。

在实现这个时,我通常将两个 objective 都添加到模型中(作为约束)。所以第一个模型变成:

  min cost
  cost = cost equation
  quality  = quality equation
  other constraints

求解此模型并将 objective 记录为 CBEST。现在将可变成本固定为 CBEST(例如,通过将成本上限设置为 CBEST)。现在解决:

  max quality
  cost = cost equation
  quality  = quality equation
  other constraints
  cost <= CBEST

请注意,我们只更改了两件事:(1) objective 和 (2) 成本限制。

第二种模式的解决方案给了你想要的。