Cài đặt quy tắc cập nhật Double Q-learning
Double Q-learning là phần mở rộng của thuật toán Q-learning giúp giảm hiện tượng đánh giá cao quá mức giá trị hành động bằng cách duy trì và cập nhật hai bảng Q riêng biệt. Bằng việc tách rời bước chọn hành động khỏi bước đánh giá hành động, Double Q-learning cung cấp ước lượng giá trị Q chính xác hơn. Bài tập này sẽ hướng dẫn bạn triển khai quy tắc cập nhật Double Q-learning. Danh sách Q chứa hai bảng Q đã được tạo sẵn.
Thư viện numpy đã được import dưới tên np, và các giá trị gamma và alpha đã được nạp trước. Các công thức cập nhật ở bên dưới:


Bài tập này là một phần của khóa học
Reinforcement Learning với Gymnasium trong Python
Hướng dẫn bài tập
- Ngẫu nhiên quyết định Q-table nào trong
Qsẽ được cập nhật cho việc ước tính giá trị hành động bằng cách tính chỉ số của nói. - Thực hiện các bước cần thiết để cập nhật
Q[i].
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.
Q = [np.random.rand(8,4), np.random.rand(8,4)]
def update_q_tables(state, action, reward, next_state):
# Get the index of the table to update
i = ____
# Update Q[i]
best_next_action = ____
Q[i][state, action] = ____