概率与期望

A. 基本概念

一、不严谨的定义:

  1. 随机变量:有多种可能的取值的变量,

例如:对于随机抛硬币的事件,有随机变量 \(X_i\) 定义为第 \(i\) 次抛硬币是否为正面

\[X_i= \begin{cases} 0, & 第\ i\ 次硬币是反面 \\ 1, & 第\ i\ 次硬币是正面 \end{cases} \]

\(X=X_1+X_2\),有

\[X= \begin{cases} 0, & 反反\\ 1, & 正反或反正\\ 2, & 正正 \end{cases} \]

掷骰子等类似事件同理。

  1. \(P(A)\):事件 A 发生的概率

如果我们令 A 表示连续两次抛出硬币的结果为:正反,则 \(P(A)=1/4\)

  1. \(E(X)\):随机变量 X 的期望值

\(X\)\(n\) 次抛掷,得到正面的数量的数学期望,\(E(X)=\sum_{i=0}^n (P(X=i)*i)\)
\(n=1\) 时,

\[E(X) = P(X=0)\times 0+P(X=1)\times 1={1\over 2}\times 0 + {1\over 2}\times 1={1\over 2} \]

即抛掷一次,得到正面的数学期望次数为 \(1\over 2\)

  1. 独立事件:互不影响的事件,满足 \(P(AB)=P(A)P(B)\)
  • 独立事件
    事件A:抛硬币得到正面;
    事件B:骰子掷出 6
  • 非独立事件
    事件A:小明昨晚没有睡好
    事件B:小明今天上课睡着了
  1. 期望的线性性质:对于两个随机变量的加权和,其期望等于两个随机变量分别的加权期望之和。

\(E(AB)=E(A)+E(B)\)(信息学中几乎全部是独立事件,重点在于算法,而不在于概率知识)

  1. 条件概率,\(P(AB)=P(A)P(B|A)\),其中 \(P(B|A)\) 为在 A 发生的条件下 B 的概率。

B. 简单的问题

  1. 随机一个长度为 \(n\) 的排列 \(p\),求 \(p[1\dots i]\)\(p[i]\) 是最大的数的概率

考虑当前 \(i\) 个数选定时,每个数出现在每个位置的次数都是一样多的(满足对称性)
所以前 \(i\) 个数的全排列中,每个位置的数字成为最大值的次数也是一样多的
因此,\(p[i]\) 是最大数的概率是 \(1/i\)

  1. 随机一个长度为 \(n\) 的排列 \(p\),求 \(i\)\(j\) 的直接后继的概率

\((n-1)!/n!=1/n\)

  1. 随机一个长度为 \(n\) 的排列 \(p\),求它包含 \(w[1\dots m]\) 作为子序列/连续子序列的概率

连续子序列:\((n-m+1)!/n!\)
子序列:\({n!\over m!(n-m)!}\ast (n-m)!/n!=1/m!\)
使用“任两个元素位置对称”的思想,可以知道在所有全排列中,这 \(m\) 个元素的每种排列出现的次数都是一样多的,也可以得到答案是 \(1/m!\)

  1. 给一个序列 \(a\),每次随机删除一个元素,问 \(a[i]\)\(a[j]\) 在过程中相邻的概率,\(i,j\) 是给定的

同样考虑整个序列的删除顺序是一个全排列,\([i,j]\) 区间每种排列出现的次数都是一样多的,因此,如果需要 \(a[i]\)\(a[j]\) 相邻,则转换为如下两种删除序列的排列:\(i,\dots,j\) 以及 \(j,\dots,i\),令 \(t=|j-i|+1\),则答案为 \({2(t-2)!\over t!}={2\over t(t-1)}\)

C. 期望的线性性

\(E(X+Y)=E(X)+E(Y)\),不要求 X 与 Y 独立。
\(X\) 只会取 0,1 时,\(E(X)=P[X=1]\)

  1. 箱子里有 \(n\) 个球 \(1\dots n\),你要从里面拿 \(m\) 次球,拿了之后不放回,求取出的数字之和的期望。

\(X_i\) 表示第 \(i\) 次抽出的球的期望编号,求 \(E(\sum_{i=1}^m X_i)\)
\(P[\sum_{i=1}^mX_i]\) 是很麻烦的,因为事件之间并不独立
于是,我们利用期望的线性性,\(E(\sum_{i=1}^mX_i)=\sum_{i=1}^mE(X_i)\)
现在单独求每一个 \(E(X_i)\),由“对称性”思想,它们都是相等的
\(Y_i\) 表示抽出一个球,编号恰好是 \(i\) 的事件
\(E(X_i)=\sum_{i=1}^nP[Y_i]*i=\sum_{i=1}^n{i\over n}={n+1\over 2}\)
从而,\(E(\sum_{i=1}^mX_i)=\sum_{i=1}^mE(X_i)={m(n+1)\over 2}\)

  1. 随机一个长度为 \(n\) 的排列 \(p\),求 \(p[1\dots i]\)\(p[i]\) 是最大的数时 \(i\) 的期望个数。

