300 likes | 315 Views
INC 637 Artificial Intelligence. Lecture 13 Reinforcement Learning (RL) (continue). Reinforcement Learning Value Table. Action. State. State. State Value Table 1 dimension. Action Value Table 2 dimension. (V-table). (Q-table). Bellman Equation for a Policy p.
E N D
INC 637 Artificial Intelligence Lecture 13 Reinforcement Learning (RL) (continue)
Reinforcement LearningValue Table Action State State State Value Table 1 dimension Action Value Table 2 dimension (V-table) (Q-table)
Bellman Equation for a Policy p คำนวณหา Value Function จาก policy π So: Or, without the expectation operator:
Bellman Optimality Equation for V* The value of a state under an optimal policy must equal the expected return for the best action from that state:
3 Methods to find V* • Dynamic Programming • Monte Carlo • Temporal Difference
Dynamic Programming ประกอบด้วยขบวนการหลัก 2 ส่วน Policy Evaluation Policy Improvement
Policy Evaluation แต่ละ state มีสมการของตัวเองซึ่งขื้นกับ value function ของ next state เป็นสมการ linear หลายตัวแปร อย่างไรก็ตาม ก็ยังยากที่จะแก้สมการถ้ามีหลายๆ state
Iterative Policy Evaluation a “sweep” A sweep consists of applying a backup operation to each state. ตือใช้ value function จาก อันก่อนมาประมาณอันปัจจุบัน A full policy evaluation backup:
Example Terminal state Terminal state • Undiscounted episodic task • Actions that would take agent off the grid leave state unchanged • Reward is –1 for every action until the terminal state is reached
Policy Improvement สามารถทำได้จาก value function ที่คำนวณได้มาโดยปรับ ให้ไปเลือก action ที่มี value function สูงสุด เรียกว่าเป็น greedy actions
Iterative Policy Improvement policy evaluation policy improvement “greedification” การ estimate ค่า value function โดยใช้ค่า estimate ของมันเองเรียก Bootstrapping
Monte Carlo Method Dynamic Programming ต้องรู้ world model นั่นคือมี reward เท่าใด ที่ไหมบ้าง และ next state เป็นอะไร Monte Carlo จะไม่ต้องรู้ world model มาก่อน • คุณสมบัติของ Monte Carlo • ใช้ได้กับ episodic tasks เท่านั้น • learn จาก ประสบการณ์จริงโดยใช้ complete returned reward
1 2 3 4 5 Monte Carlo Policy Evaluation • Goal: learn Vp(s) • Given: some number of episodes under p which contain s • Idea: Average returns observed after visits to s • Every-Visit MC: average returns for every time s is visited in an episode • First-visit MC: average returns only for first time s is visited in an episode • Both converge asymptotically
Backup Diagram of MC • Entire episode included • Only one choice at each state (unlike DP) • MC does not bootstrap • Time required to estimate one state does not depend on the total number of states s1 Series of actions a1 s2 a2 s3 a3
Monte Carlo Policy Iteration Policy Improvement
Example: Blackjack • Object: Have your card sum be greater than the dealers without exceeding 21. • States (200 of them): • current sum (12-21) • dealer’s showing card (ace-10) • do I have a useable ace? • Reward: +1 for winning, 0 for a draw, -1 for losing • Actions: stick (stop receiving cards), hit (receive another card) • Policy: Stick if my sum is 20 or 21, else hit
เช่นในสถานะการหนึ่งไม่มี usable ace และ เจ้ามือ show 8 เราเริ่มต้นที่ แต้ม = 12 จั่วได้ เป็น 14 และ 18 แล้วดูผลว่าแพ้หรือชนะ จะนำค่าผลลัพธืที่ได้มา update state ที่ 12, 14, 18 นี้ ทำไปหลายหมื่นครั้งจะได้กราฟของทุก state ดังรูป
Temporal Difference (TD) Policy Evaluation (the prediction problem): for a given policy p, compute the state-value function Recall: target: the actual return after time t target: an estimate of the return
T T T T T T T T T T T T T T T T T T T T Simple Monte Carlo
T T T T T T T T T T T T T T T T T T T T Simplest TD Method
T T T T T T T T T T Dynamic Programming T T T
TD Bootstraps and Samples • Bootstrapping: update involves an estimate • MC does not bootstrap • DP bootstraps • TD bootstraps • Sampling: update does not involve an expected value • MC samples • DP does not sample • TD samples
Sarsa: On-Policy TD ที่เป็น on-policy เพราะต้องทำ action ก่อนเพื่อให้ได้ next state แล้วค่อยนำมา update value table
Q-learning Off-Policy TD ที่เป็น off-policy เพราะไม่ต้องทำตาม next state ที่จะเลือกเอา action ที่ได้ reward สูงสุด
Current state Next state Action ไปทางขวา