Unmanned aerial vehicles (UAVs) have numerous applications, but their efficient and optimal flight can be a challenge. Reinforcement Learning (RL) has emerged as a promising approach to address this challenge, yet there is no standardized library for testing and benchmarking RL algorithms on UAVs. In this paper, we introduce PyFlyt, a platform built on the Bullet physics engine with native Gymnasium API support. PyFlyt provides modular implementations of simple components, such as motors and lifting surfaces, allowing for the implementation of UAVs of arbitrary configurations. Additionally, PyFlyt includes various task definitions and multiple reward function settings for each vehicle type. We demonstrate the effectiveness of PyFlyt by training various RL agents for two UAV models: quadrotor and fixed-wing. Our findings highlight the effectiveness of RL in UAV control and planning, and further show that it is possible to train agents in sparse reward settings for UAVs. PyFlyt fills a gap in existing literature by providing a flexible and standardised platform for testing RL algorithms on UAVs. We believe that this will inspire more standardised research in this direction.
翻译:无人机(UAV)具有众多应用场景,但其高效最优飞行仍具挑战性。强化学习(RL)已成为应对这一挑战的重要方法,但目前缺乏用于测试和基准化无人机强化学习算法的标准化库。本文介绍PyFlyt——一个基于Bullet物理引擎构建并原生支持Gymnasium API的平台。PyFlyt提供电机、升力面等简单组件的模块化实现,可支持任意构型无人机的实现。此外,PyFlyt包含多种任务定义及针对每种飞行器类型的多奖励函数设置。我们通过训练面向四旋翼和固定翼两种无人机模型的多种强化学习智能体,验证了PyFlyt的有效性。研究结果凸显了强化学习在无人机控制与规划中的有效性,并进一步表明在无人机稀疏奖励场景下训练智能体具有可行性。PyFlyt通过提供灵活标准化的无人机强化学习算法测试平台,填补了现有文献的空白。我们相信这将推动该方向的标准化研究。