【mujoco】Ubuntu20.04配置mujoco210

news2024/11/17 10:03:56

【mujoco】Ubuntu20.04配置mujoco210

文章目录

  • 【mujoco】Ubuntu20.04配置mujoco210
    • 1. 安装mujoco210
    • 2. 安装mujoco-py
    • 3.使用render时报错
    • Reference

本文简要介绍一下如何在ubuntu20.04系统中配置mujoco210,用于强化学习。

1. 安装mujoco210

在官方资源里找到https://github.com/google-deepmind/mujoco/releases/tag/2.1.0

Image

进行下载,然后找到下载的路径进行解压

cd 你的存放路径
tar -xvf ./mujoco210-linux-x86_64.tar.gz 
sudo mkdir ~/.mujoco			#在主目录下创建.mujoco
mv ./mujoco210 ~/.mujoco 		#将mujoco210放置在~/.mujoco中

然后配置环境变量

sudo gedit ~/.bashrc

.bashrc中末尾添加下面两行

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/sjh/.mujoco/mujoco210/bin		

注意这里的路径问题,请修改为自己的用户名/home/你的用户名/...

source ~/.bashrc

然后就可以测试一下

cd ~/.mujoco/mujoco210/bin
./simulate ../model/humanoid.xml

若出现如下的结果则表明配置没有问题

Image

2. 安装mujoco-py

首先下载mujoco-py 源码 https://github.com/openai/mujoco-py

git clone https://github.com/openai/mujoco-py.git

然后将mujoco-py安装到自己的虚拟环境中,为了演示方便我这里创建一个新的虚拟环境mujo

conda create mujo python=3.8
conda activate mujo

然后安装mujoco-py

cd 你下载mujo的路径
pip3 install -U 'mujoco-py<2.2,>=2.1'
pip3 install -r requirements.txt
pip3 install -r requirements.dev.txt
python3 setup.py install

然后配置环境变量

sudo gedit ~/.bashrc

添加

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/nvidia 

测试是否安装成功

import mujoco_py
import os
mj_path = mujoco_py.utils.discover_mujoco()
xml_path = os.path.join(mj_path, 'model', 'humanoid.xml')
model = mujoco_py.load_model_from_path(xml_path)
sim = mujoco_py.MjSim(model)

print(sim.data.qpos)
# [0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

sim.step()
print(sim.data.qpos)
# [-2.09531783e-19  2.72130735e-05  6.14480786e-22 -3.45474715e-06
#   7.42993721e-06 -1.40711141e-04 -3.04253586e-04 -2.07559344e-04
#   8.50646247e-05 -3.45474715e-06  7.42993721e-06 -1.40711141e-04
#  -3.04253586e-04 -2.07559344e-04 -8.50646247e-05  1.11317030e-04
#  -7.03465386e-05 -2.22862221e-05 -1.11317030e-04  7.03465386e-05
#  -2.22862221e-05]

如果输出如下,则安装成功

Iamge

3.使用render时报错

报错如下

ERROR: GLEW initalization error: Missing GL version

我们需要再次编辑环境变量

sudo gedit ~/.bashrc

加入

export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libGLEW.so

即可解决问题,运行示例代码如下

import gym

# 创建 HalfCheetah 环境
env = gym.make('HalfCheetah-v3')

# 查看状态空间和动作空间的维度
print("状态空间维度:", env.observation_space.shape)
print("动作空间维度:", env.action_space.shape)

# 初始化环境
observation = env.reset()

# 运行环境并查看结果
for _ in range(1000):  # 你可以根据需要设置运行的步数
    env.render()  # 可视化环境
    action = env.action_space.sample()  # 随机采样动作,实际中需要用你的智能体来生成动作
    observation, reward, done, _ = env.step(action)

    if done:
        observation = env.reset()  # 如果达到终止条件,重新初始化环境

env.close()  # 关闭环境窗口
Iamge

Reference

