讨论游戏匹配机制时,人们经常从“它公不公平”开始。

但对于一家负责出版、发行和长期运营游戏的商业公司来说,更基础的问题可能不是公平,而是:怎样让游戏持续产生最大的商业价值?

这并不意味着公平不重要。恰恰相反,公平可能非常重要——但它的重要性未必来自公平本身,而可能来自公平能够维持信任、留存、付费意愿、竞技信誉和游戏寿命。

换句话说,公平可能不是系统的终极目的,而是利润最大化所需要的一项基础设施。

如果从这个假设出发,TrueSkill、EOMM、PCA、GNN、信息熵和生存分析等方法,就不再是十套彼此独立的“神秘机制”。它们可以被拆开,重新组合成一台持续认识玩家、预测玩家、分配体验并根据反馈修正自己的贝叶斯机器。

先用一分钟认识十个概念

下面只给出阅读正文所需的简化定义。严格公式、变量解释和适用边界统一放在文末附录。

概念 一句话定义 在系统中的可能角色
TrueSkill 同时估计玩家水平和系统对这一判断的可信度 更新隐藏技能状态
EOMM 不只按实力匹配,而是预测哪种匹配更能让玩家继续游戏 定义留存目标
Dynamic K 动态改变一局比赛对评级的影响程度 控制隐藏分或成长速度
PCA 把大量相关行为指标压缩成少数维度 构造玩家画像
GNN 根据组队、好友、对战等关系学习玩家的网络表示 估计协同、社交价值和异常网络
Handicap Penalty 在胜率计算中人为加入状态偏置 调整预测难度;并非标准公认算法名
Information Entropy 衡量胜负结果有多难预测 衡量悬念或五五开程度
Survival Analysis 估计玩家在未来何时可能停止游戏 计算流失风险
Minimax 在最坏情形下寻找仍然最有利的策略 BP、反作弊或鲁棒控制
MIQP/组合优化 在人数、位置、延迟等约束下选择具体队伍 产生最终十人组合

这十个概念不在同一层级。有些负责认识玩家,有些负责预测未来,有些定义系统目标,还有一些负责把目标变成具体匹配。

利润最大化才是顶层假设

如果运营方首先追求长期商业利润,顶层目标可以抽象为:

\[ \pi^* = \arg\max_\pi \mathbb E_\pi \sum_{t=0}^{\infty} \gamma^t \left[ Revenue_t -Cost_t -ChurnLoss_t -ReputationRisk_t -RegulatoryRisk_t \right] \]

游戏收入又大致取决于:

\[ Revenue \approx ActiveUsers \times PayingConversion \times ARPPU \times PlayerLifetime \]

运营方需要更多活跃玩家、更长生命周期、更高付费转化和更稳定的社交生态。

公平在这个模型中并没有消失。严重不公平会造成挫败、投诉和流失,也会破坏竞技信誉。当玩家不再相信比赛值得认真参与时,时间投入和付费意愿都会下降。

所以利润最优的系统不会无限制造不公平。它更可能寻找一个商业上的平衡点:

公平达到足以维持信任和参与的程度,同时允许系统在这条边界之内优化留存、付费和生命周期价值。

一场比赛首先是一次测量

系统要干预玩家,必须先认识玩家。

它不能只给每个人保存一个Elo数字,因为同一个玩家在不同位置、英雄、组排和精神状态下,实际能力可能完全不同。

系统真正维护的可能是一个隐藏状态:

\[ X_{i,t} = \left( s_{i,t}, \sigma_{i,t}, c_{i,t}, m_{i,t}, e_{i,t}, g_{i,t}, f_{i,t} \right) \]

其中可以包括:

这些状态无法被直接观察。系统看到的是胜负、KDA、经济、参团率、英雄、位置、等待时间、是否继续、是否组队、是否举报和是否付费。

因此,它只能维护一个概率判断:

\[ b_{i,t}(x) = P(X_{i,t}=x\mid H_{i,t}) \]

比赛前,这个分布是系统当前的先验;比赛结束后,新的胜负与行为构成证据,系统据此更新后验。后验又成为下一局的先验。