\(X_i\) 表示 \(p[1\dots i]\)\(p[i]\) 是最大的数
\(E[\sum_{i=1}^nX_i]=\sum_{i=1}^nE[X_i]=\sum_{i=1}^n{1\over i}\)

  1. 随机一个长度为 \(n\) 的排列 \(p\),求排列中极大值的个数,也就是比左右相邻的数都大的数的期望个数。

\(X_i\) 表示第 \(i\) 个元素是极大值
两端的数各有 \(1/2\) 概率成为极大值,其余中间的数皆有 \(1/3\) 的概率成为极大值
\(E(\sum_{i=1}^nX_i)=\sum_{i=1}^nE(X_i)=1/2+1/2+(n-2)/3=(n+1)/3\)

  1. \(N\) 个黑球,\(M\) 个白球,每次等概率取出一个球(不放回),将取出来的球的颜色写成一个 "0/1" 序列,求 "01" 串总共出现的期望次数。

\(X_i\) 表示第 \(i\)\(i+1\) 位拼成的串为 "01"
\(E(\sum_{i=1}^{N+M-1}X_i)=\sum_{i=1}^{N+M-1}E(X_i)=(N+M-1)\ast {C_{N+M-2}^{N-1}\over C_{N+M}^N}={NM\over N+M}\)

  1. \(N\) 个黑球,\(M\) 个白球,每次等概率取出一个球(不放回),将取出来的球的颜色写成一个 "0/1" 序列,求期望多少步能取出所有的黑球。
  • 定义做法:
    \(K\) 步取出了所有的黑球,前面有 \(N-1\) 个黑球,\(K-N\) 个白球,共有 \(\sum_{K=N}^{N+M}{(K-1)!\over (N-1)!(K-N)!}\) 种排列,概率为 \(\sum_{K=N}^{N+M}\left({(K-1)!\over (N-1)!(K-N)!}/{(N+M)!\over N!M!}\right)\)
    期望步数为 \(\sum_{K=N}^{N+M}\left(K\cdot{(K-1)!\over (N-1)!(K-N)!}/{(N+M)!\over N!M!}\right)=N+{NM\over N+1}\)
  • 期望线性性做法:
    \(X_i\) 表示第 \(i\) 个白球在最后一个黑球前面
    每个白球的期望都是相等的,考虑一个白球要放在 \(N\) 个黑球的 \(N+1\) 个空的前 \(N\) 个空中的期望步数,为 \(N\over N+1\)
    \(E(最后一个黑球)=N+E(X_1+X_2+\dots+X_M)=N+\sum_{i=1}^ME(X_i)=N+M\cdot E(X_1)=N+M\cdot {N\over N+1}\)

D. 随机游走模型(Random Walk)

无限模型

  1. 抽卡,\(p\) 的概率会抽中,问期望多少次能抽中

“抽中” 和 “未抽中” 两个状态,如果本次没有抽中,就回到 “未抽中” 状态继续,直到 “抽中” 结束,令 \(x\) 表示抽中的期望次数,则
\(x=1\cdot p + (1-p)\cdot (1+x)\Rightarrow x=1+(1-p)\cdot x \Rightarrow x = 1/p\)

  1. 抽卡,\(n\) 张卡,每次随机抽出一张并放回,问期望多少次能都抽完,即每张卡都抽到过

\(f_i={i\over n}(1+f_i)+{n-i\over n}(1+f_{i+1})\Rightarrow f_i=f_{i+1}+{n\over n-i}\)

\[\begin{aligned} f_0 &= f_1 + {n\over n}\\ f_1 &= f_2 + {n\over n-1}\\ \dots\\ f_{n-1} &= f_n + {n\over 1} \end{aligned} \]

\(\sum_{i=0}^{n-1}f_i=O(nlog\ n)\)

  1. 一条链,你在其中的某个点,随机游走,问首先走到左右端点 (0 和 \(n\)) 的概率是多少

\(f_i\) 为从 \(i\) 号点最终到达 0 号点的概率
\(f_0 = 1, f_n=0\)
\(f_i={1\over 2}(f_{i-1}+f_{i+1})\Rightarrow 2f_i=f_{i-1}+f_{i+1}\Rightarrow f_i-f_{i-1}=f_{i+1}-f_i\),间隔相等
\(f_i={n-i\over n}\)

  1. 一条链,你从左端点 0 开始随机游走,问走到右端点 \(n\) 的期望步数

\(f_i\) 表示从 \(i\) 号点最终到达 \(n\) 号点的期望步数
\(f_n=0, f_0=1+f_1\)
\(f_1={1\over 2}(1+f_0)+{1\over 2}(1+f_2)\Rightarrow (f_0-f_1)+2=f_1-f_2\),间隔构成等差为 2 的递增数列
\(f_0=1+3+5+7+\dots+(2n-1)={2n^2\over 2}=n^2\)

posted @ 2024-11-15 10:42  飞花阁  阅读(274)  评论(0)    收藏  举报
//雪花飘落效果