Commit Graph

31 Commits

Author SHA1 Message Date
Ariel Kwiatkowski
c364506710 Seeding update (#2422)
* Ditch most of the seeding.py and replace np_random with the numpy default_rng. Let's see if tests pass

* Updated a bunch of RNG calls from the RandomState API to Generator API

* black; didn't expect that, did ya?

* Undo a typo

* blaaack

* More typo fixes

* Fixed setting/getting state in multidiscrete spaces

* Fix typo, fix a test to work with the new sampling

* Correctly (?) pass the randomly generated seed if np_random is called with None as seed

* Convert the Discrete sample to a python int (as opposed to np.int64)

* Remove some redundant imports

* First version of the compatibility layer for old-style RNG. Mainly to trigger tests.

* Removed redundant f-strings

* Style fixes, removing unused imports

* Try to make tests pass by removing atari from the dockerfile

* Try to make tests pass by removing atari from the setup

* Try to make tests pass by removing atari from the setup

* Try to make tests pass by removing atari from the setup

* First attempt at deprecating `env.seed` and supporting `env.reset(seed=seed)` instead. Tests should hopefully pass but throw up a million warnings.

* black; didn't expect that, didya?

* Rename the reset parameter in VecEnvs back to `seed`

* Updated tests to use the new seeding method

* Removed a bunch of old `seed` calls.

Fixed a bug in AsyncVectorEnv

* Stop Discrete envs from doing part of the setup (and using the randomness) in init (as opposed to reset)

* Add explicit seed to wrappers reset

* Remove an accidental return

* Re-add some legacy functions with a warning.

* Use deprecation instead of regular warnings for the newly deprecated methods/functions
2021-12-08 16:14:15 -05:00
Elijah K
8e5ae02ab1 Py36+ syntax in gym/spaces: derived by running pyupgrade --py36-plus gym/spaces/**.py and flynt gym --ll 120 (#2466)
Co-authored-by: Ilya Kamen <ilya.kamenshchikov@bosch.com>
2021-11-14 08:50:23 -05:00
Xuehai Pan
58ed658d9b Better warning control (#2434)
* Better warning control

* Replace `warnings.warn` with `gym.logger.warn`

* Send logs to stderr
2021-10-01 20:36:02 -04:00
RaghuSpaceRajan
c571b0d853 Make Tuple and Dicts be seedable with lists and dicts of seeds + make the seed in default initialization controllable (#1774)
* Make the seed in default initialization controllable

Since seed() is being called in default initialization of Space, it should be controllable for reproducibility.

* Updated derived classes of Space to have their seeds controllable at initialization.

* Allow Tuple's spaces to each have their own seed

* Added dict based seeding for Dict space; test cases for Tuple and Dict seeding

* Update discrete.py

* Update test_spaces.py

* Add seed to __init__()

* blacked

* Fix black

* Fix failing tests
2021-09-13 14:08:01 -04:00
Xuehai Pan
a8f551ed44 Make MultiDiscrete a Tuple-like space (#2364)
* Make MultiDiscrete a Tuple-like space

* Update test cases for MultiDiscrete
2021-09-11 12:54:52 -04:00
J K Terry
78d2b512d8 redo black (#2272) 2021-07-29 15:39:42 -04:00
Justin Terry
e9d2c41f2b redo black 2021-07-29 12:42:48 -04:00
Christian Clauss
bb81e141ea Blacken the codebase (#2265) 2021-07-28 20:26:34 -04:00
Christian Clauss
2ef26144a2 Fix typos discovered by codespell (#2256)
Typos
2021-07-27 01:20:29 -04:00
m-orsini
6b01f4fa9c Allow custom data type for multi distrete space. (#2148) 2021-07-26 16:07:58 -04:00
MalteEbner
bf783192b8 Bugfix: spaces.MultiDiscrete.contains() can handle different shapes (#1740)
See also space.Box.contains(), it already has this change

Reproduce Error with following lines:

from gym import spaces
import numpy as np
space_Multidiscrete = spaces.MultiDiscrete(np.ones((10,3)))
sample_test = np.ones((9,3))
space_Multidiscrete.contains(sample_test) #errors: ValueError: operands could not be broadcast together with shapes (9,3) (10,3)
2019-11-08 14:19:02 -08:00
Mor Katz
c03ec69c8d Modify MultiDiscrete comment regarding NOOP (#1537) 2019-06-17 13:40:11 -07:00
Eric Liang
a2ed952f8f fix other types (#1445) 2019-04-19 14:09:44 -07:00
Xingdong Zuo
0bfb3c64f5 Update multi_discrete.py 2019-03-25 00:45:00 +01:00
pzhokhov
07645bd11e spaces equality fixes and tests (#1375)
* spaces equality fixes and tests

* squash-merged master

* added better equality tests and more checks against bad space creation
2019-03-23 23:18:19 -07:00
Christopher Hesse
5eacc50bf4 have multi-discrete use same dtype as discrete, fixes #1204 (#1400) 2019-03-23 14:49:46 -07:00
pzhokhov
825404cbad add docs back to multi_discrete.py (#1373) 2019-03-11 10:58:48 -07:00
Robert Nishihara
f1f884898d Make super() calls Python 2 compatible. (#1312) 2019-02-07 11:29:04 -08:00
Xingdong Zuo
6497c9f1c6 Delete prng.py (#1196)
* Delete prng.py

Since it seems like this seeding function is rarely used.

* Update __init__.py

* Update kellycoinflip.py

* Update core.py

* Update box.py

* Update discrete.py

* Update multi_binary.py

* Update multi_discrete.py

* Update test_determinism.py

* Update test_determinism.py

* Update test_determinism.py

* Update core.py

* Update box.py

* Update test_determinism.py

* Update core.py

* Update box.py

* Update discrete.py

* Update multi_binary.py

* Update multi_discrete.py

* Update dict_space.py

* Update tuple_space.py

* Update core.py

* Create space.py

* Update __init__.py

* Update __init__.py

* Update box.py

* Update dict_space.py

* Update discrete.py

* Update dict_space.py

* Update multi_binary.py

* Update multi_discrete.py

* Update tuple_space.py

* Update discrete.py

* Update box.py

* Update dict_space.py

* Update multi_binary.py

* Update multi_discrete.py

* Update tuple_space.py

* Update multi_discrete.py

* Update multi_binary.py

* Update dict_space.py

* Update box.py

* Update test_determinism.py

* Update kellycoinflip.py

* Update space.py
2019-01-30 13:39:55 -08:00
pzhokhov
01a381669b small fix to multidiscrete (#1249)
* small fix to multidiscrete

* added a check nvec > 0

* fix the comparison in multidiscrete space
2018-12-05 15:54:49 -08:00
pzhokhov
64105932de remove extra wrapping of multi_discrete space shape into a tuple (#1209) 2018-11-05 17:13:49 -08:00
Antonin RAFFIN
2234f94e7b Add missing __eq__ and __repr__ methods (#1178)
* Add missing equality + repr methods

* Update gym.spaces tests
2018-09-24 11:11:03 -07:00
Alok Singh
6332d4f113 rm unnecessary __contains__ duplicate code (#1147)
`contains` really should not exist when it does exactly what the builtin
magic method `__contains__` was meant for, but that would break backward
compatibility.
2018-08-28 10:51:28 -07:00
Joy Chopra
750063055f allow nd array for multidiscrete (#1149) 2018-08-28 10:41:19 -07:00
Alok Singh
422c9c7bb3 Add __contains__ to spaces (#1111)
* Add __contains__ to spaces

Allows us to write expressions like `if x in env.action_space`.

* Update multi_discrete.py
2018-08-27 15:30:47 -07:00
Riccardo Grazzi
d377f8f09c Fixed MultiDiscrete contains method (#1136)
The contains method in MultiDiscrete didn't have the check to see if the argument was positive
2018-08-24 16:07:23 -07:00
John Schulman
c21f09fb28 fix circular import (py2) by not importing spaces (#858) 2018-02-02 23:01:45 -08:00
John Schulman
4c460ba6c8 Cleanup, removal of unmaintained code (#836)
* add dtype to Box

* remove board_game, debugging, safety, parameter_tuning environments

* massive set of breaking changes
- remove python logging module
- _step, _reset, _seed, _close => non underscored method
- remove benchmark and scoring folder

* Improve render("human"), now resizable, closable window.

* get rid of default step and reset in wrappers, so it doesn’t silently fail for people with underscore methods

* CubeCrash unit test environment

* followup fixes

* MemorizeDigits unit test envrionment

* refactored spaces a bit
fixed indentation
disabled test_env_semantics

* fix unit tests

* fixes

* CubeCrash, MemorizeDigits tested

* gym backwards compatibility patch

* gym backwards compatibility, followup fixes

* changelist, add spaces to main namespaces

* undo_logger_setup for backwards compat

* remove configuration.py
2018-01-25 18:20:14 -08:00
John Schulman
1fb81d4e3f remove MultiDiscrete adaptors 2017-03-05 13:13:14 -08:00
Alejandro Dubrovsky
26556f99fe Fix multi-discrete sampling to be a proper uniform distribution 2017-01-30 16:14:17 -08:00
Philip Paquette
cc1483deb1 Renamed HighLow to MultiDiscrete, added adapters and better documentation (#292) 2016-08-14 13:18:28 -07:00