การปรับปรุง Policy
ในแบบฝึกหัดก่อนหน้า คุณได้คำนวณ Q-value สำหรับแต่ละคู่ state-action ในสภาพแวดล้อม MyGridWorld แล้ว ในแบบฝึกหัดนี้ จะนำ Q-value เหล่านั้นมาใช้ปรับปรุง policy ที่มีอยู่ การปรับปรุง policy เป็นขั้นตอนสำคัญใน Reinforcement Learning ซึ่งจะเลือกแอ็กชันที่ให้ค่า Q-value สูงสุดในแต่ละสถานะ เพื่อเพิ่มประสิทธิภาพของ policy จากนั้นจะแสดงการเคลื่อนที่ตาม policy ที่ปรับปรุงแล้ว
สภาพแวดล้อมถูกนำเข้ามาในตัวแปร env พร้อมกับ Q-value ในตัวแปร Q และฟังก์ชัน render()
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Reinforcement Learning with Gymnasium ใน Python
คำแนะนำการฝึกหัด
- หาแอ็กชันที่ดีที่สุดสำหรับแต่ละสถานะโดยอิงจาก Q-value
- เลือก
actionที่เหมาะสมตามimproved_policy - รัน
actionที่เลือกไว้เพื่อดูผลลัพธ์ที่เกิดขึ้น
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
improved_policy = {}
for state in range(num_states-1):
# Find the best action for each state based on Q-values
max_action = ____
improved_policy[state] = max_action
terminated = False
while not terminated:
# Select action based on policy
action = ____
# Execute the action
state, reward, terminated, truncated, info = ____
render()