1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Deep Reinforcement Learning bằng Python

Connected

Bài tập

Fixed Q-targets

Bạn đang chuẩn bị huấn luyện Lunar Lander với fixed Q-targets. Trước hết, bạn cần khởi tạo cả online network (chọn hành động) và target network (dùng để tính TD-target).

Bạn cũng cần triển khai hàm update_target_network để dùng ở mỗi bước huấn luyện. Target network không được cập nhật bằng gradient descent; thay vào đó, update_target_network sẽ đẩy trọng số của nó tiến gần về Q-network một lượng nhỏ, giúp nó ổn định theo thời gian.

Lưu ý: chỉ trong bài này, bạn dùng một mạng rất nhỏ để có thể in và quan sát dễ dàng state dictionary. Mạng chỉ có một tầng ẩn kích thước 2; action space và state space cũng có kích thước 2.

Hàm print_state_dict() có sẵn trong môi trường để in state dict.

Hướng dẫn

100 XP
  • Lấy .state_dict() cho cả target network và online network.
  • Cập nhật state dict của target network bằng cách lấy trung bình có trọng số giữa các tham số của online network và target network, dùng tau làm trọng số cho online network.
  • Nạp (load) state dict đã cập nhật trở lại vào target network.