Bắt đầu ngayBắt đầu miễn phí

Giải bài toán Frozen Lake 8x8 với SARSA

Trong bài tập này, bạn sẽ áp dụng thuật toán SARSA, kết hợp với hàm update_q_table() mà bạn đã triển khai trước đó, để học một chính sách tối ưu cho môi trường Frozen Lake 8x8. Môi trường này giống hệt phiên bản kinh điển 4x4, chỉ khác là kích thước lớn hơn. Bạn sẽ dùng SARSA để lặp lại và cải thiện dần chính sách của tác tử dựa trên phần thưởng nhận được từ môi trường.

Một Q-table Q đã được khởi tạo và nạp sẵn cho bạn, cùng với hàm update_q_table() từ bài tập trước.

Bài tập này là một phần của khóa học

Reinforcement Learning với Gymnasium trong Python

Xem khóa học

Hướng dẫn bài tập

  • Với mỗi tập (episode) trong quá trình huấn luyện, hãy thực thi action đã chọn.
  • Chọn next_action ngẫu nhiên.
  • Cập nhật Q-table cho stateaction đã cho.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

for episode in range(num_episodes):
    state, info = env.reset()
    action = env.action_space.sample()
    terminated = False
    while not terminated:
      	# Execute the action
        next_state, reward, terminated, truncated, info = ____
        # Choose the next action randomly
        next_action = ____
        # Update the Q-table
        ____
        state, action = next_state, next_action   
render_policy(get_policy())
Chỉnh sửa và Chạy Mã