我有一种情况,我需要将人员分配给几个事件.如果我们只是将价格作为一个因素,那就没问题了,但是有很多因素可以进来.
首先,一些背景.这是一个非营利性组织,它促进因任何原因住院的儿童的故事时间,因此他们依靠志愿工作这样做.因此,由于他们依赖于人们的善意,他们为人们提供了人们可以/想做的尽可能多的工作,其变化如下:
所以,我有点想到了前两个.由于匈牙利算法是关于价格的,我会给他们一个愚蠢的高价,因为他们不能去.但是,你会怎么做其他人?
我想给他们一些分数.有些事情:一个人每月可以做一次,花费1000点.如果有人每月可以去10次,那么这个人需要花费100分(1000分除以10分).此外,分配这种方法的方法是在单独的操作完成时增加价格,如此(选定的人员的相关成本为*):
| August 1st 2009
Person A | 1000
Person B | 500 *
Run Code Online (Sandbox Code Playgroud)
| August 8th 2009
Person A | 1000 *
Person B | 1000
Run Code Online (Sandbox Code Playgroud)
这将是在所有人之间进行相应分配的方式,更优先考虑那些可以多次执行此操作的人.
你怎么想,你会怎么做?
language-agnostic algorithm scheduling graph-theory matching