0

我正在研究分配问题的变体。以前,我使用匈牙利算法来确定最适合早班的作业。它考虑了员工是否接受过培训,以及他们最近在该职位上完成理想任务的时间。

问题是我需要制作另一个程序来执行“旋转”。也就是根据白班的分配给我们的夜班分配。如果我们的员工在双班工作,我们希望确保他们在夜班时处于不同的位置。此外,如果有人在白班工作,我们喜欢在晚上让某人上夜班来填补他们的位置,以便于更换两名员工。

我觉得这可以通过最小流问题的一些变化来实现,但我很好奇是否有人知道一种算法或策略来最好地解决通过轮换创建夜间分配的问题。

为了澄清我所说的轮换的意思,假设有四个职位:收银员、装袋员、迎宾员和轮班领导。对于早班,Abe 是收银员,Ben 是 Bagger,Cathy 是迎宾员,Dale 是班长。除了只上早班的戴尔之外,所有人都在打双打。

晚上,Edward 是唯一进来的员工,因此他将取代唯一的白班 (Dale) 作为班长(当然假设他知道那个职位)。

这使得 Abe、Ben 和 Cathy 需要轮换。假设他们知道这些职位,这可能是简单的事情,比如 Ben 被转移到 Cashier,Cathy 被转移到 Bagger,Abe 被转移到 Greeter。

这当然只是一个例子。培训和其他因素出现。生成培训是完全可以的,但理想情况下,这将是可能的最低限度。

4

0 回答 0