胡的算法对一般单位长度边缘DAG有用吗?

时间:2019-09-16 23:29:17

标签: algorithm graph-theory scheduler

根据http://www-labs.iro.umontreal.ca/~dift6221/demicheli4/sch2.4.ps.pdf,当图形是树时,Hu的算法是最佳的。一般单位长度的边缘DAG是否会失败?在这种情况下它不是最佳的原因是什么?这样的失败有什么例子吗?

1 个答案:

答案 0 :(得分:0)

花了我一段时间,但我能够提出一些反例。关键是要使浅层任务阻止大量任务,这在树中是不允许的。

最多只能并行执行k = 10个任务。您有40个任务,标记为1到40。

任务1〜10阻止了任务11,而任务11阻止了任务12。(这是一个树状结构。到目前为止很好。) 现在任务13阻止任务14〜40。 (13个有多位父母,违规)

使用贪婪算法,第一步需要完成任务1〜10,剩下13个任务仍阻塞14〜40。第2步只能处理11和13。现在,该算法无法完成4个步骤,这是您可以做到的最好的结果。

最佳时间表是做13则说1〜9,解开14〜40,并分4步完成,而无需任何工人空转。