Ubuntu20.04安装mujoco
RL环境配置:ERROR: GLEW initalization error: Missing GL version

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1211414.html

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

相关文章

真空的应用

真空对人类主要的贡献有两点&#xff1a;对基础研究来说&#xff0c;提供了最清洁和最少受外界干扰的实验环境&#xff1b;对工业生产来说&#xff0c;则可以制造性能最优越、甚至自然界前所未有的材料。随着真空技术在航空航天和军工、光伏发电以及半导体等领域的应用&#xf…

zabbix的agent的安装部署

zabbix的agent的部署 主机ipagent-1192.168.10.129 zabbix官网部署教程 但是不全&#xff0c;建议搭配这篇文章一起看 下面有教程 zabbix服务端配置 修改主机名 hostnamectl set-hostname agent-1 exit配置zabbix的yum源 [rootagent-1 ~]# rpm -Uvh https://repo.zabbix…

Qt DragDrop拖动与放置

本文章从属于 Qt实验室-CSDN博客系列 拖放操作包括两个动作&#xff1a;拖动(drag)和放下(drop或称为放置)。 拖动允许 对于要拖出的窗口或控件&#xff0c;要setDragEnabled(true) 对于要拖入的窗口或控件&#xff0c;要setAcceptDrops(true) 下面以一个具体的用例进行说…

Git的基本操作以及原理介绍

文章目录 基本操作创建git仓库配置name和email .git目录的结构git add & git commit.git目录结构的变化 git追踪管理的数据git的版本回退回退的原理回退的三种情况 版本库中文件的删除git分支管理分支的删除合并分支时的冲突分支的合并模式分支策略git stash不要在master分…

jQuery Ajax前后端数据交互

ajax是用来做前后端交互的&#xff0c;前端使用ajax去去发送一个请求&#xff0c;后端给其响应拿到数据&#xff0c;前端做些展示。 浏览器访问网站一个页面时&#xff0c; Web 服务器处理完后会以消息体方式返回浏览器&#xff0c;浏览器自动解析 HTML 内容。如果局部有新数…

【git】远程远程仓库命令操作详解

这篇文章主要是针对git的命令行操作进行讲解&#xff0c;工具操作的基础也是命令行&#xff0c;如果基本命令操作都不理解&#xff0c;就算是会工具操作&#xff0c;真正遇到问题还是一脸懵逼 如果需要查看本地仓库的详细操作可以看我上篇文件 【git】git本地仓库命令操作详解…

我记不住的那些命令(不断更新中)

fzf 一种进行模糊查找的命令行工具 主页&#xff1a;https://github.com/junegunn/fzf 我的主机是 Kali&#xff0c;通过apt进行安装fzf&#xff0c;并进行配置。 # apt install fzf # apt show fzf 通过参考/usr/share/doc/fzf/README.Debian来进行快速配置快捷键和自动补…

隐私计算系列MOOC第二期 强势回归!隐语联合产学研“专家天团”,共同打造全景知识地图

近年来&#xff0c;我国数据要素市场规模保持高速增长&#xff0c;随着《数据安全法》、《个人信息保护法》、《数据二十条》等相关政策相继出台&#xff0c;对隐私数据安全提出了新的要求。作为数据要素流通的实践探索者与隐私计算技术的布道者&#xff0c;隐语希望凝聚学术界…

香港:考虑将虚拟资产列为投资移民资产

11 月 13日消息&#xff0c;香港政府在重新启动投资移民计划后&#xff0c;正考虑将持牌虚拟资产交易平台的比特币等虚拟资产列为可接受的投资项目。这一措施旨在折大投资移民的资产范围&#xff0c;以吸引更多高净值人士在香港落户。尽管有声音呼吁将房地产投资纳入资格范围&a…

arf_1解题

arf_1解题 镜像环境 version: 3.2services:web:image: registry.cn-hangzhou.aliyuncs.com/n1book/web-file-read-1:latestports:- 80:80新建yml文件将代码保存在当前位置 使用docker-compost up -d 拉取镜像 解题 访问该镜像映射端口为1520 可以看到页面只有一个holle但…