TrueSkill负责更新技能和不确定度;PCA帮助压缩行为特征;GNN把组队、好友和对战关系纳入画像;生存分析估计玩家未来退出的风险。

于是,每场比赛同时具有两种性质:

1. 对玩家来说,它是一场竞技活动; 2. 对系统来说,它是一次新的测量实验。

系统制造的是“可计算的玩家”

当技能、流失、付费和社交关系都被转化为概率变量以后,玩家就成为一个可以进入目标函数的状态向量。

系统不再只问:

这个玩家有多强?

它还可以问:

他现在有多容易退出?

输一局、赢一局或者得到完整位置,会怎样改变他的行为?

他未来还可能贡献多少游戏时间和付费?

如果他退出,会不会带走固定队友和好友?

对他进行一次匹配干预,究竟有没有效果?

这正是贝叶斯过程与商业优化结合的地方。

贝叶斯更新本身没有商业方向。它只负责让系统更准确地相信某些事情。真正决定系统怎样对待玩家的,是这些后验进入了什么奖励函数。

从认识玩家到给玩家定价

系统可以为候选对局 \(M\) 计算每名玩家的未来价值:

\[ U_i(M) = LTV_i \times P(Retain_i\mid do(M)) + PurchaseUplift_i(M) + NetworkExternality_i(M) \]

这里包含三个重要问题。

第一,系统关心的是未来生命周期价值,而不是玩家过去已经花掉的钱。过去收入已经发生,真正影响下一步决策的是未来还可能产生多少活跃、关系和收入。

第二,知道玩家可能流失还不够。系统还要知道改变下一局是否真的能够挽回他。一个无论输赢都会留下的人,即使价值很高,也未必值得消耗保护资源。

第三,个人价值之外还存在网络价值。一名核心玩家退出,可能让固定队友、好友或战队一起减少活跃。GNN所估计的关系结构,可以把个人价值放大为社交网络价值。

因此,保护优先级可能更接近:

\[ Priority_i \approx FutureLTV_i \times RetentionElasticity_i \times CausalInterventionEffect_i \]

也就是:

未来值多少钱 × 对体验有多敏感 × 系统是否真的能够改变他的行为。

这比“付费玩家一定得到奖励”复杂得多。

已经大量付费但十分稳定的玩家,可能不需要保护;尚未付费、但接近首次转化且处于流失边缘的玩家,反而可能拥有更高的边际保护价值。

利润系统奖励的未必是过去付费最多的人,而是未来最值得干预的人。

EOMM不再是辅助机制

在公平优先模型中,系统先寻找五五开的比赛,再在多个公平候选中选择留存更好的一个。

在利润优先模型中,EOMM可能更接近顶层目标:

\[ \max_M \sum_i LTV_i P(Retain_i\mid M,H_i) \]

传统匹配问的是:

哪种组合实力差最小?

参与度优化问的是:

哪种组合产生的未来活跃和价值最高?

两者有时会得到同一个答案,有时不会。

如果公平是硬约束,EOMM只能在允许的公平区间内选择;如果公平只是软成本,只要预期留存或收入收益足够高,系统就可能接受更大的不平衡。

这就是利润优先框架中的核心分界:

\[ U(M) = \sum_iU_i(M) -\lambda_fC_{fair}(M) -\lambda_wC_{wait}(M) -\lambda_rC_{risk}(M) \]

当公平权重 \(\lambda_f\) 极大时,公平接近不可突破的边界;当它较小时,公平可以被其他收益抵消。

公平不是消失了,而是被定价了

在利润优先模型中,公平可能有四种地位。

第一种是工具性公平。只有当不公平会造成流失和收入下降时,系统才修正它。

第二种是统计公平。系统维持整体胜率和段位分布正常,但不保证每一名玩家在每一个时期都得到相同待遇。

第三种是护栏公平。系统允许进行留存和价值优化,但规定预测胜率、位置质量和队友差异不能突破某个边界。

第四种是权利性公平。某些变量,例如付费状态,被明确禁止进入竞技匹配;某些差别待遇即使能增加利润也不能使用。

