• 沒有找到結果。

類神精網路應用於機器足球員系統的截球

N/A
N/A
Protected

Academic year: 2021

Share "類神精網路應用於機器足球員系統的截球"

Copied!
6
0
0

加載中.... (立即查看全文)

全文

(1)

類神精網路應用於機器足球員系統的截球

國科會計畫案號:NSC 94-2213-E-327-014- Kuo-Yang Tu

Institute of System Information &Control NKFUST

e-mail: tuky@ccms.nkfust.edu.tw

Chung-Ching Lin

Institute of System Information &Control NKFUST

摘要

截球功能可以廣泛運用在機器足球員系統 中,如攔截敵方傳球、守門員防守、評估傳球是否 可行率等。因此本論文探討機器足球員截球功能的 設計,運用類神經網路設計機器足球員截球功能, 具體的作法是以類神經網路的學習機制訊訓練守 門員的截球行為,經由本論文的研究成果,我們建 立機器足球員的中重要行為,未來希望擴展此成 果,建立機器足球員的完整行為。

關鍵詞:至多五項

一、簡介

截球功能的重要性,可以分成兩個部份來探 討。首先在機器足球員的基本動作模式中的功能設 計完成後,應該最先注意到的就是守門員的截球設 計,由於該功能設計關係到機器足球員能否具有比 賽的基本功能:防守,所以本論文探討守門員截球 功能的設計。 機器足球員比賽中,主要是以團隊得分多寡 來論定比賽結果,則守門員的截球功能也就成為一 個不可或缺的重要設計。只要能成功的擋住多次敵 方射球入門的機會,就能有效的降低敵方得分的數 目,更能提高機會幫助自己贏得比賽的最後勝利。 另外除了守門員之外,隊員的截球技巧與功 能也是不容小看的設計部份,成功的欄截球以阻擋 敵方的傳球,破壞敵方的進攻戰術,如此一來也可 以大幅度地降低敵方將球推進後場的威脅性。最後 還可延伸截球的功能,以機器足球員的截球能力作 為評估傳球的依據,都是可以在往後設計上,所附 加的功能。 在進行任何一項球類比賽時,球員們皆相信 且謹記一件事,即一支球隊擁有良好的防守能力將 會是擁有最強的進攻戰術,所以不論在守門員的截 球功能設計上,或是其它機器足球隊員的截球技巧 設計上,都是必要且謹慎設計的重點。這也是為何 本論文探討機器足球員的截球行為模式的重要動 機。 機器足球員所需要學習的截球功能,是在機 器 足 球 員 系 統 分 類 模 式 下 的 個 人 行 為 模 式 (Individual Behavior Mode)。因為截球的技巧 或行為已經不僅只是單純地考慮到自己一台機器 足球員的功能或行為的問題,也需要考慮到周遭環 境的變化,其中考慮條件最為重要的部份為運動中 球的速度、方向甚至連球的行經路徑都是需考慮在 內的重要因素。 因為截球功能的設計,往後希望直接運用於 實際的實體機器足球員,所以對於學習截球功能的 探討,是以人工智慧學習中,較具代表性的類神經 網路(Neural Network)架構的學習方式來訓練機 器足球員的截球能力,學習採用監督式學習網路 (Supervised Learning Network)中的倒傳遞網 路(Back Propagation Network,BNP)來訓練此 一機器足球員的截球功能。 本論文內容的安排如下,首先在第二章將對 於類神經網路基本原理作一些簡單的介紹。第二章 展示機器足球員如何利用類神經網路學習截球功 能的設計過程,主要針對學習截球功能的系統架構 及實現方式的部份加以討論說明。並且在第三章對 於機器足球員在利用類神經網路方法訓練後,所學 習到的截球功能加以討論。最後一章是結論。

二、類神經網路的原理介紹

類神經網路採取試著模仿人類腦部神經工作 的模式,再藉由多個處理器單位之間所接受到的刺 激並交換訊息,以得到某種結果,再經由大腦中樞 做出適當的回應。 類神經網路可以採用硬體或軟體的方式來完 成學習工作。硬體的方式會像平行處理器的架構, 讓多個處理器單元以高速的匯流排相連在一起。軟 體的方式則是以資料結構與演算法來描述彼此相 連的節點,而節點與節點之間的連結是具有權重數 值,某些節點可以接受輸入的刺激,某一群節點也 可以聯合在一起輸出一些較有意義的訊息。本研究 將以軟體的方式來達到類神經網路的學習方法。

