在电子竞技和众多在线游戏的世界里,匹配系统是保障玩家游戏体验的关键机制,MMR(Match - Making Rating,匹配等级)和 ELO 这两种算法被广泛应用于匹配系统中,尽管它们都致力于为玩家找到旗鼓相当的对手,以营造公平且富有挑战性的游戏环境,但在原理、计算方式、应用场景等方面存在着诸多区别。
算法起源与历史背景
(一)ELO 算法的诞生
ELO 算法最早由匈牙利裔美国物理学家阿帕德·埃洛(Arpad Elo)在 20 世纪 50 年代提出,最初是用于国际象棋棋手的等级分计算,阿帕德·埃洛希望通过一种科学的方法来衡量棋手的相对实力,其基本原理是基于概率模型,认为在一场比赛中,实力较强的棋手战胜实力较弱棋手的概率更高,随着时间的推移,ELO 算法因其简洁有效而被广泛应用于各种棋类游戏以及早期的一些电子竞技游戏的排名和匹配系统中。

(二)MMR 的发展
MMR 并没有一个特定的创始人或单一的起源时间,它是随着在线游戏的发展,尤其是竞技类游戏对更精准匹配需求的增长而逐渐形成和完善的一种概念和算法体系,MMR 更侧重于实时反映玩家在游戏中的实际表现,通过对玩家多场游戏的胜负、表现数据等进行综合计算,得出一个能够动态调整的数值,以衡量玩家当前的竞技水平。
算法原理
(一)ELO 算法原理
ELO 算法的核心公式为:$R{n}=R{o}+K(S - E)$。$R{n}$是棋手比赛后的新等级分,$R{o}$是比赛前的等级分,$K$是一个常数,它决定了等级分的变化幅度(通常新手的$K$值较大,随着等级分的稳定,$K$值会减小),$S$是实际比赛结果(胜为 1,平为 0.5,负为 0),$E$是预期比赛结果,预期比赛结果$E$的计算基于对手的等级分,通过特定的数学公式计算出棋手战胜对手的预期概率,如果一名棋手的等级分远高于对手,那么他战胜对手的预期概率$E$就会接近 1;反之,如果对手等级分远高于自己,$E$就会接近 0。
(二)MMR 算法原理
MMR 的计算方式更加多样化和灵活,它会综合考虑多个因素,如游戏的胜负、击杀数、助攻数、承受伤害量、治疗量等(具体取决于游戏类型和设计),在一场比赛结束后,系统会根据玩家在比赛中的各项表现数据以及比赛结果,按照预先设定的权重对玩家的 MMR 进行调整,在一款 MOBA 游戏中,玩家在一场胜利的比赛中获得了大量击杀和助攻,并且承受了合理的伤害,那么他的 MMR 就可能会有较大幅度的提升;而如果在一场失败的比赛中表现不佳,MMR 则会下降,MMR 还会考虑对手和队友的 MMR 情况,例如战胜高 MMR 的对手会获得更多的 MMR 奖励。
计算方式的差异
(一)ELO 的计算特点
ELO 的计算相对较为简单直接,它主要基于比赛的胜负结果以及对手的等级分来调整玩家的等级分,在计算过程中,对于不同类型的游戏,可能会对$K$值进行调整以适应游戏的特点,在一些快速节奏的游戏中,$K$值可能会设置得较大,以便玩家的等级分能够更快地反映其表现变化;而在一些注重长期稳定性的游戏中,$K$值则会较小,ELO 算法相对较少考虑玩家在比赛中的具体表现细节,更多地关注比赛的最终胜负。
(二)MMR 的计算特点
MMR 的计算则更加复杂和精细,它不仅仅依赖于比赛结果,还深入分析玩家在比赛中的各种行为数据,以 FPS 游戏为例,玩家的命中率、爆头率、移动速度、占领目标点的时间等都可能成为影响 MMR 计算的因素,MMR 的计算通常是实时动态的,在一场游戏进行过程中,系统可能已经根据玩家的实时表现对其潜在的 MMR 变化进行了评估,这种精细的计算方式使得 MMR 能够更准确地反映玩家当前的竞技状态和实际水平。
匹配机制与效果
(一)ELO 匹配机制
基于 ELO 算法的匹配系统通常会根据玩家的 ELO 等级分来寻找相近等级分的对手进行匹配,其目的是让实力相当的玩家在同一局游戏中对抗,以保证比赛的平衡性和竞争性,由于 ELO 计算相对简单,有时可能会出现匹配不够精准的情况,一些玩家可能通过特定的游戏策略在短期内获得较高的 ELO 等级分,但实际上他们的真实水平并没有达到相应高度,这就可能导致在后续匹配中出现实力不匹配的问题,影响游戏体验。
(二)MMR 匹配机制
MMR 匹配系统在寻找对手时,会综合考虑玩家的 MMR 以及更多的因素,如游戏风格、英雄/角色偏好等(在 MOBA 游戏中),它试图为玩家找到不仅实力相当,而且游戏风格和习惯也较为契合的对手和队友,在一款 MOBA 游戏中,一个擅长玩刺客型英雄且 MMR 为 1500 的玩家,系统会尽量为他匹配同样 MMR 且英雄池和游戏风格类似的队友和对手,这种匹配机制能够提供更加个性化和优质的游戏体验,减少因为游戏风格差异过大而导致的游戏不平衡问题。
对玩家行为的影响
(一)ELO 对玩家行为的影响
由于 ELO 主要关注比赛胜负,一些玩家可能会采取保守的游戏策略来维持或提升自己的 ELO 等级分,在一些竞技游戏中,玩家可能会避免与实力明显较强的对手进行比赛,或者在比赛中过于谨慎,不敢尝试新的英雄或战术,以免输掉比赛导致 ELO 下降,这种行为可能会限制玩家的游戏成长和创新意识,使得游戏变得相对保守和缺乏多样性。
(二)MMR 对玩家行为的影响
MMR 因为综合考虑了多种因素,鼓励玩家在游戏中发挥出自己的最佳水平,玩家知道即使比赛失败,但只要在过程中有出色的表现,MMR 也不一定会大幅下降,甚至可能保持不变或有所提升,这促使玩家更加积极地参与游戏,尝试新的英雄和战术,提升自己的游戏技巧,在一款 FPS 游戏中,玩家可能会更加愿意尝试一些高风险高回报的玩法,因为他们相信自己的出色表现会得到 MMR 系统的认可。
应用场景的不同
(一)ELO 的应用场景
ELO 算法由于其简单易懂和计算成本较低,仍然在一些对实时性要求不高、游戏机制相对简单的游戏中广泛应用,一些休闲类的棋类游戏、简单的在线对战游戏等,这些游戏更注重长期的玩家排名和相对稳定的匹配环境,ELO 能够较好地满足这些需求。
(二)MMR 的应用场景
MMR 则更适用于竞技性强、游戏机制复杂、对匹配精准度要求高的游戏,如《英雄联盟》《守望先锋》《DOTA2》等大型 MOBA 和 FPS 竞技游戏,在这些游戏中,玩家的操作和表现差异较大,MMR 能够通过精细的计算和匹配机制,为玩家提供更加公平和富有挑战性的游戏体验,满足竞技游戏对高水平匹配的需求。
MMR 和 ELO 虽然都是用于游戏匹配系统的重要算法,但它们在起源、原理、计算方式、匹配机制、对玩家行为的影响以及应用场景等方面都存在明显的区别,随着电子竞技和在线游戏的不断发展,未来的匹配系统可能会进一步融合和改进这两种算法的优点,以提供更加完美的游戏匹配体验。
