概率

基础知识

样本空间、事件和概率

样本空间S是一个集合,它的元素被称为基本事件。样本空间的一个子集被称为事件,根据定义所有的基本事件都互斥

概率公理

如果有一种事件到实数的映射 ,满足:

  1. 对任何事件
  2. 对两个互斥事件,

则可称 为事件 的概率。

随机变量

如果对样本空间 中的任意事件 ,都有唯一的实数 与之对应,则称 为样本空间 上的随机变量,其中离散型随机变量与连续型随机变量较常见。

离散型随机变量及其概率分布

取值范围为有限或无限可数个实数的随机变量称为离散型随机变量。设离散型随机变量 取值 时的概率为 ,则称 的所有取值以及对应概率为 的概率分布,记做

常见的离散型随机变量的概率分布有两点分布,二项分布,几何分布,超几何分布,泊松分布。

连续型随机变量及其概率分布

如果 是在实数域或区间上取连续值的随机变量,设 的概率分布函数为 ,若存在非负可积函数 ,使对任意的 ,有,则称 连续型随机变量,称 概率密度函数。要注意,概率密度不是概率。常见的连续型随机变量分布有均匀分布,正态分布,指数分布。

连续型随机向量及其概率分布

如果 都是连续型随机变量,则称 维随机向量,其概率分布函数为 。若存在非负可积函数 使得 ,其中等式右端表示 重积分,就称 为随机向量 联合概率密度函数

如果 相互独立,并且分别有概率密度函数 ,那么

数学期望

离散型随机变量的数学期望

设离散型随机变量 的分布律为 ,若 存在,则称 数学期望,简称期望,记为

连续型随机变量的数学期望

设连续型随机变量 的概率密度函数为 ,若广义积分 收敛,则称 为连续型随机变量 数学期望,记为

例题1 LastMarble (TopCoder SRM 349 div one 1000)

题目描述

red个红球,blue个蓝球在一个袋子中。两个玩家轮流从袋子中取球,每个人每次可以取 1,2 或 3 个球,但在他把球拿出袋子之前,他并不知道所取球的颜色。每次球被取出袋子后,它们的颜色被公布给所有人。取走最后一个红球的人输。现在已知有人在游戏开始前取走了removed个球,并且谁也不知道球的颜色。在两个玩家都采取最优策略时,先手的胜率是多少?

数据范围:

分析

的时候,这个问题是很普通的动态规划问题。我们只需设 代表现在剩 个红球, 个蓝球,面对当前局面的玩家所能得到的最大胜率。那么: 其中 是取到 个红球, 个蓝球的概率。 就是我们要的答案。

对于 的情况,我们显然可以知道:

定理 个红球, 个蓝球中先取 个球,再取 个球,剩余不同颜色的球数的概率分布与先取 个球,再取 个球所对应的剩余不同颜色的球数的概率分布是相同的。

上面的定理告诉了我们,取球的顺序和最终的结果没有关系。

我们设 表示当前有 个红球, 个蓝球的,被事先取走了 个球(不知道它们的颜色),面对这个局面的玩家所能得到的最大胜率。当玩家取走 个球时,根据上面的定理,新的局面与玩家先取走 个球,再让 个球被取走所得到的局面完全一样!但是有一种边界情况要考虑:由于不能保证 ,可能在一些情况下,取走 个球后,玩家已经输了,而不能进行下面的游戏。要解决这种特殊情况,只需对 的定义和动态规划方程略加修改:让 表示当前有 个红球, 个蓝球,被取走了 个球但仍然至少还有 1 个红球的情况下,当前玩家的最大胜率。

我们用 表示有 个红球, 个蓝球,取走 个球而红球数仍大于 0 的概率,那么 。我们可以用递推式求解: 再考虑最初的dp式,因为 个红球, 个蓝球取走 个球仍有至少 个红球的情况,包含了有 个红球, 个蓝球,取走 个球后仍有至少 1 个红球的情况,因此在前者满足的基础上后者满足的概率是 。由此我们得出最终的方程: 最后的答案是

例题2 Randomness (UVA 11429)

题目描述

有一个随机数生成器能随机返回 的正整数,现在有 个事件,要求第 个事件的 发生概率是 ,用该随机数生成器设计一种事件触发装置,使随机数生成器的期望使用次数 尽量少,求出 (精确到 )。

数据范围:,且 ,所有的数都是正整数。

分析

为了观察题目规律,我们先看一个例子:
时,最优策略可以是:当生成的数 时执行事件 ,否则再使用一次随机数生成器,事件的选择与上一次一样。这样每个事件发生的概率是:

我们看到第一次使用生成器(定义为第一层生成器)时,有一些直接映射到事件,其余的每一个返回值分别对应一次新的生成器的使用,定义为第二层生成器。归纳地,定义第 层生成器为由第 层生成器返回值引起的新的生成器的使用。
很明显,对事件 而言,假设第 层生成器中有 个返回值对应着事件 的发生,一定有

这里 ,因为如果某个 ,我们把 减去 加 1,则等式仍成立,而 Exp 减小了。同时可以看出,这就是 进制表示,所以 的取值是唯一的。

为了计算 Exp,我们定义 为第 层生成器产生的导致新的生成器使用的返回值个数,定义 ,那么 就是第 层生成器对 Exp 的贡献,我们有

至于求 ,因为第 层生成器中所有导致新生成器使用的返回值的个数,就是第 层生成器被使用的个数,减去其中所有导致事件的返回值个数,也就是

我们不可能求出所有的 ,也没有必要,因为对所有的 ,我们有

这个式子告诉我们:只要 足够大,我们可以让 Exp 的误差小到任意程度,而且这个误差减小的速度是很快的。根据题中要求的精度,只要算到第 50 层就足够了。

results matching ""

    No results matching ""