当前位置: 首页 > article >正文

pick你的第一个人形机器人——青龙强化学习环境测试

文章目录

  • 一、环境配置
  • 二、开始训练
  • 三、训练成果

最近感受到的大趋势是具身智能,强化学习,模仿学习做人形机器人,这个赛道很火,颇有前些年全力投入做自动驾驶的架势,正好最近用强化学习解决POMDP问题接触到了强化学习,闲逛博客发现了上海人工智能实验室青龙开源强化学习环境。正好以此来练练手,了解了解人形机器人。

一、环境配置

  • 本地环境
    • 系统:ubuntu22.04
    • CPU: Intel® Core™ i9-14900K
    • GPU: NVIDIA GeForce RTX 4090
    • Docker version 26.0.0, build 2ae903e
    • Driver Version: 535.171.04
    • CUDA Version: 12.2

conda安装可以参考我配置pytorch环境的博客Ubuntu20.04系统配置Pytorch环境(GPU版)

1.创建虚拟环境

conda create -n AzureLoong python=3.8

2.激活虚拟环境

conda activate AzureLoong

3.安装pytorch

pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117

4.克隆源码

git clone https://atomgit.com/openloong/gymloong

5.安装Issac gym

cd ./gymloong/isaacgym/python
pip install -e .

6.测试示例

cd ./examples 
python joint_monkey.py

此时有可能会报错,报错信息如下:

ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or directory

在命令行中输入以下指令

sudo find / -name libpython3.8.so.1.0

找到AzureLoong中的libpython3.8.so.1.0,如图所示

使用以下命令将其复制到/usr/lib目录下

sudo cp /home/kemove/miniconda3/envs/AzureLoong/lib/libpython3.8.so.1.0  /usr/lib/

重新以下执行指令,出现以下界面说明安装成功

cd ./examples 
python joint_monkey.py


7.安装gpu_rl

##注意这里使用自己的路径,我这里使用的是本地的绝对路径
cd /home/kemove/gymloong/AzureLoong/gpu_rl
pip install -e .

这里会报一个错,是setuptools版本太高了,重新安装其指定的版本,然后重新执行安装gpu_rl的指令即可

##安装指定版本
pip install setuptools==59.5.0
##重新安装gpu_rl
pip install -e .

8.安装gpuGym

##注意这里使用自己的路径,我这里使用的是本地的绝对路径
cd /home/kemove/gymloong/AzureLoong
pip install -e .

9.安装WandB

pip install wandb

二、开始训练

1.进入到训练脚本所在的路径

##注意这里使用自己的路径,我这里使用的是本地的绝对路径
cd /home/kemove/gymloong/AzureLoong/gpugym/scripts

2.执行以下指令开始训练

python train.py --task=AzureLoong

训练正常开始会弹出以下画面,按V暂停可视化,命令行中显示了每轮训练中奖励的平均数值

三、训练成果

训练结束后,输入以下指令展示训练的结果

python play.py --task=AzureLoong

训练结果如下图所示,图中的小点点是一个个小机器人,它们跑到了四面八方,目前我还不理解这结果能说明什么,等以后再研究吧
image.png
目前只是跑通了训练的demo,该框架的研究以后再补坑,先研究决策规划去了。


http://www.kler.cn/a/316490.html

相关文章:

  • react 中 useContext Hook 作用
  • SpringBoot参数注解
  • 前端垂直居中的多种实现方式及应用分析
  • 【Golang】Channel的ring buffer实现
  • 《TCP/IP网络编程》学习笔记 | Chapter 8:域名及网络地址
  • 封装el-menu
  • Vuex 入门与实战
  • CMake 教程(五):安装和测试
  • [全网首篇]关于 VMSA-2024-0019 安全公告(CVE-2024-38812、CVE-2024-38813)的说明与解决方案
  • 【系统架构设计师】软件架构的概念(经典习题)
  • Vue3.5+ 更新 - 模板引用
  • 【Go】Go语言中深拷贝和浅拷贝
  • PlantUML的使用以及各种图表示例
  • HOJ网站开启https访问 申请免费SSL证书 部署证书详细操作指南
  • 无法将ggplot图保存为PDF文件怎么办
  • 数组高阶应用(C++版)
  • TypeError: expected string or buffer - Langchain, OpenAI Embeddings
  • 力扣3290.最高乘法得分
  • 【PHP小课堂】PHP中的函数相关处理方法学习
  • 【计算机网络 - 基础问题】每日 3 题(十六)
  • 目标检测:滑块验证
  • 2012年408考研真题-数据结构
  • 领夹麦克风哪个品牌好,无线领夹麦克风品牌排名,麦克风品牌大全
  • Python ORM 框架 SQLModel 快速入门教程
  • 每日一道算法题(二)—快乐数
  • STaR: Bootstrapping Reasoning With Reasoning