简体   繁体   English

这个分配问题是否具有 NP-hard 约束?

[英]Is this assignment problem with constrains NP-hard?

It is a many-to-one assignment problem with N tasks and M people.这是一个有 N 个任务和 M 个人的多对一分配问题。

Each person can get multiple tasks, while each task can be assigned to only one person.每个人可以获得多个任务,而每个任务只能分配给一个人。 We can earn a profit Pij if the task i is assigned to person j.如果将任务 i 分配给人员 j,我们可以获得利润 Pij。

If T1, T2,..., Tm is a partition of the tasks, and n1, n2,..., nm are m positive integers.如果 T1, T2,..., Tm 是任务的一个分区,并且 n1, n2,..., nm 是 m 个正整数。 I want the optimum assignment such that the number of people assigned to any task in Ti must be less or equal to ni我想要最佳分配,使得分配给 Ti 中任何任务的人数必须小于或等于 ni

If I understand your question correctly, this is a special case of the minimum-cost flow problem on a graph with three layers (in addition to a source and a sink layer).如果我正确理解您的问题,这是具有三层(除了源和汇层)图上的最小成本流问题的特例。

  • From the source, you have a layer with M vertices, one for each person, connected to the source with edges of capacity 1 and no cost.从源头开始,您有一个具有M个顶点的层,每个人一个,连接到具有容量 1 的边且没有成本的源。
  • The next layer has the N tasks, and the i 'th person is connected to the j 'th task with an edge of capacity 1 and cost - P_ij .下一层有N个任务,第i个人连接到第j个任务,边缘容量为 1,成本为 P_ij
  • The third layer contains m vertices, one for each part in your partition, and a task is connected to its part with an edge of capacity 1 and no cost.第三层包含m个顶点,一个用于分区中的每个部分,并且一个任务通过容量为 1 的边连接到它的部分,并且没有成本。
  • Finally, the i 'th part is connected to the sink with an edge of capacity n_i and no cost.最后,第i部分以容量为n_i的边无成本连接到 sink。

We haven't specified a demand, but we could simply try all possible demands between 0 and M and still be in P , so showing that it's not NP -hard is equivalent to showing that PNP .我们没有指定需求,但我们可以简单地尝试 0 和M之间的所有可能需求,并且仍然在P中,因此表明它不是NP难的就等于表明PNP

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM