当前位置:   article > 正文

安装Mujoco、mujoco-py、gym血泪史_mujoco-py安装

mujoco-py安装

Win11 Anaconda3 python3.9

版本:

在这里插入图片描述
在这里插入图片描述

一、Mujoco

https://github.com/deepmind/mujoco/releases?page=2下载mujoco210

在这里插入图片描述

在C:\Users\yonghuming中新建一个名为.mujoco的文件夹,把下载的压缩包解压到其中,命名为mujoco210(必须是这个命名)

检验安装是否成功,打开cmd,在C:\Users\yonghuming>后面添加

cd .mujoco/mujoco210/bin
#回车
simulate ../model/humanoid.xml
  • 1
  • 2
  • 3

看到

在这里插入图片描述

安装成功!

二、Mujoco_py

这是一个类比于numpy的包,安装它真的费个牛劲!!!

github的官方下载网址,下载2.1.2.14版本。解压。

由于我和别人共享一个Anaconda,我建立了自己的environment,我需要的包必须装在我自己的环境里

从win的Anaconda下拉菜单,选择Anaconda Prompt

#可以看到Anaconda里面所有的环境
conda env list
#进入自己的名字为xxx的环境
activate xxx
  • 1
  • 2
  • 3
  • 4
(base) C:\Users\yonghuming>activate xxx

(xxx) C:\Users\26228>python
Python 3.9.17 (main, Jul  5 2023, 20:47:11) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
  • 1
  • 2
  • 3
  • 4
  • 5

这样就进入了自己的环境,之后要装所有包都必须先做这个操作,不然会把别人的环境搞乱

mujoco-py文件夹中有一个setup.py文件,这就是安装需要的文件

#进入mujoco-py文件夹
cd Desktop\mujoco-py
#安装mujoco_py
python setup.py install 
  • 1
  • 2
  • 3
  • 4

安装完毕,将C:\Users\yonghuming\.conda\envs\xxx\Lib\site-packages内的mujoco_py文件夹替换为下载的mujoco_py(这个好像能避免一些问题)

检查

#进入python
python
import mujoco_py
  • 1
  • 2
  • 3

这时报错

ImportError: DLL load failed while importing cymj: The specified module could not be found..

参考https://github.com/openai/mujoco-py/issues/638高赞回答,需要在自己的代码中添加

import os
os.add_dll_directory("C://Users//yonghuming//.mujoco//mujoco210//bin")
import mujoco_py
  • 1
  • 2
  • 3

(尝试了修改mujoco-py\mujoco_py\builder.py,没用,而且建议不修改,可能会出现其他奇怪的问题)

报错

Exception: Please add mujoco library to your PATH:
set PATH=C:\Users\yonghuming\.mujoco\mujoco210\bin %PATH%
  • 1
  • 2

用户变量添加:

PATH 
C:\Users\yonghuming\.mujoco\mujoco210\bin
  • 1
  • 2

系统变量添加:

MUJOCO_PY_MJKEY_PATH 
C:\Users\yonghuming\.mujoco\mujoco210\bin

MUJOCO_PY_MUJOCO_PATH
C:\Users\yonghuming\.mujoco\mujoco210

#在原有基础上增添↓↓↓
Path
C:\Users\yonghuming\.mujoco\mujoco210\bin
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

注意,修改完环境变量一定要重启电脑才能生效!!!

报错

Python ImportError: DLL load failed: %1 不是有效的 Win32 应用程序
下载安装包pywin32

pip install pywin32
  • 1

后来又出现了诸如
distutils.errors.DistutilsFileError:"文件名过长",Cython.Compiler.Errors.CompilerError: .pyx
等错误,无奈找不到解决方法,遂下载了Visual Studio 2017(见https://zhuanlan.zhihu.com/p/383655571)并升级Cython

当天import mujoco_py显示
Import error. Trying to rebuild mujoco_py.
”正在生成代码“,然后卡住

本来pycharm上跑最开始出现了很多乱码,以为还是不行,结果等了一会(摆烂刷手机),自己开始跑起来了!不清楚和下载VS它们有没有关系,因为之前我一看到乱码就立即停止了…

第二天再从Anaconda Prompt试一次,神奇地好了

(base) C:\Users\yonghuming>activate xxx

(xxx) C:\Users\yonghuming>python
Python 3.9.17 (main, Jul  5 2023, 20:47:11) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.add_dll_directory("C://Users//yonghuming//.mujoco//mujoco210//bin")
<AddedDllDirectory('C://Users//yonghuming//.mujoco//mujoco210//bin')>
>>> import mujoco_py
>>>
#如果想退到(xxx) C:\Users\yonghuming>
>>>exit()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

三、安装gym

官网下载(网上有很多链接)
解压→(按安装mujoco_py的方式)cd到文件夹→python setup.py install

报错

AttributeError:‘HumanoidEnv‘ object has no attribute ‘seed’
  • 1

原来是版本不对,正确版本为gym==0.23.1
(网上另一种版本也试过,不成,看来对待版本真的要很仔细)

pip install gym==0.23.1
  • 1

成功!

可以在Anaconda Prompt中输入

conda list
  • 1

查看所有包的版本

目前用了HalfCheetah-v2和Humanoid-v2,没有问题

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/460216
推荐阅读
相关标签
  

闽ICP备14008679号