Commit Graph

27 Commits

Author SHA1 Message Date
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
6f4f5653de switch to pytest (#495)
* switch to pytest

* remove observation space sampling

* fix test
2017-02-11 22:17:02 -08:00
John Schulman
33a6112e07 don't unit test atari except pong -- it takes too long 2017-02-11 17:52:18 -08:00
Tom Brown
2d44ed4968 Add Monitored wrapper (#434)
* Add WIP Monitored wrapper

* Remove irrelevant render after close monitor test

* py27 compatibility

* Fix test_benchmark

* Move Monitored out of wrappers __init__

* Turn Monitored into a function that returns a Monitor class

* Fix monitor tests

* Remove deprecated test

* Remove deprecated utility

* Prevent duplicate wrapping, add test

* Fix test

* close env in tests to prevent writing to nonexistent file

* Disable semisuper tests

* typo

* Fix failing spec

* Fix monitoring on semisuper tasks

* Allow disabling of duplicate check

* Rename MonitorManager

* Monitored -> Monitor

* Clean up comments

* Remove cruft
2016-12-23 16:21:42 -08:00
Jie Tang
bc2c12a36e Sort env specs when running tests (this allows for repeating a specific test
using an index)
2016-10-31 23:55:56 -07:00
Philip Paquette
4b9984c00e Moved doom to gym_doom (#319) 2016-08-24 08:24:10 -07:00
Philip Paquette
aff7a643cc Doom - Same Action Space Across Environments (#157)
* Doom - Added reward_threshold and timestep_limit for all environments

* Doom - Returning all available game variables

* Doom - Moved _seed to doom_env to avoid repetition in every environment

* Doom - Added ALT_ATTACK and made all action_space equivalent (same controls between environments).

* Doom - Actions can either be a short list of allowed actions or the full list of 41 commands

* Doom - Returning black observation space on error or is_finished, rather than empty list (which was triggering an error)

* Doom - HighLow.sample() returns the small list.

* Doom - Updated difficulty for some missions

* Doom - Fixed inconsistency between controls.md and deathmatch.cfg

* Doom - Issue #168 - Remove sleep statement from DoomEnv render

* Doom - Only using full action space (43 keys)

- Added 'normal', 'fast' and 'human' mode
- Set non-deterministic to True
- Set video.frames_per_second to 35
- Properly returning game variables

* Replaced warnings.warn by logger.warn

* Doom - Added NUM_ACTIONS and action_idx instead of x

* Doom - Added NUM_ACTIONS and action_idx instead of x

* Doom - reset() only calls game.new_episode() after first call

* Doom is now deterministic

* Doom - Partial fix for issue #167 - DoomDeathmatch environment crashes sporadically

* Doom - Standardized envs, simplified _reset

* Doom - Removed temporary fix for issue #167

* Doom - Added scoreboard summary and description
2016-06-14 15:57:47 -07:00
Jie Tang
5a394a2da3 Add test skipping to determinism test, add seeding to debugging envs 2016-05-31 00:57:31 -07:00
Jie Tang
e5f5e7d3f9 Merge branch 'master' of https://github.com/iaroslav-ai/gym into iaroslav-ai-master 2016-05-31 00:31:50 -07:00
Greg Brockman
58e6aa95e5 [WIP] add support for seeding environments (#135)
* Make environments seedable

* Fix monitor bugs

- Set monitor_id before setting the infix. This was a bug that would yield incorrect results with multiple monitors.
- Remove extra pid from stats recorder filename. This should be purely cosmetic.

* Start uploading seeds in episode_batch

* Fix _bigint_from_bytes for python3

* Set seed explicitly in random_agent

* Pass through seed argument

* Also pass through random state to spaces

* Pass random state into the observation/action spaces

* Make all _seed methods return the list of used seeds

* Switch over to np.random where possible

* Start hashing seeds, and also seed doom engine

* Fixup seeding determinism in many cases

* Seed before loading the ROM

* Make seeding more Python3 friendly

* Make the MuJoCo skipping a bit more forgiving

* Remove debugging PDB calls

* Make setInt argument into raw bytes

* Validate and upload seeds

* Skip box2d

* Make seeds smaller, and change representation of seeds in upload

* Handle long seeds

* Fix RandomAgent example to be deterministic

* Handle integer types correctly in Python2 and Python3

* Try caching pip

* Try adding swap

* Add df and free calls

* Bump swap

* Bump swap size

* Try setting overcommit

* Try other sysctls

* Try fixing overcommit

* Try just setting overcommit_memory=1

* Add explanatory comment

* Add what's new section to readme

* BUG: Mark ElevatorAction-ram-v0 as non-deterministic for now

* Document seed

* Move nondetermistic check into spec
2016-05-29 09:07:09 -07:00
Iaroslav Shcherbatyi
5c8e34029d Fixes according to feedback to pull #104 2016-05-28 11:30:40 +02:00
Greg Brockman
8376580c85 Improve closer implementation and docstrings (#126)
* Improve auto close implementation

- Register all envs at initialization time, not just ones created via make
- Simplify names and add more documentation on interface
- Move closer instances into the relevant modules

review-requested: @jietang

* Close environments in the tests

This isn't strictly needed, but means there are fewer Doom
subprocesses hanging around while the tests run.

* Use 4 space indent in comment

* Improve docstrings in core

* Don't pass through args to __new__

The __init__ method gets called once __new__ returns,
so these arguments are either ignored (Python 2) or
result in an error (Python 3). The __init__ method
automatically gets called with the correct arguments.

* Fixup comments
2016-05-27 12:16:35 -07:00
Jie Tang
eab981953e Really skip mujoco tests on external PRs 2016-05-27 00:26:53 -07:00
Jie Tang
73fc7fb42c Skip mujoco env tests during CI on PRs 2016-05-26 11:33:14 -07:00
Jie Tang
a6b5d7aa36 Fix registration test 2016-05-18 16:20:12 -07:00
Jie Tang
72d29a52f6 Make close() idempotent, add tests, minor fixes 2016-05-16 23:11:50 -07:00
Greg Brockman
2ae0dbc846 Discard viewer object after render with close=True
Fixes #95
2016-05-15 17:22:38 -07:00
Jonas Schneider
7515b13292 Skip Box2D tests for now 2016-05-11 14:35:58 +02:00
Greg Brockman
97bcc5b702 Add render close=True to tests 2016-05-07 22:58:44 -07:00
Jonas Schneider
f478aa7971 Fix PR tests 2016-05-03 11:09:15 -04:00
Greg Brockman
8baa58c3e6 Skip deprecated envs 2016-05-02 14:49:33 -04:00
Jonas Schneider
f7f126b95e Merge branch 'py3' 2016-04-29 18:29:46 -07:00
Jonas Schneider
0e31b5b19b Fix mujoco skipping 2016-04-29 18:14:13 -07:00
Jonas Schneider
fd18ec3507 Merge remote-tracking branch 'origin/master' into py3
Conflicts:
	gym/envs/atari/atari_env.py
2016-04-29 18:07:47 -07:00
Greg Brockman
100bc82e38 Don't try running MuJoCo on PR 2016-04-28 14:44:30 -07:00
Jonas Schneider
5065950a09 Fix Python3 compat of import dependencies 2016-04-27 18:03:29 -07:00
Greg Brockman
e8f2980603 Initial release. Hello world :). 2016-04-27 08:00:58 -07:00