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

Connected

Bài tập

Bộ đệm prioritized experience replay

Bạn sẽ giới thiệu lớp PrioritizedExperienceReplay, một cấu trúc dữ liệu mà bạn sẽ dùng sau đó để triển khai DQN với Prioritized Experience Replay.

PrioritizedExperienceReplay là một cải tiến so với lớp ExperienceReplay mà bạn đã dùng đến giờ để huấn luyện các agent DQN. Một bộ đệm prioritized experience replay đảm bảo rằng các transition được lấy mẫu từ đó có giá trị học tập cao hơn cho agent so với lấy mẫu đồng đều.

Hiện tại, hãy triển khai các phương thức .__init__(), .push(), .update_priorities(), .increase_beta() và .__len__(). Phương thức cuối cùng, .sample(), sẽ là trọng tâm của Bài tập tiếp theo.

Hướng dẫn

100 XP
  • Trong .push(), khởi tạo mức độ ưu tiên của transition bằng giá trị ưu tiên lớn nhất trong bộ đệm (hoặc 1 nếu bộ đệm trống).
  • Trong .update_priorities(), đặt mức độ ưu tiên bằng giá trị tuyệt đối của TD error tương ứng; cộng thêm self.epsilon để bao quát các trường hợp biên.
  • Trong .increase_beta(), tăng beta lên self.beta_increment; đảm bảo beta không vượt quá 1.