無線網狀網路之頻道配置問題-使用賽局理論
全文
(2) 致謝 首先,我要感謝我的指導教授嚴力行老師。從研究的方向、主題、內容、論 文的撰寫到完成論文,老師給了我許多很有用的建議。除了學術之外,老師也啟 發我很多對我人生極具意義的價值觀。同時我也要感謝我的口試委員謝欽旭與紀 光輝教授,他們提供了相當多的意見使我的論文在架構與邏輯上更加完備。 我也要感謝在這兩年研究所生涯中我所遇到的每個人。與他們的相處的過程 中我學習到許多課業之外的事,也間接幫助我順利度過這兩年。 最後,我要感謝我的家人不論是在精神上或是經濟上的支持。感謝家人無私 的付出,幫助我順利完成學業。. i.
(3) 無線網狀網路之頻道配置問題-使用賽局理論 指導教授:嚴力行. 博士. 國立高雄大學資訊工程學系. 學生:戴源高 國立高雄大學資訊工程學系. 摘要 無線網狀網路中同頻干擾對於網路產出量有著極大的影響,若能降低干擾則 能有效提升產出量。本篇論文探討如何在多頻道、多介面的無線網狀網路環境中 進行頻道配置,目標在於降低無線網狀網路中的同頻干擾,提升產出量。我們將 賽局理論 (Game Theory) 應用至頻道配置問題,將介面卡當成賽局中的參與者, 並且將同頻干擾視為成本,每個參與者以最大化自己的利益為目標,即希望自己 花費的成本能夠最低。我們也證明在此非合作賽局中存在納許平衡,並且提出 Best Response 與 Better Response 兩種到達納許平衡的策略重選原則。為了滿足網路最 大連通性,我們利用鴿籠原理限制每個網路介面卡可以使用的頻道。模擬實驗的 結果顯示,我們所提出的賽局方法在網卡數目較少時其效能優於傳統方法。我們 也與兩種頻道配置賽局作比較。實驗結果說明我們的賽局方法不論在何種情況皆 優於此兩種頻道配置賽局。. 關鍵詞:無線網狀網路、頻道配置、賽局理論. ii.
(4) Channel Assignment in IEEE 802.11 Multi-channel Multi-radio Wireless Mesh Networks: A Game Theoretic Approach Advisor: Dr. Li-Hsing Yen Institute of Computer Science and Information Engineering National University of Kaohsiung Student: Yuan-Gao Dai Institute of Computer Science and Information Engineering National University of Kaohsiung. ABSTRACT In IEEE 802.11s wireless mesh networks, overall throughput will be decreased by co-channel interference between links. We have proposed a channel assignment game in multi-radio and multi-channel wireless mesh networks that can help decrease co-channel interference. In this game, we consider network interface cards as players with channels as their strategies. The cost associated with each strategy is the resultant co-channel interference. The objective of each player is to maximize his own utility. We have proved that this non-cooperative game always end with pure nash equilibrium. For reserving connectedness, our algorithm restricts the number of available channel by exploiting the pigeonhole principle. Simulation results show that, our game approach has better performance when a few network interfaces are available. We also compared our game approach with two different channel assign games in terms of link ratio and throughput . The simulations show that our game approach is better than the other two in any case. Keywords : Wireless Mesh Networks (WMNs), Channel assignment, Game Theory. iii.
(5) 目錄 致謝……………………………………………………………….………………….......i 中文摘要……………………………………………………………….………..……. ..ii 英文摘要.…..……………………………………………………..…..................……...iii 第一章 簡介..………………………………………………………………..….……..1 第二章 背景知識與相關研究.......................................................................................5 2.1 無線網狀網路之頻道配置問題...............................................................5 2.1.1 IEEE 802.11s.............................................................................5 2.1.2 Interference 與 Connectivity 之間的關係................................6 2.1.3 干擾模型...................................................................................7 2.1.4 傳統頻道配置問題相關研究...................................................9 2.2 賽局理論.................................................................................................15 2.2.1 賽局理論簡介.........................................................................15 2.2.2 賽局的分類.............................................................................16 2.2.3 賽局的定義.............................................................................17 2.2.4 應用賽局理論於頻道配置問題相關研究.............................18 第三章 頻道配置賽局設計與分析.............................................................................22 3.1 頻道配置賽局.........................................................................................22 3.1.1 頻道配置賽局基本設定.........................................................22 3.1.2 頻道配置賽局運作例子.........................................................26 3.1.3 賽局的穩定性.........................................................................27 3.1.4 Better Response.......................................................................30 3.1.5 賽局的實作.............................................................................31 3.1.6 分散式頻道配置模擬演算法.................................................32 3.2 鏈結分配頻道..........................................................................................34 3.2.1 多個共同頻道的鏈結頻道配置.............................................34 3.2.2 鏈結配置頻道例子.................................................................35 第四章 模擬實驗.........................................................................................................37 4.1 頻道配置效能實驗.................................................................................37 4.1.1 實驗環境設定.........................................................................39 4.1.2 結合鴿籠原理的效能.............................................................39 4.1.3 不同 MAP 數目的效能..........................................................41 4.1.4 不同介面卡數目的效能.........................................................43 4.1.5 不同 SIRthreshold 值的效能..........................................................45 4.1.6 4.1.7. 賽局穩定性實驗.....................................................................47 平均策略轉換次數實驗.........................................................47. 4.2 Fairness Index .........................................................................................49 iv.
(6) 4.2.1 SIR 值公平性實驗..................................................................50 4.2.2 利益值公平性實驗.................................................................51 第五章 結論.................................................................................................................53 參考文獻.........................................................................................................................54. v.
(7) 圖目錄 圖 2.1. IEEE 802.11s 無線網狀網路架構…………………………………………...6. 圖 2.2. 干擾程度與連通度的權衡範例……………………………………………...7. 圖 2.3. Protocol Model 下的干擾關係範例………………………………………….8. 圖 3.1. 鴿籠原理使用範例………………………………………………………….23. 圖 3.2. 參與者計算成本以 i 為例…………………………………………………...25. 圖 3.3. 頻道配置賽局初始狀態…………………………………………………….26. 圖 3.4. 頻道配置賽局最終狀態…………………………………………………….27. 圖 4.1. SIR 值與產出量關係的網路拓樸…………………………………………..38. 圖 4.2. SIR 值與產出量在不同距離下的相關性…………………………………..38. 圖 4.3. 原始方法[7]與結合鴿籠原理後的效能比較(傳輸半徑 125 m)…………...40. 圖 4.4. 原始方法[7]與結合鴿籠原理後的效能比較(傳輸半徑 250 m).…………..40. 圖 4.5. 原始方法[7]與結合鴿籠原理後的效能比較(傳輸半徑 500 m).…………..41. 圖 4.6. 不同的頻道配置演算法在網卡數為 2 時改變 MAP 數量的效能變化.......41. 圖 4.7. 不同的頻道配置演算法在網卡數為 4 時改變 MAP 數量的效能變化.......42. 圖 4.8. 不同的頻道配置演算法在網卡數為 6 時改變 MAP 數量的效能變化……42. 圖 4.9. 不同的頻道配置演算法在傳輸半徑為 125 m 時的 LR 值…………………43. 圖 4.10. 不同的頻道配置演算法在傳輸半徑為 250 m 時的 LR 值…………………44. 圖 4.11. 不同的頻道配置演算法在傳輸半徑為 500 m 時的 LR 值…………………45. 圖 4.12. 不同的頻道配置演算法在網卡數為 2 時改變 SIRthreshold 的效能變化……...46. 圖 4.13. 不同的頻道配置演算法在網卡數為 4 時改變 SIRthreshold 的效能變化……...46. 圖 4.14. 不同的頻道配置演算法在網卡數為 6 時改變 SIRthreshold 的效能變化……...46. 圖 4.15. 賽局到達穩定狀態後的利益值總和……………………………………….47. 圖 4.16. 到達穩定狀態所需的平均策略轉換次數(傳輸半徑為 125 m)……………48. 圖 4.17. 到達穩定狀態所需的平均策略轉換次數(傳輸半徑為 250 m)……………48. vi.
(8) 圖 4.18. 到達穩定狀態所需的平均策略轉換次數(傳輸半徑為 500 m)……………49. 圖 4.19. 關於 SIR 值的公平性指數比較(傳輸半徑為 125 m)………………………50. 圖 4.20. 關於 SIR 值的公平性指數比較(傳輸半徑為 250 m)………………………51. 圖 4.21. 關於 SIR 值的公平性指數比較(傳輸半徑為 500 m)………………………51. 圖 4.22. 穩定狀態後參與者的利益值公平性比較……………………………….....52. vii.
(9) 表目錄 表 2.1 不同傳統頻道配置演算法的分類與比較………………………………….14 表 2.2 囚徒困境…………………………………………………………………….16 表 2.3 不同頻道配置賽局的分類與差異性比較………………………………….21 表 3.1 頻道配置賽局運作例子的項細步驟……………………………………….26 表 3.2 鏈結配置頻道詳細步驟…………………………………………………….35. viii.
(10) 第一章 簡介. 近年來,隨著電腦與無線通訊技術的快速發展,行動計算 (Mobile Computing) 已然成為電腦通訊領域中備受矚目的一環。其中透過無線區域網路 (Wireless LAN; WLAN) 連結網際網路的通訊方式更廣泛的應用在商務區、大學、機場,及其他公 共區域。 一般架構無線網路的方式多把有線網路連結到無線基地台 (Access Point; AP) ,這種方式適合應用在服務範圍較小的室內環境;如果應用在戶外,甚至是 在某些難以架設有線網路的環境之下,有線的 AP 連接方式將大幅提高建置成本以 及網路佈置的複雜度。 為了解決上述成本及複雜度的問題而在IEEE 802.11s標準中提出了無線網狀 網路 (Wireless Mesh Networks; WMNs) 的架構並定義了三種基礎設施: Mesh Access Point (MAP)、Mesh Point (MP) 與Mesh Portal (MPP)[1, 3]。這種網狀網路的 架構可以有效的提升無線網路的服務範圍,同時降低設施的建置成本。 在無線網狀網路中,兩個裝置之間必須使用相同的頻道才能夠傳輸資料,如 果有其他的鄰近裝置使用重疊的頻道 (Overlapping Channel) 或者是使用相同的頻 道,則可能會對接收端造成干擾,使得接收端因為傳輸碰撞或是等待傳送端獲得 頻道使用權的關係而無法正確且及時的收到傳送端所傳送的資料,導致產出量 (Throughput) 降 低 的 情 況 發 生 [15] 。 IEEE 802.11 提 供 多 個 非 重 疊 的 頻 道 (Non-overlapping Channel) 讓裝置使用,藉此降低頻道競爭與干擾的程度。如何有 效的使用這些非重疊頻道便成為一個重要的課題。 針對如何有效利用多頻道 (Multiple-channel) 的問題,之前已有許多學者提出 他們的作法。有學者[2, 20]提出在單一網路介面卡 (Single-Radio) 下利用動態切換 頻道 (Channel Switching) 的方式來讓單一介面卡可以在多個頻道中運作。由於只 有使用單一介面卡,因此當某傳輸路徑上各個節點所使用的頻道過於分散時,會. 1.
(11) 造成點對點延遲 (End-to-end Delay) 的增加;這是因為在封包傳送的過程當中中繼 節點之間所使用的頻道不同而必須等待一段頻道切換時間的關係。另一方面,如 果該路徑上大部分的節點都使用相同的頻道,則會因頻道競爭與干擾的關係進而 降低最大輸出量 (Capacity) 。 隨著硬體設置成本的降低,有其他學者考慮在多頻道下使用多介面卡 (Multiple-radio) 的作法。藉由一個節點設置兩張以上的半雙工網路介面卡,分別 使用不同的頻道傳送與接收資料。如此一來,節點便能做到同時傳送資料與接收 資料,大幅提升輸出量。然而為了要降低節點之間的干擾,頻道的配置必須平均, 換句話說也就是相同頻道的使用不能過度集中,但是也不能太過分散。太過分散 的頻道配置可能會導致某些鏈結因為兩端的節點沒有使用相同頻道而無法建立, 造成網路分割 (Network Partition) 的後果。如何在最小化干擾與最大化連通程度之 間做權衡便成為另一個重要的議題。 在多頻道、多介面卡的頻道配置問題中,我們可以依據介面卡切換頻道的頻 率高低將不同作者之間的作法分成三類 : 一、固定配置 (Fixed Assignment) ,二、 動態配置 (Dynamic Assignment) ,三、混合型 (Hybrid)[13]。第一類頻道配置方 式依照節點之間所配置的頻道是否皆相同又可細分為Common Approach與Varying Approach兩種。第一種配置方式是將所有的節點都分配多個相同頻道,例如:[12] 將所有節點的第一張網卡皆配置頻道 1,第二張網卡皆配置頻道 2…。優點是可以 確保網路的最大連通度,但缺點是無法使用剩餘未配置的頻道,使得多頻道的優 勢無法完全發揮。而第二種配置方式則是允許節點之間使用不一樣的頻道,提升 頻道的使用率。雖然有效改善了第一種配置方式的缺點,但是卻會造成路由長度 (Hop Count) 過長,甚至是網路分割的情況發生。第二類頻道配置方式則是利用讓 介面卡在不同的頻道之間頻繁切換而能使用所有的頻道,因此在傳輸資料時必需 透過協同機制來確保收送雙方有使用相同的頻道。關於協同機制的設計,作者[20] 提出讓所有節點定期調整至一個事前已經決定好的協同頻道來決定下一次傳輸階. 2.
(12) 段所使用的頻道。作者[2]利用隨機序列的方法來達成協同的目的。也有作者[25] 修改 802.11 MAC protocol而不需要使用複雜的時間同步機制。動態配置頻道的缺 點在於頻繁的切換頻道而產生的切換延遲,但隨著硬體設備不斷的進步,切換延 遲的問題有機會在將來獲得改善。最後一類的頻道配置方式則是將節點的介面卡 區分成固定配置介面卡與動態配置介面卡,例如:[13]提出將每一個節點的介面卡 分為固定 (Fixed) 與可切換 (Switchable) 兩類。固定的介面卡使用固定的頻道來 接收資料。想傳送資料時,傳送端只要將其可切換的介面卡調整成與接收端的固 定介面卡所使用的頻道一樣即可。 除了上述的分類之外,根據不同作者對於頻道配置問題的假設 (Assumptions) 、需求 (Requirements) ,及目標 (Objectives) 的不同,我們可以比 較這些方法並做出多個面向的歸類。例如: 大部分的頻道配置皆是假設使用非重 疊頻道,除了少數可以使用重疊頻道[14]。頻道配置可以是Traffic-aware [18, 19]或 者是Traffic-independent [14, 21, 23, 26]。前者在做頻道配置時有考量網路中每條鏈 結或是各節點的負載情況,讓負載較高的鏈結或是節點獲得較多的資源;而後者 則無此種考量。頻道配置的目標分別有最小化局部干擾[14]、最小化網路干擾[16, 18, 23],及最大化網路輸出[19, 21]。大部分的頻道配置方法中其干擾模型皆是假 設Protocol Model,少數則是使用Physical Model [19, 27]。前者假設鏈結間的干擾關 係是二元的;兩條鏈結之間不是完全會干擾,就是完全不會。這種模型又稱為Binary Model。後者將鏈結之間的干擾關係視為會隨著不同的信號干擾強度而改變,且網 路中所有的鏈結都有可能會造成干擾。而我們的頻道配置方法則是採用與環境實 際情況較為接近的Physical Model。 本論文研究的動機,是想以賽局理論的角度來重新檢視多介面多頻道無線網 狀網路下的頻道配置問題。賽局理論 (Game Theory) 或稱博奕理論是一種是數學 模型,探討在多個參與者彼此利害互相衝突下的最佳因應策略,藉由系統化的分 析方法,尋求參與者各自的最大利益。近十年,賽局理論開始被廣泛應用在無線. 3.
(13) 網路的各項議題[5],無線網狀網路下的頻道配置問題也有學者以賽局理論的角度 來進行分析,例如:[4, 7]都是研究將賽局理論應用在頻道配置問題上,不過不同學 者採取了不同的賽局模型設計。例如:有的賽局設計視節點[4, 7]為參與者,有的則 是以網卡為參與者。再者,策略的設計也不一樣,因此不同賽局之間對於利益的 定義方式也大不相同而有各自的目標。我們則是將多頻道、多介面卡的頻道配置 問題設計成一個非合作賽局,以介面卡為參與者,頻道作為策略集合。在保證最 大連通度的前提之下,每一個參與者會根據效用函數尋求可以獲得最大利益的策 略。我們同時訴求賽局的穩定性,證明此賽局最終一定會停止在一個穩定狀態。 另外,我們提出Best Response與Better Response兩種到達穩定狀態的方法,前者到 達穩定狀態的速度較快但有可能困在區域最佳解,而後者的方法則是希望藉由犧 牲一些收斂速度來提升最終穩定狀態的效能,避免陷入區域最佳解。 在實驗模擬部分我們將我們的賽局作法與不同方法[4, 7, 27]在不同網路介面 卡數目下做Link Ratio值的比較。實驗結果發現我們的方法比起其他同樣是以賽局 理論為架構的作法[4, 7]在頻道配置完成後的實際可運作鏈結數量來的更多。而我 們的方法在網卡數目較少時,其Link Ratio值優於傳統的頻道配置方法[27]。 這一章我們粗略介紹了無線網狀網路下的背景知識、頻道配置問題、相關文 獻,及我們的研究方向。而第二章我們將針對無線網狀網路、干擾模型、賽局理 論,以及相關文獻進行更詳盡的介紹。第三章說明我們如何利用賽局理論解決頻 道配置問題。第四章則是實驗模擬以及不同方法之間的分析比較。第五章對整篇 論文做總結。. 4.
(14) 第二章 背景知識與相關研究 這一章將針對無線網狀網路之頻道配置問題與賽局理論作介紹。第一部分首 先說明 IEEE 802.11s 無線網狀網路的基本架構,以及頻道配置問題的定義,並介 紹其他研究者對於頻道配置問題的傳統解決方法。第二部分介紹賽局理論,並說 明如何定義一場賽局,最後則介紹其他研究者如何將賽局理論應用於 IEEE 802.11s 無線網狀網路的頻道配置問題。. 2.1 無線網狀網路之頻道配置問題 2.1.1. IEEE 802.11s. 配置 IEEE 802.11 介面的行動裝置必須透過 AP 連結網際網路,因此擴大 WLAN 服務範圍的最簡單方法就是增加 AP 數目。傳統上 AP 是以有線網路彼此互 相連接並連上骨幹網路,此種方式在難以建構實體線路或是施工困難的區域需要 更多的架設成本。再者,這些線路日後的維護及管理成本也相當可觀。若能將多 個 AP 以無線與多點跳躍的方式連接起來,不僅能迅速的增加服務範圍,同時也節 省建置成本。因此,電機暨電子工程師協會 (IEEE) 提出了 IEEE 802.11s 無線網 狀網路 (Wireless Mesh Network; WMN) 的標準。WMN 是由 Mesh Access Point、 Mesh Point、Mesh Portal 彼此之間透過無線連結所組成[1, 9]。如圖 2.1。. 5.
(15) Internet. (Wireless Link) (Wireless Station; WS) (Mesh Access Point; MAP) (Mesh Point; MP) (Mesh Portal; MPP). 圖 2.1IEEE 802.11s 無線網狀網路架構圖. WMNs 中,無線工作站 (Wireless Station; WS) 將資料經由無線的方式傳至 MAP 上,MAP 之間再透過其他鄰近的 MAP 或是 MP 以多點跳躍的傳輸方式將資 料送至與網際網路相連的 MPP,達成與外部網路連結的目的。. 2.1.2. Interference 與 Connectivity 之間的關係. 在無線網狀網路中,兩個裝置之間必須使用相同頻道才能夠傳輸資料,如果 有其他的鄰近裝置使用相同的頻道,則可能會對接收端造成干擾而無法正確且及 時收到傳送端所傳送的資料,導致產出量降低的情況。因此,鄰近的裝置之間必 須盡量使用不同的頻道來避免這樣的問題發生,但是如果鏈結兩端的節點沒有使 用到相同的頻道,則此鏈結也無法運作,嚴重時可造成網路分割的後果。如何在 最小化干擾與最大化連通程度之間做權衡便成為一個重要的議題。如圖 2.2 中,每 個節點都有兩張介面卡,網路中共有四個可用頻道[22];圖 2.2a 為網路拓樸,圖 2.2b 中表示為了達成最大連通度而必須犧牲部分的頻道使用,相反的如果為了最 小化干擾程度而使用所有的頻道,那麼就無法保持最大連通度,如圖 2.2c。 6.
(16) 圖 2.2 干擾程度與連通度的權衡範例:(a)網路拓樸 (b)最大化連通情境 (c)最小化干擾情境. 頻道配置問題即在探討如何指定每一介面所使用的頻道,使得網路最終可在干 擾最小化與鏈結連通數量最大化之間做權衡取捨,而我們研究的目標在滿足鏈結 連通數量最大化的前提下盡可能降低干擾的程度。. 2.1.3. 干擾模型. 無線網狀網路的裝置之間都是使用無線訊號來傳遞資料,而無線電波傳遞時 的耗損與同頻或是鄰頻之間的干擾,都會影響接收端是否能成功接收傳送端所傳 送的資料。 Gupta 及 Kumar[10]將干擾模型分為 Protocol Model 與 Physical Model 兩類。在 Protocol Model 中提到,如果節點 i 要成功送資料給節點 j,則必須滿足下列兩個條 件: (1) 節點 i 與節點 j 的距離必須小於等於一常數值 r 。. Distance(i, j ) r. (2.1). (2) 當網路中有其他節點 k 同時想使用與節點 j 相同的頻道去傳遞資料 時,則必須與節點 j 保持一定距離以上。 Distance(k , j ) (1 )r. (2.2). 一般我們將 r 視為傳輸半徑, 為正實數。因為訊號會隨著距離有所耗損,當傳送 端與接收端距離太遠時會導致接收端無法收到傳送端的訊號,即使訊號傳遞的過 程中沒有受到任何同頻或是鄰頻的干擾。此外,如果網路中有其他節點正在使用 7.
(17) 與接收端相同的頻道做資料傳輸時,則必須確保該節點與接收端的距離夠遠而不 會影響到接收端正確的接收資料,而這適當距離就稱之為干擾半徑。. 圖 2.3 Protocol Model 下的干擾關係範例. 圖 2.3 說明我們如何以 Protocol Model 描述網路中的干擾關係。我們假設圖中 傳輸半徑為 3 單位長,網路中的每個節點都配置一張網卡並使用相同的頻道。因 為節點 2 與節點 4 均落在節點 1 的傳輸半徑之內,因此存在鏈結(1,2)與鏈結(1,4), 在圖中我們以實線表示兩節點之間鏈結。我們假設干擾半徑與傳輸半徑相同,即 3 個單位長。因為節點 2 在節點 3 的干擾半徑內,所以鏈結(1,2)與鏈結(3,6)會被視為 會互相干擾。當節點 1 要傳送資料給節點 2 時,如果節點 3 也同時傳送資料給節 點 6,則節點 2 會被節點 3 所干擾而無法正確的收到來自節點 1 的資料。一樣的, 當節點 6 要傳送資料給節點 3 時,如果節點 2 也同時傳送資料給節點 1 也會影響 節點 3 的資料接收。 在 Protocol Model 中,干擾關係是離散且二元的;兩條鏈結之間不是會干擾, 就是不會干擾。但是在實際環境當中,節點所受到的干擾程度是連續變化的值, 且與離干擾源的距離有一定關係,距離接收端愈遠的干擾源則產生的影響較小。 因此並非如 Protocol Model 中所描述的只考慮干擾範圍內與接收端使用相同頻道 的節點所造成的影響,而是需要考慮整個網路中所有同時使用此頻道的節點。而. Physical Model 便是將訊號強度用在形容節點所受到干擾程度高低的一種模型。 在 Physical Model 中,接收端所接收到的資料訊號強度以及來自於其他節點的 8.
(18) 干擾信號強度都會影響通訊是否成功。任一干擾源對接收端所產生的干擾程度與 接收端收到來自此干擾源的信號強度成正比,而此信號強度又與兩者間的距離相 關如算式(2.3)[8]。 Pr(d) c. d. (2.3). 其中 Pr (d ) 為接收端的信號接收功率,c 為常數,d 為信號發射源與接收端的距離,. 為 path loss exponent 與傳輸環境有關,一般狀況下可假設 3 ;以干擾來看 Pr (d ) 指的就是接收端所受到的干擾的程度,而 d 為干擾源與接收端的距離。 接收端是否會因為干擾過大而無法成功接收資料跟所接受到的資料訊號強度 與網路中所有干擾源訊號強度總和的比值有關,通常用訊號干擾比. (Signal-to-Interference plus noise Ratio; SINR) 來表達,如(2.4)式。 SINRi, j . RSSi, j N j Na. (2.4). 其中 RSSi, j 為接收端節點 j 收到來自傳送端節點 i 的訊號強度, N j 為網路中其他鏈 結傳輸時對節點 j 所造成的干擾訊號強度的總和, N a 為環境中的雜訊,通常還會 再另外定義一門檻值 SINRthreshold 。 SINRi, j 需大於 SINRthreshold ,則節點 j 才能成功接收 資料[10]。. 2.1.4. 傳統頻道配置問題相關研究. 在此之前已經有不少IEEE 802.11 無線網狀網路環境下多介面多頻道之頻道配 置問題的相關研究。這些演算法根據其運作方式可以分為兩類: (1) 集中式,(2) 分 散式。前者是將演算法中所需要的資訊(如:網路中各個鏈結的干擾情況)集中在一 部主機,再依照執行結果對每個MAP或是介面卡配置頻道。而後者則是將資訊散 佈在多個主機上;即每個MAP都能擁有部分資訊(如:鄰近節點的干擾程度、鄰近節 點所使用的頻道),並且執行各自的演算法。集中式演算法的缺點在其時間複雜度 會隨著網路中節點的增加而呈現指數成長。當網路拓樸改變時,集中式演算法需. 9.
(19) 要浪費許多時間重新收集資料並且重新配置頻道。這段過程同時影響著大部分. MAP的運作,造成短時間內無法提供服務。分散式演算法的時間複雜度較低。除 此之外,由於在各個MAP執行時只需使用到鄰近節點的資訊,所以當網路拓樸改 變時,只有少部分的MAP需要重新執行演算法,拓樸改變的影響並不會擴及至整 個網路。以下我們將介紹多個傳統頻道配置的方法。. Skalli 等人 [22] 提出 Mestic 集中式演算法,他們對網路中所有的節點指定優先 權。該權值的高低則是取決於三個面向;首先考慮到節點與gateway之間的距離, 距離gateway愈近的節點優先權愈高,因為在WMNs中大部分的資料都是從用戶端 經由 gateway 傳送至網際網路或者是從網際網路取得服務, gateway 通常都是在. WMNs內負擔最多資料量的節點。第二個考慮到的是每個節點所擁有的介面卡數 量,介面卡愈少的節點所賦予的優先權愈高。這是因為這些節點沒有足夠的介面 卡可以充分選擇使用多個不一樣的頻道,倘若不讓這些節點優先選擇頻道,那麼 它們最後可能為了要滿足一條鏈結的兩個端點必須有使用一樣的頻道的限制而去 選擇結果較差的頻道,造成效能 (如:Throughput) 上的瓶頸。最後一個考慮到的面 向是每個節點所負擔的資料量。與第一點類似,此種考量一樣是希望負擔大的節 點可以被賦予較高的優先權。Mestic演算法將優先權由大至小的順序對節點進行頻 道配置。對特定節點進行配置頻道時,會優先設定資料流較高的鏈結,指定鏈結 所使用頻道時,也將鏈結另一端的節點配置一樣的頻道;如果節點本身介面卡的 數量不足,則將鏈結配置目前已使用的頻道中負載較小的頻道。. Marina等人[16]提出Connected Low Interference Channel Assignment集中式演算 法,對每一個頻道使用個別的Conflict Graph來表示所有使用此頻道的鏈結之間的 干擾關係。 Conflict Graph 上的頻道配置問題可以當成 Max K -cut 問題。 Max. K -cut 問題是探討如何將一張圖的節點切割成 K 個集合,並使得兩端點屬於不同 集合的鏈結數為最多。而在conflict graph中的邊即是代表該邊兩端的節點會互相干 擾所以必須使用不一樣的頻道,這與Max K -cut 問題中兩端點屬於不同集合的概. 10.
(20) 念相互呼應。Max K -cut 問題已經被證明為NP-hard。同理可知,在conflict graph 中的頻道配置問題一樣為NP-hard。 每一條鏈結賦予不同的優先權值,優先權高的鏈結可優先選擇頻道。假設目前 輪到鏈結 (i, j ) 選擇頻道,該演算法會去計算鏈結 (i, j ) 在每個頻道所對應的Conflict. Graph中的干擾情況,並比較鏈結 (i, j ) 在不同的Conflict Graph中所具有的分支度 (Degree) ,配置分支度最小的頻道給鏈結 (i, j ) 。該演算法在一開始決定每一條鏈 結的優先權值時一樣可以用鏈結所負擔的資料量作為依據。. Raniwala 等人[19]認為整體網路輸出的好壞不單單是由頻道配置來決定,路由 協定的設計也占了一席之地,事實上兩者之間的關係是相輔相成的。負擔量較大 的鏈結應該要能獲得足夠的頻道頻寬,同時頻寬較大的鏈結在路由時也應該要多 負擔一點的資料量,其相依性可見一般。作者於是結合頻道配置與路由協定提出. C-HYA 集中式演算法,作法是先產生 traffic profile,讓負擔較大的鏈結優先選擇 頻道。假設目前輪到鏈結 (i, j ) 選擇頻道,該演算法會去計算在鏈結 (i, j ) 的干擾範 圍內每個頻道的使用量,配置鏈結 (i, j ) 使用量最低的頻道。接著依據頻道配置的 結果計算每條鏈結的頻寬。以鏈結 (i, j ) 的頻寬為例,計算方法是將鏈結 (i, j ) 所配 置頻道的容量 (Channel Capacity) 除以所有在鏈結 (i, j ) 的干擾範圍內與鏈結 (i, j ) 使用相同頻道的鏈結數量。再來根據頻寬資訊以最短路徑演算法作路由取得新的. traffic profile,檢查每條鏈結所擁有的頻寬是否大於鏈結本身需負擔的資料量,如 果皆滿足,則為最後頻道配置的結果;反之則重新對每條鏈結配置頻道,並在取 得新的 traffic profile 後重新比較。這個作法的缺點是對每條 link 都做最少一次的頻 道分配,而造成時間複雜度較高。 上述三種頻道配置方法中,每個節點或是每條鏈結的資料負擔量代表不同的優 先順序或是不同的配置頻寬,我們可以將此視為具有Traffic-aware的想法。在現實 環境中每個節點所負擔的資料量確實有高低之分,而如何來達成負載平衡的目標 一直是很熱門的研究方向。其次,這三種作法在干擾模型上皆是採用 Protocol. 11.
(21) Model,前面談過以Protocol Model作為干擾的計算方式並不符合實際,其他節點的 信號對某個接收資料的節點所造成的干擾實際上是連續變化的數值,而且總合須 大於某個值才會造成影響,因此須將網路中所有的節點納入計算。底下我們將介 紹採用Physical Model的集中式演算法。. Yen等人[27]使用Signal-to-Interference Ratio (SIR) 值來表達鏈結遭受干擾時的 通訊品質。以鏈結 (i, j ) 為例, SIR j ,i 的定義為接收端 i 所收到傳送端 j 的資料訊號 強度與所收到干擾訊號強度的比值。此方法定義了二種矩陣 M k (i, j ) 與 N k (i, j ) , 前者是假設所有其他尚未分配頻道的鏈結均使用頻道 k 的情況下,鏈結 (i, j ) 使用 頻道 k 的SIR值;而後者在計算鏈結 (i, j ) 使用頻道 k 的SIR值方面只考慮到目前網 路中已確定使用頻道 k 的鏈結。鏈結 (i, j ) 在完成頻道配置後的SIR值必然會介於 M k (i, j ) 與 N k (i, j ) 之間。作者的基本想法是當大多數的鏈結尚未分配頻道時應該. 重視這些鏈結未來使用頻道 k 所可能造成的影響,但隨著已配置頻道的鏈結數目增 加,我們應該逐漸重視目前網路中確定使用頻道 k 的鏈結對鏈結 (i, j ) 配置頻道 k 所 造成的影響,因此利用網路中已配置頻道的鏈結數目作為 M k (i, j ) 與 N k (i, j ) 之間 的比重,並將權衡後的數值存入作者自行定義的矩陣 Ck 。假設 Ck 矩陣中鏈結 (i, j ) 具有最大的數值,則表示鏈結 (i, j ) 選擇頻道 k 時可能遭受到的干擾在綜合考量下 是最低的,所以會對鏈結 (i, j ) 優先配置頻道 k 。除此之外,此方法還定義了一個 門檻值,在頻道配置完成後需要計算每條鏈結的SIR值,若超過該門檻值即為成功 鏈結。以成功鏈結的數目與physical topology中的總鏈結數目的比值作為效能優劣 的評估標準。另一方面,為了避免頻道配置過於分散導致相鄰節點沒有使用共同 頻道而無法溝通的問題,作者利用鴿籠原理 (Pigeon-hole Theory) 限制每個節點可 以使用的頻道數目,如此一來就可以保證physical topology中每條鏈結的兩端點皆 有使用相同的頻道。我們的賽局做法一樣有使用到鴿籠原理來限制每張介面卡可 以使用的頻道數目。. 12.
(22) 接下來我們將討論兩種不同的分散式演算法。Subramanian等人[22]假設protocol. model,同樣地使用到conflict graph來表達網路中每條鏈結之間的干擾情況。在此 方法中每個節點執行各自的分散式演算法,並且將 m 個hop的距離內的節點當成鄰 居。以節點 i 為例,該演算法會計算每條與 i 相鄰的鏈結使用不同的頻道所產生的 干擾,並且在滿足介面卡數量的限制下,選擇所產生的干擾為最低的鏈結與其對 應的頻道,節點 i 會將此配置資訊 (Request) 傳送至鏈結的另一端,在此稱之節點. j 。如果節點 j 在配置該頻道後一樣能滿足介面卡數量的限制則送出回應 (Reply) 給節點 i 。節點 i 在收到回應後則正式配置該頻道並且送出訊息 (Update) 通知鄰居 更新各自的conflict graph。倘若節點 i 一段時間後依然沒有收到節點 j 的回應,則 放棄這次的配置,重新選擇下一個干擾較低的鏈結。. Shin等人[21]一樣假設protocol model,以最大化網路中所有資料流的輸出或者 是最小化所有資料流的延遲總和為目標。作者認為產出量 (Throughput) 優劣的關 鍵就在於網路中會干擾資料流上的鏈結的鏈結數量,所以作者提出的SAFE演算法 企圖將此數量最小化,其作法是盡量使用不同的頻道,並且每個頻道的使用量盡 可能平均分配。為了滿足連通性的限制,作者利用 skeleton 的方法 [24] 將 physical. topology轉成spanning subgraph,針對skeleton subgraph中的每個節點執行頻道配置 演算法,並且保證任兩點之間必定存在一條路徑。該演算法區分兩種情境 : (1) 網 路中的頻道數量小於兩倍的介面卡數量,(2) 網路中的頻道數量大於等於兩倍的介 面卡數量。假設網路中每個節點都擁有 k 張介面卡,而由鴿籠原理可以得知第一種 情境不論節點配置哪些頻道必然會與其相鄰節點有使用相同的頻道,所以作者在 這種情境下採用隨機配置頻道的方式,讓每個節點隨機挑選 k 個不一樣的頻道。第 二種情境則是每個節點先隨機配置 k 1 個 頻道,剩餘未配置的介面卡則根據在. skeleton subgraph中其他與之相鄰的節點所隨機選擇的頻道來決定。以節點 i 為例, 假設在skeleton subgraph中所有與 i 有邊存在的節點所使用的頻道跟節點 i 使用的頻 道有交集,則節點 i 就從此交集中隨機挑選一個配置給剩下的介面卡;反之,節點. 13.
(23) i 會從不與其有交集的節點所使用的頻道當中隨機挑選一個配置給剩下的介面 卡。最後作者透過實驗證明SAFE演算法在效能上不亞於集中式的演算法。 另一方面,分散式演算法的特性也可能導致不穩定的情況發生,這是因為鄰近 節點的資訊會互相影響彼此的決策。自己目前的決策可能會因為對方的改變而改 變,而這種改變又會讓對方想再一次改變決策…如此循環而無滿意結果稱之不穩 定。分散式演算法必須達到穩定狀態成為設計的基本要求,而不同作法之間達到 穩定狀態的方法也不一樣。例如:Subramanian等人[23]限制每條鏈結只能選擇特定 頻道一次,之後因狀況改變重新選擇其他頻道後不可再換回該頻道,由此來保證 演算法的穩定性。以鏈結 (i, j ) 為例,假設鏈結 (i, j ) 剛從頻道 1 調整為頻道 2,即 使之後發現再調整回頻道 1 的干擾會更低也不能再去使用頻道 1。該演算法會一直 執行到所有的鏈結都已經無法再降低干擾或者是鏈結都已經考慮過所有可用的頻 道而不能再改變。 以上我們介紹了許多傳統的頻道配置方法,根據不同作者對於頻道配置問題 的假設、需求,及目標的不同,我們將這些現有方法歸納如表 2.2 所示。 表 2.1 不同傳統頻道配置演算法的分類與比較. [21]. [23]. [26]. [27]. [16]. [22]. [19]. Distributed. Distributed. Distributed. Centralized. Centralized. Centralized. Centralized. Dynamic. Static. Static. Static. Static. Static. Static. Protocol. Protocol. Protocol. Physical. Protocol. Protocol. Protocol. to nodes. to links. to links. to links. to radios. to links. to radios. Load aware. no. no. no. possible. possible. yes. yes. Connectivity. Connectivity. Link. Connectivity. Link. Link. Link. Link. preserving. preserving. preserving. preserving. preserving. preserving. preserving. yes. yes. yes. yes. yes. yes. yes. yes. no. yes. no. no. yes. no. Centralized/ Distributed Static/ Dynamic Interference Model Assignment Strategy. constraint Non-overlapping channel Using Default. 14.
(24) channel Objective. Maximize. Minimize. Minimize. Minimize. Minimize. Maximize. Maximize. total. local. local. total. total. total. total. throughput. interference. interference. interference. interference. throughput. throughput. 賽局理論 (Game Theory) [5]是一個以分散式為主,並且尋求不同參與者之間 在利害衝突下的最佳因應策略。早期被大量應用在經濟方面,例如分析不同公司 之間的利益競爭。另外,在最近幾年賽局理論也被廣泛應用在無線網路的路由以 及資源分配的問題中[5],而且在賽局理論當中正好有一部分就是在討論我們上述 所提到的穩定狀態。在此我們將賽局理論應用在頻道配置問題上。. 2.2 賽局理論 2.2.1. 賽局理論簡介. 賽局理論又可稱為博弈理論或是互動決策理論,是一門研究多人決策問題的 數理方法。在經濟學、電腦科學、生物學、軍事戰略…等有著廣泛的應用。在一 場賽局中參與者 (Player) 各自有著不同的目標或利益,並藉由選擇策略 (Strategy) 獲得利益 (Utility)。參與者所能獲得的利益值,不但取決於其所選擇的策略,也取 決於其他參與者所選擇的策略。為了使自己的利益可以最大化,他們會考慮對手 的各種可能行動,並且選擇對自己最有利的策略。賽局理論藉由數理模型來決定 參與者所採取的策略,以及採取策略後所產生的結果。底下將介紹賽局理論中最 著名的範例 - 囚徒困境 (Prisoner’s Dilemma) 。 在某件案子中警方逮捕甲、乙兩名嫌疑犯,但沒有足夠證據指控二人有罪。 於是警方分開囚禁嫌疑犯,分別和二人見面,並向雙方提供以下相同的選擇:. 15.
(25) . 若一人認罪並作證檢控對方,而對方保持沉默,此人將即時獲釋,沉默者將 判監 10 年。. . 若二人都保持沉默,則二人同樣判監半年。. . 若二人都認罪,則二人同樣判監 2 年。. 我們可以用表 2.2 概述甲、乙之間的可能行為模式。 表 2.2 囚徒困境. 甲沉默. 甲認罪. 乙沉默. 兩人同服刑半年. 甲獲釋;乙服刑 10 年. 乙認罪. 甲服刑 10 年;乙獲釋. 兩人同服刑 2 年. 假定每個參與者(即「囚徒」)都是利己的,即都尋求最大自身利益。兩名囚 徒由於隔絕監禁,並不知道對方選擇,所以就個人的理性選擇而言,認罪所得刑 期,總比沉默要來得低。最終二個人在理性思考後都會得出相同的結論就是選擇 認罪,但是從整體來看,甲、乙雙方皆認罪並不是最好的選擇。賽局理論就是在 研究參與者之間如何選擇策略進而相互影響並在最終中達到不同的結果。. 2.2.2. 賽局的分類. 我們可以根據賽局進行的方式或者是數理模型設定的不同來將賽局做分類 : . 合作/非合作賽局 (Cooperative/Non-cooperative Games) : 一般而言,合作與非 合作賽局的分別在於參與者之間是否有一個具約束力的協議,如果有就是合 作賽局,否則就是非合作賽局。這裡並不是說非合作賽局中的參與者就不能 合作,如果賽局的設計者能夠讓參與者以理性自私的方式並且不以具約束力 的協議限制他們的行為,而又能達到合作的效果,這也是可行的。由於非合 作賽局的現實情境遠比合作賽局來的多,而且在理論的發展上也比合作賽局 來的成熟,因此大部分的學者皆是以非合作賽局為研究對象。 16.
(26) . 靜態/動態賽局 (Static/Dynamic Games) : 在靜態賽局中,參與者必須同時選 擇他們的決策。而動態賽局則是參與者在選擇策略時有先後順序之分,並觀 察前面參與者的行動來選擇適當的策略。. . 完全/非完全資訊賽局 (Complete/Incomplete Information Games) : 若每一位 參與者完全了解其他參與者所有可以選擇的策略和利益我們就稱為完全資訊 賽局;相反的,若是對於策略和利益了解的不夠精確或者只是了解部分的參 與者,而非所有參與者,稱為非完全資訊賽局。. . 單次/多次賽局 (One-shot/Repeat Games) : 若賽局只進行一次稱為單次賽 局,如果賽局會重複進行多次則稱為多次賽局。. 2.2.3. 賽局的定義. 一場賽局可以由下列數個部份所組成 : . 參與者集合 P { p1 , p2 ,, pi ,, pn } :賽局中所有參與者所組成的集合,如囚徒 困境中的甲、乙二人。n 代表參與者的總數, pi 表示第 i 個參與者。. . 策略集合 Si {s1 , s2 ,, sm } :賽局中參與者 pi 所有可能選擇的策略所組成的集 合。每個參與者的策略集合可以不同,而在囚徒困境中甲、乙的策略集合皆 為 {認罪、沉默} 。. . 策略組態 Y S1 S 2 S n :將每個參與者的策略集合做卡氏積 (Cartesian. product) ,即是所有參與者的策略組合。以囚徒困境為例,該例的策略組態就 是 {(認罪、認罪), (認罪、沉默), (沉默、認罪), (沉默、沉默)} 四種。 . 策略向量 C (c1 , c2 ,, ci ,, cn ) : C Y ,其中 ci 代表賽局中 pi 所選擇的策略。 例如 pi 選擇了策略 s2,則 ci s2。而所有參與者選擇的策略組成一策略向量 C。. . 效用函數 ui (C ) 或稱 ui (ci , Ci ) :參與者 pi 在某個策略向量 C 中所能獲得的利 益。 Ci 代表除了 pi 之外其他人所選擇的策略。而根據不同研究者對效用函數 的定義並不一致,有的學者將效用函數定義為成本支出,因此希望愈小愈好, 17.
(27) 例如囚徒困境中嫌疑犯所需服刑的年數;有的學者則是將效用函數視為獲 利,因此希望愈大愈好。而我們的方法則是將效用函數定義為成本支出。 在非合作賽局中存在一種特殊的策略向量,在此策略向量下沒有任何一個參 與者能夠因為獨自改變自身的策略而獲得更高的利益,此類策略向量被稱之為納 許平衡 (Nash Equilibrium) 。. Definition 1 納許平衡 若 pi , i 1,, n ,使得 ui (ci , Ci ) ui (ci ' , Ci ) ,則 C (c1 , c2 ,, cn ) 為納許平衡. 賽局中每個參與者所獲得的效益跟其他參與者所做的決策有關,賽局在參與 者彼此相互影響之下有可能沒有辦法達到穩定狀態。因此賽局中是否存在納許平 衡通常也被視為賽局設計優劣的準則,而且一個賽局可能存在一個以上納許平 衡,並非唯一。在囚徒困境的例子中,最後甲、乙二人皆選擇認罪,(認罪、認罪) 這個策略向量就是納許平衡,甲與乙皆不可能因為獨自改變自己的選擇而縮短服 刑的年數。另外納許平衡與整個系統或是問題的最佳解並非若且為若的關係。. 2.2.4. 應用賽局理論於頻道配置問題相關研究. 先前已有一些學者提出將賽局理論應用於頻道配置問題的方法。底下我們將 一一介紹這些賽局的設定以及賽局的進行方式。. Ko等人[14]在計算網路中的干擾時採用protocol model,並且假設可以使用重 疊的頻道。作者將不同頻道之間的干擾視為成本 (cost) ,讓每個節點選擇總成本 較低的頻道。以節點 i 為例,節點 i 的總成本計算方式為在節點 i 的干擾範圍內的其 他節點對 i 所造成的干擾值總合。但是在這樣的分散式演算法之下,每個節點是否 都能在最後選擇到滿意的頻道呢?換句話說,每個節點都會收歛嗎?於是作者限制同 一個時間點下只會有一個節點改變頻道,並且證明在此前提之下,每個節點執行 18.
(28) 該演算法到最後都可以收斂。另外在鏈結連通度方面則是利用default channel的做 法來達到鏈結連通最大化。 雖然Ko在其研究中並未提及賽局理論,但他的作法其實已經有賽局理論的概 念存在。我們可以將網路中的每個節點當成是賽局中的參與者,而且可以將總成 本視為效用函數,每個參與者希望自己的cost能夠愈低愈好。再者,上述證明收斂 的想法其實也與證明賽局理論中的納許平衡有異曲同工之妙。. Xiao等人[26]則是將賽局理論應用在頻道配置與路由的問題。他們將頻道配置 與路由的問題設計成一個賽局。此賽局以source-destination pair為參與者,假設網 路中有 k 個source-destination pair,那麼就有 k 個參與者。每個參與者可以選擇的策 略為source到destination的所有可能路徑。cost function的設計則與所選擇路徑上的. hop count與該路徑上link的interference level有關。每個參與者的目標為最小化自己 的cost。作者證明此賽局存在納許平衡,而且問題本身的最佳解同時也為納許平衡 的解。作者透過Heuristic的演算法來找到納許平衡的解,此演算法首先利用Dijkstra 最短路徑演算法求出每個source-destination pair的最佳路徑,再來藉由貪婪法則來 對最佳路徑上的每條鏈結配置干擾程度較低的頻道。. Duarte 等人[7]將賽局理論應用在頻道配置問題上。不同於大部份作法皆是假 設使用非重疊頻道,作者假設可以使用重疊頻道,並且利用 IR Table [11]來表達不 同頻道之間的干擾關係。簡單來說,IR Table 在表達不同頻道之間的干擾與否跟兩 頻道之間的頻道號碼距離有關。不同的距離都各自對應著不一樣的干擾半徑,距 離愈大則干擾半徑愈小。從上述我們可以了解到本篇在干擾模型方面也是採用. Protocol Model。在賽局的設定方面,作者將網路中的節點視為參與者,每個參與 者可以選擇的策略則是多個二元值所組成的集合。例如:假設網路中有三個可用頻 道,則策略 (0, 1, 1) 表示參與者選擇使用頻道 2 與頻道 3。在利益函數的設計上則 是考慮到每個參與者 (節點) 在其干擾範圍內與之干擾節點的數目。另外此賽局也 稱為 identical interest game,因為每個參與者的目標皆是最大化整體網路的利益. 19.
(29) 值;換句話說,本賽局是一個合作賽局,每個參與者都有共同的目標。同樣的, 作者也證明此賽局存在納許平衡,並且提出 Best Response 與 Better Response 兩種 到達納許平衡的方法。Best Response 是指參與者在選擇策略的過程中會去選擇讓 自己利益提升最多的策略,而 Better Response 則是從多個可以提升利益的策略中 隨機選一個,其用意是要在收斂速度與計算複雜度上做權衡,並希望賽局不會陷 入 local optimal。. Chen 與 Zhong[4]指出雖然很多方法可以有效提升整體網路的效能,但是就個 別節點所獲得的利益來看卻有不公平的現象,於是在本篇中強調 perfect fair,即指 當賽局進入穩定狀態後每個參與者的利益值是相同的。作者將頻道配置問題設計 成一個非合作賽局,以節點為參與者,每個參與者可以選擇的策略則跟網路中的 頻道數目與自己所擁有的網卡數目相關,例如:假設網路中有三個頻道,則策略 (1,. 2, 1)表示參與者總共有 1+2+1 = 5 張網卡,其中有一張網卡使用頻道 1,兩張網卡 使用頻道 2,一張網卡使用頻道 3。此外,作者將整個網路視為 single collision. domain,相同頻道之下的介面卡會均分頻寬。本賽局中的每個參與者希望最大化 自己的總獲利,也就是希望獲得的總頻寬能夠愈大愈好。最後他們透過理論推論 找出一個特殊解,並證明此解為納許平衡並且滿足 perfect fair 的限制。 以上我們介紹了四種將賽局理論應用於頻道配置的方法,而我們可以用一開 始介紹的賽局分類與定義來比較這些方法與我們頻道配置賽局的差異性,如表. 2.3。而第一種方法在其論文中並未提及賽局理論,在此不列入我們的比較對象中。. 20.
(30) 表 2.3 不同頻道配置賽局的分類與差異性比較. [26]. [7]. [4]. Ours. Classification Non-cooperative. Non-cooperative. cooperative. Non-cooperative. Non-cooperative. Dynamic. Dynamic. Dynamic. Dynamic. Incomplete. Incomplete. Incomplete. Incomplete. One-shot. One-shot. One-shot. One-shot. Nodes. Interfaces. /cooperative Dynamic/Static Complete/Incomplete Information One-shot/Repeat. Definition Player. Source-destination. Nodes. pairs Strategy. Channels. Channels. Channels. Channels. Utility function. Related to path’s hop. Related to the. Related to the. Related to the number of. count and the level of. number of using. number of using. using co-channel interface. interference suffered by. co-channel node. co-channel node. and the distance between. those nodes on that. in. path.. interference. interference. range.. range.. node i. 21. ’s. in. node i. ’s. them in whole networks..
(31) 第三章 頻道配置機制與分析. 我們的頻道配置方法主要分成兩個部份。首先,我們利用賽局的方式來為不 同 MAP 下的每張網路介面卡決定所要使用的頻道,即 channel-radio pairs。第二部 分再將這些 channel-radio pairs 分配到不同的鏈結上,即決定網路中每條鏈結所要 使用的頻道以及相對應的網路介面卡。. 3.1 頻道配置賽局 頻道配置問題的賽局設定可以很多樣化,在第二章我們有介紹到以節點為參 與者的方法[4, 7],另外也有介紹到將 source-destination pair 視為參與者的作法. [26]。而關於效用函數的設計雖然有很多種,大其實都不偏離將欲競爭的資源(在 此為頻道)平均分配的主軸。而我們頻道配置的賽局則是以網路介面卡為參與者, 將網路中的可用頻道視為參與者可以選擇的策略。當某一個參與者在選擇策略時 會把有使用相同頻道參與者的訊號強度視為成本,並尋找所要花費成本最小的頻 道,其目標是在最後每張網路介面卡都可以選擇到受干擾最小的頻道,進而讓無 線網狀網路中鏈結的通訊品質獲得提升。. 3.1.1. 頻道配置賽局基本設定. 我們假設無線網狀網路內有 n 個 MAP,每個 MAP 設置相同數量 k 的網路介 面卡。在這個頻道配置賽局中我們以網路介面卡為參與者,因此總共會有 n k 個 參與者,故將參與者集合 P 定義如下 :. . 參與者集合 P { p1 , p2 ,, pnk } 而頻道配置問題主要是對每個 MAP 或是每張網路介面卡甚至是 WMNs 中的. 22.
(32) 每條鏈結配置頻道。簡單而言就是對不同的目標配置頻道,因此在本賽局中我們 以網路中的可用頻道做為參與者可以選擇的策略。另外,我們賽局的目標是希望 相同頻道的使用可以不要過度集中,在此前提之下,當網路中可用頻道數目多於 每個 MAP 設置的網路介面卡數目時,就有可能發生欲建立鏈結兩端的 MAP 在頻 道配置之後會因為沒有使用到共同的頻道而無法運作。為了避免上述的問題發 生,我們在此沿用 Yen 等人[27]所提出的方法,限制每個參與者可以選擇的策略數 量不超過 2k 1 。 如下圖 3.1,假設每個 MAP 設置三張介面卡,網路中共有 12 個非重疊頻道, 我們限制每張介面卡可以選擇的頻道號碼不超過 5,如此一來在完成頻道配置後任 兩個欲建立鏈結的 MAP 之間一定會使用到相同的頻道。 MAP A NIC 1 NIC2 NIC3. Channel No. 1 2 3 4 5 6 ~ 12. MAP B NIC 1 NIC2 NIC3. 圖 3.1 鴿籠原理使用範例. 根據鴿籠原理我們將每個參與者的策略集合 S i 定義如下 :. . 策略集合 Si {1,2,, min(T ,2k 1)} : T 為網路中的非重疊頻道數目, T 12 。. 而所有參與者所選擇的策略組成一向量 C 定義如下 :. . 策略向量 C (c1 , c2 , ci ,, cn ) : ci 為賽局中參與者 pi 所選擇的策略。 在定義效用函數之前,我們先定義參與者 pi 如果選擇某一個策略 ci 所必須付. 出的成本。我們的構想是如果參與者去選擇一個較多介面卡使用的頻道,那麼他 23.
(33) 將付出比較多的成本,即成本高低與使用相同策略的參與者數目成正比。但是只 單純採計參與者數目並不符合實際環境。我們知道無線網路中的同頻干擾除了跟 使用相同頻道的節點數目有關係之外,其干擾程度的高低還會被同頻節點之間的 距離所影響。因此在本賽局的成本函數設計中,我們將距離的因素考慮進來,把 有使用相同頻道 MAP 之間的訊號強度視為賽局中如果參與者 pi 選擇與某一個參 與者 p j 一樣的策略時所必須付出的成本。根據參與者們所選擇的策略以及他們之 間的距離,我們將成本函數定義如(3.1)式。 . 成本函數 f (ci , c j ) :. 1 / d i, j f (ci , c j ) c 0 . ci c j ; d i , j d. (3.1). ci c j ; d i , j d ci c j. 其中 ci 、 c j 分別代表參與者 pi 及參與者 p j 所選的策略, di , j 代表的是兩個參與者之 間的距離。參與者 pi 如果選擇與參與者 p j 相同的策略,那麼參與者 pi 必須付出的 成本則與參與者 p j 距離的 次方成反比,這樣的設計理念就是對應到實際環境中 干擾源距離愈遠影響愈小的想法。我們將 值訂為 3,因為 MAP 之間在佈建時不 太可能排除會有障礙物存在的因素,例如:牆壁、植物等。另外,在我們的賽局中 是以網路介面卡為參與者,當賽局結束之後,相同 MAP 底下的網卡可能會選擇到 一樣的頻道,進而在傳輸資料時造成極大的干擾。為了解決上述的問題,我們再 成本函數中加入一個距離 d ,用於判斷兩個參與者是否位在同一個 MAP 底下。假 設參與者 pi 與參與者 p j 位在相同 MAP 底下,如果參與者 pi 又去選擇與參與者 p j 一樣的策略,那麼參與者 pi 將付出很大的成本 c 。這裡我們設定 c 1 / d ,因此 參與者 pi 不會去選擇相同 MAP 底下的其他參與者(介面卡)所選擇的頻道。. 24.
(34) 圖 3.2 參與者計算成本以 i 為例. 圖 3.2 為賽局中的參與者 pi 在計算成本的例子。在本例中每個參與者所選擇的策略 以{}標示。參與者 pi 到其他參與者的距離如圖中虛線所標示。根據成本函數,如 果參與者 pi 選擇策略 1 那麼他將付出 1 / 33 1 / 53 1 /(3.5) 3 的成本。如果是選擇策略. 2 則必須付出 1 / 63 1 / 33 1 / 43 的成本。. . 效用函數 ui (C ) or ui (ci , Ci ) :. ui (ci , Ci ) f (ci , c j ). (3.2). j i. 對於參與者 pi 而言,我們透過成本函數來計算出參與者 i 對於賽局中的其他參與者 所必須付出的成本,並將這些成本加總起來取負號後當成是參與者 pi 選擇策略 ci 所可以獲得的利益值。由於本賽局是非合作賽局,每個參與者皆會採取利己的行 為,所以 pi 會去選擇對自己最有利的策略,即 max( ui (ci , Ci ) )。 關於效用函數的設計方面,我們的想法是希望將來每張介面卡在配置頻道之 後所受到的干擾愈小愈好。這想法對應到賽局之中就是每個參與者想讓自己花費 的成本愈小愈好,而參與者去選擇一個利益值更高的策略就代表他所花費的成本 更低。 本賽局一開始會以 common channel assignment 的方式將每張網路介面卡(參與 25.
(35) 者)配置一個初始的頻道(策略)。例如:每個 MAP 都設置三張網路介面卡,那麼每 個 MAP 底下的三張網路介面卡將依順序個別配置頻道 1、頻道 2、頻道 3。我們設 定此賽局為動態賽局,一次只會有一個參與者改變決策,其他參與者可以不斷根 據其他參與者的選擇來決定是否改變策略,直到所有參與者都不想改變策略為 止,也就是達到納許平衡。. 3.1.2. 頻道配置賽局運作例子. 以下用一個例子來說明我們賽局的運作方式 :. 圖 3.3 頻道配置賽局初始狀態. 如圖 3.3,網路中有三個 MAP,每個 MAP 之間的距離如圖上虛線所示。每個. MAP 設置三張網路介面卡。網路中有 12 個可用頻道,但根據鴿籠原理我們限制只 能使用前 5 個。依照賽局的設定我們一共有 9 個參與者,參與者的編號順序是依 照 MAP 的名稱與網路介面卡順序排列。首先我們會為每個參與者選擇一初始策 略,假設參與者之間是依照編號順序由小至大進行決策,表 3.1 是本例的詳細運作 步驟。 表 3.1 頻道配置賽局運作例子的詳細步驟. Step1. p1 發現選擇頻道 4 或頻道 5 的利益值為最大,所以更換策略為頻道編 26.
(36) 號較前面的頻道 4。. Step2. p2 發現選擇頻道 5 的利益值最大,所以更換策略為頻道 5。. Step3. p3 判斷後發現沒有更好的策略所以不換。. Step4. p4 發現選擇頻道 4 或頻道 5 的利益值為最大,所以更換策略為頻道. 編號較前面的頻道 4。. Step5. p5 發現選擇頻道 5 的利益值最大,所以更換策略為頻道 5。. Step6. p6 發現選擇頻道 1 的利益值最大,所以更換策略為頻道 1。. Step7. p 7 、 p 8 、 p9 皆因為沒有利益值更高的策略而不換。. Step8. p1 又發現選擇 2 的利益值比選擇頻道 4 更大,所以更換策略為頻道 2。. Step9. p2 ~ p9 皆因為沒有利益值更高的策略而不換。賽局結束。. 圖 3.4 頻道配置賽局最終狀態. 圖 3.4 為賽局依照表 3.1 步驟運作後的狀態,檢查此狀態後發現已經沒有任何一個 參與者可以藉由獨自改變自身的策略而獲得更高的利益值,即已達到納許平衡, 所以策略向量 C {2,5,3,4,5,1,1,2,3} 為本賽局最終的執行結果。. 3.1.3. 賽局的穩定性. 在賽局理論當中,並不是每種賽局都有納許平衡的存在,但納許平衡的存在 與否卻是判斷賽局設計是否有解的準則。接下來我們將證明我們的頻道配置賽局 27.
(37) 存在納許平衡。 首先因為本賽局不會有兩個以上的參與者同時改變策略,所以參與者 pi 將它 的決策從 ci 改變為 ci ' 後不會因為同一個時間點有其他的參與者改變策略而影響效 用函數的計算,所以我們可以將參與者 pi 改變策略後的效用函數以(3.3)式表示。. u i (c i ' , C i ) f ( c i ' , c j ). (3.3). j i. Lemma 1. 當參與者 pi 將它的決策從 ci 改變為 ci ' 後,其他參與者 p j p i 的新的效用值為 u j (ci ' , Ci ) u j (C ) f (c j , ci ) f (c j , ci ' ) 。 證明Lemma 1: 在參與者 pi 改變策略前,參與者 p j 的效用函數可以用(3.4)式表示。. u j (ci , Ci ) f (c j , ck ) f (c j , ci ). (3.4). k j,i. 當參與者 pi 改變策略後,因為所有其他參與者 pk , k i, j 未改變策略,因此. f (c j , ck ) 的值不變。我們可以用(3.5)式表示參與者 p j 的效用函數。 u j (ci ' , Ci ) f (c j , ck ) f (c j , ci ' ). (3.5). k j,i. 將 (3.5) (3.4) ,即代表參與者 p j 在參與者 pi 改變策略後利益值的改變量。. u j (ci ' , Ci ) u j (ci , Ci ) f (c j , ci ' ) f (c j , ci ). (3.6). 故移項整理後得. u j (ci ' , Ci ) u j (ci , Ci ) f (c j , ci ) f (c j , ci ' ). (3.7). 而參與者 pi 改變策略前後的網路整體效用值我們可以用(3.8)式與(3.9)式分別表示。 28.
(38) U u j (ci , Ci ). (3.8). U ' u j (ci ' , Ci ). (3.9). j. j. Theorem 1. 無論賽局的初始狀態與賽局進行的過程為何,本賽局終究會進入納許平衡點。 證明Theorem 1: 當參與者 pi 改變決策後,網路整體效用函數值可以表示成參與者 pi 與其他參 與者的效用函數值加總,如(3.10)式。. U ' ui (ci ' , Ci ) u j (ci ' , Ci ). (3.10). j i. 根據 Lemma 1,(3.10)又可以進一步以(3.11)式表示。. U ' ui (ci ' , Ci ) u j (ci , Ci ) f (c j , ci ) f (c j , ci ' ). (3.11). j i. ui (ci ' , Ci ) u j (ci , Ci ) f (c j , ci ) f (c j , ci ' ) j i. j i. j i. ui (ci ' , Ci ) U ui (ci , Ci ) ui (ci , Ci ) ui (ci ' , Ci ) U 2(ui (ci ' , Ci ) ui (ci , Ci )). 因 為 參 與 者 pi 必 定 是 有 更 好 的 利 益 值 才 會 換 策 略 , 即 ui (ci ' , Ci ) ui (ci , Ci ) 0 。故 U ' U 。又網路整體效用函數值總和不可能無限. 的增長,故經過有限次的策略轉換後必定會收斂,即達到納許平衡。. Theorem 1 保證我們的賽局一定會達到納許平衡。Theorem 1 的證明也並未要 求參與者每次在選擇策略時一定要選擇對自己最有利的策略,只要每次參與者在 策略轉換後利益值有上升就可以保證 Theorem 1 的正確性。. 29.
(39) 3.1.4. Better Response. 如果在動態賽局的進行過程中,參與者每次都會選擇對自身最有利的策略, 則稱此原則為 best response。考量到本賽局的網路整體效用函數值有一定上限。在 此前提下,如果每個參與者都採取 best response 的原則,那麼當賽局達到納許平衡 後,結果並不見一定是最佳。例如,圖 3.4 中 p4 的利益值上升量約為其他參與者 的二到三倍,參與者之間的利益分配不均。這也說明當賽局達到納許平衡後某些 頻道會被少部分的介面卡(如圖 3.4 中的 p4 )所佔用,而無法平均分配頻道的使用。 而我們知道只要參與者每次在策略轉換後的利益值有上升就可以確定賽局會達到 納許平衡。因此我們提出另一種稱為 better response 的策略選擇原則,即參與者會 從多個可以讓自身利益值提升的策略當中隨機挑選一個,並就挑選到的策略做轉 換。這兩種策略選擇方式我們定義如(3.12)式與(3.13)式。. . Best Response ci ' arg max ui ( s j , Ci ). (3.12). ci ' random () , {s j | s j S i ui ( s j , Ci ) ui (ci , Ci )}. (3.13). s j Si. . Better Response. 透過 better response 的策略選擇方式,我們嘗試讓大部分參與者的利益值都能提 升,進而讓納許平衡狀態之下的獲益分配更趨公平。我們將利用模擬實驗來驗證 此想法的正確性。. 30.
(40) 3.1.5. 賽局的實作. 我們考慮如何將頻道配置賽局模擬成以分散式演算法執行的型式。本賽局限 制在同一時間點下只能有一個參與者改變策略,若是有兩個以上的參與者同時改 變決策,我們就無法保證賽局會停止在納許平衡,可能就無法達到一個穩定狀態。 為了避免有多個參與者同時改變策略,我們設定每個參與者要改變策略前必須先 倒數一段 back-off time,時間長短隨機產生並控制在 1 到參與者數目之間。一開始 每 個 參 與 者 會 依 照 Common Channel Approach 的 方 式 選 擇 策 略 , 並 送 出 STRATEGE_NOTIFY(i, ci ) 訊息通知傳輸範圍之內的其它參與者。同時每個參與者. 需倒數一段 back-off time。參與者在 time out 後檢查是否有其他更好的策略,並且 將改變後的策略以 STRATEGE_CHANGE(i, ci ) 訊息通知其它參與者。其它參與者 在收到 STRATEGE_CHANGE( j , c j ) 的訊息後,如果本身就已經在倒數的階段則不 予理會;否則必須重新倒數一段 back-off time 用來檢查其他參與者在改變策略後是 否會影響自身的利益並存在其他更好的策略。. 31.
(41) 3.1.5. 分散式頻道配置模擬演算法. Algorithm 1 Channel Assignment Game With Best Response (player i). Input : (1) T : The number of available channels (2) k : The number of radio interfaces per node (3) S i {1,2,, min(T ,2k 1)} : The Strategy Set of player i PROCEDURE Initial 1: ci {(i mod min(T ,2k 1)) 1} 2: Broadcast STRATEGE_NOTIFY(i, ci ) message 3: backoff_time random number [1, n k ] PROCEDURE Best Response 1: On receiving STRATEGE_CHANGE( j , c j ) message do 2: 3: 4: 5: 6:. if backoff_time = 0 backoff_time random number [1, n k ] end if end When backoff_time times out do. 7:. ci ' arg max ui ( s j , Ci ). 8: 9: 10:. if ci ' ci ci ci ' Broadcast STRATEGE_CHANGE(i, ci ) message. s j Si. 11: end if 12: end. 32.
(42) Algorithm 2 Channel Assignment Game With Better Response (player i). Input : (1) T : The number of available channels (2) k : The number of radio interfaces per node (3) S i {1,2,, min(T ,2k 1)} : The Strategy Set of player i PROCEDURE Initial 1: ci {(i mod min(T ,2k 1)) 1} 2: Broadcast STRATEGE_NOTIFY(i, ci ) message 3: backoff_time random number [1, n k ] PROCEDURE Better Response 1: On receiving STRATEGE_CHANGE( j , c j ) message do 2: 3: 4: 5: 6: 7: 8: 9: 10:. if backoff_time = 0 backoff_time random number [1, n k ] end if end When backoff_time times out do Random choose one strategy ci ' from {s j | s j S i ui ( s j , Ci ) ui (ci , Ci )} if ci ' ci ci ci ' Broadcast STRATEGE_CHANGE(i, ci ) message. 11: end if 12: end. 33.
(43) 3.2 鏈結分配頻道. 前面我們利用賽局理論為每張網路介面卡分配頻道,接下來則要為網路中的 每條鏈結決定所要使用的頻道。我們根據鴿籠原理限制可分配的頻道集合,可以 保證在頻道配置結束後任意鏈結兩端的 MAP 均有使用到共同的頻道。事實上,當 網路介面卡頻道配置完成後,有可能會發生鏈結兩端的 MAP 配置一個以上的共同 頻道。我們雖然可以為這兩個 MAP 使用雙鏈結來傳輸資料,但因為兩條鏈結的干 擾程度不一樣,如果要能充分發揮雙鏈結的效能,則需另外設計流量控制與壅塞 控制的機制(例如:對個別鏈結採用不一樣的競爭視窗)。為了簡化問題,我們只考 慮使用一條鏈結來傳輸資料。 我們會依共同頻道的數量決定鏈結分配頻道的順序,首先為兩端 MAP 只有一 個共同頻道的鏈結配置頻道,再來是有兩個共同頻道的鏈結,接著是有三個共同 頻道的鏈結...依此類推。因為共同頻道較少的鏈結可能是效能上的瓶頸,所以才賦 予這些鏈結比較高的優先權。接下來說明我們是如何決定鏈結所要使用的頻道。. 3.2.1. 多個共同頻道的鏈結頻道配置. 因一條鏈結 (i, j ) 的 SIR 值須同時考量 SIR j i 與 SIRi j ,所以在決定鏈結要使用 哪一個頻道時必須將兩端的 MAP 都考量進去。如果欲建立鏈結兩端的節點只一個 共同頻道,則鏈結確定使用該頻道。當有兩個以上的共同頻道時,我們則依照下 列步驟挑選鏈結所使用的頻道 : . 1.. 計算每個共同頻道已確定被使用的次數。假設鏈結 (i, j ) 有頻道 1 與頻道 3 可 以選擇,那麼我們會去計算目前有多少個以 i 為 end-point 的鏈結使用頻道 1, 同樣的我們也去計算目前有多少個以 j 為 end-point 的鏈結使用頻道 1,然後加 總起來當作是頻道 1 已確定被使用的次數。我們也用相同的方式計算頻道 3. 34.
(44) 已確定被使用的次數。. 2.. 選擇已確定被使用的次數最少的頻道。接續步驟 1 的例子,假設頻道 1 的已 確定使用次數為 5,頻道 3 的已確定使用次數為 2,那麼我們會決定讓鏈結 (i, j ) 使用頻道 3 傳輸資料。如果已確定被使用的次數最少的頻道不只一個,則隨 機選擇一個當成鏈結 (i, j ) 所要使用的頻道。. 為什麼我們在決定鏈結 (i, j ) 所使用的頻道時,並不是檢查每個共同頻道在所 有鏈結中已確定被使用的次數呢? 這是因為干擾程度的高低除了網路中有使用相 同頻道做通訊的 MAP 數量之外,還與這些干擾源到接收端的距離成反比,距離的 影響甚至比數量來大,而距離一個 hop 之內的干擾源對接收端造成的干擾又遠比 其他一個 hop 之外的干擾來的大。因此我們採計一個 hop 之內的干擾源數量,如 此便能將距離與數量的因素都納入判斷,也減少方法在執行上的複雜度。`. 3.2.2. 鏈結配置頻道例子. 考慮網路中有 4 個 MAP,每個 MAP 安裝 3 個網路介面卡。假設已經完成頻 道配置賽局,現在要對每條欲建立的鏈結決定所要使用的頻道。我們會依照共同 頻道的數量逐一對每條鏈結配置頻道。詳細步驟如表 3.2 所示。 表 3.2 鏈結配置頻道詳細步驟. 依照共同頻道的數量,由小. Step 1. 到大檢查未配置頻道的鏈 結。首先是共同頻道數量為. 1 的鏈結。. 35. . link ( A, B) channel 1. . link ( B, C ) channel 2.
(45) 共同頻道數量為 1 的鏈結. Step 2. 都已分配完畢。輪到共同頻 道數量為 2 的鏈結。目前輪 到 link ( A, C ) 。 頻道 3 與頻道 5 的確定被使 用次數皆為 0,隨機選擇一 個頻道。假設選擇頻道 3。 . link ( A, C ) channel 3. 輪到 link (C , D) 決定頻道。. Step 3. 頻道 2 的確定被使用次數 為 1,而頻道 5 的確定被使 用次數為 0。選擇確定被使 用次數較小的頻道。 . Step 4. link (C , D) channel 5. 所有欲建立的鏈結都已經確定所要使用的頻道,結束分配。. 36.
相關文件
Department of Computer Science and Information
z 香港政府對 RFID 的發展亦大力支持,創新科技署 06 年資助 1400 萬元 予香港貨品編碼協會推出「蹤橫網」,這系統利用 RFID
Researches of game algorithms from earlier two-player games and perfect information games extend to multi-player games and imperfect information games3. There are many kinds of
Department of Computer Science and Information Engineering, Chaoyang University of
n Logical channel number and media information (RTP payload type). n Far endpoint responds with Open Logical
[23] Tiantong You, Hossam Hassanein and Chi-Hsiang Yeh, “PIDC - Towards an Ideal MAC Protocol for Multi-hop Wireless LANs,” Proceedings of the IEEE International Conference
Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications
無線感測網路是個人區域網路中的一種應用,其中最常採用 Zigbee 無線通訊協 定做為主要架構。而 Zigbee 以 IEEE802.15.4 標準規範做為運用基礎,在下一小節將 會針對 IEEE