gpt4 book ai didi

algorithm - 作业车间调度 : which solutions should I consider?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:33:06 25 4
gpt4 key购买 nike

给定一家软件公司,开发人员团队合作处理多个问题不同的项目。项目需要分配的特定技能开发商。出于我的目的,我想保持简单并将其限制为一个技能,即编程语言。所以有些项目需要Java,有些需要C 等 项目有固定的工期,每个项目应该有两个开发人员分配给它。

在任何时间点,一些项目在进行中,新的项目来了并且需要在未来的某个时间点进行规划。我想计算一个时间表,确定哪些开发人员应该在什么时间从事什么项目。

我不是在寻找最佳解决方案(如果可能的话)。我很满足具有人类经理可以创建的时间表。

我读过有关资源受限调度问题的文章和作业问题,但我很少接受正式的 CS 培训,而且我经常迷失在这些问题的不同变体的所有细微差别中。

我认为我的问题是作业车间调度的一个更简单的变体,其中作业是项目和开发人员是机器,所以工作需要多台机器同时同一时间。只有一个先例约束,即正在运行的项目无法中止,因此必须先完成。

在我阅读过的所有可能的解决方案中,我倾向于使用遗传算法,主要是因为我读过人们用他们,因为我刚才在另一个项目中使用了一个。我也读过线性规划的好结果,但我知之甚少关于那个。

对于这类问题,遗传算法是可行的解决方案吗?或者有更好的解决方案吗?

最佳答案

创建一个二分图,一侧是开发人员,另一侧是需要的项目成员。 “需要的项目成员”是指,如果一个项目 P 需要 3 个开发人员,您将添加 3 个节点,可能命名为 P0P1P2

如果开发人员具备该项目所需的所有技能,则在开发人员和所需的项目成员之间划一条界线。你的问题然后减少到找到一个 matching在此图中;您可以使用标准算法来执行此操作。

关于algorithm - 作业车间调度 : which solutions should I consider?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10572462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com