利润最大化最自然地倾向前面三种。第四种必须依靠制度、审计、监管或明确的产品承诺。

所以,判断一个游戏是否公平,不能只看总体胜率是不是接近50%。还要看:

系统不需要写下“惩罚玩家”

利润优先系统未必需要存在一条明确规则:

如果玩家稳定,就给他更差的队友。

差别待遇可以从总量最优化中自然产生。

设 \(d_i\) 表示玩家承担的不利难度,\(q_i(d_i)\) 表示其留存概率。由于竞技比赛中的相对优势不能同时分给所有人,可以用简化约束表示:

\[ \sum_id_i=0 \]

系统最大化:

\[ \max_{\{d_i\}} \sum_iV_iq_i(d_i) \]

拉格朗日条件给出:

\[ V_iq_i'(d_i)=\lambda \]

这意味着,系统会倾向于把困难体验分配给边际损失较小的人:

更有利的体验则可能优先分配给:

这里的“惩罚”不是报复,而是系统把某些玩家当作能够吸收困难体验的缓冲者。

它也不必形成永久阶层。贝叶斯后验持续变化,同一个人今天可能是需要保护的回流玩家,几天后也可能成为能够承受困难体验的稳定玩家。

系统控制的不是结果,而是概率环境

匹配系统无法保证某个玩家下一局必胜,但可以在候选池允许的范围内改变其胜率、位置完整性、队友稳定性和对手强度。

利润优先系统可能为不同玩家寻找不同的目标难度:

\[ p_i^* = \arg\max_p \left[ ExpectedFuturePlay_i(p) + ExpectedFutureSpend_i(p) \right] \]

对新手或流失边缘玩家,最优胜率可能高于50%;对喜欢挑战且非常稳定的人,最优胜率可能低于50%。

信息熵在这里不是公平的最高原则,而是衡量悬念的工具。系统未必追求最大熵,而可能寻找一个既不会让玩家绝望、也不会让玩家迅速失去目标的难度区间。

Handicap偏置可以把玩家状态转化为预测难度调整。Dynamic K可以控制系统接受新比赛证据的速度,也可能参与隐藏MMR与可见段位之间的进度节奏。

如果:

\[ HiddenMMRUpdate \neq VisibleRankUpdate \]

系统就可以一边用隐藏分匹配实际难度,一边用星级、积分、晋级点和赛季重置管理成长感。

从利润角度看,目标未必是让玩家最快到达真实段位,而可能是让进度既不快到失去目标,也不慢到导致退出。

最终分配的是整个人群的体验

五对五匹配无法让十个人同时获得更高胜率。

所以,系统最终解决的不是单个玩家体验最大化,而是整个人群的体验分配:

\[ \max_x \sum_i \left[ LTV_iRetentionUplift_i(x) + PurchaseUplift_i(x) + NetworkValue_i(x) \right] -\lambda_fFairnessPenalty(x) -\lambda_wWaitCost(x) -\lambda_rRisk(x) \]

MIQP、图匹配、网络流或启发式搜索负责在人数、位置、组排、服务器和延迟约束下产生具体队伍。

Minimax可以作为鲁棒层:当技能、流失和付费模型可能估错时,系统避免最坏的大规模流失、声誉损失和监管风险。

只要总目标是聚合价值,个体之间就可能发生体验转移:

保护某些人,就意味着另一些人承担相对成本。

因此,真正需要被审视的不是算法是否找到了数学最优解,而是它优化的目标究竟代表谁的利益。

贝叶斯系统会被自己的策略反向塑造

系统的匹配行动会改变下一轮训练数据。

如果高流失风险玩家总被保护,系统就很少观察他们在普通比赛下是否真的会退出。

如果稳定玩家总承担更困难的组合,系统可能把策略造成的低胜率和挫败,重新解释为这类玩家能够继续承受困难的证据。

如果某类高价值玩家获得不同体验,付费、留存和比赛结果之间的相关性也会被策略本身强化。

循环可能变成:

系统认为某类玩家值得保护
  → 给他们更有利的体验
  → 观察到更高留存与付费
  → 把结果归因于这类玩家的高价值
  → 进一步保护他们

与之对应:

系统认为某类玩家足够稳定
  → 让他们承担更多困难体验
  → 他们仍然没有立即退出
  → 系统确认他们能够继续承担

普通贝叶斯更新不能自动解决这个问题,因为数据不是自然生成的,而是由上一轮策略选择出来的。

要知道某种匹配干预是否真的提高留存或付费,必须估计因果效果:

\[ \mathbb E[Y\mid do(M_1)] - \mathbb E[Y\mid do(M_0)] \]

否则,系统可能只是在自己的反馈回路中不断确认自己。

公开材料能够支持到哪里

腾讯2025年度业绩显示,国内游戏收入为1642亿元,《王者荣耀》被列为长青游戏。腾讯对长青游戏的定义同时包含大规模日活与年度流水。这说明长期活跃和收入是公开的核心商业维度,但不能单独证明某种匹配机制。腾讯2025年度业绩

腾讯的用户留存概率预测专利提出预测个体用户未来留存概率,以指导业务运营策略。这证明留存预测是现实的技术与运营对象,但不证明它必然进入实时匹配。CN108765010B

腾讯的MOBA匹配专利描述了离线与实时特征、胜率预测、候选组合、连续失败玩家保护,以及将被保护玩家胜率控制在要求区间的方案。它证明差异化保护至少是公开申请过的技术方向。CN109453524B

另一项腾讯专利讨论了给新手匹配简单机器人以减少挫败退出、给高手提供挑战,并允许玩家通过积累行为资源选择“想赢”或“想挑战”的匹配策略。这说明匹配难度可以被设计成可调节的体验资源。HK40052285B

这些材料能够支持:

它们不能直接证明:

结语:系统优化的究竟是谁

把十个概念拆散后,可以看到一套完整的商业控制闭环:

观察玩家
  → 更新玩家后验
  → 预测留存、付费和网络价值
  → 计算不同匹配的长期收益
  → 分配下一局体验
  → 用玩家反应继续训练系统

TrueSkill、PCA、GNN和生存分析负责把玩家转化成可估计状态;EOMM和生命周期价值模型负责给不同未来定价;信息熵、Handicap与Dynamic K负责调节难度、悬念和进度;MIQP和鲁棒优化负责把有限的有利与不利体验分配到具体对局。

它们共同构成的不是一台简单的胜负机器,而是一台持续学习的商业贝叶斯机器。

在这套框架中,公平没有消失,而是被重新定价了。

它可能是信任、留存和品牌所需要的基础设施;也可能只是一个只要收益足够高就可以被部分交换掉的成本。

因此,真正重要的问题已经不是:

系统有没有把我的胜率控制在50%?

而是:

系统把哪些关于我的判断放进了后验?

它如何计算我的未来价值和流失弹性?

它是否把付费、稳定性和社交价值用于分配匹配质量?

公平在它的目标函数中,是不能触碰的边界,还是可以被利润抵消的价格?

利润优先系统真正优化的不是某个玩家的公平,而是整个人群能够贡献的长期总价值。

一旦目标是总体价值,最关键的伦理问题就不再是算法是否准确,而是:

当系统决定保护谁、刺激谁、延长谁的生命周期,以及让谁承担相对困难的体验时,玩家究竟还是目的,还是已经变成了优化函数中的资源?


附录:十个概念的公式与严格边界

正文到这里已经完整结束。以下内容用于需要核对数学定义的读者,不影响前文阅读。

附录1:TrueSkill

玩家技能:

\[ s_i\sim\mathcal N(\mu_i,\sigma_i^2) \]

单局表现:

\[ p_i\sim\mathcal N(s_i,\beta^2) \]

队伍表现可由成员表现之和构成。系统根据胜负或名次,通过因子图和截断高斯消息传递更新 \(\mu_i,\sigma_i\)。

视频公式:

\[ \mu_{new} = \mu_{old} + \frac{\sigma_{old}^2} {\sigma_{old}^2+\sigma_{game}^2} (R-\mu_{old}) \]

是高斯先验与高斯观测下的简化更新,并非完整TrueSkill比赛模型。

TrueSkill原论文

附录2:EOMM

对玩家 \(i,j\) 定义配对流失成本:

\[ c_{ij} = P(Churn_i\mid i\text{ vs }j) + P(Churn_j\mid j\text{ vs }i) \]

原始一对一形式可求最小权完美匹配:

\[ \min_x\sum_{i<j}c_{ij}x_{ij} \]

约束每名玩家只被匹配一次。

视频形式:

\[ \max_M \sum_{i\in Players} P(Retain_i\mid M,H_i)V_i \]

加入了玩家价值权重,表达加权参与度优化。五对五扩展需要对完整候选对局建模,不能直接照搬一对一配对。

EOMM原论文

附录3:Dynamic K-Factor

Elo更新:

\[ R_{t+1} = R_t+K_t(S_t-E_t) \]

视频特定函数:

\[ K(s) = K_0 \left( 1- \frac{1} {1+e^{-\lambda(s-\theta)}} \right) = \frac{K_0} {1+e^{\lambda(s-\theta)}} \]

\(K_t\)是评级更新步长,不是匹配难度本身。Dynamic K是动态步长的统称,没有唯一标准函数。

附录4:PCA

对中心化矩阵 \(X\):

\[ \Sigma=\frac{1}{n-1}X^TX \]

特征分解:

\[ \Sigma v_k=\lambda_kv_k \]

第一主成分:

\[ v_1 = \arg\max_{\|v\|=1}Var(Xv) \]

PCA最大化输入方差,不最大化技能、胜率或付费预测准确率。结果依赖中心化、标准化、量纲和输入特征。

附录5:GNN

典型GCN更新:

\[ H^{(l+1)} = \sigma \left( \tilde D^{-1/2} \tilde A \tilde D^{-1/2} H^{(l)}W^{(l)} \right) \]

其中 \(\tilde A=A+I\),\(\tilde D\) 是度矩阵。GNN学习关系表示,但需要训练目标和标签;邻居平均本身不能证明协同或因果关系。

GCN原论文

附录6:Handicap Penalty

视频定义:

\[ P_{win} = \frac{1} {1+10^{(R_{enemy}-R_{ally}+Penalty)/400}} \]

等价于:

\[ R_{ally}^{effective} = R_{ally}-Penalty \]

Handicap Penalty不是统一公认的标准算法名称。正Penalty降低公式中的己方预测胜率,但最终匹配方向取决于优化器怎样使用该预测。

附录7:Information Entropy

离散Shannon熵:

\[ H(X) = -\sum_xp(x)\log_2p(x) \]

二元胜负熵:

\[ H_2(p) = -p\log_2p -(1-p)\log_2(1-p) \]

在 \(p=0.5\) 时最大为1 bit。只有胜率模型充分且校准时,高熵才能合理解释为接近五五开。

附录8:Survival Analysis

生存函数:

\[ S(t\mid x)=P(T>t\mid x) \]

风险率:

\[ h(t\mid x) = \lim_{\Delta t\to0} \frac{ P(t\le T<t+\Delta t\mid T\ge t,x) }{\Delta t} \]

Cox比例风险模型:

\[ h(t\mid x) = h_0(t)e^{\beta^Tx} \]

风险率不是某一局之后的直接卸载概率。区间流失概率需要通过累计风险和生存函数计算。

Cox原论文

附录9:Minimax

有限零和博弈的极小极大关系:

\[ \max_{x\in X} \min_{y\in Y} x^TAy = \min_{y\in Y} \max_{x\in X} x^TAy \]

它描述最坏情形下的最优保证。一般纳什均衡不等于零和Minimax,队友之间也不天然是零和关系。

附录10:MIQP与匹配优化

视频目标:

\[ \min_x \frac12x^TQx+c^Tx \]

约束:

\[ Ax\le b, \qquad x\in\{0,1\}^n \]

\(Q\)可编码组合成本,\(c\)编码单个候选成本,\(A,b\)编码人数、位置、延迟和组排限制。

由于 \(x\) 是二元变量,可行域是离散的。该问题属于二元二次规划或混合整数二次规划MIQP;即使 \(Q\) 半正定,也不能把完整整数问题称为普通凸优化。