利用张量流进行反向传播规划。

tf-plan的Python项目详细描述


tf平面图Build StatusDocumentation StatusLicense

利用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

docs/img/navigation-v1.png

暖通空调

$ 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/

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
写入远程文件java   在java中尝试播放音频时出现音频流错误。wav文件   用户界面如何在Java中禁用GUI按钮   在java中如何使用条件拆分字符串   java从一个方法在数组中设置,从另一个方法获取   java如何忽略“”而不是“”   java证书。木卫一。IOException:密钥库被篡改,或密码不正确   java Android onCreate不调用   在play framework(i18n)中未正确显示德语Umlautes的java显示   使用java从eclipse运行MacOSX命令的macos   java是检查数组中备用项的最有效方法   如何使用java流编写包含循环、if/else和返回语句的代码   为什么在Java中,循环内的声明似乎比循环外的声明更快?   java软件包不存在mvn clean install