我有一组主机和一组任务。
每个主机都有cpu,mem和task容量,每个任务都有cpu,mem要求。
每台主机都属于一个延迟类,并且可能会与其他主机以一定的延迟值进行通信。
每个任务可能需要与延迟等于或小于某个值的另一个任务进行通信。
我的问题输入示例显示在下一张图片中。 其中任务t1需要分别以等于或小于3,3和5的等待时间与任务t2,t3和t4进行通信,主机h1属于等待时间等级3并且与h2,h3和h4以等待时间2,5进行通信,和3。
我想使用匈牙利语/ munkres算法来解决这个问题,但我怎样才能正确设置成本函数? 有没有更好的分配算法来解决这个问题?
谢谢。主机中任务的分配/分配
1
A
回答
1
Munkres有一个Python包:http://software.clapper.org/munkres/。你可以参考它们的实现:https://github.com/bmc/munkres/blob/master/munkres.py
1
正如你应该知道的那样,这个问题是QAP(二次分配问题)的一个例子,这是NP完整的,这意味着用几句话:不存在最好的算法为了解决它,至少在多项式时间。更多细节here
虽然有几种方法可以处理,但我已经尝试了一些简单的方法来处理人工智能,比如遗传算法(GA)和ACO,效果很好。我会为你推荐GA。
相关问题
- 1. Hadoop任务分配
- 2. TBB任务分配断言
- 3. WorkFront(AtTask)分配任务
- 4. 如何分配任务
- 5. AtTask分配类别任务
- 6. 控制Spark中任务的分配
- 7. 如何在Bugzilla中分配任务?
- 8. 任务分配在豆荚中
- 9. Django没有分配任何主键
- 10. 将主机分支重新分配到主设备上
- 11. 并行任务分配的等负载
- 12. jBPM的6.2分配人工任务组
- 13. 如何分配并行任务的node.js
- 14. Webservices:理解分配的任务
- 15. 的gradle配置分发任务
- 16. Rogue Ceph OSD未分配给主机
- 17. 快速任意分配随机抽样
- 18. 将任务分配给多个用户,分配生命线中的kaleo worlflow
- 19. 将任务分配给两台打印机的算法?
- 20. 将任务分配给具有气流的特定机器
- 21. Mylyn任务 - 在代码中使用TODO分配任务?
- 22. 哪些jira任务分配给我?
- 23. 将多个用户分配给“任务”
- 24. Cordys - 调度算法 - 任务分配
- 25. 使用Spring JMS接收任务分配
- 26. 如何将任务分配给组?
- 27. WSO2BPS 3.6.0 BPEL HT任务分配/授权
- 28. 如何分配一些任务到GPU
- 29. Sharepoint任务列表“分配给”
- 30. Ansible。分配前/后任务剧本