{
"info": {
"author": "Doctor J",
"author_email": "",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Topic :: Scientific/Engineering :: Artificial Intelligence"
],
"description": "Gymbag\n======\n\nGymbag is a Python 3 library for easy, efficient, single-file storage of `OpenAI Gym `__\nreinforcement learning environment data. It stores observations, actions, and rewards in portable, compressed\n`HDF5 `__ files. You can easily playback\nthe data for training or testing, or read it in for analysis.\n\nGymbag automatically appends to existing files, so you can easily accumulate all your training data in one place.\nYou can also store multiple data sets from separate experiments or environments in the same file, along with\ndescriptions to keep them straight. You can store arbitrary metadata with each step (in the `info` dict).\nGymbag does not store rendered output (movies). It's also easy to add other storage formats.\n\n.. image:: https://gitlab.com/doctorj/gymbag/badges/master/build.svg\n :target: https://gitlab.com/doctorj/gymbag/\n\n\nRecording\n---------\n.. code-block:: python\n\n # Wrap env with HDF5 recorder, specifying filename\n env = record_hdf5(gym.make('CartPole-v0'), 'cartpole.h5')\n for episode in range(2):\n env.reset()\n done = False\n while not done:\n obs, reward, done, info = env.step(env.action_space.sample())\n\n\nReading\n-------\nReading the data back is just as easy:\n\n.. code-block:: python\n\n for episode in HDF5Reader('cartpole.h5'):\n for time, obs, action, reward, done, info in episode:\n print(time, obs, action, reward, done, info)\n\n.. code-block:: console\n\n 1500617412.784789 [ 0.03698143 0.01418633 0.01207788 0.00391994] 0.0 nan False None\n 1500617412.78494 [ 0.03726516 -0.18110673 0.01215627 0.30038899] 0.0 1.0 False None\n 1500617412.784968 [ 0.03364302 0.01383986 0.01816405 0.01156456] 1.0 1.0 False None\n 1500617412.784994 [ 0.03391982 0.20869666 0.01839535 -0.27533251] 1.0 1.0 False None\n 1500617412.785022 [ 0.03809375 0.01331716 0.0128887 0.02309511] 0.0 1.0 False None\n ...\n\nPlayback\n--------\n.. code-block:: python\n\n env = PlaybackEnv(HDF5Reader('cartpole.h5'))\n\n while not env.played_out:\n env.reset()\n done = False\n while not done:\n obs, reward, done, info = env.step(env.action_space.sample())\n print(obs, reward, done, info)\n\n\nPerformance\n-----------\n\nTypically wrapping an environment with Gymbag results in less than a 2X slowdown.\nHere is a comparison to `gym_recording `__ (which dumps data as uncompressed binary blobs):\n\n=========== ========= ============= =========== ============= ===========\nEnvironment Time (s) Space (MB)\n----------- ----------------------------------- -------------------------\n.. unwrapped gym_recording gymbag.hdf5 gym_recording gymbag.hdf5\n=========== ========= ============= =========== ============= ===========\nCartpole-v0 0.38 (1X) 0.63 (1.7X) 0.64 (1.7X) 1.6 (3.2X) 0.5 (1X)\nBreakout-v0 1.72 (1X) 2.20 (1.3X) 3.34 (1.9X) 223 (74X) 3 (1X)\n=========== ========= ============= =========== ============= ===========\n\n\nExtras\n------\nAlso comes with tools for recording to memory, generating test data, comparing data between runs, converting saved data formats, and more.\n\n\nDocumentation\n-------------\n\n.. GitLab README doesn't render TOC (where would it link anyway) or sphinx roles, so we have to put in normal links.\n\n* `GitLab Repo `__\n* `Documentation `__:\n `Examples `__ |\n `API `__\n\nGymbag is open-source licensed under the LGPL 3.0.",
"description_content_type": null,
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://gitlab.com/doctorj/gymbag",
"keywords": "reinforcement learning openai gym record storage binary hdf5",
"license": "LGPL-3.0+",
"maintainer": "",
"maintainer_email": "",
"name": "gymbag",
"package_url": "https://pypi.org/project/gymbag/",
"platform": "",
"project_url": "https://pypi.org/project/gymbag/",
"project_urls": {
"Homepage": "https://gitlab.com/doctorj/gymbag"
},
"release_url": "https://pypi.org/project/gymbag/0.4.9/",
"requires_dist": null,
"requires_python": ">=3.4",
"summary": "Simple efficient data recording for OpenAI Gym reinforcement learning environments",
"version": "0.4.9"
},
"last_serial": 3096652,
"releases": {
"0.4.9": [
{
"comment_text": "",
"digests": {
"md5": "e466e47e9835d7a2d018acfd3522971b",
"sha256": "60487c81a1ad52faf6ed2cfe31c833a6a66a2d1f3fcc2656dc875a138ad28d7d"
},
"downloads": -1,
"filename": "gymbag-0.4.9.tar.gz",
"has_sig": false,
"md5_digest": "e466e47e9835d7a2d018acfd3522971b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.4",
"size": 12667,
"upload_time": "2017-08-14T22:13:35",
"url": "https://files.pythonhosted.org/packages/af/25/a5c54ea0317b12bb79c11c7e20c9c83742d7dbd9a3e40d2bc69688159e9b/gymbag-0.4.9.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "e466e47e9835d7a2d018acfd3522971b",
"sha256": "60487c81a1ad52faf6ed2cfe31c833a6a66a2d1f3fcc2656dc875a138ad28d7d"
},
"downloads": -1,
"filename": "gymbag-0.4.9.tar.gz",
"has_sig": false,
"md5_digest": "e466e47e9835d7a2d018acfd3522971b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.4",
"size": 12667,
"upload_time": "2017-08-14T22:13:35",
"url": "https://files.pythonhosted.org/packages/af/25/a5c54ea0317b12bb79c11c7e20c9c83742d7dbd9a3e40d2bc69688159e9b/gymbag-0.4.9.tar.gz"
}
]
}