Ubuntu22.04系统安装DeepMind Lab
相关资料:
DeepMind Lab的一些python例子—————(Ubuntu22.04系统安装DeepMind Lab)后续
===================================================
2022年10月7日更新
虽然使用自编译的python环境可以成功安装并运行deepmind lab,但是后期要安装TensorFlow-Gpu等组件,却异常的困难,为彻底解决anaconda下不能安装并运行deepmind lab的问题,给出具体方法:
Ubuntu系统anaconda报错version `GLIBCXX_3.4.30' not found
通过上面的对stdc++库的修正成功在anaconda环境下安装并运行deepmind lab,因此实现了在anaconda创建的python环境下成功安装deepmind_lab和TensorFlow-gpu等组件。
===================================================
2022年10月6日更新
根据尝试,发现只要把系统的依赖软件安装好,即使是使用anaconda创建的python环境依然可以成功编译DeepMind Lab,并且安装python扩展库,而且anaconda创建的python环境从3.7版本到3.10版本均可以成功编译DeepMind Lab并安装python扩展库。
不过使用anaconda创建的python安装好Deepmind Lab扩展库后运行,报错:
这么看来,安装DeepMind Lab的python环境还是需要从python源码重新编译python(如下面的介绍的步骤),不过可以编译python3.10版本的。
测试代码:
import deepmind_lab
import numpy as np # Create a new environment object.
lab = deepmind_lab.Lab("demos/extra_entities", ['RGB_INTERLEAVED'],
{'fps': '30', 'width': '80', 'height': '60'})
lab.reset(seed=1) # Execute 100 walk-forward steps and sum the returned rewards from each step.
print(sum([lab.step(np.array([0,0,0,1,0,0,0], dtype=np.intc)) for i in range(0, 100)]))
========================================
说明:
DeepMind Lab的推出时间为2016年,而且已经多年没有维护更新了,但是使用这个仿真环境的Reinforcement Learning的研究还在继续,这就导致很多researcher需要继续使用,但是又没有很好的办法来安装这个仿真环境,毕竟谁也不太想为了安装这个仿真环境而去把自己的Ubuntu22.04系统换成Ubuntu14.04或者Ubuntu16.04系统,因此如何在Ubuntu22.04系统上安装DeepMind Lab这个仿真环境成了一个难题。本文就是接受如何在Ubuntu22.04系统上成功安装DeepMind Lab仿真环境。
================================================
1. CMAKE的安装:
https://www.cnblogs.com/devilmaycry812839668/p/14943981.html
2. bazel的安装:
https://www.cnblogs.com/devilmaycry812839668/p/16282270.html
安装好bazel后需要对.bazelrc文件进行配置,具体见:
bazel编译报错:absl/base/policy_checks.h:79:2: error: #error "C++ versions less than C++14 are not supported."
3. python3.7的源码安装:
https://www.cnblogs.com/devilmaycry812839668/p/16281134.html
需要注意的是与上面教程中不同,我们需要checkout的版本为3.7。(因为DeepMind Lab只支持python3.5,python3.6,python3.7,考虑尽可能高的python版本,因此选择python3.7)
具体的版本检出命令为:
git checkout 3.7
至于为什么不使用anaconda创建python环境呢,参见:
为python编译C++模块时一定要注意的事情—————不要在anaconda环境下使用cmake来编译C++扩展模块!!!
4. 安装python的依赖库
pip install numpy
pip install wheel
5. 安装系统环境依赖
sudo apt-get install libffi-dev gettext freeglut3-dev libsdl2-dev zip libosmesa6-dev
============================================
6. DeepMind Lab源码编译
下载源码:
git clone https://github.com/deepmind/lab
编译并运行例子:
cd lab
bazel run :python_random_agent --define graphics=sdl -- --length=10000 --width=640 --height=480
可以成功运行,证明依赖环境安装成功。
其他运行例子见:https://github.com/deepmind/lab
=================================================
7. DeepMind Lab的python的扩展库的编译和安装
(python扩展库的安装参考:https://github.com/deepmind/lab/blob/master/python/pip_package/README.md)
目标是最终在python中可以成功调用:
import deepmind_lab
需要注意,在之前配置python3.7环境时需要将pip默认路径设置为编译好的 python3.7/bin/pip3 。
安装依赖的python模块:
pip install dm-env
为python3版本编译可安装的wheel文件,具体操作:
编译:
bazel build -c opt --python_version=PY3 //python/pip_package:build_pip_package
打包编译好的文件为wheel格式:
./bazel-bin/python/pip_package/build_pip_package /tmp/dmlab_pkg
查看wheel文件是否成功导出:
安装编译好的wheel文件:
pip install /tmp/dmlab_pkg/deepmind_lab-1.0-py3-none-any.whl
查看deepmind_lab模块是否安装成功:
=============================================
Ubuntu22.04系统安装DeepMind Lab的更多相关文章
- 64位ubuntu16.04系统安装网易云音乐
64位ubuntu16.04系统安装网易云音乐 1.官网下载安装包:netease-cloud-music_1.1.0_amd64_ubuntu.deb https://music.163.com/# ...
- 常用增强学习实验环境 I (MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2) (转载)
原文地址:http://blog.csdn.net/jinzhuojun/article/details/77144590 和其它的机器学习方向一样,强化学习(Reinforcement Learni ...
- Ubuntu下常用强化学习实验环境搭建(MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)
http://lib.csdn.net/article/aimachinelearning/68113 原文地址:http://blog.csdn.net/jinzhuojun/article/det ...
- Ubuntu22.04 安装配置流水账
前两天为了测一个CH340的bug, 装了三遍20.04. bug解决完, 心想反正也要重新装各种软件, 不如直接装22.04吧. 把涉及的安装记录一下方便将来参考. 制作启动U盘 在Ubuntu网站 ...
- Ubuntu22.04 安装配置VNC Server
如果转载, 请注明出处 https://www.cnblogs.com/milton/p/16730512.html Ubuntu22.40下VNC和远程桌面的区别 使用远程桌面时, 用户必须在hos ...
- 带有pwn环境的Ubuntu22.04快速安装
pwn环境ubuntu22.04快速安装(有克隆vmk) ubuntu更新到了22.04版本,经过本人测试后非常的好(ma)用(fan),该版本和mac很相像,而且用起来也比较丝滑,只不过配置上稍微有 ...
- ubuntu22.04安装 kubernetes(docker)
初始化检查 操作系统:ubuntu22.04 LTS docker:20.10.18 kubelet: v1.23.6 kubeadm:v1.23.6 kubectl: v1.23.6 1.校准时间: ...
- Ubuntu22.04 KubeSphere 安装K8S集群
Ubuntu22.04 KubeSphere 安装K8S集群_Ri0n的博客-CSDN博客 一.系统环境系统:Ubuntu 22.04集群IP分布hostname 角色 IP地址master mast ...
- ubuntu18.04系统安装及php7.2,apache2,mysql8,git,svn,composer,vs code 到安装 php 扩展配置php.ini 实现 laravel5.8 运行
简介:记录自己从系统安装到环境配置完毕运行laravel的记录 • 下载ubuntu18.04桌面版 ○ ubuntu18.04中国官网 https://cn.ubuntu.com ...
- 64位ubuntu16.04系统安装tensorflow_cpu
ubuntu16.04安装tensorflow_cpu 一.安装anaconda: ①.下载anaconda包:Anaconda3-5.2.0-Linux-x86_64.sh 这是python3.6. ...
随机推荐
- 前端使用 Konva 实现可视化设计器(15)- 自定义连接点、连接优化
前面,本示例实现了折线连接线,简述了实现的思路和原理,也已知了一些缺陷.本章将处理一些缺陷的同时,实现支持连接点的自定义,一个节点可以定义多个连接点,最终可以满足类似图元接线的效果. 请大家动动小手, ...
- insert into 表名 set
insert into 表名 set CREATE TABLE `tbl_str` ( `id` INT DEFAULT NULL, `Str` VARCHAR(30) DEFAULT NULL ) ...
- LocalDateTime日期格式化和指定日期的时分秒
LocalDateTime日期格式化和指定日期的时分秒 package com.example.core.mydemo.date; import java.time.LocalDate; import ...
- C++操作符重载(operator)
c++操作符 例如-=+*/等,甚至包括,<<等都是操作符.c++特色之一就是给予完全重构和重载操作符(Java不可以,c#操作部分). 例子入手 假设一个结构体,定义如下 struct ...
- FFmpeg开发笔记(三十一)使用RTMP Streamer开启APP直播推流
RTMP Streamer是一个安卓手机端的开源RTMP直播推流框架,可用于RTMP直播和RTSP直播,其升级版还支持SRT直播(腾讯视频云就采用SRT协议).RTMP Streamer支持的视频编 ...
- 带有ttl的Lru在Rust中的实现及源码解析
TTL是Time To Live的缩写,通常意味着元素的生存时间是多长. 应用场景 数据库:在redis中我们最常见的就是缓存我们的数据元素,但是我们又不想其保留太长的时间,因为数据时间越长污染的可能 ...
- .NET Core 中生成验证码
在开发中,有时候生成验证码的场景目前还是存在的,本篇演示不依赖第三方组件,生成随机验证码图片. 先添加验证码接口 public interface ICaptcha { /// <summary ...
- 11-CSS定位
01 CSS定位概念理解 01 标准流布局概念的理解 02 position属性 02 相对定位 依然在标准流中 应用场景: 在不影响其它元素的情况下,对当前元素进行微调 <!DOCTYPE h ...
- DotNetGuide专栏C#/.NET/.NET Core充电站(让你学习不迷路)
DotNetGuide简介 记录.收集和总结C#/.NET/.NET Core基础知识.学习路线.开发实战.编程技巧练习.学习视频.文章.书籍.项目框架.社区组织.开发必备工具.常见面试题.面试须知. ...
- MyBatis-Plus 整理
# 前言 代码生成器插件选择去这里:https://www.cnblogs.com/zixq/p/16726534.html 相关插件在那里面已经提到了 # 上手 MyBatis-Plus 是一个 M ...