You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用正态分布计算玩家得分更高的概率及R语言实现

R求解Alex得分高于Bob的概率

计算原理

  • 设Alex得分X服从正态分布 N(μ=2, σ=2),Bob得分Y服从正态分布N(μ=1, σ=3),两者相互独立
  • 目标概率为 P(X>Y),等价转换为 P(X-Y>0)
  • 根据正态分布性质,两个独立正态变量的差仍服从正态分布,差值分布参数如下:

均值 = 2 - 1 = 1
方差 = 2² + 3² = 13
标准差 = √13 ≈ 3.606

R实现代码

理论计算法

直接调用R内置正态分布累积函数pnorm计算:

# 定义差值分布的均值和标准差
mean_diff <- 2 - 1
sd_diff <- sqrt(2^2 + 3^2)
# 计算P(X-Y>0) = 1 - P(X-Y≤0)
result <- 1 - pnorm(q = 0, mean = mean_diff, sd = sd_diff)
# 输出保留4位小数的结果
print(round(result, 4))

运行后得到结果约为 0.6092,即Alex得分高于Bob的概率约为60.9%。

模拟验证法

通过蒙特卡洛抽样验证结果准确性:

# 设置随机种子保证结果可复现
set.seed(123)
# 生成100万次模拟得分
sim_num <- 1e6
alex_score <- rnorm(sim_num, mean = 2, sd = 2)
bob_score <- rnorm(sim_num, mean = 1, sd = 3)
# 统计Alex得分更高的频率
sim_result <- mean(alex_score > bob_score)
print(round(sim_result, 4))

模拟结果和理论计算值误差极小,验证了结论的正确性。

内容的提问来源于stack exchange,提问作者Edward Starlin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 04:36:01