鞅:
鞅是一类特殊的随机过程,假设我们从一开始就在观察一场赌博游戏,现在已经得到了前t秒的观测值,那么当第t+1 秒观测值的期望等于第t秒的观测值时,我们称这是一个公平赌博游戏。
具体来说,对于一个随机过程 A 1 , A 2 , . . . {A_1,A_2,...} A1,A2,...,如果 E ( A n + 1 ∣ A 0 , A 2 , . . A n ) = A n E(A_{n+1}|A_0,A_2,..A_n)=A_n E(An+1∣A0,A2,..An)=An,我们称该随机过程为鞅。
鞅的停时定理:
设时停时间(在不知道随机过程的中间状态下停止的时刻)为t,则 E ( t ) = E ( 0 ) E(t)=E(0) E(t)=E(0)
这个E到底是什么,由具体的情境而定,但是只要一个随机过程是一个鞅,它就有该结论
接下来我们考虑一个很常见的问题:
对于一个随机过程 A 1 , A 2 , . . . {A_1,A_2,...} A1,A2,...,如果其终止状态 A t A_t At是确定的,求 E [ t ] E[t] E[t],即时停时刻的期望(注意这里我们不要求该随机过程是一个鞅)
为此,我们引入一个势函数 ϕ ( X ) \phi(X) ϕ(X)
并且 ϕ ( x ) \phi(x) ϕ(x)满足如下性质:
那么如果我们令 X t = ϕ ( A t ) + t X_t=\phi(A_t)+t Xt=ϕ(At)+t,则 E ( X n + 1 − X n ∣ x 0 , x 1 . . . x n ) = E ( ϕ ( A n + 1 ) − ϕ ( A n ) + 1 ∣ x 0 , x 1 . . . x n ) = E ( ϕ ( A n + 1 ) − ϕ ( A n ) ∣ x 0 , x 1 . . . x n ) + 1 = 0 E(X_{n+1}-X_n|x_0,x_1...x_n)=E(\phi(A_{n+1})-\phi(A_n)+1|x_0,x_1...x_n)=E(\phi(A_{n+1})-\phi(A_n)|x_0,x_1...x_n)+1=0 E(Xn+1−Xn∣x0,x1...xn)=E(ϕ(An+1)−ϕ(An)+1∣x0,x1...xn)=E(ϕ(An+1)−ϕ(An)∣x0,x1...xn)+1=0
我们发现随机过程 X t X_t Xt就是一个鞅了
那么由鞅的停时原理, E ( X t ) = E ( X 0 ) E(X_t)=E(X_0) E(Xt)=E(X0),即 E ( ϕ ( A t ) + t ) = E ( ϕ ( A 0 ) + 0 ) E(\phi(A_t)+t)=E(\phi(A_0)+0) E(ϕ(At)+t)=E(ϕ(A0)+0),也即 E ( ϕ ( A t ) ) + E ( t ) = E ( ϕ ( A 0 ) ) E(\phi(A_t))+E(t)=E(\phi(A_0)) E(ϕ(At))+E(t)=E(ϕ(A0))
所以我们得到 E ( t ) = E ( ϕ ( A 0 ) ) − E ( ϕ ( A t ) ) E(t)=E(\phi(A_0))-E(\phi(A_t)) E(t)=E(ϕ(A0))−E(ϕ(At)),根据我们之前定义的性质, E ( ϕ ) A t E(\phi)A_t E(ϕ)At为一个常值,而 E ( ϕ ( A 0 ) ) E(\phi(A_0)) E(ϕ(A0))显然也是一个常值,所以只要能找到这个满足条件的势函数,就能很方便的求出 E ( t ) E(t) E(t)
这里我们只是在随机过程 X t X_t Xt中应用了停时定理,对原本的随机过程 A t A_t At并没有做什么限制
接下来结合具体的题目来讨论一下如何构造这样的一个势函数
CF1349D
大意:
有n个人在玩传球游戏,一开始第 i i i个人有 a i a_i ai个球。每一次传球,等概率随机选中一个球,设其当前拥有者为 i i i, i i i将这个球等概率随机传给另一个人 j ( j ≠ i ) j(j\neq i) j(j=i)。当某一个人拥有所有球时,停止游戏。问游戏停止时的期望传球次数。
记球的总数为m
不妨记状态 A t = ( a t , 1 , a t , 2 . . . a t , n ) A_t=(a_{t,1},a_{t,2}...a_{t,n}) At=(at,1,at,2...at,n),一个n维向量,分别表示 在时刻t,第i个人手中球的数量,显然它唯一地表示了某一个时刻的全局状态
也就是说,我们现在就把这个游戏过程抽象成了一个随机过程 A 0 , A 1 . . . . A_0,A_1.... A0,A1....,并且其停时为t。那么按照之前所说,我们需要去定义一个势函数 ϕ ( A t ) \phi(A_t) ϕ(At),为了计算方便,我们可以将 ϕ \phi ϕ具体到A的每一维向量,不妨记为 ϕ ( A t ) = ∑ i = 1 n f ( a t , i ) \phi(A_t)=\sum_{i=1}^{n}f(a_{t,i}) ϕ(At)=∑i=1nf(at,i),这里f是什么我们并不知道,但是如果我们知道了f,其实也就是相当于构造出了这个势能函数
这里再把我们定义的 ϕ \phi ϕ的性质再放一下
ϕ ( x ) \phi(x) ϕ(x)满足如下性质:
那么我们首先来考虑第一个性质,为了方便,不妨先考虑 E ( ϕ ( A n + 1 ) ∣ A 0 , A 1 , . . . A n ) E(\phi(A_{n+1})|A_0,A_1,...A_n) E(ϕ(An+1)∣A0,A1,...An)
发现传球过程就是一个 M a r k o v Markov Markov过程,并且该时刻的状态只与上一个时刻的状态有关,所以 E ( ϕ ( A n + 1 ) ∣ A 0 , A 1 , . . . A n ) = E ( ϕ ( A n + 1 ) ∣ A n ) E(\phi(A_{n+1})|A_0,A_1,...A_n)=E(\phi(A_{n+1})|A_n) E(ϕ(An+1)∣A0,A1,...An)=E(ϕ(An+1)∣An)
考虑一次转移的所有可能
i传球给j的概率是 a t , i m 1 n − 1 \large \frac{a_{t,i}}{m}\frac{1}{n-1} mat,in−11
E ( ϕ ( A n + 1 ) ∣ A n ) = ∑ i = 1 n ∑ j ≠ i a t , i m 1 n − 1 [ f ( a t , i − 1 ) + f ( a t , j + 1 ) + ∑ k ∉ ( i , j ) f ( a t , k ) ] E(\phi(A_{n+1})|A_n)=\sum_{i=1}^{n}\sum_{j\neq i}\frac{a_{t,i}}{m}\frac{1}{n-1}[f(a_{t,i}-1)+f(a_{t,j}+1)+\sum_{k\notin(i,j)}f(a_{t,k})] E(ϕ(An+1)∣An)=∑i=1n∑j=imat,in−11[f(at,i−1)+f(at,j+1)+∑k∈/(i,j)f(at,k)]
= ∑ i = 1 n a t , i m f ( a t , i − 1 ) + m − a t , i m ( n − 1 ) f ( a t , i + 1 ) + ( m − a t , i ) ( n − 2 ) m ( n − 1 ) f ( a t , i ) =\sum_{i=1}^{n}\frac{a_{t,i}}{m}f(a_{t,i}-1)+\frac{m-a_{t,i}}{m(n-1)}f(a_{t,i}+1)+\frac{(m-a_{t,i})(n-2)}{m(n-1)}f(a_{t,i}) =∑i=1nmat,if(at,i−1)+m(n−1)m−at,if(at,i+1)+m(n−1)(m−at,i)(n−2)f(at,i)
根据我们定义的性质 E ( ϕ ( A n + 1 ) − ϕ ( A n ) ∣ A 0 , A 1 , . . . A n ) = − 1 E(\phi(A_{n+1})-\phi(A_n)|A_0,A_1,...A_n)=-1 E(ϕ(An+1)−ϕ(An)∣A0,A1,...An)=−1
E ( ϕ ( A n + 1 ) − ϕ ( A n ) ∣ A 0 , A 1 , . . . A n ) = E ( ϕ ( A n + 1 ) − ϕ ( A n ) ∣ A n ) E(\phi(A_{n+1})-\phi(A_n)|A_0,A_1,...A_n)=E(\phi(A_{n+1})-\phi(A_n)|A_n) E(ϕ(An+1)−ϕ(An)∣A0,A1,...An)=E(ϕ(An+1)−ϕ(An)∣An)
= ( ∑ i = 1 n a t , i m f ( a t , i − 1 ) + m − a t , i m ( n − 1 ) f ( a t , i + 1 ) + ( m − a t , i ) ( n − 2 ) m ( n − 1 ) f ( a t , i ) ) − ∑ f ( a t , i ) = − 1 =(\sum_{i=1}^{n}\frac{a_{t,i}}{m}f(a_{t,i}-1)+\frac{m-a_{t,i}}{m(n-1)}f(a_{t,i}+1)+\frac{(m-a_{t,i})(n-2)}{m(n-1)}f(a_{t,i}))-\sum f(a_{t,i})=-1 =(∑i=1nmat,if(at,i−1)+m(n−1)m−at,if(at,i+1)+m(n−1)(m−at,i)(n−2)f(at,i))−∑f(at,i)=−1
所以 ∑ f ( a t , i ) = ( ∑ i = 1 n a t , i m f ( a t , i − 1 ) + m − a t , i m ( n − 1 ) f ( a t , i + 1 ) + ( m − a t , i ) ( n − 2 ) m ( n − 1 ) f ( a t , i ) ) + 1 \sum f(a_{t,i})=(\sum_{i=1}^{n}\frac{a_{t,i}}{m}f(a_{t,i}-1)+\frac{m-a_{t,i}}{m(n-1)}f(a_{t,i}+1)+\frac{(m-a_{t,i})(n-2)}{m(n-1)}f(a_{t,i}))+1 ∑f(at,i)=(∑i=1nmat,if(at,i−1)+m(n−1)m−at,if(at,i+1)+m(n−1)(m−at,i)(n−2)f(at,i))+1
那么我们可以把末尾的1分配到每一个和式里面去,这样左右的形式就统一了
所以 ∑ f ( a t , i ) = ∑ i = 1 n [ a t , i m f ( a t , i − 1 ) + m − a t , i m ( n − 1 ) f ( a t , i + 1 ) + ( m − a t , i ) ( n − 2 ) m ( n − 1 ) f ( a t , i ) + a t , i n ] \sum f(a_{t,i})=\sum_{i=1}^{n}[\frac{a_{t,i}}{m}f(a_{t,i}-1)+\frac{m-a_{t,i}}{m(n-1)}f(a_{t,i}+1)+\frac{(m-a_{t,i})(n-2)}{m(n-1)}f(a_{t,i})+\frac{a_{t,i}}{n}] ∑f(at,i)=∑i=1n[mat,if(at,i−1)+m(n−1)m−at,if(at,i+1)+m(n−1)(m−at,i)(n−2)f(at,i)+nat,i]
那么不妨记 f ( a ) = a m f ( a − 1 ) + m − a m ( n − 1 ) f ( a + 1 ) + ( m − a ) ( n − 2 ) m ( n − 1 ) f ( a ) + a n f(a)=\frac{a}{m}f(a-1)+\frac{m-a}{m(n-1)}f(a+1)+\frac{(m-a)(n-2)}{m(n-1)}f(a)+\frac{a}{n} f(a)=maf(a−1)+m(n−1)m−af(a+1)+m(n−1)(m−a)(n−2)f(a)+na
这样和式还是成立的,我们也成功抽象出了f函数
再转化一下, f ( a + 1 ) = m + a n − 2 a m − a f ( a ) − a ( n − 1 ) m − a ( f ( a − 1 ) + 1 ) f(a+1)=\frac{m+an-2a}{m-a}f(a)-\frac{a(n-1)}{m-a}(f(a-1)+1) f(a+1)=m−am+an−2af(a)−m−aa(n−1)(f(a−1)+1)
代入边界条件 a = 0 a=0 a=0时,有 f ( 1 ) = f ( 0 ) f(1)=f(0) f(1)=f(0),所以我们可以设 f ( 1 ) = f ( 0 ) = 0 f(1)=f(0)=0 f(1)=f(0)=0,毕竟势函数的初值并不重要
这样就得到了f,也就是相当于得到了势函数 ϕ ( x t ) = ∑ i f ( x t , i ) \phi(x_t)=\sum_{i}f(x_{t,i}) ϕ(xt)=∑if(xt,i)
然后考虑势函数的第二个性质: E ( ϕ ( A t ) ) = C E(\phi(A_t))=C E(ϕ(At))=C是一个常值
显然 E ( ϕ ( A t ) ) = ∑ i f ( a t , i ) = f ( m ) + ( n − 1 ) f ( 0 ) E(\phi(A_t))=\sum_{i}f(a_{t,i})=f(m)+(n-1)f(0) E(ϕ(At))=∑if(at,i)=f(m)+(n−1)f(0)是一个常值
所以根据我们的结论, E ( t ) = E ( ϕ ( A 0 ) ) − E ( ϕ ( A t ) ) = ∑ i f ( a 0 , i ) − f ( m ) − ( n − 1 ) f ( 0 ) = ∑ i f ( a 0 , i ) − f ( m ) E(t)=E(\phi(A_0))-E(\phi(A_t))=\sum_{i}f(a_{0,i})-f(m)-(n-1)f(0)=\sum_{i}f(a_{0,i})-f(m) E(t)=E(ϕ(A0))−E(ϕ(At))=∑if(a0,i)−f(m)−(n−1)f(0)=∑if(a0,i)−f(m)
这样我们就非常方便的得到了停时的期望
不妨来看一个近一点的例子
杭电多校09 Coins
大意:
n个人,每个人手中初始有 a i a_i ai个硬币,每次随机选择两个人,第一个人给第二个人一个硬币,如果某个人手中没有硬币了,则立即退出游戏,不再回来。当某一个人拥有全部硬币时,游戏结束
问停时的期望
题意与上一题十分相像,但是该题存在人数不固定的情况,所以我们描述游戏局面的时候要稍微改变一下
还是令 m = ∑ a i m=\sum a_i m=∑ai
令 A t = ( a t , 1 , a t , 2 . . . a t , h t ) A_t=(a_{t,1},a_{t,2}...a_{t,h_t}) At=(at,1,at,2...at,ht)来描述第t个时刻的局面,其中 h t h_t ht表示当前的剩余人数,显然它不是一个固定的值。但是我们能保证 ∀ i ≤ h t , a t , i > 0 \forall i\leq h_t,a_{t,i}>0 ∀i≤ht,at,i>0
仿照上一题的思路,我们令 ϕ ( A t ) = ∑ i = 1 n f ( a t , i ) \phi(A_t)=\sum_{i=1}^{n}f(a_{t,i}) ϕ(At)=∑i=1nf(at,i)作为势函数,尝试确定f
E ( ϕ ( A n + 1 ) ∣ A n ) = ∑ i = 1 h t ∑ j ≠ i 1 h t ( h t − 1 ) [ f ( a t , i − 1 ) + f ( a t , j + 1 ) + ∑ k ∉ ( i , j ) f ( a t , k ) ] E(\phi(A_{n+1})|A_n)=\sum_{i=1}^{h_t}\sum_{j\neq i}\frac{1}{h_t(h_t-1)}[f(a_{t,i}-1)+f(a_{t,j}+1)+\sum_{k\notin(i,j)}f(a_{t,k})] E(ϕ(An+1)∣An)=∑i=1ht∑j=iht(ht−1)1[f(at,i−1)+f(at,j+1)+∑k∈/(i,j)f(at,k)]
= ∑ i = 1 h t 1 h t f ( a t , i − 1 ) + 1 h t f ( a t , i + 1 ) + h t h t − 2 f ( a t , i ) =\sum_{i=1}^{h_t}\frac{1}{h_t}f(a_{t,i}-1)+\frac{1}{h_t}f(a_{t,i}+1)+\frac{h_t}{h_t-2}f(a_{t,i}) =∑i=1htht1f(at,i−1)+ht1f(at,i+1)+ht−2htf(at,i)
代入 E ( ϕ ( A n + 1 ) − ϕ ( A n ) ∣ A 0 , A 1 , . . . A n ) = − 1 E(\phi(A_{n+1})-\phi(A_n)|A_0,A_1,...A_n)=-1 E(ϕ(An+1)−ϕ(An)∣A0,A1,...An)=−1,也就是 E ( ϕ ( A n + 1 ) − ϕ ( A n ) ∣ A n ) = − 1 E(\phi(A_{n+1})-\phi(A_n)|A_n)=-1 E(ϕ(An+1)−ϕ(An)∣An)=−1(显然这里当前局面也只与上一个局面有关),有
∑ i = 1 h t f ( a t , i ) = [ ∑ i = 1 h t 1 h t f ( a t , i − 1 ) + 1 h t f ( a t , i + 1 ) + h t h t − 2 f ( a t , i ) ] + 1 \sum_{i=1}^{h_t} f(a_{t,i})=[\sum_{i=1}^{h_t}\frac{1}{h_t}f(a_{t,i}-1)+\frac{1}{h_t}f(a_{t,i}+1)+\frac{h_t}{h_t-2}f(a_{t,i})]+1 ∑i=1htf(at,i)=[∑i=1htht1f(at,i−1)+ht1f(at,i+1)+ht−2htf(at,i)]+1
= ∑ i = 1 h t ( 1 h t f ( a t , i − 1 ) + 1 h t f ( a t , i + 1 ) + h t h t − 2 f ( a t , i ) + 1 h t ) =\sum_{i=1}^{h_t}(\frac{1}{h_t}f(a_{t,i}-1)+\frac{1}{h_t}f(a_{t,i}+1)+\frac{h_t}{h_t-2}f(a_{t,i})+\frac{1}{h_t}) =∑i=1ht(ht1f(at,i−1)+ht1f(at,i+1)+ht−2htf(at,i)+ht1)
抽象出 f ( a ) = 1 h f ( a − 1 ) + 1 h f ( a + 1 ) + h h − 2 f ( a ) + 1 h f(a)=\frac{1}{h}f(a-1)+\frac{1}{h}f(a+1)+\frac{h}{h-2}f(a)+\frac{1}{h} f(a)=h1f(a−1)+h1f(a+1)+h−2hf(a)+h1
f ( a + 1 ) − f ( a ) = f ( a ) − f ( a − 1 ) − 1 f(a+1)-f(a)=f(a)-f(a-1)-1 f(a+1)−f(a)=f(a)−f(a−1)−1
令 g ( a ) = f ( a ) − f ( a − 1 ) , 有 g ( a ) = g ( 0 ) − a g(a)=f(a)-f(a-1),有g(a)=g(0)-a g(a)=f(a)−f(a−1),有g(a)=g(0)−a,则 f ( a ) = f ( 0 ) + a g ( 0 ) − a ( a + 1 ) 2 f(a)=f(0)+ag(0)-\frac{a(a+1)}{2} f(a)=f(0)+ag(0)−2a(a+1)
取 f ( 0 ) = g ( 0 ) = 0 f(0)=g(0)=0 f(0)=g(0)=0,则 f ( a ) = − a ( a + 1 ) 2 f(a)=-\frac{a(a+1)}{2} f(a)=−2a(a+1)
所以 E ( t ) = E ( ϕ ( A 0 ) ) − E ( ϕ ( A t ) ) = ∑ i = 1 n f ( a 0 , i ) − f ( m ) E(t)=E(\phi(A_0))-E(\phi(A_t))=\sum_{i=1}^{n}f(a_{0,i})-f(m) E(t)=E(ϕ(A0))−E(ϕ(At))=∑i=1nf(a0,i)−f(m)
未完待续