Envpool Versions Save

C++-based high-performance parallel environment execution engine (vectorized env) for general RL environments.

v0.8.4

6 months ago
  • Fix JAX newest version compatibility (#282, @ethanluoyc)
  • Fix cuda stream sync issue (#284, @mavenlin)
  • Fix ci and upgrade dependency (#285, #286, @Trinkle23897)

v0.8.3

8 months ago

v0.8.2

1 year ago

[Disclaimer: generated by ChatGPT API]

🚨 Hey contributors! 🚨

It's a great day to celebrate our open-source contributions to sail-sg/envpool! Over the past 78 days, we have merged some notable changes we'd like to share. Here's a summary of those changes:

🔧 PR #237 [MiniGrid Empty Env] @wangsiping97: Port MiniGrid EmptyEnv to envpool.

🔧 PR #238 [lazy import] @Trinkle23897: import envpool will no longer raise an error due to procgen qt5 dependency, making fresh devboxes more accessible.

🔧 PR #242 [chore: update dev-cn dockerfile] @Benjamin-eecs: The fast installation of dependencies makes development faster and more efficient.

🔧 PR #243 [Use new gym API in examples] @leninilyich: The environment used to return five values which could not be unpacked into "done". It has been fixed and is working as intended.

🐛 PR #245 [typo fix in CarpoletSwingup] @vwxyzjn: A small typo in the CarpoletSwingup environment has been corrected.

🔧 PR #248 [chore: add timeout flag for pip requirements installation] @Benjamin-eecs: An extended timeout for pip requirements installation has been added. It is especially helpful for users in CN.

🚀 PR #249 [fix(hansbug): use treevalue 1.4.7] @HansBug: There was a bug in PR #246, which has now been fixed by upgrading the version of treevalue to 1.4.7.

🚀 PR #247 [deps: replace treevalue with optree] @Benjamin-eecs @XuehaiPan: We have replaced treevalue with optree to speed up and support custom node type registration. It has introduced a new feature and a non-breaking change that adds core functionality.

🔧 PR #252 [Fix publish ci packaging not found issue and change minigrid deterministic test] @Trinkle23897: This PR fixed the packaging issue and changed the minigrid deterministic test. It will lead to more stable performance.

🐛 PR #254 [fix old gym version return type error] @Trinkle23897: This PR fixes a bug introduced by PR #247.

🐛 PR #255 [fix atari incorrect trunc flag when episodic_life=True] @Trinkle23897: A bug which caused incorrect trunc flag in atari with episodic_life=True has been fixed.

Each of these PRs has made significant contributions to our codebase. We encourage you to take a look and check out our latest improvements with new and fixed features. As always, we appreciate your support and hope to continue our partnership with you for a long time to come.

Thanks to everybody who contributed!

v0.8.1

1 year ago

Enhancement

  • Add channel_first option in procgen env, change default observation shape from (64, 64, 3) to (3, 64, 64) (#232, @Trinkle23897)

v0.8.0

1 year ago

New Environment

Add 42 procgen environments (#197, @YukunJ, @LeoGuo98, @Trinkle23897)

Procgen library change in https://github.com/Trinkle23897/procgen

  • Fix Qt library include error
  • Fix globalGameRegistry == nullptr issue by adding another explicit make_* function (thanks to Yukun!)
  • Disable auto-reset because envpool has already handled this feature

Changes:

Enhancement

  • Support atari full action space (#230, @Trinkle23897)

v0.7.0

1 year ago

Finally, all environments in gym are in EnvPool! You can fully deprecate Box2D / box2d-py / mujoco_py pypi package.

New Environment

  1. CarRacing-v2 (#199, @Alicia1529)

Enhancement

  1. Add use_fire_reset option in atari env (#223, @Trinkle23897)
  2. Add back contact force in humanoid-v3 (#224, @Trinkle23897)
  3. Integrating Gymnasium (#222, @Markus28)
  4. Infra improvement, using ubuntu 22.04 + python 3.10 for unit test, adding python 3.11 wheel release (#228, @Trinkle23897)
  5. Upgrade dependency and fix clang-tidy error (#229, @Trinkle23897)

v0.6.6

1 year ago

Speed Improvement

  1. replace dm-tree with treevalue (#206, @wangsiping97, dmc 6k->8k FPS)
  2. move python computation logic into c++ (#208, @wangsiping97, dmc 8k->11k FPS)
  3. cache c++ object read result (#209, @wangsiping97, dmc 11k->14k FPS)
  4. improve gym speedup (#210, @wangsiping97, gym 11k->14k FPS)

Now we are truly faster than dm_control!

Enhancement

  1. upgrade examples to support gym >= 0.26 (#215, @51616)
  2. update demo links in README (#212, @Benjamin-eecs)
  3. better arugment checking in python side init (#217, @Trinkle23897)
  4. refactor some tests (#210, @Trinkle23897)
  5. fix gym action space seed behavior error (#211, @Trinkle23897)

v0.6.5

1 year ago

Enhancement

  1. Box2D integration: Add BipedalWalker, BipedalWalkerHardcore (#131, @Alicia1529)
  2. Support Gym 0.26.0 (#205, @Markus28)
  3. Add demo notebook (#202, @Benjamin-eecs)

v0.6.4

1 year ago

Enhancement

  1. Fix Atari env elapsed_step error when episodic_life is True (#181, @Trinkle23897)
  2. Upgrade mujoco to 2.2.1 (#183, @Trinkle23897)
  3. Add Python 3.10 Wheel and update documentation (#187, @Trinkle23897)

v0.6.3

1 year ago

Bug Fix

  1. Fix import error with gym==0.25.0 (#167, @Trinkle23897)
  2. Fix zero-life reset error in Atari env (#175, @Trinkle23897)

Enhancement

  1. Refactor the XLA code to simplify it and at the same time include GPU code (#165, @mavenlin)
  2. Add acme example (#157, @lkevinzc)
  3. Add colab demo (#159, @Benjamin-eecs)