【发布时间】:2012-01-13 18:41:26
【问题描述】:
我们有 n 个工作和 m 台机器。每个作业 i 都有一个发布时间 r[i]。在机器 j 上处理作业 i 需要 p[i][j] 时间。对于一项工作 k,|{p[i][j] | i == k}|
【问题讨论】:
标签: algorithm scheduling job-scheduling scheduled-tasks
我们有 n 个工作和 m 台机器。每个作业 i 都有一个发布时间 r[i]。在机器 j 上处理作业 i 需要 p[i][j] 时间。对于一项工作 k,|{p[i][j] | i == k}|
【问题讨论】:
标签: algorithm scheduling job-scheduling scheduled-tasks
这是对3-partition problem 的缩减。
令 S = {x1, ..., x3m} 是 3 分区的实例,使得对于每个 i,B/4 i i/m 为目标总和。
假设有 m 个相同的机器。在时间 0,发布 3m 个长度为 x1, ..., x3m 的作业。每次 B, B + 1, ..., B + 4mB - 1,释放 m 个长度为 1 的作业,总共 4m2B 个作业。
当且仅当初始作业的制造跨度小于或等于 B 时,3 分区的实例才有解。如果有解,则初始作业对目标的贡献最多为 3mB .其他工作的贡献是4m2B.
如果制造时间比 B 长,则一连串 4mB 的作业至少延迟一个单元,为目标贡献 4mB。因此,如果 3-partition 问题是可解决的,则目标最多为 3mB + 4m2B,如果 3-partition 问题不可解决,则目标至少为 4mB + 4m2B .
【讨论】: