Introduction to Q-Learning
20160505
Yuhsuan Chen
2
Q - Learning
增強式學習法(Reinforcement learning)
是根源自心理學大師帕弗洛夫(Pavlov)的制約實驗,這個實驗讓狗把鈴聲和食物
聯想在一起。每次餵食前都先讓狗聽一段鈴聲,久而久之,只要鈴聲響起,即使食
物沒有出現,狗也會因預期心裡而流涎三尺,這就是有名的帕弗洛夫的制約理論
(Pavlovian conditioning theory)
Q-Learning演算法是加強式學習中的其中一種。增強式學習是模仿動物的學習過程
,其學習的經驗來自與環境間的互動,透過學習領悟在各種狀態下選擇哪種策略行
動,以達成目標及任務
3
Q - Learning
• 學習代理人(Agent)
• 學習者的策略動作(Action)
• 與學習者互動的環境(Environment)
• 給予學習者的策略動作好壞的回饋值(Reward)
• 學習者的狀態(State)
4
Q - Learning
系統利用Q值來累積每次行動後所學到的經驗,獲得Q值為一個預期報酬,經過多
次學習之後,才會達到一個理想值Q*,而Q*會選擇以下一個狀態Q預期報酬最高代
替
• Q(s,a)表示在狀態s下採取動作a的預期報酬
• s為狀態向量
• a為動作向量
• R為根據動作向量a所得到回饋值
• γ為折扣率,介於0到1之間,意義上是所學到經驗會隨著時間流逝、淡忘,在數
學上的意義是讓回饋值r在經過多次累加之後,不至於發散
• α為學習率,介於0到1之間。通常在系統剛開始學習時,會將α設為1,表示對
剛開始學習的權重給予1。經過不斷學習,α逐漸降為0,也就是將不再學習。
5
Q - Learning
假設我們有五間房間並編號為0~4,1跟4號可以直接通到屋外(5),如下圖:
如果我們的目的是要從各房間走到戶外,路徑圖可標示為下圖:
6
Q - Learning
我們的代理人(Agent)可能位於任何一個位置(0~5),目標是走到屋外(5)
並且設定每一個路徑的獎賞,如下圖:
根據路徑圖,我們可以描繪出reward陣列(R),左邊代表起始號碼,右邊代表移動
的號碼,中間為獎賞。
• 代理人起始位置為5,可直接獲得獎賞100
• 代理人起始位置1或4時,走到5,就可以獲得獎賞100
• 如果沒有抵達目標,獎賞則是0
• 無法抵達的路徑則為-1
7
Q - Learning
假設我們的學習率先設定為0.8,起始房間為1,初始陣列Q為下
起始為1,有3跟5可以選擇,假設我們選擇5
在5的時候有三種路徑可以選,1、4、5,此時套用公式將我們的陣列Q更新
• Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)]
• Q(1, 5) = R(1, 5) + 0.8 * Max[Q(5, 1), Q(5, 4), Q(5, 5)] = 100 + 0.8 * 0 = 100
8
Q - Learning
接著以3為我們的起始狀態
起始為3,有145可以選擇,假設我們選擇1
在1的時候有兩種路徑可以選,3、5,此時套用公式將我們的陣列Q更新
• Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)]
• Q(3, 1) = R(3, 1) + 0.8 * Max[Q(1, 3), Q(1, 5)] = 0 + 0.8 * Max(0, 100) = 80
9
Q - Learning
以剛剛的方式讓他自動執行後,可以獲得最佳路徑
假設起始位置為2,則可以得到最佳路徑 2→3→1→5
10
Q - Learning
以Flappy Bird為例
S包含: Flappy Bird到水管的水平距離
Flappy Bird到水管的垂直距離
Flappy Bird到天空的距離
A包含: 跳躍、不跳躍
R包含: Flappy Bird活著+1
Flappy Bird死亡-1000
水管水平距離
天空距離
水管垂直距離

Qlearning