Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Readme and Website #28

Merged
merged 60 commits into from
Jan 21, 2023
Merged
Changes from 48 commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
085df12
fix openspiel tests
jjshoots Nov 3, 2022
6679889
move stuff around
jjshoots Nov 3, 2022
db7b03e
commit temporary
jjshoots Nov 3, 2022
32ca842
comment out everyhting
jjshoots Nov 3, 2022
fd809e4
precommit
jjshoots Nov 3, 2022
4afe65e
remove testing file
jjshoots Nov 4, 2022
4523d6c
fix some stuff
jjshoots Nov 4, 2022
b0d2ce0
dm lab truncation
jjshoots Nov 7, 2022
33f96fd
rename files
jjshoots Nov 7, 2022
c790c6b
remove unneeded kwargs
jjshoots Nov 7, 2022
0a1e1a8
rename class
jjshoots Nov 7, 2022
a8f96be
update human rendermode
jjshoots Nov 7, 2022
929e197
update comment
jjshoots Nov 7, 2022
bf495ad
update docstring
jjshoots Nov 7, 2022
2611cee
use any lol
jjshoots Nov 7, 2022
7b0abfa
Merge branch 'main' into main
jjshoots Nov 11, 2022
e18f713
commit temporary
jjshoots Nov 3, 2022
b0f53d0
fix some stuff
jjshoots Nov 4, 2022
bdd570b
rename files
jjshoots Nov 7, 2022
2593231
untrack internal file
jjshoots Nov 11, 2022
e3b2d21
address comments
jjshoots Nov 11, 2022
425db4b
partial precommit
jjshoots Nov 11, 2022
f7d16cd
Merge branch 'main' into main
jjshoots Dec 5, 2022
4455e21
move soccer into this pr
jjshoots Dec 5, 2022
afa5861
fix pydocstring
jjshoots Dec 5, 2022
082ad6e
black
jjshoots Dec 5, 2022
79bb3ee
version bump, wrapper version numbers in class names
jjshoots Dec 5, 2022
4ad9294
Merge branch 'Farama-Foundation:main' into main
jjshoots Dec 9, 2022
69c2d15
update readme
jjshoots Dec 9, 2022
f00b3b8
change name
jjshoots Dec 9, 2022
75a6592
add singular dm_lab test
jjshoots Dec 9, 2022
3a52ea1
update readme
jjshoots Dec 9, 2022
f8d810e
fix underscre
jjshoots Dec 9, 2022
f73fe2f
pre commit
jjshoots Dec 9, 2022
3e1c69c
add dm lab install script
jjshoots Dec 9, 2022
8bf9eb0
ignore dmlab
jjshoots Dec 9, 2022
22adf47
move import in heheh
jjshoots Dec 9, 2022
c38ab73
Merge branch 'main' into main
jjshoots Dec 12, 2022
599a8a8
Viewer -> MujocoRenderer
jjshoots Dec 12, 2022
e355e1f
empty space
jjshoots Dec 12, 2022
caa7f45
black
jjshoots Dec 12, 2022
6a24832
ignore additional warning from dm_control
jjshoots Dec 12, 2022
f00c978
black
jjshoots Dec 12, 2022
f7fca70
bump gymnasium version, disable render check for dmc wrappers
jjshoots Dec 13, 2022
15cc1c7
skip render check for gym envs
jjshoots Dec 13, 2022
ec3bf87
skip render check
jjshoots Dec 13, 2022
665c005
Merge branch 'Farama-Foundation:main' into main
jjshoots Jan 17, 2023
171f9c7
update readme
jjshoots Jan 17, 2023
6285af0
update docstrings
jjshoots Jan 17, 2023
5f0ae70
split docstring
jjshoots Jan 17, 2023
994b45e
split docstring
jjshoots Jan 17, 2023
04c5444
add atari description
jjshoots Jan 17, 2023
9be22f7
update bibtex
jjshoots Jan 17, 2023
00ae51a
update version in bib and multiline docstrings
jjshoots Jan 17, 2023
e6c80ae
Update README.md
jjshoots Jan 21, 2023
91ec17e
add gym numpy bug exception
jjshoots Jan 21, 2023
16b9f50
black
jjshoots Jan 21, 2023
60e1a4a
revert thing
jjshoots Jan 21, 2023
2622454
Merge branch 'Farama-Foundation:main' into main
jjshoots Jan 21, 2023
650a542
use append instead of +
jjshoots Jan 21, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 49 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,32 @@

An API conversion tool for popular external reinforcement learning environments to [Gymnasium](https://github.com/farama-Foundation/gymnasium) and [PettingZoo](https://github.com/farama-Foundation/pettingZoo/) APIs.

Supported APIs for Gymnasium
* OpenAI Gym
* Atari Environments
* DMControl
## Supported APIs

Supported APIs for PettingZoo
* OpenSpiel
* DmControl Multiagent Soccer
* DMLab Environments
### OpenAI Gym
- Bindings to convert OpenAI Gym environments to Gymnasium Environments.

### Atari Environments for OpenAI Gym
- (Mark to-do)

### [DeepMind Control](https://github.com/deepmind/dm_control)
- Gymnasium bindings for single agent environments.
- Pettingzoo bindings for multiagent soccer environments.

### [DMLab](https://github.com/deepmind/lab)
- Pettingzoo bindings for all environments.

### [OpenSpiel](https://github.com/deepmind/open_spiel)
- Pettingzoo bindings for all environments.

We are open to supporting more external APIs, please create an issue or ideally, a pull request implementing the new API.
### Incoming Projects

The following are a list of existing environment suites that we are looking into bringing into Shimmy.
We are actively looking for developers to contribute to this project, if you are interested in helping, please reach out to us.

- [The DeepMing Env API](https://github.com/deepmind/dm_env)
- [Behaviour Suite](https://github.com/deepmind/bsuite)
- [Melting Pot](https://github.com/deepmind/meltingpot)

## At a glance

Expand Down Expand Up @@ -82,7 +97,7 @@ import gymnasium as gym
env = gym.make("ALE/Pong-v5")
```

### DM Control (both single and multiagent environments)
### DM Control

#### Installation
```
Expand Down Expand Up @@ -117,22 +132,6 @@ import gymnasium as gym
env = gym.make("dm_control/acrobot_swingup_sparse-v0")
```

### OpenSpiel

#### Installation
```
pip install shimmy[pettingzoo]
```

#### Usage
```python
import pyspiel
from shimmy.openspiel_compatibility import OpenspielCompatibilityV0

env = pyspiel.load_game("2048")
env = OpenspielCompatibilityV0(game=env, render_mode=None)
```

### DM Lab

#### Installation
Expand Down Expand Up @@ -192,10 +191,33 @@ pip install shimmy[testing]
pip install shimmy[all, testing]
```

### OpenSpiel

#### Installation
```
pip install shimmy[pettingzoo]
```

#### Usage
```python
import pyspiel
from shimmy.openspiel_compatibility import OpenspielCompatibilityV0

env = pyspiel.load_game("2048")
env = OpenspielCompatibilityV0(game=env, render_mode=None)
```

## Citation

If you use this in your research, please cite:
```
TBD
@misc{shimmy2022,
author = {Jordan Terry, Mark Towers, Jun Jet Tai},
title = {Shimmy: Gymnasium and Pettingzoo Wrappers for Commonly Used Environments},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/Farama-Foundation/Shimmy}}
}
```