(2)

類神經網路是由生物神經元工作方式啟發而 建立的。如圖一即為生物的神經元模型。簡言之, 在人的腦袋中也是由許多這樣大大小小不同的生 物神經元模型所組而成,而這些生物神經元模型也 可視為如同是一個擁有輸入、輸出以及轉換函數的 節點。 圖一 生物神經元模型 生物神經元模型主要工作[1]: 神經元:主 要的處理單元部份,負責收集訊息並決定如何處 理;神經節:神經元與神經元之間訊號傳遞的連接 點;神經樹:負責接受其它神經元的訊號;神經軸: 主要的傳遞介質,負責將訊息傳到其他神經元的神 經樹。 運用如同生物神經元模型來完成人工智慧學 習的工作時,人類藉由如圖二模仿生物神經元模型 創造而得的人工神經元模型,而每一個人工神經元 模型就如同一個節點,類神經網路就是利用許許多 多這樣的節點所聯結而成的網路以達到模仿人類 學習的功能。 圖二 人工神經元模型 圖二模型中,每一個輸入訊號是另一個人工 神經元模型的輸出訊號,同樣地,輸出訊號也可是 另一個人工神經元模型的輸入訊號。其中輸入與輸 出訊號之間的關係,都會有一個轉換函數來連結兩 者。輸入部份需要透過權重值的連結以加強訊號, 也需要等待閥值的判定,才能進行轉換函數變成輸 出,閥值的功用就如同神經元開關需要透過一定的 刺激量,若已達到臨界值,才會刺激神經元工作。 目前類神經網路最廣泛使用的網路架構[2] 如圖三,其結構包含三層: 1、 輸入層(Input Layer): 輸入層部分,神經元的數目即為我們所欲輸 入的變數個數,其處理單元數目依問題中輸入變數 之個數而決定。類神經網路對於變數的選取有較大 的自由度,故沒有一定的選擇方式,來選取輸入層 之輸入變數。使用線性轉換函數。 2、 隱藏層(Hidden Layer): 類神經網路以隱藏層表現輸入處理單元之間 的相互關係,隱藏層中所需的神經元數目,並無標 準方法決定,通常會依系統架構的特性進行測試判 斷,經常需以試驗方式決定其最佳數目。隱藏層可 以有多層的隱藏層,或是沒有隱藏層的設計,各層 的神經元數目關係到整個網路的學習能力,神經元 數目的增多,雖然可以達到較好的學習效果,卻需 要花費較多時間訓練。過少的神經元數目則無法完 整地描述輸入和輸出變數之間的關係,其轉換函數 一般使用非線性的轉換函數。 3、 輸出層(Output Layer): 輸出層中神經元的輸出結果則為網路最後的 輸出值,其處理單元數目視欲得結果之變數個數而 定,在輸出層則一般也使用非線性轉換函數。 圖三 類神經網路模型 人工神經元常用的五種轉換函數定義如下 (其圖型分別如圖四): a.Step Function:

=

otherwise

x

x

f

,

0

0

,

1

)

(

(1)

b.Hard Limiter Function:

<

=

0

,

1

0

,

1

)

(

x

x

x

f

(2) c.Ramp Function:

<

>

=

0

,

0

1

0

,

1

,

1

)

(

x

x

x

x

x

f

(3)

d.Unipolar Sigmoid Function:

x

e

x

f

λ

+

=

1

1

)

(

(4)

(3)

e.Bipolar Sigmoid Function:

1

1

2

)

(

+

=

− x

e

x

f

λ (5) 圖四 類神經網路轉換函數圖形 如同圖三是一個具有單層隱藏層的類神經網 路架構,可以分成下類幾個探討的部份,說明倒傳 遞演算法如何應用一個訓練範例的一組輸入值,與 一組目標輸出值,修正網路架構中的權重直與閥值 [2]: 1.應用訓練範例的輸入處理單元的輸入值{X}, 計算隱藏層處理單元的輸出值{H}如下:

=

=

(

k

)

(

ik i k

)

k

f

net

f

W

X

H

θ

(6) 其中

H

k為隱藏層第 k 個隱藏單元的輸出值,

f

為 轉換函數,

W

ik為第 i 個輸出單元與第 k 個隱藏單 元間的權重值,

X

i為第 i 個輸入單元的輸入值,

θ

k 為第 k 個隱藏層單元的閥值。 2.應用隱藏層處理單元的輸出值{H},計算輸出 層處理單元的推論輸出值{Y}如下:

)

