ubuntu16.4配置Deepmind_lab环境

Deepmind Lab官方教程https://github.com/deepmind/lab

1、安装Bazel
官方介绍https://docs.bazel.build/versions/master/install-ubuntu.html
(1)安装所需要的包

sudo apt install g++ unzip zip

安装JDK

sudo apt-get install openjdk-8-jdk

(2)运行安装程序

  • 下载bazel--installer-linux-x86_64.sh
  • 修改读写权限 chmod +x bazel-<version>-installer-linux-x86_64.sh
  • 安装./bazel-<version>-installer-linux-x86_64.sh --user

(3)设置环境

vi  ~/.bashrc

在最后添加export PATH="$PATH:$HOME/bin"(如果已自动添加则省略)
(4)测试
在这里插入图片描述
bazel安装成功

2、安装DeepMind Lab的依赖项

sudo apt-get install libffi-dev gettext freeglut3-dev libsdl2-dev zip libosmesa6-dev python-dev python-numpy python-pil python3-dev python3-numpy python3-pil

3、下载DeepMind Lab
https://github.com/deepmind/lab

4、配置python.BUILD,否则运行gcc可能报错

  • 查看python位置
import numpy as np
print(np.get_include())

在这里插入图片描述

  • 将 lab/bazel 文件夹下的python.BUILD内容全部替换
cc_library(
    name = "python",
    hdrs = select(
        {
            "@bazel_tools//tools/python:PY2": glob([
                "include/python2.7/*.h",
                "lib64/python2.7/site-packages/numpy/core/include/**/*.h",
            ]),
            "@bazel_tools//tools/python:PY3": glob([
                "include/python3.6m/*.h",
                "lib64/python3.6/site-packages/numpy/core/include/**/*.h",
            ]),
        },
        no_match_error = "Internal error, Python version should be one of PY2 or PY3",
    ),
    includes = select(
        {
            "@bazel_tools//tools/python:PY2": [
                "include/python2.7",
                "lib64/python2.7/site-packages/numpy/core/include",
            ],
            "@bazel_tools//tools/python:PY3": [
                "include/python3.6m",
                "lib64/python3.6/site-packages/numpy/core/include",
            ],
        },
        no_match_error = "Internal error, Python version should be one of PY2 or PY3",
    ),
    visibility = ["//visibility:public"],
)

注意如果第一步中查询的python位置lib后边没有64,则把上述代码中的64删去

  • 修改 lab文件夹下WORKSPACE文件内容
    在这里插入图片描述
    将此处路径修改为第一步查询的python的路径/lib前的内容

我的python2和python3路径不一样,在test的时候路径会出问题,我就直接把python2的删了,我的python.BUILD内容是

cc_library(
    name = "python",
    hdrs = glob([
                "include/python3.6m/*.h",
                "lib/python3.6/site-packages/numpy/core/include/**/*.h",
            ]),
    includes = [
                "include/python3.6m",
                "lib/python3.6/site-packages/numpy/core/include",
            ],
    visibility = ["//visibility:public"],
)

5、建立DeepMind Lab,随机运行

# Build the Python interface to DeepMind Lab
lab$ bazel build -c opt //:deepmind_lab.so

在这里插入图片描述

# Build and run the tests for it
lab$ bazel test -c opt //python/tests:python_module_test

在这里插入图片描述

# Run a random agent
lab$ bazel run -c opt //:python_random_agent

在这里插入图片描述
6、测试迷宫游戏的例子

bazel run :python_random_agent --define graphics=sdl -- \
               --length=10000 --width=640 --height=480

在这里插入图片描述
(我也不知道为啥是反的。。。)

人工输入控制测试游戏

bazel run :game -- --level_script=tests/empty_room_test --level_setting=logToStdErr=true

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值