Lecture 24 - 2025 / 5 / 19
Mixing Time
Definition (Vartiation Distance): 对于两个 Ω 上的分布 μ,ξ,定义
∥μ−ξ∥=21x∈Ω∑∣μ(x)−ξ(x)∣=A⊆Ωmax∣μ(A)−ξ(A)∣
Definition: 对于一个不可约无周期的 Markov 链,定义时间 t 的距离为 Δ(t)=maxx∈Ω∥π−px(t)∥。
Definition (Mixing Time): 定义 τmix 为混合时间:τmix=min{t∣Δ(t)≤1/2e}。
Fact: Δ(τmix⌈lnϵ−1⌉)≤ϵ
通过 coupling 的方式可以证明 Δ(kt)≤(2Δ(t))k。
Definition (Strong Stationary Time): 停时 T 是一个强稳定时间,如果停下来时可以保证收敛 Pr[Xt=y∣T=t]=π(y)。
Claim: Δ(t)≤Pr[T>t]
虽然 Δ(t) 是一个固定的数,但我们可以对它求期望
E[Δ(t)]=Pr[T>t]⋅E[Δ(t)∣T>t]+Pr[T≤t]⋅E[Δ(t)∣T≤t]≤Pr[T>t]⋅1+Pr[T≤t]⋅0=Pr[T>t]
Example: Top-in-at-Random
考虑一种洗牌方式:每次把最顶上的牌插入随机位置。
Claim: 这种洗牌方式的混合时间为 O(nlogn)。
用 T 表示原本最底下的牌被随机插入的时刻,则 T 是一个强稳定时间。可见 T=T1+T2+⋯+Tn−1+1,其中 Ti 表示从位置 i 变动到 i+1 所需要的时间。每个 Ti 的分布是几何分布,期望为 n/i,故 E[T]=O(nlogn)。根据 Markov 不等式,τmix≤O(nlogn)。
Example: Riffle Shuffle
考虑一种洗牌方式:每次把牌按照 B(n,1/2) 分成两堆,然后随机均匀交叉。它的逆过程是,随机将每张牌标记为 0/1,然后将 0 的牌挪到上面,1 的牌挪到下面。
Claim: 这种洗牌方式的混合时间 ≤2log2n+O(1)。
将每轮的编号串联为一个二进制串,用 T 表示每张牌被唯一标号确定的时间,也即给每张牌随机抽样 [0,2T) 内的编号,能够做到不重复的时间。
根据生日悖论,n 个人从 cn2 大小的集合抽取生日,有生日冲突的概率渐进趋向 1−exp(−1/2c)。因此,只需 1−exp(−1/2c)≤1/2e 且 2t≥cn2,则有 τmix≤2log2n+O(1)。
另一种看法是,对于固定的两张牌 (x,y),无法被分开的概率为 2−t,根据 union bound,只需要 t=O(logn) 即可使得 n22−t≤1/2e。
Coupling
Definition (Coupling): 设 (Xt),(Yt) 为一个 Markov 链的两个样本,称它们是一个耦合,如果
- 边际上 Xt 和 Yt 的分布相同,即 Pr[Xt=y]=Pr[Yt=y];
- Xt=Yt 时,Xt+1=Yt+1。
Definition (Meeting Time): Txy 是从 x,y 开始的两个 Markov 链的耦合的第一次相遇时间。即 Txy=min{t∣Xt=Yt,X0=x,Y0=y}。
Claim: Δ(t)≤maxx,yPr[Txy≥t]
首先注意到,对于任何两个 r.v. X,Y,都有 Pr[X=Y]≥∥PX−PY∥。
从而 Δ(t)=maxx∥Px(t)−π∥≤maxx,y∥Px(t)−Py(t)∥≤maxx,yPr[Xt=Yt∣X0=x,Y0=y]≤maxx,yPr[Txy≥t]。其中第一个不等号是因为 π 可以写作 Py(t) 的线性组合 π=∑yπ(y)Py(t):
π(x)=(πPt)(x)=y∑π(y)Pt(y,x)=y∑Py(t)(x)π(y)
Corollary: τmix≤2emaxx,yE[Txy]
根据 Markov 不等式,Pr[Txy≥t]≤E[Txy]/t,因此 Δ(t)≤maxx,yE[Txy]/t。当 t=2emaxx,yE[Txy] 时,Δ(t)≤1/2e。
Example: Random Transposition Shuffle
考虑一种洗牌方式:每次随机选择两个位置交换。这个洗牌方式的等价描述是,选择一个位置和一张牌 c,将 c 交换到位置 i。
Claim: 这种洗牌方式的混合时间为 O(n2)。
用 Coupling 来分析,用 Dt 表示 Xt,Yt 不同的位置,目标是分析多久之后 Dt=0。
考虑一次选中 (i,c),
- 如果 c 已经匹配了,则 Dt 不会改变
- 如果 c 没有匹配,则 Dt 不会上深,且如果 i 位置之前不匹配,将会至少减少 1。
因此,如果当前 Dt=d,则 Pr[Dt decreases]≥(d/n)2。于是 E[Txy]≤∑d=1n(n/d)2=O(n2)。
注:实际上为 Θ(nlogn)。