(

)

(

=

=

j kj k j j

f

net

f

W

H

Y

θ

(7) 其中

Y

j為輸出層第 j 個輸出單元的推論輸出值,

f

為轉換函數,

W

kj為第 k 個隱藏單元與第 j 個輸 出單元間的權重值,

θ

j為第 j 個隱藏層單元的閥 值。 3.因為監督式學習主要是在降低網路輸出單元目 標輸出值與推論輸出值間的差距,所以一般用誤差 函數表示學習的品質:

=

2

)

(

2

1

j j

Y

T

E

(8) 其中

T

j為訓練範例的輸出層第 j 個輸出單元的目 標輸出值,

Y

j為訓練範例的輸出層第 j 個輸出單 元的推論輸出值。 4.類神經網路學習的主要目的為,修正網路架構 的權重值,使推論輸出值與目標輸出值的誤差達最 小值。因為誤差函數是權重值的函數,所以為了使 誤差函數達最小值,可用“最陡坡降法"使其最小 化:

W

E

W

=

Δ

η

(9) 其中

η

稱為學習率,控制每次修改權重值的幅度。 5.以下分別推導輸出層到隱藏層,與隱藏層到輸 出層間的權重質修正量公式: a.輸出層到隱藏層間的權重值修正公式: 誤差函數對網路輸出層第 j 個單元與隱藏層 第 k 個單元間權重值的偏微分: k j j j kj j j j j kj H net f Y T W net net Y Y E W E = ∂ ∂ ∂ ∂ ∂ ∂ = ∂ ∂ ) ( ' ) ( (10) 令

δ

j定義為輸出層第 j 個輸出處理單元的誤 差量:

)

(

'

)

