6 个版本
| 0.3.1 | 2022年7月30日 |
|---|---|
| 0.3.0 | 2022年7月30日 |
| 0.2.0 | 2022年3月22日 |
| 0.1.2 | 2021年10月7日 |
在 机器学习 中排名第 497
每月下载量 22
用于 relearn_derive
1MB
22K SLoC
ReLearn:强化学习库
强化学习库和实验运行器。通过 tch 接口使用 pytorch 作为神经网络后端。
目前,该库是为个人使用而设计的。它处于开发中且不稳定,因此更新时可能会出现破坏性更改。
请参阅 https://docs.rs/relearn 中的文档。
示例
使用表格 Q 学习的链式环境
cargo run --release --example chain-tabular-q
该环境具有无限长的剧集。
Cart-Pole 使用信任域策略优化
cargo run --release --example cartpole-trpo
cargo run --release --example cartpole-trpo data/cartpole-trpo/<time>/actor.cbor
使用前馈 MLP 作为策略,并使用单独的 MLP 作为评论家(基线)。显示的统计信息也保存到 data/cartpole-trpo/,并可以使用 tensorboard --logdir data/cartpole-trpo 查看。
lib.rs:
强化学习库。
环境实现 Environment 特性,该特性具有关联的观察、动作和状态类型。代理实现 Agent,并提供了根据环境观察生成动作的 Actors。代理可以通过 BatchUpdate 特性进行学习。
代理特性对环境的观察(O)和动作(A)类型是泛型的。通过 Space 特性,EnvStructure 特性提供了更多关于这些类型可能值的详细信息。可以认为 Space 是一个在运行时定义的类型,描述了一组可能的值,而方法则由 spaces 中的其他特性提供。
环境-参与者模拟通过 步骤 进行,生成的 步骤 可以通过一个 迭代器 接口访问。训练是通过 train_serial 和 train_parallel 进行的。
这个库通过 [tch] 使用 PyTorch。
依赖项
~31MB
~422K SLoC