交互性强的网站,福建建设厅官网,网站建设公司开发,怎么样推广一个网站0. 简介
Isaac Gym 是由 NVIDIA 提供的一个高性能仿真平台#xff0c;专门用于大规模的机器人学习和强化学习#xff08;RL#xff09;任务。它结合了物理仿真、GPU加速、深度学习框架互操作性等特点#xff0c;使得研究人员和开发者可以快速进行复杂的机器人仿真和训练。…0. 简介
Isaac Gym 是由 NVIDIA 提供的一个高性能仿真平台专门用于大规模的机器人学习和强化学习RL任务。它结合了物理仿真、GPU加速、深度学习框架互操作性等特点使得研究人员和开发者可以快速进行复杂的机器人仿真和训练。 Isaac Gym 的深度强化学习物理模拟环境其可以可以导入URDF和MJCF文件因此可以在不转换的情况下使用MuJoCo等中使用的模型。在使用MuJoCo和PyBullet等物理模拟环境的深度强化学习中在GPU上模拟的信息被传递到CPU端并根据CPU上接收到的信息计算观察和奖励。 重复该过程以在模拟环境中进行学习。 因此为了加快学习速度就存在CPU和GPU之间的瓶颈以及需要大型CPU集群等问题。而且Isaac Gym通过仅使用 GPU 执行这些过程成功解决了上述问题并提高了速度。相关的API的使用可以参考Isaacgym使用操作指南里面的内容。
最近具身智能也是一个大热的方向。这里最近受到优刻得的使用邀请正好解决了我在大模型和自动驾驶行业对GPU的使用需求。UCloud云计算旗下的Compshare的GPU算力云平台。他们提供高性价比的4090 GPU按时收费每卡1.88元并附带200G的免费磁盘空间。暂时已经满足我的使用需求了同时支持访问加速独立IP等功能能够更快的完成项目搭建。此外对于低性能的还有3080TI使用只需要0.88元已经吊打市面上主流的云服务器了 1. Isaac Gym环境安装
首先我们先来安装Isaac Gym环境对应的下载链接为Isaac Gym - Preview Release | NVIDIA Developer。对应的环境配置需求为
Ubuntu 18.04 或是 20.04Python版本3.6, 3.7 or 3.8.最低显卡驱动版本Linux: 470cuda版本11.6
相关的CUDA和CUDNN的配置这里我们就不展开了想要详细了解的请参考《从BEVDET来学习如何生成trt以及如何去写这些C内容》。然后我们就简略写一下安装步骤
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-driver-510
sudo vim /etc/apt/sources.list
# 然后在最后一行添加deb [archamd64] http://archive.ubuntu.com/ubuntu focal main universe
sudo apt-get install gcc-7 g-7sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1sudo update-alternatives --display gcc //查看默认版本sudo update-alternatives --install /usr/bin/g g /usr/bin/g-7 9
sudo update-alternatives --install /usr/bin/g g /usr/bin/g-9 1sudo update-alternatives --display gwget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda_11.6.0_510.39.01_linux.run
sudo sh cuda_11.6.0_510.39.01_linux.run
sudo vim ~/.bashrc
export LD_LIBRARY_PATH/usr/local/cuda-11.6/lib64:/usr/local/cuda-11.6/extras/CPUTI/lib64
export CUDA_HOME/usr/local/cuda-11.6/bin
export PATH$PATH:$LD_LIBRARY_PATH:$CUDA_HOME
source ~/.bashrc
# 然后重启并安装cudnn# 进入https://developer.nvidia.com/rdp/cudnn-archive下载指定版本然后安装这选用的是8.6的cudnn参考https://blog.csdn.net/shanglianlm/article/details/130219640
sudo dpkg -i cudnn-local-repo-ubuntu2004-8.6.0.163_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get install libcudnn88.6.0.163-1cuda11.8
sudo apt-get install libcudnn8-dev8.6.0.163-1cuda11.8
sudo apt-get install libcudnn8-samples8.6.0.163-1cuda11.8然后下面就对下载好的IsaacGym_Preview_4_Package.tar.gz进行解压格式为
然后开始编译
tar -zxvf IsaacGym_Preview_4_Package.tar.gz
cd isaacgym
./create_conda_env_rlgpu.sh 要检查 Isaac Gym 是否正常工作请运行 isaacgym/python/examples 目录中的 joint_monkey.py。 如果设置正确人形模型将移动其四肢 可以通过下面的指令激活并测试
# 激活环境
conda activate rlgpu
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt install libpython3.7
export LD_LIBRARY_PATH$HOME/miniconda3/envs/rlgpu/lib
# 正常情况下这时候可以运行实例程序/isaacgym/python/examples/joint_monkey.py
python joint_monkey.py
# 可以通过--asset_id命令控制显示的模型
python joint_monkey.py --asset_id6“Isaac Gym”没有反应 运行示例代码例如 joint_monkey.py时Isaac Gym 屏幕可能不会显示。 这是因为一些集成英特尔显卡例如英特尔 UHD 显卡的 PC 系统中并未使用 NVIDIA 的 GPU。 请输入以下命令以使用 NVIDIA GPU。
sudo prime-select nvidia
export VK_ICD_FILENAMES/usr/share/vulkan/icd.d/nvidia_icd.json通过在~/.bashrc中写入上述命令export VK_ICD_FILENAMES/usr/share/vulkan/icd.d/nvidia_icd.json可以省去每次输入命令的麻烦。
可视化界面可以参考《通过VNC搭建Ubuntu 18.04和20.04图形界面》
sudo vim /etc/apt/sources.list
# 添加 deb http://archive.ubuntu.com/ubuntu/ bionic universe
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
# sudo apt-get install -y vnc4server # ubuntu18
sudo apt-get install tightvncserver # ubuntu20
sudo apt update
sudo apt-get upgrade
sudo apt-get install snapd
sudo apt-get install -y x-window-system-core gdm3
sudo apt install ubuntu-desktop#如果不执行则关机重新从sudo apt-get upgrade这一行开始执行
#sudo apt install xubuntu-desktop
sudo apt install xrdp
sudo systemctl status xrdp
sudo apt-get install -y gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
vncserver然后修改sudo vim ~/.vnc/xstartup文件这里还需要虚拟屏幕设置ubuntu18.04服务器配置VNC解决去掉显示器之后黑屏大鼠标问题
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc[ -x /etc/vnc/xstartup ] exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic
x-terminal-emulator -geometry 1920x1080 -ls -title $VNCDESKTOP Desktop
x-window-manager #gnome-terminal sesion-manager xfdesktop xfce4-panel
xfce4-menu-plugin
xfsettingsd
xfconfd
xfwm4
metacity
nautilus 然后设置重启
sudo chmod x ~/.vnc/xstartup
vncserver -kill :1
vncserver -geometry 1920x1080 :1由于优刻得开通了端口所以也可以通过vnc-viewer连接了
2. 对应文档
2.1 官方文档资源 NVIDIA Omniverse 全站文档 网址: https://docs.omniverse.nvidia.com/内容: 包含 NVIDIA Omniverse 的全面文档资源。 Isaac Sim 开发者文档 网址: https://developer.nvidia.com/isaac/sim内容: 提供了针对 Isaac Sim 的开发者文档帮助开发者了解和使用 Isaac Sim。 Omniverse 开发者文档 网址: https://docs.omniverse.nvidia.com/dev-guide/latest/index.html内容: Omniverse 的开发者文档涵盖了最新的内容和指南。 Isaac Lab 文档 网址: https://isaac-sim.github.io/IsaacLab/内容: Isaac Lab 的文档资源可能包含与 Isaac Sim 相关的实验室信息。 Isaac Sim API 参考文档 网址: https://docs.omniverse.nvidia.com/py/isaacsim/index.html内容: 提供了 Isaac Sim API 的参考文档帮助开发者了解如何使用 Isaac Sim 的编程接口。 ROS/ROS2 教程 网址: https://docs.omniverse.nvidia.com/isaacsim/latest/ros_ros2_tutorials.html内容: 包含了与 ROS/ROS2 相关的教程帮助开发者在 Isaac Sim 中进行 ROS/ROS2 的开发和集成。
2.2 AI 仓库与视觉导航 Isaac ROS SLAM GitHub链接: https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_visual_slam内容: 提供了功能强大的视觉导航工具特别适用于工业自动化和复杂环境中的导航任务。 Isaac ROS 3D Scene Reconstruction GitHub链接: https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_realsense内容: 包含了基于 GPU 加速的视觉 SLAM 算法用于定位、地图构建和路径规划。
2.3 视频教程与资料下载 教程视频 提取链接: 百度网盘链接提取码kvq7内容: 提供了详细的操作步骤和功能讲解适合初学者学习 Isaac Sim。 GitHub 教程与代码仓库 Isaac Sim ROS Workspaces: https://github.com/isaac-sim/IsaacSim-ros_workspacesIsaac ROS GEMs: https://github.com/NVIDIA-AI-IOT/Nav2-with-Isaac-ROS-GEMs内容: 包含了与 Isaac Sim 相关的代码仓库和教程资源。
2.4 深入学习与实用技巧 开发环境搭建 内容: 根据文档和 GitHub 教程开发者可以快速搭建 Isaac Sim 与 ROS 的集成工作空间。 视觉导航和 SLAM 技术应用 内容: 开发者可以利用 NVIDIA 提供的 SLAM 和 3D 重建代码库实现复杂环境下的导航任务。 Replicator 环境生成 内容: Replicator 是 Isaac Sim 的一部分可用于生成各种工业环境的模拟场景帮助开发者验证机器人系统在虚拟环境中的表现。
3. 强化学习和Isaac Gym
下面我们来试一下Isaac Gym基础训练环境安装对应提供的提供深度强化学习示例为
git clone https://github.com/NVIDIA-Omniverse/IsaacGymEnvs.git
conda activate rlgpu
cd IsaacGymEnvs
pip install -e .
#cuda11.6 安装pytorch1.12更换国内源
pip install torch1.13.0cu116 torchvision0.14.0cu116 torchaudio0.13.0 --extra-index-url https://download.pytorch.org/whl/cu116# 尝试训练
python train.py taskAnt
# 不显示动画只训练
python train.py taskAnt headlessTrue
# 测试训练模型的效果num_envs是同时进行训练的模型数量
python train.py taskAnt checkpointruns/Ant/nn/Ant.pth testTrue num_envs64 Isaac Gym Benchmark文件交互逻辑 项目的文件目录构成 对应含义为 assets放置模型文件官方文件显示目前支持加载URDF和MJCF文件格式。 docs说明文档 isaacgymenvs代码主目录 cfg参数文件 learing训练的算法文件 pbtPopulation-Based Training 说明文档 run训练的统计文件和模型文件 tasks不同任务对用的训练方法文件 utils通用工具文件 4. 第三方拓展宇树机器狗
无论是人型机器人 还是机器狗 其基本都是基于Isaac Gym平台并加入自己的算法和模型来完成强化学习训练。这里我们来看一下机器狗的工程
git clone https://github.com/Improbable-AI/walk-these-ways.git
conda activate rlgpu
cd walk-these-ways
pip install -e .
# 测试
python scripts/test.py
# 训练
python scripts/train.py本文使用的代码结构是改编自legged_gym工程如果想要在训练结束后继续上次的训练,可以参考这篇文章这里就不展开写了
5. 参考链接
https://blog.csdn.net/weixin_44061195/article/details/131830133 https://blog.csdn.net/weixin_44061195/article/details/132830367 https://blog.csdn.net/qq_38023194/article/details/140874763