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.xdnf.cn/news/146859.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

怎么检查cuda是否安装成功(以及查看cuda的安装位置)

方法一: winr,再cmd,再在命令行中输入 nvcc -V 可以查看版本信息 方法二: winr,再cmd,再在命令行中输入 nvidia-smi 可以查看版本信息 方法三: 使用python,pytorch代码 import torch # 如果p…

Unet改进42:添加ACConv2d|使用一维非对称卷积来增强平方卷积核

本文内容:在不同位置添加ACConv2d 目录 论文简介 1.步骤一 2.步骤二 3.步骤三 4.步骤四 论文简介 由于在给定的应用环境中设计合适的卷积神经网络(CNN)架构通常需要大量的人工工作或大量的GPU时间,研究社区正在征求架构中立的CNN结构,它可以很容易地插入到多个成熟的架…

C++:数组与字符串

一、数组 数组是一种存储若干元素的数据类型,在诸多编程语言中存在,其显著的特点是元素通常是在物理层面上连续存储的(逻辑上的数组,比如链表,可能不是),并且具有极快的元素访问速度。 数组通常…

Spring Cloud Alibaba-(5)Seata【分布式事务】

Spring Cloud Alibaba-(1)搭建项目环境 Spring Cloud Alibaba-(2)Nacos【服务注册与发现、配置管理】 Spring Cloud Alibaba-(3)OpenFeign【服务调用】 Spring Cloud Alibaba-(4)Sen…

P1516 青蛙的约会(exgcd以及相关结论)

非常好的题,适合入门拓展欧几里得算法以及相关结论。 结论 ax by gcd(a,b) gcd(b,a%b) 由此递归求解即可。 int exgcd(int a,int b,int &x,int &y){// 求解 ax by gcd(a,b)if(!b){x 1,y 0;return a;}int g exgcd(b,a%b,x,y);int temp x;x y…

NLP 序列标注任务核心梳理

句向量标注 用 bert 生成句向量用 lstm 或 bert 承接 bert 的输出,保证模型可以学习到内容的连续性。此时 lstm 输入形状为: pooled_output.unsqueeze(0) (1, num_sentence, vector_size) 应用场景 词性标注句法分析 文本加标点 相当于粗粒度的分词任…

8590 队列的应用——银行客户平均等待时间

### 思路 1. **初始化队列**:使用InitQueue函数初始化一个队列,用于存储客户的到达时刻和办理时间。 2. **读取输入**:读取客户总人数和每个客户的到达时刻及办理时间。 3. **模拟业务办理**: - 维护一个当前时间变量currentTi…

【路径规划】 红嘴蓝鹊优化器:一种用于2D/3D无人机路径规划和工程设计问题的新型元启发式算法

摘要 本文提出了一种新型元启发式算法——红嘴蓝鹊优化器(RBMO),用于解决2D和3D无人机路径规划以及复杂工程设计问题。RBMO灵感来源于红嘴蓝鹊的群体合作行为,包括搜索、追逐、捕猎和食物储藏。该算法通过模拟这些行为&#xff0…

模板:JDBC 连接数据库并实现 CRUD

目录 前期准备: 1. 连接数据库 1.1 第一种 1.2 第二种 2. 增加 3. 修改 4. 删除 5. 查询 5.1 查询某个记录 5.2 查询单列数据 使用时,直接复制再修改一些数据即可; 声明:在对文件/变量命名时,没有做到见名知…

CompletableFuture如何优雅处理异步任务超时!妙就完了

文章目录 1. 主要解决哪些业务痛点?2. 流程分析3. 上代码4. 总结一波 1. 主要解决哪些业务痛点? 小强最近一直没打黑神话悟空,闷闷不乐的,我问咋回事,最近有啥烦心事么? 他不爽的跟我说了当他CompletableFuture进行…

css基础知识笔记

一言: “放任误解就是撒谎。” 文章目录 前言文章有误敬请斧正 不胜感恩!CSS基础教程0.文本样式基础1. CSS选择器2. CSS布局技巧3. 响应式设计4. Emmet语法 总结 前言 写在开始: 今天来看一眼CSS基础知识。 好几天没更新了 先更一篇 文章有…

华为OD机试 - 需要打开多少监控器(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,…

2024年最新网络协议分析器Wireshark抓包详细教程(更新中)

网络协议分析器 Wireshark 安装 Wireshark 是一个功能强大的网络协议分析器,早期叫作 Ethereal。它主要用于捕获网络数据包,并对这些数据包进行详细的解析和分析,帮助用户深入了解网络通信的细节。它支持多种网络协议,并提供详细…

银河麒麟桌面操作系统如何添加WPS字体

银河麒麟桌面操作系统如何添加WPS字体 1、使用场景2、操作方法步骤一:下载字体文件步骤二:打开终端步骤三:进入字体文件所在目录步骤四:拷贝字体文件到WPS字体目录步骤五:更新字体缓存步骤六:重启WPS Offic…

uni-app-通过vue-cli命令行快速上手

环境安装 全局安装 vue-cli npm install -g vue/cli创建uni-app 使用正式版(对应HBuilderX最新正式版) vue create -p dcloudio/uni-preset-vue my-project使用alpha版(对应HBuilderX最新alpha版) vue create -p dcloudio/uni-p…

Linux常用命令;Linux常用软件;Linux权限

一,常用命令 是人向计算机发送指令的语言。 命令的格式: 命令 [选项] [参数] 1、ls 展示当前目录下文件的命令 1、-l 展示详细信息。还有另外一种写法:ll(字母 LL 小写) 2、-S 按照文件大小倒序展示 3、-t…

1952. 三除数

目录 一:题目: 二:代码: 三:结果: 一:题目: 给你一个整数 n 。如果 n 恰好有三个正除数 ,返回 true ;否则,返回 false 。 如果存在整数 k &a…

【软件测试】性能测试-概念篇

目录 🌴什么是性能测试 🌳常见性能测试指标 🚩并发数 🚩吞吐量 🚩吞吐量分类 🏀按照请求分类:TPS和QTS 🏀按照网络数据包划分:KB 🚩响应时间 🚩资源利用率 &am…

SpringBoot启动流程之运行时监听器

SpringBoot启动过程: 上一节我们讨论SpringApplication实例化的过程,也就是上图1-5步骤,本节我们讨论6-9的关键步骤,现在主要讲是run方法里面的过程 /*** 启动方法* param args* return*/public ConfigurableApplicationContext …

基于JAVA+SpringBoot+Vue的景区民宿预约系统

基于JAVASpringBootVue的景区民宿预约系统 前言 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末附源码下载链接🍅 哈…