---
# System prepended metadata

title: 'Reinforcement Learning[1]'
tags: [Deep learning]

---

###### tags: `Deep learning`

# Reinforcement Learning[1]
Ex:超級瑪莉，a:前進、後退及跳

## 機率
在B發生的前提下，A發生的機率是多少。
Ex:
![](https://i.imgur.com/szT7gMF.png =20%x)

## 數學期望意義:
是在以有的數據基礎通過求數學期望來預測將發生事件的結果。
在概率論和統計學中，數學期望(mean)（或均值，亦簡稱期望）是試驗中每次可能結果的概率乘以其結果的總和的平均。是最基本的數學特徵之一。它反映隨機變量平均取值的大小。


## RDL 基本專有名詞
* 由 Actor / Action / (State / Reward) / Environment 所組成。
* 強化學習建立一個 agent ，並與environment互動從中學習。每次action後，agent都會收到reward 與 下一個state
* 遊戲情境
1. Episodic
Episodic Tasks表示環境中必須存在Final State，只要時間夠久，最後一定可以結束。我們稱這從開始到結束為1個Episode。像是棋盤遊戲，或是走迷宮等等。
2. Continuing Tasks
而Continuing Tasks就是除了Episodic Tasks以外的所有Task，或著可以想像成到T->infinite 還無法終止的環境
p.s 可以透過自行定義改變環境的種類，像是我們常會把Continuing Task設定跑固定個時間點後結束，就成了Episodic Tasks




### State
1. 當前畫面

### policy π
1. 根據狀態來做出**決策**進而控制agent運動
2. π(a|s):Given s做出a的action的機率
看到狀態s，可以選擇pocliy 1，因此這個策略使執行action的機率a1=0.8,a2=0.1,a3=0.1
看到狀態s，可以選擇pocliy 2，因此這個策略使執行的機率a1=0.5,a2=0.4,a3=0.1
![](https://i.imgur.com/q5Ayura.png =50%x)



### state transition
1. 每走一步enviroment會有new state 
2. P(s',r|s,a):如果看到當前s做出動作a,變成s'的機率，並得到r的獎勵
![](https://i.imgur.com/VaU1EAg.png =50%x)


### trajectory
1. 當遊戲不斷玩下去時s1,a1,r1, s2,a2,r2, ....st,at,rt
![](https://i.imgur.com/JZiHhUi.png =50%x)
2. P(s',r|s,a表示s1在所有的狀態轉移矩陣的某一條狀況事實上上面指示狀態轉移矩陣其中一條(如藍色所式)
![](https://i.imgur.com/07jqumd.png =20%x)


### Reward ( R )
>對藍色的狀態轉移中對未來每一個時間點的reward相加,稱為expected return,但是Rt的重要性比R(t+1)來的重要
EX:現在給予100元與未來100何者重要，未來100元可能會貶值，因此對於未來reward需折扣

>Discount return
r:discount rate ,0<r<1
![](https://i.imgur.com/M1dbpeL.png =50%x)

### Value Function
>衡量policy對整個狀態轉移的未來的潛在價值(整個矩陣), 一個Gt只是一條通路是無法表達所有的
![](https://i.imgur.com/hgsoTKq.png =50%x)
![](https://i.imgur.com/gzZ9PtF.png =50%x)



### Action value function Q(st,at)
>在st的情況下，執行at的動作，π(下標)會對所有動作a打分，我們可以對每個行為a都算它的價值函數
![](https://i.imgur.com/Yvvpynn.png =50%x)
Ex:Random Policy interation
github:

4. Optimal action-value function
EX:???
![](https://i.imgur.com/ajhH4A4.png)




##  Agent玩遊戲
觀察當下st,做出at動作希望能得到作多的r
![](https://i.imgur.com/z1XfWLG.png)

agent主要學習π(a|s) or Q*(s,a)，可以控制agnet玩遊戲
* π(a|s):假如知道π......
* Q*(s,a):假如知道Q*，就能評估當前狀態動作的好壞，選出最好的Q,
EX:向上2000,向右100,向左10,因此會選擇向上

## Episode
>episode 不是强化学习的原创概念，它来自于游戏，是"關卡"的意思。
强化学习里的关卡和你玩游戏一样，就是指智能体开始玩游戏到通关或者 game over 的时过程。



## Value-Based Reinforcement Learning



## Q-learning
Q-learning的Q是Quality的意思，每次action之后的Quality，評估每次action的好壞。另外也表示Q-table，就是紀錄每個state不同action對應的quality
>
## SARSA
>聽從教練的話，以epsilon-greedy選擇action，因此為On-policy??
>

## Reference
1. https://www.youtube.com/watch?v=vmkRMvhCW5c
2. https://www.youtube.com/channel/UCKOejif1m6GLfKTEE4Xvd0A/videos
