• 沒有找到結果。

單節倒單擺實驗

第五章 自組織增強式學習模型

5.4 倒單擺系統實驗

5.4.3 單節倒單擺實驗

56

( 𝑥̈

𝜃̈1 𝜃̈2

)

= (

𝑚 + 𝑀0 (𝑚1 + 2𝑀1)𝑙1𝑐𝑜𝑠𝜃1 𝑚2𝑙2𝑐𝑜𝑠𝜃2 (𝑚1+ 2𝑀1)𝑙1𝑐𝑜𝑠𝜃1 𝐼1 + (𝑚1+ 4𝑀1)𝑙12 2𝑚2𝑙1𝑙2𝑐21 𝑚2𝑙2𝑐𝑜𝑠𝜃2 2𝑚2𝑙1𝑙2𝑐21 𝐼2+ 𝑚2𝑙22

)

−1

{(

(𝑚1+ 2𝑀𝐹1)𝑔𝑙1𝑠𝑖𝑛𝜃1 𝑚2𝑔𝑙2𝑠𝑖𝑛𝜃2 )

+ (

(𝑚1+ 2𝑀1)𝑙1𝑠𝑖𝑛𝜃1 2(𝑚1+ 2𝑀1)𝑙12𝑠11

2𝑚2𝑙1𝑙2𝑠12

) 𝜃̇12+ (

𝑚2𝑙2𝑠𝑖𝑛𝜃2 2𝑚2𝑙1𝑙2𝑠21 2𝑚2𝑙22𝑠22

) 𝜃̇22 − (

𝐹0𝑥̇

𝐹1𝜃̇1+ (𝜃̇1− 𝜃̇2)𝐹2 (𝜃̇1− 𝜃̇2)𝐹2

)}

此即為之後雙節倒單擺所要使用的加速度計算公式。

57

值簡單地以單擺在水平面上的投影長度,然後取負數當作獎懲值[40],若是 失敗則獎懲值為 −10,如下:

𝑟 = {−𝐿1∗ |𝑠𝑖𝑛 𝜃1|, |𝜃1| < 30°

−10, |𝜃1| ≥ 30°

圖 29:單節倒單擺系統,單擺設定為一根細長且無空氣阻 力之擺錘

表 3:單節倒單擺系統實驗參數

參數

單擺質量, 𝑚1 0.22 kg

滑車質量, 𝑚 1.328 kg

單擺長度, 𝐿1 2.0 m

單擺質心與轉軸距離, 𝑙1 1.0 m

重力加速度, 𝑔 9.80665 𝑚/𝑠2

滑車阻力, 𝐹0 2.0 N.s/m

單擺阻力係數, 𝐹1 0.007 𝑁. 𝑚. 𝑠 F

𝑚 𝑚1 𝐿1

𝜃1

58

詳細的代理人模型參數如表 4,與之前的二維軌跡取物實驗不同的是限 制了隨機選取行動機率與動作雜訊的最小值,目的是為了讓 Q-table 能持續探 索其它可能的行動方案,而限制行動層 SOM 的學習最小值可以讓行動層 SOM 持續學習新探索到的行動。另外,Q-table 的初始值為 0,輸出層 SOM 的 權 重 初 始 值 範 圍 為 [−20, 20] , 輸 入 層 SOM 初 始 值 的 範 圍 為 ([−1.25, 1.25], [−1.25, 1.25], [−0.5, 0.5])。

表 4:單節倒單擺代理人模型參數表

參數 最小值

Input map size 7 × 7 × 7 units Action map size 21 × 1 units Input map neighborhood size, 𝑁𝑆 0.01 × 𝑓(𝑡)

Action map neighborhood size, 𝑁𝐴 𝑓(𝑡) 0.05 Q-learning rate, α 0.35

Discount factor, 𝛾 0.85

Learning rate of input map, 𝜆𝑆 0.01 × 𝑓(𝑡)

Learning rate of action map, 𝜆𝐴 𝑓(𝑡) 0.0001 Probability of Q-learning exploration, 𝑝 0.005 × 𝑓(𝑡) 0.00001 Max. exploration distance around action unit, 𝜀 0.01 × 𝑓(𝑡) 0.00001 Annealing schedule, 𝑓(𝑡) 0.9995𝑡

實驗會反覆進行訓練,一旦倒單擺角度超過 30 度,就會重新開始,若代 理人能控制滑車 10000 次而不使倒單擺倒下,表示該次的訓練成功。在該次

59

訓練成功後,訓練仍會重新再進行,以繼續探索可能的行動方案,盡可能地 將 Q-table 完全探索、收斂,以適應在各種初始狀態下維持不倒狀態。訓練紀 錄如圖 30,在該實驗訓練約第 1000 次時,代理人便已成功控制滑車 10000 次使其倒單擺不倒下。實驗總共訓練了 3400 次,訓練結束後,該代理人模型 已能在許多不同情況的初始狀態下維持倒單擺不倒下。由於會有一定的機率 採取非最佳化的動作,所以並不會因為 10000 次的成功操作後每一次訓練都 能達到一萬次的操作,這是因為在訓練階段會有一定的機率讓導致失敗的動 作產生,一旦訓練完成後進行實際的模擬,就不會採取機率性動作。

圖 30:單節倒單擺訓練紀錄,在第 1117 次訓練時已成功 完成 10000 次的操作

圖 31 為此次實驗結果的 Q-table 圖,可以發現有一些區塊裡面的 Q-value 仍然維持在初始值 0 的狀況下,這表示倒單擺系統的狀態資訊在輸入到輸入 層 SOM 時並不會去利用到這些輸入層 SOM 的神經元,這是因為這些神經元 所代表的運動狀態,在該倒單擺系統中並不會出現。探究會有這個現象的原 因,可能是輸入層 SOM 設定的初始值存在不利的條件。

60

圖 31:單節倒單擺實驗之 Q-table,有許多 Q-value 仍然維 持在初始值

為了加速實驗的收斂速度,減少實驗成功所要花費的時間,改變獎懲回 饋 的 計算 方式 是很 好 的方 法 。 採 用 下 面的 計 算公式 ,在不過 度地提供 Reinforcement Learning 代理人太多人為訊息的情況下可以有效地快速完成任 務:

𝑟 = {−𝐿1∗ |𝑠𝑖𝑛 𝜃1|10 + 102, |𝜃1| < 30°

−𝐿1∗ |𝑠𝑖𝑛 𝜃1|10 − 102, |𝜃1| ≥ 30°

採用上面的計算方式重新訓練,在第 159 次訓練時就達到了 10000 萬次操作 成功(如圖 32)。不過雖然大大地縮短了成功的時間,但為了讓代理人有更 多的可塑性,本次實驗並不使用這種計算方式,但在實務應用方面,為了加 速代理人的學習速率,可以適度地採用。

61

圖 32:新獎懲值計算方式的訓練紀錄,僅在第 159 次訓練 就成功完成了 10000 次的操作