• 沒有找到結果。

支配集合問題相關自我穩定演算法

第二章 背景知識與相關研究

2.3 支配集合問題相關自我穩定演算法

針對最小支配集合(minimal dominating set)問題,已有許多自我穩定演算法 被提出。由 Hedetniemi 等人所提出的演算法 [4] 使用集中式的模型。每個節點 有兩個 local variable,一個用來記錄此節點是否屬於最小支配集合,另一個為 pointer,為非支配者用來指向其鄰近唯一的支配者。例如假設節點 i 為非支配者,

且其鄰居中節點 j 為唯一的支配者,則節點 j 支配 節點 i,此時節點 i 的 pointer 會指向節點 j,而節點 i 為 節點 j 的 private neighbor。演算法運作規則如下: (1).

當非支配者所有鄰居也都為非支配者時,則其變為支配者。(2).當支配者沒有 private neighbor 且鄰近至少有一個節點為支配點,則其變為非支配者。此演算法 保證到達穩定狀態,原因是所有從支配者變為非支配者的節點不會再改變自己的 角色。

由 Z. Xu 等人 [5] 提出自我穩定演算法使用同步式的模型。每個節點有兩 個 local variable 分別用來記錄自己是否為支配點以及鄰居支配自己的狀況。另 外每個節點都有唯一的 ID,用來避免在同步模式下,節點同時都做動作的情況,

以免系統無法到達穩定狀態。

Kakugawa 與 Masuzawa 兩位學者 [6] 提出的自我穩定演算法也是使用 synchronous daemon。他們導入了 safe convergence 的觀念,確保系統可以快速進 入 legitimate configuration (可能是支配集合,但不一定是最小支配集合) 就不會 再回到不合法的狀態(變成不為支配集合)。此演算法最終會進入合法且最佳的狀 態(最小支配集合),而找出的最小支配集合也為 independent (鄰近的節點之間不 會有兩個支配者同時存在)。此演算法使用 identifier 來打破對稱,避免鄰近的節 點同時做動作(都變為支配者 or 非支配者)而導致系統不穩定。

9

由Volker Turau [7] 提出的自我穩定演算法,假設了分散式的模型。每個點 都有兩個 local variable,一個用來記錄節點本身是否在最小支配集合中,另一個 dependency pointer是非支配節點用來記錄鄰近唯一的支配者。演算法的運作規則 如下 : (1).當非支配者想變為支配者或支配者想變為非支配者之前必須先把 local state 改為 WAIT( 代 表 節點 想改 變 local state) 。 當 非 支配點 的 狀態 為 WAIT 、沒有鄰居為支配節點、且本身的 ID 比鄰近所有想變為支配者的節點都 來得小,則可變為支配者。(2).當支配者的狀態為 WAIT、至少鄰近一個支配者、

且其本身不需支配任何鄰居節點,則可變為非支配者。

文獻 [8] 在 分散式的模型 之下,也使用識別碼來打破對稱的情況,避免 系統無法到達穩定的情況發生。

由Kamei與Kakugawa [9] 提出了自我穩定演算法解決 k-支配集合問題。他 們的主要想法是先找出 maximal independent set (MIS),然後再從不在 MIS 中的 節點中找出最小k-支配集合。此演算法假設使用同步的模式,以 ID 大的節點優 先來避免同步模式下系統無法穩定的情況。如果圖形中的節點最小分支度小於 k ,則此演算法最終找出的集合為最小k-支配集合。若是節點最小分支度大於或 等於 k,則找出的集合為近似於 最少 k-支配集合。

Huang等人曾針對 最小 2-支配集合問題提出自我穩定演算法[10],[11]。文 獻 [10] 假設 分散式的模型,使用ID來打破對稱的問題。文獻 [11] 的演算法使 用集中式的模型。系統最終穩定時,每個非支配者至少鄰近2個支配者。

在k-tuple domination set問題中,無論支配者或非支配者都要求至少有 k 個 鄰居為支配者。對支配者而言,本身是支配者這件事是有計算在內的。如果不計 入自己為支配者,則1-tuple domination problem 變成 total domination set problem [18]。Goddard 等人 [19] 曾提出自我穩定演算法來解決 minimal total domination set problem。

Jia等人 [2] 提出distributed randomized algorithm作為尋找minimum size的支

10

配集合的趨近作法。作者並延伸他們的作法至處理multi-domination。演算法假設 同步式的模型,使用機率的方式打破相鄰節點的對稱行為,避免系統無法達到穩 定狀態。但是此演算法並非自我穩定演算法。上述的相關研究的分類比較如表2.1 所示。另外由Liang等人 [20] 所提出的方法作為尋找最小支配集合的作法,使用 集中式的模型,但是不屬於自我穩定演算法。

而我們最終要找的最小多支配集合,根據文獻 [12] 研究整理,目前尚未有 針對K-domination問題所設計的自我穩定演算法提出。

表 2.1 自我穩定演算法歸類比較

參考來源 結果 需求拓樸邏輯

Deamon

Hedetniemi et al.[4] DS Arbitrary Central Hedetniemi et al.[4] MDS Arbitrary Central

Xu et al.[5] MDS Arbitrary Synchronous Kakugawa and Masuzawa[6] MDS Arbitrary Synchronous Turau [7] MDS Arbitrary Distributed Goddard et al. [8] MDS Arbitrary Distributed Kamei and Kakugawa[9] MKDS Arbitrary Synchronous

Huang et al.[10] M2DS Arbitrary Distributed Huang et al.[11] M2DS Arbitrary Central Goddard et al.[18] MTDS Arbitrary Central

11