笔记来源:高级算法设计(孙晓明老师部分)
本文参考:http://people.seas.harvard.edu/~salil/pseudorandomness/basic.pdf
关于条件期望用于去随机化的原理https://blog.csdn.net/qq_38662930/article/details/105141845
最大割
定义将图的顶点分为两个集合,使得集合间的边数最大
形式化定义:
设最优的割划分为OPTOPTOPT,随机算法求出的一个割为δ(U)\delta(U)δ(U)定义其比值 为δ(U)OPT\frac{\delta(U)}{OPT}OPTδ(U)?,比值越接近1越好 。通过随机 算法可以找到一个之割,其期望割边至少是边数的二分之一。
主要思想是:对于每一个顶点以掷硬币的方式决定其是否属于所求的割。
证明:分为两个集合S和T,?(ui,vj)∈E当ui∈S,vj∈T,或ui∈T,vj∈S时即pr(xi≠xj),则ui,vj在对应的割中Pr{(ui,vj)∈E(S,T)}=1/4+1/4=1/2,此时E{δ(U)}=E2\forall (u_i,v_j) \in E \\ 当u_i \in S,v_j \in T,或u_i \in T,v_j \in S时\\ 即pr(x_i\ne x_j) ,则u_i,v_j 在对应的割 中\\ Pr\{(u_i,v_j)\in E(S,T)\}=1/4+1/4=1/2,\\此时E\{\delta(U) \}=\frac{E}{2}?(ui?,vj?)∈E当ui?∈S,vj?∈T,或ui?∈T,vj?∈S时即pr(xi???=xj?),则ui?,vj?在对应的割中Pr{
(ui?,vj?)∈E(S,T)}=1/4+1/4=1/2,此时E{
δ(U)}=2E?,
当不再是硬币选择是(例如1/3,则结果可以是5/9),概率变会提高,因此最小是1/2
利用条件期望去随机化
主要思想:利用逐次固定变量的优化方法,先通过期望找到一个好的然后利用条件期望去随机化。
如上图所示,我们己经求出E(∣E(A,B)∣)E(|E(A,B)|)E(∣E(A,B)∣)的期望,然后利用全概率公式展开成关于Z1(表示第一个顶点是否进入所求割)Z_1(表示第一个顶点是否进入所求割)Z1?(表示第一个顶点是否进入所求割)的条件概率期望,我们总能求出关于E(Y∣Z1=1)E(Y|Z_1=1)E(Y∣Z1?=1)和E(Y∣Z1=0)E(Y|Z_1=0)E(Y∣Z1?=0)的大小关系,然后向上放大。接下来我们再求出关于$Z_1 的最优解,然后再对的最优解,然后再对的最优解,然后再对X_2 $进行展开和放大,直到所有的顶点全部展开.
从而求得一个可行割∣E(A,B)∣=E(Y∣u1∈A,u2∈B...)≥E(∣E(A,B)∣)|E(A,B)|=E(Y|u_1\in A,u_2\in B...)\geq E(|E(A,B)|)∣E(A,B)∣=E(Y∣u1?∈A,u2?∈B...)≥E(∣E(A,B)∣)