1

这是问题所在。假设我们有 N 个工人和 N 个工作。我们希望为每个工作分配一个工人。对于每个工人 i,他可以以一定的成本做一些工作。我们的目标是在任何单个成本应小于某个值的情况下最小化总成本。

例如,10 个工人和 10 个工作。工人 1 可以用 0.8 美元完成工作 1,用 2.3 美元完成工作 2,用 15.8 美元完成工作 3,用 100 美元完成工作 4 到 8,用 3.2 美元完成工作 9,用 15.3 美元完成工作 10。

工人 2 可以用 3.5 美元完成工作 1,用 2.3 美元完成工作 2,用 4.6 美元完成工作 3,用 17 美元完成工作 4,等等。

我们的目标是找到匹配项,或者我们可以将其称为分配,以使总成本最小化,但工作 i 和工作 i 之间相应配对/匹配的任何单个成本都小于 50 美元这样的值。

如果可能的话,我非常想在MATLAB中解决它。

4

1 回答 1

2

这是分配问题的一个轻微变化。要处理您的附加约束,即单个作业成本不应超过某个值,只需将成本矩阵中大于此阈值的所有条目更改为一个巨大的值(大于所有其他条目的总和就足够了),并且像往常一样求解,例如使用Hungarian Algorithm

于 2013-10-23T23:19:43.370 回答