{
"info": {
"author": "Thiago P. Bueno",
"author_email": "thiago.pbueno@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Topic :: Scientific/Engineering :: Artificial Intelligence"
],
"description": "# tf-plan [](https://travis-ci.org/thiagopbueno/tf-plan) [](https://tf-plan.readthedocs.io/en/latest/?badge=latest) [](https://github.com/thiagopbueno/tf-plan/blob/master/LICENSE)\n\nPlanning via gradient-based optimization in continuous MDPs using TensorFlow.\n\n**tf-plan** is an implementation based on the NIPS 2017 paper:\n\n> Wu Ga, Buser Say, and Scott Sanner, 2017
\n> **[Scalable Planning with Tensorflow for Hybrid Nonlinear Domains.](http://papers.nips.cc/paper/7207-scalable-planning-with-tensorflow-for-hybrid-nonlinear-domains.pdf)**
\n> In Advances in *Neural Information Processing Systems* (pp. 6273-6283).\n\n\n# Quickstart\n\n**tf-plan** is a Python3.5+ package available in PyPI.\n\n```text\n$ pip3 install tf-plan\n```\n\n# Features\n\n**tf-plan** solves discrete time MDPs with continuous state-action spaces and deterministic transitions.\n\nThe domains/instances are specified using the [RDDL](http://users.cecs.anu.edu.au/~ssanner/IPPC_2011/RDDL.pdf) language.\n\nIt is built on Python3's RDDL toolkit:\n\n- [pyrddl](https://github.com/thiagopbueno/pyrddl): RDDL lexer/parser in Python3.\n- [rddlgym](https://github.com/thiagopbueno/rddlgym): A toolkit for working with RDDL domains in Python3.\n- [rddl2tf](https://github.com/thiagopbueno/rddl2tf): RDDL2TensorFlow compiler.\n- [tf-rddlsim](https://github.com/thiagopbueno/tf-rddlsim): A RDDL simulator running in TensorFlow.\n\nPlease refer to the projects' documentation for further details.\n\n\n# Usage\n\n```text\n$ tfplan --help\n\nusage: tfplan [-h] [-m {offline,online}] [-b BATCH_SIZE] [-hr HORIZON]\n [-e EPOCHS] [-lr LEARNING_RATE] [--viz {generic,navigation}]\n [-v]\n rddl\n\ntf-plan (v0.5.0): Planning via gradient-based optimization in TensorFlow.\n\npositional arguments:\n rddl RDDL file or rddlgym domain id\n\noptional arguments:\n -h, --help show this help message and exit\n -m {offline,online}, --mode {offline,online}\n planning mode (default=offline)\n -b BATCH_SIZE, --batch-size BATCH_SIZE\n number of trajectories in a batch (default=128)\n -hr HORIZON, --horizon HORIZON\n number of timesteps (default=40)\n -e EPOCHS, --epochs EPOCHS\n number of timesteps (default=500)\n -lr LEARNING_RATE, --learning-rate LEARNING_RATE\n optimizer learning rate (default=0.001)\n --viz {generic,navigation}\n type of visualizer (default=generic)\n -v, --verbose verbosity mode\n```\n\n## Examples\n\n### Navigation\n\n```text\n$ tfplan Navigation-v1 -b 32 -hr 15 -e 1000 -v --viz=navigation\n\nRunning tf-plan v0.5.0 ...\n>> RDDL: Navigation-v1\n>> Planning mode: offline\n>> Horizon: 15\n>> Batch size: 32\n>> Training epochs: 1000\n>> Learning rate: 0.01\n\nEpoch 999: loss = 6879.5073244\n>> total reward = -82.927887\n```\n\n\n\n### HVAC\n\n```text\n$ tfplan HVAC-V1 -b 64 -hr 40 -e 1000 --viz=generic\n\nEpoch 999: loss = 58134777856.00000000\n>> total reward = -241098.296875\n```\n\n\n# Documentation\n\nPlease refer to [https://tf-plan.readthedocs.io/](https://tf-plan.readthedocs.io/) for the code documentation.\n\n# Support\n\nIf you are having issues with tf-plan, please let me know at: [thiago.pbueno@gmail.com](mailto://thiago.pbueno@gmail.com).\n\n# License\n\nCopyright (c) 2018-2019 Thiago Pereira Bueno All Rights Reserved.\n\ntf-plan is free software: you can redistribute it and/or modify it\nunder the terms of the GNU Lesser General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or (at\nyour option) any later version.\n\ntf-plan is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser\nGeneral Public License for more details.\n\nYou should have received a copy of the GNU Lesser General Public License\nalong with tf-plan. If not, see http://www.gnu.org/licenses/.",
"description_content_type": "text/markdown",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/thiagopbueno/tf-plan",
"keywords": "planning,tensorflow,rddl,mdp",
"license": "GNU General Public License v3.0",
"maintainer": "",
"maintainer_email": "",
"name": "tf-plan",
"package_url": "https://pypi.org/project/tf-plan/",
"platform": "",
"project_url": "https://pypi.org/project/tf-plan/",
"project_urls": {
"Homepage": "https://github.com/thiagopbueno/tf-plan"
},
"release_url": "https://pypi.org/project/tf-plan/0.5.1/",
"requires_dist": null,
"requires_python": ">=3.5",
"summary": "Planning through backpropagation using TensorFlow.",
"version": "0.5.1"
},
"last_serial": 5274800,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "2d78dfe306c59351af6710bebe5a8feb",
"sha256": "66acd3c2187c3f6dc638ee2948b19e09a46fc214f20416962a78a9d6cdffde12"
},
"downloads": -1,
"filename": "tf-plan-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "2d78dfe306c59351af6710bebe5a8feb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4574,
"upload_time": "2018-08-08T21:18:56",
"url": "https://files.pythonhosted.org/packages/b8/26/0da846a7e20e4b911a3b84642d47274aede6cff5cd410f6891977e28bd8a/tf-plan-0.1.0.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "a3f1d399a1ffe0791b6dc3fa54e5fdae",
"sha256": "10331a60f850e56c80f8bf8e726c11898b9971ea725a0cfa35b0c2179f02c0ce"
},
"downloads": -1,
"filename": "tf-plan-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "a3f1d399a1ffe0791b6dc3fa54e5fdae",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6191,
"upload_time": "2018-08-12T02:50:21",
"url": "https://files.pythonhosted.org/packages/88/07/ed1f65caa4cd951cbec5875c341b9341754db09bdc112d5a13bfd4d2026f/tf-plan-0.2.0.tar.gz"
}
],
"0.2.1": [
{
"comment_text": "",
"digests": {
"md5": "248b82a4d2ad07d5765e998f79fdeaa2",
"sha256": "72734f4f8470bd500fe783d0c327ce45d1c91a6bfa63250bf62ffceee1c01b85"
},
"downloads": -1,
"filename": "tf-plan-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "248b82a4d2ad07d5765e998f79fdeaa2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6305,
"upload_time": "2018-08-12T22:23:04",
"url": "https://files.pythonhosted.org/packages/cd/13/e808d5f5d3c12cf6c29731eb177653a63356c8f94b824f927968d9eef608/tf-plan-0.2.1.tar.gz"
}
],
"0.3.1": [
{
"comment_text": "",
"digests": {
"md5": "c8a8a5aaa54cb9f62bcb4e3d1c009e32",
"sha256": "fccf6bb65eb8a3b0e329f692d2dc81e980f278e019cc52d05fe609c42b3886a5"
},
"downloads": -1,
"filename": "tf-plan-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "c8a8a5aaa54cb9f62bcb4e3d1c009e32",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7351,
"upload_time": "2018-08-19T16:03:58",
"url": "https://files.pythonhosted.org/packages/4a/39/700c6506bb406d6bf63a37f1387e1d486004733b5d0854ccac0687340295/tf-plan-0.3.1.tar.gz"
}
],
"0.4.0": [
{
"comment_text": "",
"digests": {
"md5": "235e8b7e15eb9f5b883007b9df10c260",
"sha256": "6d6a955d2b76e154091431a405c8dac2ba3d2fb928923125f699d808d3151f43"
},
"downloads": -1,
"filename": "tf-plan-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "235e8b7e15eb9f5b883007b9df10c260",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11434,
"upload_time": "2018-08-30T19:59:11",
"url": "https://files.pythonhosted.org/packages/eb/d7/f268fc0409b9753e89da08aeab66ef4fb407b6e2b4d29e541b808c5121c1/tf-plan-0.4.0.tar.gz"
}
],
"0.4.1": [
{
"comment_text": "",
"digests": {
"md5": "30963c79f28b6abc8314bd870c58d366",
"sha256": "9293e6a999bffe9193aa18f610c47781ab3a3145faead610206f64069414bf69"
},
"downloads": -1,
"filename": "tf-plan-0.4.1.tar.gz",
"has_sig": false,
"md5_digest": "30963c79f28b6abc8314bd870c58d366",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11682,
"upload_time": "2018-09-28T14:57:05",
"url": "https://files.pythonhosted.org/packages/ff/6a/e96865e0d44a969e3f893d6371e359773da1dc2a28b09beca2ae9c198a95/tf-plan-0.4.1.tar.gz"
}
],
"0.4.2": [
{
"comment_text": "",
"digests": {
"md5": "5b0b35a8428df36cee8261520cbffad8",
"sha256": "15969e50a77d0c28eb279e926957d4c8fc7f565d9a0e0fa7dba0124da0cea820"
},
"downloads": -1,
"filename": "tf-plan-0.4.2.tar.gz",
"has_sig": false,
"md5_digest": "5b0b35a8428df36cee8261520cbffad8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11647,
"upload_time": "2018-09-29T22:51:06",
"url": "https://files.pythonhosted.org/packages/b7/28/fd82ef7c0a98f455b4e5a717e94252ad9088a74a7ff392bc6ca886c585fc/tf-plan-0.4.2.tar.gz"
}
],
"0.4.3": [
{
"comment_text": "",
"digests": {
"md5": "f85c9b93033dde3b8457374ae2777dc4",
"sha256": "44a3023dcb2986b57cee199185781eff750e2baa42d97a1a40e31e48d2cbc362"
},
"downloads": -1,
"filename": "tf-plan-0.4.3.tar.gz",
"has_sig": false,
"md5_digest": "f85c9b93033dde3b8457374ae2777dc4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13837,
"upload_time": "2018-11-09T02:06:31",
"url": "https://files.pythonhosted.org/packages/31/99/69a55313743bf460806a0b6b59f63a971f4a530b3a16ff9ed4ab48f71ed7/tf-plan-0.4.3.tar.gz"
}
],
"0.4.4": [
{
"comment_text": "",
"digests": {
"md5": "c2f798a1e281a3471bed04dcebe53161",
"sha256": "65e61490e00da0b005abd29a717c19c847b24eeb437653aca6ffe91ba6995812"
},
"downloads": -1,
"filename": "tf_plan-0.4.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c2f798a1e281a3471bed04dcebe53161",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 34483,
"upload_time": "2018-11-14T01:14:05",
"url": "https://files.pythonhosted.org/packages/21/c9/d2cf484dbb1c1c043373c491d7404a813abec8578ad5b3089b21629a4b02/tf_plan-0.4.4-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "f24a26781b52dc19e4f911e6fb243d36",
"sha256": "1a427e2b8c7b17188cd85d25cd463df489f7a2f4244d2cb1515565ac07c5db4b"
},
"downloads": -1,
"filename": "tf-plan-0.4.4.tar.gz",
"has_sig": false,
"md5_digest": "f24a26781b52dc19e4f911e6fb243d36",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13897,
"upload_time": "2018-11-14T01:14:09",
"url": "https://files.pythonhosted.org/packages/1c/95/a7a37e5b3d63c1a8651dd37ff1572eeea9ecf9b91453cdab2cc294e15b5e/tf-plan-0.4.4.tar.gz"
}
],
"0.4.5": [
{
"comment_text": "",
"digests": {
"md5": "3fb5c4ccdf94ba89a756da898141385b",
"sha256": "e18b5960c116600f3a92483295a9fc978d30d9559a927ebc04a9faae5ff210ba"
},
"downloads": -1,
"filename": "tf-plan-0.4.5.tar.gz",
"has_sig": false,
"md5_digest": "3fb5c4ccdf94ba89a756da898141385b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 13952,
"upload_time": "2018-11-14T02:26:49",
"url": "https://files.pythonhosted.org/packages/78/cc/252f8bfdd0219ccbbccd6d9764713e295ba0b58d9ff41065664828704e60/tf-plan-0.4.5.tar.gz"
}
],
"0.4.6": [
{
"comment_text": "",
"digests": {
"md5": "88783f725520ed0d92ba63819b2c4068",
"sha256": "5489b55535047a516d60ee3f64534bfb4ea487c32acdbba3a30fb2af37eab381"
},
"downloads": -1,
"filename": "tf-plan-0.4.6.tar.gz",
"has_sig": false,
"md5_digest": "88783f725520ed0d92ba63819b2c4068",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 13968,
"upload_time": "2018-11-24T02:22:02",
"url": "https://files.pythonhosted.org/packages/e5/b5/40cef2be563f48b69cd07d6de2f02ac4f37956923aa548f3b95c5abb5be0/tf-plan-0.4.6.tar.gz"
}
],
"0.4.7": [
{
"comment_text": "",
"digests": {
"md5": "557e4f1a8f0a30c2d290fa1100ecb2ff",
"sha256": "fe235cce3c7c37c7a03015a6e0fdd45180d8916bb62d5dc37eed709042ce8e1b"
},
"downloads": -1,
"filename": "tf-plan-0.4.7.tar.gz",
"has_sig": false,
"md5_digest": "557e4f1a8f0a30c2d290fa1100ecb2ff",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 14267,
"upload_time": "2018-11-25T21:11:56",
"url": "https://files.pythonhosted.org/packages/84/8a/6c93e39f3d67fe2114c9d962032afc5da1f8c56f86d7051668d536b4b7d3/tf-plan-0.4.7.tar.gz"
}
],
"0.5.0": [
{
"comment_text": "",
"digests": {
"md5": "d0ec551d4240ec753355ffec648ded17",
"sha256": "77c431cd292d943a90a253adf3ffba42e71146d792aef9447634927de8f87f11"
},
"downloads": -1,
"filename": "tf-plan-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "d0ec551d4240ec753355ffec648ded17",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 15736,
"upload_time": "2019-04-02T21:56:28",
"url": "https://files.pythonhosted.org/packages/3f/73/aaed25b6e84efe57fca3b770ddd7f751508302edeb87d700bc53ba5907db/tf-plan-0.5.0.tar.gz"
}
],
"0.5.1": [
{
"comment_text": "",
"digests": {
"md5": "3060685a32dcecb851b15a38d4554fd3",
"sha256": "2a54e969cbbf353dfc19ccc420485a67e8e2de050271c892c40159ffef9bbcd1"
},
"downloads": -1,
"filename": "tf-plan-0.5.1.tar.gz",
"has_sig": false,
"md5_digest": "3060685a32dcecb851b15a38d4554fd3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 15942,
"upload_time": "2019-05-15T23:43:06",
"url": "https://files.pythonhosted.org/packages/5e/da/b02d436a520ff6c2535aaf3abc0ccab61d5d5581d35264a7f85048800087/tf-plan-0.5.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "3060685a32dcecb851b15a38d4554fd3",
"sha256": "2a54e969cbbf353dfc19ccc420485a67e8e2de050271c892c40159ffef9bbcd1"
},
"downloads": -1,
"filename": "tf-plan-0.5.1.tar.gz",
"has_sig": false,
"md5_digest": "3060685a32dcecb851b15a38d4554fd3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 15942,
"upload_time": "2019-05-15T23:43:06",
"url": "https://files.pythonhosted.org/packages/5e/da/b02d436a520ff6c2535aaf3abc0ccab61d5d5581d35264a7f85048800087/tf-plan-0.5.1.tar.gz"
}
]
}