利用张量流进行反向传播规划。
tf-plan的Python项目详细描述
tf平面图
利用tensorflow进行连续mdp的梯度优化规划。
tf计划是基于NIPS 2017论文的实施:
Wu Ga, Buser Say, and Scott Sanner, 2017
Scalable Planning with Tensorflow for Hybrid Nonlinear Domains.
In Advances in Neural Information Processing Systems (pp. 6273-6283).
快速启动
tf plan是pypi中提供的python3.5+包。
$ pip3 install tf-plan
功能
tf plan解决具有连续状态动作空间和确定性转换的离散时间mdp。
域/实例使用RDDL语言指定。
它基于python3的rddl工具包:
- pyrddl:python3中的rddl lexer/解析器。
- rddlgym:在python3中使用rddl域的工具包。
- rddl2tf:rddl2tensorflow编译器。
- tf-rddlsim:在tensorflow中运行的rddl模拟器。
请参阅项目文档以了解更多详细信息。
用法
$ tfplan --help usage: tfplan [-h] [-m {offline,online}] [-b BATCH_SIZE] [-hr HORIZON] [-e EPOCHS] [-lr LEARNING_RATE] [--viz {generic,navigation}] [-v] rddl tf-plan (v0.5.0): Planning via gradient-based optimization in TensorFlow. positional arguments: rddl RDDL file or rddlgym domain id optional arguments: -h, --help show this help message and exit -m {offline,online}, --mode {offline,online} planning mode (default=offline) -b BATCH_SIZE, --batch-size BATCH_SIZE number of trajectories in a batch (default=128) -hr HORIZON, --horizon HORIZON number of timesteps (default=40) -e EPOCHS, --epochs EPOCHS number of timesteps (default=500) -lr LEARNING_RATE, --learning-rate LEARNING_RATE optimizer learning rate (default=0.001) --viz {generic,navigation} type of visualizer (default=generic) -v, --verbose verbosity mode
示例
导航
$ tfplan Navigation-v1 -b 32 -hr 15 -e 1000 -v --viz=navigation Running tf-plan v0.5.0 ... >> RDDL: Navigation-v1 >> Planning mode: offline >> Horizon: 15 >> Batch size: 32 >> Training epochs: 1000 >> Learning rate: 0.01 Epoch 999: loss = 6879.5073244 >> total reward = -82.927887
暖通空调
$ tfplan HVAC-V1 -b 64 -hr 40 -e 1000 --viz=generic Epoch 999: loss = 58134777856.00000000 >> total reward = -241098.296875
文档
有关代码文档,请参阅https://tf-plan.readthedocs.io/。
支架
如果你对tf计划有意见,请告诉我:thiago.pbueno@gmail.com。
许可证
版权所有(c)2018-2019 Thiago Pereira Bueno保留所有权利。
tf计划是免费软件:你可以重新分配和/或修改它 根据由 自由软件基金会,许可证的第3版,或者 你的选择)任何更高版本。
tf计划的发布是希望它会有用,但是 没有任何保证;甚至没有 适销性或适合某一特定目的的适销性。看小GNU 一般公共许可证了解更多详细信息。
你应该收到GNU Lesser通用公共许可证的副本 以及特遣部队的计划。如果没有,请参阅http://www.gnu.org/licenses/。