• 沒有找到結果。

第三章 最小多支配集合的自我穩定演算法

3.4 賽局與演算法的差異

圖 3.1 的演算法中,每個節點要更新的 x(i)或 g(i)值都與其鄰居節點的 local variable 直接相關,而又跟鄰居的鄰居的 local variable 間接相關。自我穩定演算 法的運作模式是,先檢查是否符合演算法中某條規則的先決條件。若有符合,則 執行相對應的動作。若有多條規則的先決條件均符合,則只會執行其中某一條規 則的動作。因為在圖 3.1 的演算法中,x(i)和 g(i)的值的更新動作分別寫在不同的 規則中,所以可能導致節點的 x(i)和 g(i)的值不一致(inconsistent)。結果就是節點 可能會參考了自己或鄰居節點未更新的 g(i)值來更新自己的 x(i),造成演算法進 入暫時性的錯誤狀態。雖然如此,自我穩定演算法可以保證不管演算法初始狀態 為何或是否進入暫時性的錯誤狀態,都能夠保證可在有限時間內達到穩定而正確 的狀態。舉例而言, 圖 3.6 是一個 5 個節點的範例,支配需求為 2。若依照表 3.5 的決策順序,變為圖 3.7。此時 P1、P4 和 P5 變為支配者(如圖 3.7),則它們 的 g(i)值皆應為 OVER。因為一次只會執行其中某一條規則的動作,所以導致變 數值不一致的情況。

在傳統完美資訊賽局設計中,只要任何一個參與者做了決策,所有其它參 與者都可以根據此最新的決策資訊來進行後續決策。相較之下,圖 3.1 演算法像 是實作一個非完美資訊賽局。一般而言,此非完美資訊賽局可以探索更多可能的 問題解,效能反而比完美資訊賽局的方法來得好。以下我們舉例來說明。

圖 3.8 為非完美資訊賽局的某個初始狀態或執行至一半的中間暫態。假設 k = 1,P1~P10 代表 10 個節點,黑色節點代表為支配節點,g 值代表演算法中的 g(i),

初始狀態有 UNDER、OVER,支配者(x(i) = true 的節點)為:{P1,P2,P3,P4,

P9,P10}。若依照表 3.6 的決策順序,非完美資訊賽局最終得到的最小支配集合 為:{P3,P4,P8}。

圖 3.9 為完美資訊賽局中對應圖 3.8 的狀態。此時的支配者集合(ci=1 的節點) 同樣為{P1,P2,P3,P4,P9,P10}。完美資訊賽局最終到達穩定時的最小支配

25

集合內必定有 4 個節點。原因是右邊的節點 1、3、5、7、8、10 中,節點 1、3、

10 一定為支配者(因為可獲得利益,所以不會再變為非支配者),而節點 5、7、8 一定為非支配者(若變為支配者無法獲得利益)。再來以剩餘節點 2、4、6、9 來 看,節點 2 一定為非支配者,而節點 4、6、9 只要有一個為支配者即可滿足支配 集合的定義。因此完美資訊賽局可能得到的最小支配集合為{P1,P3,P4,P10}、

{P1,P3,P6,P10}、或{P1,P3,P9,P10}。

上述例子中,完美資訊賽局設計最少需要 4 個支配節點,但自我穩定演算法(非 完美資訊賽局)是可以找出三個支配節點的解。此例子說明了為何一般而言,自 我穩定演算法的效能會比賽局設計的結果來的好。

圖 3.6 節點的 x(i) 和 g(i)值不一致

表 3.5 決策順序(圖 3.5 的決策)

g(1) =UNDER

g(2) =EQUAL g(3) =OVER

g(4) = UNDER

g(5) =UNDER P 1

P 2 P 3

P 4 P 5

節點編號 規則 狀態變化 P7 R5 x(7)=true P1 R5 x(1)=true P7 R3 g(7)=OVER

26

圖 3.7 (圖 3.5)決策後的圖形

圖 3.8 執行 IkDG 前的初始狀態

圖 3.9 執行 PkDG 前的初始狀態

g(1) =UNDER

g(2) =EQUAL g(3) =OVER

g(4) = UNDER

27

表 3.6 決策順序(IkDG 部份) 節點編號 規則 狀態變化 P8 R5 x(8)=true P6 R5 x(6)=true P7 R5 x(7)=true P6 R3 g(6)=OVER P5 R3 g(5)=OVER P10 R3 g(10)=OVER

P7 R6 x(7)=false P2 R6 x(2)=false P9 R6 x(9)=false P8 R3 g(8)=OVER P7 R2 g(7)=EQUAL P10 R6 x(10)=false P10 R2 g(10)=EQUAL

P2 R3 g(2)=OVER P6 R6 x(6)=false P9 R2 g(9)=EQUAL P1 R6 x(1)=false P5 R2 g(5)=EQUAL P2 R2 g(2)=EQUAL

不過,若以決策次數來比較,非完美資訊賽局演算法所需的決策次數會遠比 完美資訊賽局來得多,收斂時間相對就會比較久。所以我們提出的自我穩定演算 法事實上是以時間來換取效能。此部分的效能分析將在第四章中呈現。

28