筆記來源:高級算法設計(孫曉明老師部分)
本文參考:http://people.seas.harvard.edu/~salil/pseudorandomness/basic.pdf
關於條件期望用於去隨機化的原理https://blog.csdn.net/qq_38662930/article/details/105141845
最大割
定義將圖的頂點分爲兩個集合,使得集合間的邊數最大
形式化定義:
設最優的割劃分爲OPT,隨機算法求出的一個割爲δ(U)定義其比值 爲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)}=2E,
當不再是硬幣選擇是(例如1/3,則結果可以是5/9),概率變會提高,因此最小是1/2
利用條件期望去隨機化
主要思想:利用逐次固定變量的優化方法,先通過期望找到一個好的然後利用條件期望去隨機化。
如上圖所示,我們己經求出E(∣E(A,B)∣)的期望,然後利用全概率公式展開成關於Z1(表示第一個頂點是否進入所求割)的條件概率期望,我們總能求出關於E(Y∣Z1=1)和E(Y∣Z1=0)的大小關係,然後向上放大。接下來我們再求出關於$Z_1 的最優解,然後再對X_2 $進行展開和放大,直到所有的頂點全部展開.
從而求得一個可行割∣E(A,B)∣=E(Y∣u1∈A,u2∈B...)≥E(∣E(A,B)∣)