深度学习科研实验

MADRL怎么搭建?CentOS下多智能体强化学习实验环境搭建【

2021-06-13  本文已影响0人  IT小叮当
image

多智能体强化学习MADRL的搭建

心之所愿,无所不成。

Nothing is impossible for a willing heart.

image

一、下载

进入MADRL的Github官网

https://github.com/sisl/MADR

界面如下

image

创建虚拟环境

su root
conda create -n MARL

进入创建好的虚拟环境

source activate MARL

检查python版本建议在3.8及以下,因为3.9目前不支持一些库

python
image

开始安装多智能体强化学习环境

git clone --recursive git@github.com:sisl/MADRL.git
image

当网络不好时,链接时间会超时,出现以下情况

image

解决方法:

现通过windows直接通过网址页面,点击下载按钮,下载到本地

image

再上传到服务器

image

解压后,进入文件夹

image

二、安装

打开终端,从这里进入创建好的虚拟环境

image

输入命令

source activate MARL
image

运行测试

python3 runners/run_multiwalker.py rllab

出现报错

ModuleNotFoundError: No module named 'rltools.util'
image

安装对应模块

pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com rltools

发现仍然不行,查看Requirements发现,MADRL还需要OpenAI Gym和rllab这两大库。

image

安装OpenAI Gym, 进入网址

https://github.com/openai/gym
image

开始安装

git clone https://github.com/openai/gym.git

点击右侧code进行下载

image

将其传到服务器上后,进入对应 文件夹 并进行测试

cd rllab-master

出现错误

 from joblib.pool import MemmapingPoolImportError: cannot import name 'MemmapingPool' from 'joblib.pool' (/home/lab214/anaconda3/lib/python3.8/site-packages/joblib/pool.py)
image

找到rllab-master/rllab/sampler/stateful_pool.py

image

找到后,将MemmapingPool替换为MemmappingPool

image

修改后继续运行,又出现错误

ModuleNotFoundError: No module named 'pyprind'
image

安装pyprind

pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com pyprind

继续运行,发现没有theano

image

安装theano

pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com theano

继续运行,发现出现错误

ImportError: cannot import name 'Num' from '_ast' (unknown location)

定位出错位置

image

定位文件位置

rllab-master/rllab/optimizers/conjugate_gradient_optimizer.py"

将“_ast”改为ast

image

继续报错

ModuleNotFoundError: No module named 'cached_property'

定位文件位置

rllab-master/rllab/envs/base.py

将“from cached_property import cached_property”改为

image
from functools import cached_property

如下图

image

出现错误

cannot import name 'logger' from 'gym.wrappers.monitoring
image

定位文件位置 rllab/envs/gym_env.py

进行修改看到是个try语句,先不做处理,继续运行

发现出现错误

 ModuleNotFoundError: No module named 'lasagne
image

安装lasagne

pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com lasagne

出现错误

cannot import name 'downsample' from 'theano.tensor.signal
image

定位文件位置

home/lab214/anaconda3/lib/python3.8/site-packages/lasagne/layers/pool.py

修改语句

image

将downsample替换为pool_2d发现仍然报错

image

更换版本

 pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com theano==0.8.2
image

安装完成后,再次运行

又开始报错

AttributeError: 'EnvSpec' object has no attribute 'tags'

创建新环境

conda create -n marlo python==3.6

进入新环境

source activate marlo

安装malmo

pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com malmo

python -c 参数表示在命令行中调用python代码 -c 就是command的意思

使用Anaconda安装

conda create python=3.6 --name marlo
image

稍等片刻后,便可成功安装!

image image

对此,你有什么看法呢?如果你在操作过程中遇到了什么问题,或有什么想法和建议,在留言区留下你的足迹吧,与大家一起交流,一起进步~

上一篇下一篇

猜你喜欢

热点阅读