可用于强化学习的quadrotor_env
可用于强化学习的quadrotor_env
遵循gym API的第三方环境:(Gym 是用于强化学习的标准 API,以及各种参考环境的集合。)
- GymFC 是专注于姿态控制的飞行控制调整框架。GymFC 最初是在“无人机姿态控制的强化学习”手稿中引入的,其中使用模拟器合成神经飞行姿态控制器,其性能超过了传统 PID 控制器的性能。自项目最初发布以来,它已经成熟成为一个用于调整飞行控制系统的模块化框架,不仅用于合成神经飞行控制器,还用于调整传统控制器。GymFC 是开发用于世界上第一个支持神经网络的飞行控制固件Neuroflight的控制器的主要方法。Wil Koch 的论文中最好地描述了该项目及其架构的细节 “通过深度强化学习进行飞行控制器合成”。https://github.com/wil3/gymfc/
-
gym-pybullet-drones:基于PyBullet的简单OpenAI Gym 环境,用于四旋翼多智能体强化学习。https://github.com/JacopoPan/gym-pybullet-drones
gym-pybullet-drones
AirSim Flightmare Physics PyBullet FastPhysicsEngine/PhysX Ad hoc/Gazebo Rendering PyBullet Unreal Engine 4 Unity Language Python C++/C# C++/Python RGB/Depth/Segm. views Yes Yes Yes Multi-agent control Yes Yes Yes ROS interface ROS2/Python ROS/C++ ROS/C++ Hardware-In-The-Loop No Yes No Fully steppable physics Yes No Yes Aerodynamic effects Drag, downwash, ground Drag Drag OpenAI Gym
interfaceYes Yes Yes RLlib MultiAgentEnv
interfaceYes No No -
Flightmare(A Flexible Quadrotor Simulator): 目前可用的四旋翼模拟器具有刚性和高度专业化的结构:它们要么真的很快、物理上准确,要么逼真。在这项工作中,我们提出了模拟器开发的范式转变:将准确性和速度之间的权衡从开发人员转移到最终用户。我们发布了一个新的模块化四旋翼模拟器:Flightmare. Flightmare 由两个主要组件组成:基于 Unity 构建的可配置渲染引擎和用于动态模拟的灵活物理引擎。这两个组件完全解耦,可以彼此独立运行。Flightmare 具有几个理想的功能:(i)大型多模式传感器套件,包括提取场景 3D 点云的界面;(ii) 用于强化学习的 API,可以并行模拟数百个四旋翼;(iii) 与虚拟现实耳机的集成,用于与模拟环境进行交互。Flightmare 可用于各种应用,包括路径规划、强化学习、视觉惯性里程计、深度学习、人机交互等。https://uzh-rpg.github.io/flightmare/
环境
概括
0
工业的
一个基本的户外工业环境
1
仓库
小型室内仓库环境
2
车库
小型室内车库环境
3
自然森林
高品质的户外森林环境
-
AirSim:AirSim 是基于虚幻引擎构建的无人机、汽车等模拟器(我们现在也有一个实验性的Unity版本)。它是开源的、跨平台的,并支持使用流行的飞行控制器(如 PX4 和 ArduPilot)进行软件在环仿真,以及使用 PX4 进行硬件在环仿真,以实现物理和视觉上逼真的仿真。它是作为一个虚幻插件开发的,可以简单地放入任何虚幻环境中。同样,我们有一个 Unity 插件的实验版本https://github.com/microsoft/AirSim
RL with Quadrotor:https://microsoft.github.io/AirSim/reinforcement_learning/
此示例适用于版本中可用的 AirSimMountainLandscape环境。
- Metagym:quadrotor 四轴飞行器环境遵循标准的Gym APIs接口来创建、运行和渲染环境。目前,四轴飞行器支持3种任务:避障任务、速度控制任务、悬浮控制任务。任务由创建环境时的
task
参数设定。当参数map_file
为默认值None
时,模拟器世界是将使用100x100的平底作为地图。一旦飞行器落下,即认为击中障碍物,环境终止。地图文件是如default_map.txt格式的文本文件,其中每个数字表示对应位置障碍墙的高度。-1
标记了飞行器的初识位置。需要时,可以设定map_file
为用户自己生成的地图配置文件。 - gym-uav:A uav navigation simulator in large-scale complex environments.https://github.com/Juneyiiii/gym-uav基于VTK的模拟环境
知乎上有一篇总结强化学习无人机环境的文章:强化学习无人机环境汇总
ml-drone-collection:Drone Collection | Unity ML-Agents
Programmable Engine for Drone Reinforcement Learning (RL) Applications (PEDRA-2.0)