(

T

j

Y

j

f

net

j

j

=

δ

(11) 則輸出層與隱藏層間的權重值修正量如下: k j k j j j kj kj T Y f net H H W E W = • − • • = • • ∂ ∂ − = Δ η η ( ) '( ) η δ (12) 同理,輸出單元的閥值修正量: j j j

E

η

δ

θ

η

θ

=

=

Δ

(13) b.隱藏層到輸入層間的權重值修正公式: 誤差函數對網路隱藏層第 k 個單元與輸入層 第 i 個單元間權重值的偏微分: i k j kj j i k j kj k j j i k k j j j j j ik j j k k ik X net f W X net f W net f Y T X net f H net net Y Y E W net net H H E W E • • ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − = • • ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ = • • ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ ∂ ∂ ∂ ∂ ∂ ∂ = ∂ ∂ ∂ ∂ ∂ ∂ = ∂ ∂ ∑ ∑ ∑ ) ( ' ) ( ' ) ( ' ) ( ) ( ' δ (14) 令

δ

k定義為隱藏層第 k 個隱藏層處理單元的 誤差量: '( k) j kj j k W ⎟⎟f net ⎠ ⎞ ⎜⎜ ⎝ ⎛ =

δ δ (15) 則隱藏層到輸入層的權重值修正量如下:

(4)

i k i k j kj j ik ik W f net X X W E W ⎟⎟• • = • • ⎠ ⎞ ⎜⎜ ⎝ ⎛ • = ∂ ∂ − = Δ η η

δ '( ) η δ (16) 同理,隱藏層的閥值修正量如下: k k k E η δ θ η θ =− • ∂ ∂ − = Δ (17) 6.通常應用時,會將式(12)、(13)、(16)、(17) 改寫成下列式子:

Δ

W

kj

(

n

)

=

ηδ

j

H

k

+

α

Δ

W

kj

(

n

1

)

(18)

Δ

θ

j

(

n

)

=

ηδ

j

+

α

Δ

θ

j

(

n

1

)

(19)

Δ

W

ik

(

n

)

=

ηδ

k

X

i

+

α

Δ

W

ik

(

n

1

)

(20)

Δ

θ

k

(

n

)

=

ηδ

k

+

α

Δ

θ

k

(

n

1

)

(21) 其中

α

稱為慣性因子,控制慣性項的比例。 慣性因子若是太大或是太小都會使網路收斂 與學習效果較差。通常,慣性因子可先取較大的初 始值,爾後在訓練的過程中逐漸減小其設定值,一 般為一個小於“1"的係數。 類神經網路的學習架構中,必需考慮“學習 率"的設定,因為學習率太大或太小都會使網路收 斂與學習效果較差。較大的學習率會使網路的震幅 過大,造成數值震盪而難以收斂。而較小的學習 率,則會造成學習訓練時間過長。實驗通常以取小 於“1"的學習率,可以得到較佳的學習效果及良 好的收斂效果。 總合以上探討的結論,則式子(18)、(19)、 (20)、(21)即為倒傳遞演算法的重要公式,此稱學 習為“通用差距法則"。 類神經網路常用以下兩種作為分類依據:[2] 1. 學習策略: a.監督式學習: 在學習的過程當中,有輸入的值,也會有輸出 的範圍值可以令在訓練權重數值的過程中有比對 的範例。 b.無監督式學習: 在學習的過程當中,有輸入的值,但沒有輸出 的範圍值,所以在訓練權重數值的過程中將以輸出 的標準差做為判定的標準。 c.聯想式學習: 在訓練的過程當中,沒有一定的輸出範圍,僅 能從中整理出規範,在運用的時候再以其規範加以 比對結果。 2. 網路架構: a.前向式架構: 所有的神經元以分層的方式做為排列,以輸入 層、隱藏層以及輸出層排列來形成網路架構,而每 一層的輸出都只單純的為下一層的輸入。 b.回授式架構: 回授的架構可以由輸出層再接回輸入層,也可 是各層之間的神經元互相連結,或者是神經元完全 不分層的連接都可以算是回授式架構。

三、截球功能的設計

ROBOCUP 世 界 杯比 賽的模 擬組 冠軍 Peter Stone 之 相 關 著 作 , Layered Learning in Multiagent Systems[3],對於有關類神經網路學 習截球的實驗產生了初步的想法和觀念,由於書中 僅提到了運用什麼樣的學習架構和初始化的步 驟。但對於如何訓練機器足球員擁有截球能力,書 中有基本的架構卻沒有較完整的內容與過程探 討,所以在功能的設計以類神經網路的原理,推演 如何訓練機器足球員的過程。功能設計中,學習例 子的取得過程也會與書中有所不同,以及學習率和 權重值初始化的值也會因為系統架構的不同而有 所變更。 首先,由於所運用的方法一樣是類神經網路 的演算學習方式,所以實驗採用的將會如同圖五所 示的架構實現截球的球技巧能力與行為模式。使用 的方式為三層的監督式之倒傳遞類神經網路的學 習架構。分別為輸入層、隱藏層以及輸出層,其中 隱 藏 層 的 神 經 元 函 數 為 Unipolar Sigmoid Function。 在機器足球員的截球功能以類神經網路學習 架構設計中,分成單點與三點的方式進行訓練,兩 種訓練方式的權重值皆以“0.001"做為初始值, 而學習率以大小為“0.0001"進行訓練,閥值的輸 入大小為“-1",最後則以權重值的收斂情況決定 代數的次數。 圖五 截球設計之架構 圖中參數定義如下: Balld1:球進入截球範圍時,球和截球者的距離。 Balld2:球進入截球範圍後,球和截球者的距離。 Balla:球本身運動中的角度。

(5)

Angle:截球者面向之角度。 V、W:類神經網路學習中的權重值。 -1:為神經元閥值的輸入。 圖六 單點訓練權重值示意圖形 圖七 單點訓練權重值實際圖形 圖八 三點訓練權重值示意圖形 訓練的方式分為兩種,第一種以單點的進攻 的方式進行訓練防守者的權重值大小,進攻者在距 離球門前 100 Pixel 的地方進行單一定點射球門的 動作,射門的方式是以一個扇子形狀進行,而其射 球的角度則以 30 度的區間內重覆不斷地對球門做 射門的動作。 防守者在球門前等待神經元的刺激,當旋轉達 到經過類神經網路的神經元運算後的角度時,防守 者則以全速前進的方式,以防止球向前推進至禁區 部份,在進攻者與防守者之間不斷的重覆練習動作 下,以達到訓練防守者在類神經網路學習架構下, 截球時所需要的權重值大小。至於類神經網路架構 學習截球訓練的示意圖形與實際圖形則分別為圖 六與圖七所示: 圖九 三點訓練權重值實際圖形 圖十 測試截球的成功率示意圖 圖十一 測試截球的成功率實際圖 第二種訓練的方式以三個定點的進攻的方 式,進行訓練防守者的權重值大小,進攻者在距離 球門前 100 Pixel 的地方進行射球的動作,射門的 方式是以一個扇子形狀進行,而其射球的角度則以 30 度的區間內重覆不斷地對球門做射門的動作。 防守者一樣在球門前等待神經元的刺激,當旋 轉達到類神經網路運算後的角度時,防守者以全速 前進的方式,防止球向前推進至禁區部份或球門

(6)

內,在這樣的方式下,不斷重覆練習,以達到訓練 防守者在類神經網路學習架構下,截球行為所需的 權重值大小。學習的示意與實際圖形則分別以圖八 與圖九所示。 在經過不斷且重覆的練習下,類神經網路學 習架構的權重值大小也已有了一定的大小數值之 後,接下來的測試實驗部份則為測試防守員在截球 訓練學習後,其在防守球門上的截球率成效為何。 測試的進行方式以進攻者在距離球門前 100 Pixel 的地方,進行定點射門的行為動作,在高度 的位置是以亂數配置縱軸高度,而射門的方式也是 以亂數決定其射球的角度。測試的示意圖形與實際 圖形分別如圖十與圖十一。

四、截球功能模擬結果

權重值的大小收斂到一定的範圍中,也代表訓練的 結果有了一定的程度,所以測試的方式以亂數的配 置進攻者定點位置與射門角度,並記錄機器足球員 的截球成功率與失敗率,其測試結果如表 3-1 所 示: 表 3-1 截球率的測試結果表 Training point Success Fail

One point 61% 39% Three points 73% 27% 可以從測試的結果表之中清楚地知道,在訓 練的過程中,若以越多定點的訓練方式所訓練出來 的權重值,可以讓機器足球員擁有越成功的截球能 力。 由於是使用類神經網路的監督式學習架構,所 以在學習之前定義輸出與輸入上必須要給予良好 以及準確的標準設定值,而這也是監督式學習架構 之中較大缺點,因為在學習後的結果,最好的情況 也僅能跟最初的輸出與輸入定義相同或較為接近。 若將訓練的定點或定義的例子增加,則可有 效地提升截球的成功率,但代數的次數在相對上也 會變得比較多,在類神經網路學習的架構之中,也 需要有較長久的時間來收斂類神經網路學習架構。

五、結論

守門員罰踢截球是一難以塑模行為,本論文 詳加解析規劃守門的截球技巧,透過類神經網學習 此技巧,雖然學習的成果,守門截球成功率是分別 61%(one point)與 73%(three points),不是很 高,但與人類相比已屬不易。未來我們將此成果用 在防守時攔截敵方傳球,以及評估傳球是否可以傳 球。

參考文獻

[1] NN,http://cindy.cis.nctu.edu.tw/AI96/team11/pg 0.htm [2] 葉怡成,2002,應用類神經網路,三版一刷, 儒林圖書有限公司,台北。

[3] Peter Stone, 1998, Layered Learning in

Multiagent Systems: A Winning Approach to Robotic Soccer, MIT Press, Cambridge, Massachusetts, London, England.

參考文獻

相關文件

以下簡單介紹魔術三角形: 如圖 1, 若三角形每邊有 三個數且數字和都是定值, 稱為 3 階 (傳統) 魔術三角形; 如圖 2, 若每邊有三 個數且較大兩數和減最小數的差都是定值, 稱為

下圖一是測量 1994 年發生於洛杉磯的 Northridge 地震所得 到的圖形。任意給定一個時間 t ,從圖上可看出此時間所對

(六)訓練單位應於甄試日前二個工作日完成報名資料登錄 TIMS 系 統事宜。TIMS

〔備註 1:小學數學科修訂課題有關圓形圖的學習重點雖然只要求學生闡釋 涉及簡單計算的圓形圖,例如每個扇形的圓心角須為 30º 或

(A)受器 感覺神經元 聯絡神經元 運動神經元 動器 (B)動器 運動神經元 聯絡神經元 感覺神經元 受器 (C)動器 感覺神經元 聯絡神經元 運動神經元 受器 (D)受器 運動神經元

D5.1 應用1個具體圖像代表 1個單位,製作象形圖 D5.2

圖1 1 會計財務與價值鏈 圖1.1 會計財務與價值鏈..

This study proposed the ellipse-space probabilistic neural network (EPNN), which includes three kinds of network parameters that can be adjusted through training: the variable