• 沒有找到結果。

第一章、 緒論

由於電腦對局遊戲的應用問題,必須使用龐大的計算資源,因此可以 利用志願型計算(Volunteer Computing)來更有效率地解決此類問題。

在本章節中,將在 1.1 節會先介紹電腦對局遊戲應用,在 1.2 節之中則 會介紹本篇論文的研究動機與目的,在 1.3 節為論文大綱說明。

1.1 電腦對局遊戲應用

電腦對局遊戲領域(Computer Game)自從深藍(Deep Blue)[11]-由許峰 雄博士所發展的西洋棋人工智慧程式,成功擊敗了人類冠軍棋士 Garry Kasparov 後,使得電腦對局相關領域的研究受到大家的關注,也使得更多 學者紛紛投入於該領域之研究,例如:圍棋、象棋、五子棋等知名的棋類 遊戲。

到目前為止,我們實驗室已經開發了許多電腦對局遊戲應用程式,例 如:六子棋程式之 NCTU6[20]、圍棋程式之 HappyGO、象棋程式之棋謀 等。除了我們以外,來自於其他組織的使用者也開發了不少應用,例如:

長榮大學許舜欽教授與黑白棋(Othello)[1]、東華大學顏士淨教授與圍棋程 式、師範大學的林順喜教授與圍棋[9]程式開發及陳志昌教授與象棋[24]開 局庫和澎湖科技大學高國元教授與組合對局遊戲理論(Game theory)[14]。

2

1.1.1 特性

電腦對局遊戲應用有著以下兩點特性:

1. 高複雜度、大計算量:由於大多數電腦遊戲對局應用的時間複雜度為 指數時間複雜度,且需要龐大的計算資源,所以可以利用志願型計算 來有效率地解決問題。

2. 高動態性:以圍棋為例,當圍棋應用程式找到必勝步時,就可以把其 他搜尋分支砍掉;或是當圍棋應用程式認為快要贏的時候,就會專注 在特定分支做搜尋。

對於上述兩點,可以使用志願型計算來加速、且有效率地解決電腦遊 戲對局應用問題。

1.1.2 志願型計算

志願型計算(Volunteer Computing)[15]主要是利用許多閒置的計算資 源,例如正在閒置的桌機(Desktop Computer),透過網路,將這些來自不同 組織的計算資源,集結成龐大的聯盟(Federation)運算資源。志願者們將這 些閒置的計算資源捐出來(cycle stealing)[12],提供給特定的計畫以完成需 要大量計算的應用問題。

3

1.1.3 CGDG

電腦遊戲桌機格網(Computer Game Desktop Grid)[13]的架構如圖 1 所 示,此系統具有以下兩項能力:

1. 能支援、控制高動態的工作[6]。

2. 能支援多個平行運算的應用程式。

過去利用此系統成功地解出六子棋的米老鼠開局[6]以及其他電腦對 局的應用問題。

圖 1:CGDG 架構圖

本系統的使用者(User),主要功能為發送工作(Jobs),例如 AI 計算、開 局庫問題、或其他電腦對局應用問題給系統中樞,仲介者(Broker)。仲介者 (Broker)會把資源公平地分配給每個使用者,再把使用者發送的工作分配至

4

後端的計算資源,也就是工作者(Worker),當工作者運算完成後,再將結 果傳回給使用者。

工作者(Worker)[10],主要功能為提供計算能力,執行仲介者(Broker) 所分配的工作,並將其結果回報給仲介者。除了計算的工作之外,工作者 也會定期地回報工作者自己的狀態給仲介者,並且透過仲介者將資訊傳回 給使用者。

仲介者(Broker)[7]:這是系統的中樞,主要功能為協調使用者(User)與 工作者(Worker)之間的溝通,負責將資源公平地分配給每位使用者,並且 將工作發派至合適的工作者上;此外,也會將工作者的資訊傳回給使用者,

讓使用者知道目前系統資源的使用狀態。

1.2 研究動機與目標

由於目前已經有許多使用者、許多組織加入使用 CGDG,例如:國立 東華大學、國立師範大學、中原大學、東海大學等組織。

然而在眾多的使用者或組織之中,如何將運算資源公平地分配給使用 者、如何提升所分配運算資源的使用效能,是一些很重要的議題,因此 以下的目標分為兩點:

1. 公平性問題:以下要解決的問題再分為兩點:

I. 使用者之間或組織之間的公平性問題:由於使用者或組織之間共 享資源,如何將運算資源公平地分配給使用者或組織成為重要的 課題,因此我們希望設計一套方法,達到分配運算資源的公平性。

5

II. 使用多執行緒之工作的公平性問題:以往使用者發送的工作都為 單執行緒,如今隨著 AI 程式的演變,其中為了增強棋力,多執行 緒之工作也漸漸產生,因此我們希望設計一套方法,達到分配資 源給多執行緒之工作的公平性。

2. 資源使用效能問題:基於系統的角度,運算資源的使用率越高越好,

再加上應用程式使用運算資源的多寡,會影響其效能,因此我們希望 設計一套方法,以運算資源的使用率高且分配資源公平為前提,提升 應用程式所使用的運算資源效能。

為了增進 CGDG 在分配運算資源的公平性和提升 CGDG 所分配 運算資源給使用者的效能,本篇論文提出一些改良 CGDG 分配運算 資源的方法,這些方法兼具資源分配的公平性和資源使用的效能。

1.3 論文大綱

在第一章,此篇論文介紹了電腦對局遊戲應用的相關背景,並提出了 研究動機與目標。在第二章中,會介紹相關格網系統以及過去實驗室開發 的桌機格網系統 (CGDG)。在第三章中則會介紹仲介者的資源分配管理設 計,包含使用者或組織之間的公平性、多執行緒工作所使用資源的公平性、

分配資源所使用的效能。在第四章中則會介紹仲介者的系統實作及實驗結 果。第五章則為論文總結以及說明未來的研究方向。

6

相關文件