我知道Truskill算法,它很复杂但是很有效。
我的问题是,还有其他算法/方法可以确定球员技能以准确衡量多人竞技比赛吗?
我知道Truskill算法,它很复杂但是很有效。
我的问题是,还有其他算法/方法可以确定球员技能以准确衡量多人竞技比赛吗?
Answers:
我认为要求“最简单最有效”是不现实的要求,但是肯定有一些好的方法。与其详细,不如链接至文章:
http://www.lifewithalacrity.com/2006/01/ranking_systems.html
这包括:
总体而言,您会发现它们在相同主题上几乎都是不同的-您选择玩家的起始值或平均值,然后使用这些值来预测游戏结果。实际结果与预测结果之间的差异用于修改每个玩家的分数,然后以调整后的分数重复该过程。由于对分数的每次修改都会使预测结果更加准确,因此分数收敛于其“真实”值。(这实际上是假设这是一种技能而非机会的游戏,所讨论的技能能够线性排名,等等。)
取决于游戏。您可能会遇到一些问题:
对于具有运气成分和技能成分的游戏(桥梁,扑克,魔术:聚会等),大多数算法都没有考虑到弱者有时会幸运的事实。如果您的游戏属于此类,则需要做一些工作。通常,这意味着找出运气百分比和技能百分比(这是一个困难的窍门,但是如果您已经在使用基于技能的算法(例如Elo),则可以对结果运行一些指标以找出算法的频率预测不安与实际发生的频率)。然后,您必须更改算法,确切地将其更改为什么可能超出了此问题的范围。
对于可以操纵比赛的游戏(我可以选择和我的朋友一起打排名游戏),您必须采取额外的保护措施,以防止玩家故意扔掉比赛。
对于游戏者来说,如果他们不规律地玩就可以“脱离实践”,那么该系统可能会涉及某种基于时间的降级。Glicko系统是Elo的改进版,它根据每个玩家玩了多少游戏以及最近玩过多少次,为每个玩家的排名添加了“不确定性”变量。玩家的排名越确定,每个游戏之间的排名变化就越小。
当然,多人游戏(无论是免费的,基于团队的游戏还是其他玩家结构)都需要特别注意。与其他人相比,一些基于团队的游戏更容易弄清每个人的贡献。
还请问您的评级/排名系统的目的是什么。在职业比赛和体育中,目的是统计性的:等级被用作任何给定比赛结果的预测指标。这里的主要目标是准确性。但是,这很少是玩家想要的。取而代之的是他们想要进步,一种感觉自己正在变得越来越好,并不断攀升(无论他们实际上是否在进步)。简而言之,需要在准确性和乐趣之间进行权衡。
您觉得TrueSkill有什么复杂之处?我认为这是一个简单的算法,可以根据不同的游戏模式调整适当的旋钮数量,当游戏具有很高的确定性时,它就可以简化为Elo。
如果您正在寻找在多人游戏环境中有效排名和衡量玩家的最简单方法-我的建议是TrueSkill。