MADRL怎么搭建?CentOS下多智能体强化学习实验环境搭建【
多智能体强化学习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”改为
imagefrom 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对此,你有什么看法呢?如果你在操作过程中遇到了什么问题,或有什么想法和建议,在留言区留下你的足迹吧,与大家一起交流,一起进步~