單元十:強化式學習法 - 動 vs.不動(初階)

學習目標

在這一個單元,會為大家介紹一種高階的AI 學習法 - 強化式學習法。透過正確設定奬勵(和懲罰)機制,機械人可以自學得到智力。

實驗的目標是要訓練機械人可以在四方形的埸地內不停地走動。

 

學習內容

強化式學習法(機械人自學)的原理是透過奬勵和懲罰去鼓勵機械人去做對某些動作。機械人會去改變它的行為從而獲取最高的累積的平均獎勵分數。

  • 向前行走得越快越多,會得到更多奬勵。相反,停頓或向後行,就會被懲罰(被扣分)。
  • 要將等級提升,機械人要盡力向前行,同時間要減少停頓或向後行。

 

活動

材料:

  • 四方形有四面红色牆的賽埸。

AI 設置的參數

  • 用 參數 <Parameters> 下拉餐單的 “載入示範參數” <Load demo parameters ..>
  • 像下面一樣,揀選 “動 vs. 不動” <Blocked vs. Motion>。

 

開始訓練

  • 啓動AlphAI 機械人及聯線到你的電腦。需要時按螢光幕上的”聯線” <Connection> 按鈕。
  • 如果設定參數正確,螢光幕將會顯示以上的神經網絡。

 

獎勵(Reward) 和等級(Level)

向前移動將會得到獎勵

  • 向前行+100 分
  • 向前左轉 +30 分
  • 向前右轉 +30 分

 

懲罰

  • 停止(例如撞牆)或向後行向後轉 -50 分

 

等級的計算:

  • 在過去2分鐘得到獎勵的平均數

 

標籤輸出

  • 根據動作的意思解釋

 

(A) 實驗1 - 沒有學習的駕駛

  • 啓動 “重設學習” <reset learning> 的按鈕。
  • 根據下圖
    • 關閉 “學習” <learning> 按鈕。
    • 關閉 “探索、作新嘗試” <exploration> 按鈕。
    • 啓動 “自動駕駛” <self drive> 的按鈕。

 

  • 留意機械人的行為

討論

  • 形容機械人的行為。它怎樣移動呢?
  • 請問 “獎勵和等級” 有沒有改變呢?如何改變?
  • 機械人有沒有學習到什麼?

 

(B) 實驗2 - 沒有 “探索” 的學習

  • 啓動 “重設學習” <reset learning> 的按鈕。
  • 根據下圖
    • 啓動 “學習” <learning> 按鈕。
    • 關閉 “探索、作新嘗試” <exploration> 按鈕。
    • 啓動 “自動駕駛” <self drive> 的按鈕。

 

  • 留意機械人的行為

討論

  • 形容機械人的行為。它怎樣移動呢?
  • 請問 “獎勵和等級” 有沒有改變呢?如何改變?
  • 機械人有沒有學習到什麼?
  • 機械人是否已經滿足得到的獎勵和等級呢?

 

(C) 實驗3 - 會嘗試 “探索” 的學習

  • 啓動 “重設學習” <reset learning> 的按鈕。
  • 根據下圖
    • 啓動 “學習” <learning> 按鈕。
    • 啓動 “探索、作新嘗試” <exploration> 按鈕。
    • 啓動 “自動駕駛” <self drive> 的按鈕。

 

  • 留意機械人的行為。
  • 當等級達到50,可以停止實驗。

 

討論

  • 形容機械人的行為。它怎樣移動呢?
  • 請問 “獎勵和等級” 有沒有改變呢?如何改變?
  • 機械人有沒有學習到什麼?
  • 機械人可以拿到 +100分的獎勵嗎?
  • 當箭咀轉藍色,代表機械人正在探索中。你有沒有留意到呢?

測試

  • 讓我們測試,透過強化式學習法學習到的智能是否有用?
    • 關閉學習” <learning> 按鈕。
    • 啓動 “探索、作新嘗試” <exploration> 按鈕。
    • 啓動 “自動駕駛” <self drive> 的按鈕。
  • 讓機械人自由走動 3 到 5 分鐘。
  • 看看它得到的最高的等級是多少?

 

  • 學習到的智能是否運作良好呢?是否能夠保持機械人不斷走動呢?

 

討論

  • 試形容什麼是強化式學習法?

 

  • 「探索、作新嘗試」對自學是否重要?

 

  • 要強化式學習法成功,最重要的因素是什麼?