2

我很想利用网络流方法来解决这个问题。希望这里的人可以花时间帮助我为这个问题构建一个合适的图表。当解决最大流量时,构建的图应该导致作业机器分配最大化给定数量的机器和作业计划的作业数量。


给定 m 台机器和 n 个工作,约束 m≤n。使用网络流算法来解决分配给定机器数量的最大化作业。

每个作业Ji都有一个开始时间Si和完成时间Fi。所有机器都是相同的,一次最多只能完成一项工作。我们必须找到一个分配,以便我们可以安排最大数量的工作。

我尝试过的方法:-> 作业和机器在图中形成节点。
-> 从源到所有作业节点的边。
-> 从所有机器到终端节点的边缘。
->每个作业节点的中间节点,它具有来自每个重叠作业节点的传入边。
并停留在这里如何进一步进行。

我已经通过贪婪的方法制定了一个解决方案,我很想学习网络流方法。

PS:我已经通过贪婪的方法制定了解决方案。
问了同样的问题,并在没有任何解释的情况下被否决票击落
因此重新提问,因为前一个问题由于投反对票而没有引起任何关注。

4

1 回答 1

0

这种方法怎么样?我假设您熟悉需求循环问题。

将每个作业 Ji 视为一个节点,如果 Jj 可以在 Ji 之后完成,则它对作业 Jj 具有边缘,并且 Ji 和 Jj 不会以任何方式重叠。现在为每台机器考虑一个节点,并将其命名为 Mi。现在在这个模型中,每个 Ji 节点的需求为 -1,每台机器的需求为 0。另外添加一个节点 t,需求为 n,并将每个 Machine 节点 m 连接到它,容量为 n。每隔一条边的容量为 1。

现在通过需求流通来解决这个问题,我想你会得到你的答案。

于 2015-06-05T09:26:41.333 回答