TMRL简介
TMRL(TrackMania Reinforcement Learning)是一个开源的分布式强化学习框架,专为实时应用设计。它的主要目标是帮助研究人员和开发者在机器人、视频游戏等实时环境中训练深度强化学习AI。TMRL的一个突出特点是提供了一个现成的TrackMania 2020赛车游戏AI训练流程。
TMRL适合多种用户群体:
- 对AI和TrackMania感兴趣的爱好者可以用TMRL轻松训练游戏AI
- 机器学习开发者和机器人研究者可以利用TMRL实现工业应用的强化学习流程
- TrackMania爱好者可以直接使用TMRL提供的Gymnasium环境
- 所有人都可以参与TMRL主办的TrackMania Roborace League比赛
TMRL的主要特性
TrackMania示例流程
-
使用先进的强化学习算法,如SAC(Soft Actor-Critic)和REDQ(Randomized Ensembled Double Q-Learning)
-
支持从实时截图中学习模拟控制。初学者也可以使用简化的LIDAR观测
-
使用多层感知器(MLP)处理LIDAR数据,使用卷积神经网络(CNN)处理原始图像
面向开发者的特性
-
完整的Python库,支持安全的远程训练和细粒度定制
-
为TrackMania 2020提供Gymnasium环境
-
衍生出多个独立的子项目库,如rtgym、vgamepad和tlspyo等
TMRL的工作原理
TMRL的示例流程中,AI(策略)从赛道起点开始,通过探索环境来学习如何尽快完成赛道。具体来说:
-
赛车将观测(如图像)输入神经网络,网络输出最佳控制动作
-
AI通过几小时到几天的探索,逐渐理解如何高效行动
-
这个过程是通过深度强化学习(Deep RL)实现的
强化学习基础
强化学习基于马尔可夫决策过程(MDP)。策略与MDP的交互如下:
- 策略在每个时间步根据观测选择动作(如油门、刹车、转向)
- 动作作用于环境,产生新的观测
- 环境还会给出奖励信号,用于评估策略的表现
- AI通过试错和优化来最大化长期累积奖励
Soft Actor-Critic算法
TMRL默认使用SAC算法训练策略:
- 使用策略网络(actor)和价值网络(critic)两个神经网络
- 策略网络输入观测,输出动作
- 价值网络评估状态-动作对的价值
- 两个网络并行训练,相互促进
- 能够存储和重用转移样本,适合实时应用
- 输出连续动作,适合模拟控制
- 最大化策略熵,有利于探索和鲁棒性
巧妙的奖励设计
TMRL使用了一种巧妙的奖励函数设计:
- 预先录制一条示范轨迹,将其等分为多个点
- 训练时的奖励是每个时间步通过的点数
- 这种设计鼓励AI在最短时间内覆盖最大赛道范围
- 比简单使用速度作为奖励更合理,考虑了最优轨迹
TMRL的架构
TMRL基于客户端-服务器架构:
- 多个rollout worker收集样本,定期发送到中央服务器
- 中央服务器汇总样本,发送给trainer
- Trainer更新策略,将新的策略权重发回服务器
- 服务器将新权重广播给所有worker
这种设计支持分布式训练,可以利用多台机器和/或机器人同时收集样本。
在TrackMania中的应用结果
TMRL在TrackMania中取得了不错的效果:
- 蓝车使用单个LIDAR观测,学会了匀速行驶
- 红车使用4个LIDAR历史,学会了在弯道减速、过弯、加速的策略
- 红车的表现更接近人类驾驶员
总结
TMRL为实时强化学习应用提供了一个强大而灵活的框架。它不仅可以用于TrackMania等游戏AI,还可以扩展到机器人等实际应用中。TMRL的开源性质和模块化设计使其成为研究和开发实时AI系统的理想平台。
无论你是AI爱好者、游戏玩家还是机器学习研究者,TMRL都为你提供了一个有趣而强大的工具来探索实时强化学习的世界。我们期待看到更多基于TMRL的创新应用和研究成果!