赞
踩
本文仅对比Gazebo,Pybullet,Isaac Gym三款仿真软件。详细对比可参考:
Gazebo,Pybullet,Isaac Gym用于强化学习训练对比-CSDN博客
Gazebo:
Gazebo 提供高保真的物理仿真,适合复杂的机器人模拟和实际应用中的验证。支持多种传感器和机器人模型,能够模拟复杂的环境和任务。拥有丰富的功能和插件,涵盖了从传感器仿真到机器人控制的各个方面。提供与 ROS(机器人操作系统)的无缝集成,方便实际机器人应用的开发。
但在实际应用上Gazebo 的单实例仿真性能较高,Gazebo 的物理引擎主要依赖于 CPU,每个 Gazebo 实例都会消耗大量的系统资源(CPU、内存),在单台机器上运行大量实例可能不切实际。可以尝试将 Gazebo 实例分布在多台机器上进行仿真,每台机器运行若干实例,并通过网络通信进行协调。这种方法需要一个分布式调度系统来管理和协调多个仿真实例。虽然这种方法可以一定程度上实现并行仿真,但实现和维护的复杂性较高。而且仿真速度相对较慢,难以快速迭代强化学习算法。
所以Gazebo不合适大规模并行强化学习训练。
Pybullet:
PyBullet 的架构相对轻量(低保真),能够快速启动和运行多个仿真实例,而不会消耗过多的系统资源。适合在单个工作站上运行多个仿真实例。虽然 PyBullet 的核心物理引擎主要依赖于 CPU,但它可以被集成到GPU训练。
但相比 Gazebo,物理仿真精度较低,可能不适用于高保真度要求的任务。功能和插件数量不如 Gazebo 丰富,传感器仿真相对简单。
Isaac Gym:
NVIDIA Isaac Gym 是专门为大规模并行仿真和强化学习设计的仿真平台,能够在单个 GPU 上运行数百到数千个仿真实例,从而显著加速训练过程。与主流深度学习框架(如 TensorFlow 和 PyTorch)紧密集成,便于进行强化学习训练。但对硬件要求较高。
特性 | Gazebo | PyBullet | Isaac Gym |
---|---|---|---|
高保真物理仿真 | 高 | 中 | 高 |
资源消耗 | 高 (CPU) | 低 (CPU),中 (GPU) | 高 (GPU) |
并行仿真能力 | 低 | 中 | 高 |
GPU 利用 | 低 | 中 | 高 |
功能和插件 | 丰富 | 较少 | 中 |
深度学习集成 | 中 | 高 | 高 |
易用性 | 中 | 高 | 中 |
社区支持 | 高 | 中 | 逐步增加 |
硬件要求 | 中 | 低 | 高 |
综合考量,在硬件支持的前提下,Isaac Gym是做强化学习的最佳选择。
目前支持Ubuntu18.04和Ubuntu20.04两个系统,不支持其他系统,另外不建议在Windows下使用虚拟机。使用Isaac Gym训练机器人,主要依赖于GPU性能,除算力因素外,因其大规模并行计算能力,对显存要求较高,通常要求8G以上,但如果想更大规模训练,需要考虑12G以上,主流论文中通常使用24G以上的GPU作为训练卡,而目前面向消费市场的RTX显卡,支持24G的包括,RTX3090和RTX4090,其他RTX系列最多支持到16G,从价格考量,RTX3090是优选,除这两款外可选RTX4080,但不建议RTX4080 super(驱动支持原因),最后可以考虑RTX4070和RTX4060Ti,从算力上讲前者更有优势,但12G的显存是其硬伤,具体选择显卡时,要综合考虑对算力和显存的要求。
选择好系统版本之后,需要安装虚拟环境,因为我们可能会配置不同的机器人,不同的虚拟环境可以避免依赖报之间的冲突。虚拟环境的设置依赖于anaconda,配置过程可参考该博客
Ubuntu18.04安装Anaconda(最新最全亲测图文并茂)_ubuntu18如何安装anaconda arm-CSDN博客
Ubuntu20.04 安装 Anaconda步骤_ubuntu20.04安装anaconda-CSDN博客
使用教程较多,不再详细阐述,以下为详细机器狗和一款国产机械臂的配置使用教程 :
Isaac Gym环境安装和四足机器人模型的训练-CSDN博客
使用Isaac Gym 来强化学习大象机器人mycobot 机械臂执行抓取任务_强化学习控制机械臂-CSDN博客
更多详细资料可参考官网:Isaac Sim - Robotics Simulation and Synthetic Data | NVIDIA Developer
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。