假设我们有两个国际象棋选手按顺序排列以下时间控制首选项,顶部是最理想的,低于 - 最低(45 45例如每场比赛45分钟+每次移动45秒),例如:
Player A Player B
45 45 90 30
90 30 120 30
50 10 45 45
120 30
用什么通用算法来选择最适合两个玩家的时间控制?
答案 0 :(得分:1)
嗯,奇怪的是我起初并没有弄明白。
设A是玩家A接受的所有时间控制的集合,B是玩家B的所有时间控制。设S是A组和B组的交集 - 时间控制着两名球员都愿意参加比赛。
所以我们必须在集合S中找到x,以便
i + j -> min
其中i是玩家A的偏好x的索引,j是玩家B的偏好x的索引(例如45 45:i = 1,j = 3)。
答案 1 :(得分:1)
假设解决方案空间是离散的,并且所选择的首选项确实必须位于其中一个列表中(最好是两个),我建议使用以下方法:
每位玩家使用值0 <= w_p <= 1
对其偏好进行加权,以便每位玩家所有值w_p
总计为1(较高的权重=较高的偏好)。
现在目标函数有几个选项:
Utilitarian
最大化所选首选项的权重总和。Social
使用所选偏好的较低权重最小化玩家的重量。Equalizing
最小化所选首选项的权重之间的差异。您可能应该先验地排除不是两个玩家都具有正重量的偏好。