足底筋膜炎怎么治疗治愈

足底筋膜炎又称为跖筋膜炎&#xff0c;跖筋膜主要在足弓下方&#xff0c;它维持足弓稳定性&#xff0c;对于喜欢长期长跑、跳远&#xff0c;或者越野运动&#xff0c;或者部队中的士兵进行拉练&#xff0c;还有需要久坐或者久站的人群中&#xff0c;容易发生跖筋膜炎。治疗方法…

企业传统纸质设备维修方式的痛点以及解决方案

传统的纸质设备维修方式有很多痛点&#xff1a; 数据更新和访问的低效率&#xff1a;传统的纸质记录方法在更新和检索数据时效率极低。这种方式无法实时更新设备的维修状态&#xff0c;导致管理层和维修人员无法及时获取最新信息&#xff0c;影响决策的速度和质量。 记录的易…

别试错了,是该关注一下软件内在质量了

太多这种例子了&#xff0c;老板们早上出的新想法&#xff0c;恨不得第二天就能上线。。每个互联网公司都试图突破固定领地&#xff0c;不断地尝试新的业务&#xff0c;一旦发现不行&#xff0c;就立刻砍掉&#xff0c;名曰“试错”。 研发部门&#xff0c;为了应对压力&#…

Umeyama 算法之源码阅读与测试

Title: Umeyama 算法之源码阅读与测试 文章目录 前言I. Eigen 中 Umeyama 算法源码1. Eigen/src/Geometry/Umeyama.h 源码2. 代码测试 II. PCL 中 Umeyama 算法源码III. evo 中 Umeyama 算法源码1. evo/core/geometry.py 源码2. 代码测试 总结参考文献 [相关博文介绍] - 矩阵乘…

【邻接矩阵】

文章目录 邻接矩阵 图的逻辑结构&#xff1a;多对多。 图没有顺序存储结构&#xff0c;但可以借助二维数组来表示元素间的关系。 数组表示法&#xff08;邻接矩阵&#xff09;。 多重链表&#xff1a;邻接表&#xff0c;邻接多重表&#xff0c;十字链表。 邻接矩阵&#xff08;…

自己写的一个BMP转PNG工具BMP2PNG

写这个工具是因为要使用传奇的部分素材在COCOS2DX使用&#xff0c; 但是COCOS2DX不支持BMP 如果直接将BMP转换到PNG的话&#xff0c;网上找到的工具都不支持透明色转换。难道要用PS一个一个抠图吗&#xff1f;要累死 所以写了这个工具。一些古老的游戏比如 千年 传奇 都是BMP…

太可怕啦!我在网上发了个贴,就被GPT-4推断出了个人隐私!GPT-4化身福尔摩斯

最近 GPT-4 被人发现了具有“福尔摩斯”一样的能力&#xff01; 可以仅仅通过帖子内容来推测出用户的隐私&#xff01; 瑞士苏黎世联邦理工学院的研究人员发现大语言模型可以对用户发在Reddit 帖子进行深度分析&#xff0c;并成功“猜测”出用户的年龄、地点、性别和收入等个…

JavaScript概述

一、JavaScript简介&#xff1a; JavaScript是互联网上流行的脚本语言&#xff0c;可用于HTML和web&#xff0c;可广泛应用于服务器、PC、笔记本、平板电脑和智能手机等设备。 JavaScript是一种轻量级的编程语言&#xff0c;可插入HTML页面的编程代码&#xff0c;插入HTML页面后…

vue中一个页面引入多个相同组件重复请求的问题?

⚠️&#xff01;&#xff01;&#xff01;此内容需要了解一下内容&#xff01;&#xff01;&#xff01; 1、会使用promise&#xff1f;&#xff1f;&#xff1f; 2、 promise跟 async 的区别&#xff1f;&#xff1f;&#xff1f; async 会终止后面的执行&#xff0c;后续…