【笔记】强化学习,gym的命令行图形化界面适配

搞了一大堆还是搞不出来放弃了

最后用matplotlib画出来看

bash 复制代码
import gym
import matplotlib.pyplot as plt
from IPython import display
import numpy as np
%matplotlib inline

env = gym.make('CartPole-v1', render_mode="rgb_array")
observation = env.reset()
a = 0
for _ in range(100):
    img = env.render()
    if img is not None:
        if _ % 10 ==0: # 加速动画
            if isinstance(img, list):
                img = img[0]
            img = np.array(img)
            img = img.squeeze()
            plt.imshow(img)
            display.display(plt.gcf())
            display.clear_output(wait=True)
    
    action = env.action_space.sample()
    
    step_result = env.step(action)

env.close()

适配环境命令失败记录

下载的依赖

bash 复制代码
apt-get install libgl1-mesa-dri libgl1-mesa-glx libegl1-mesa libgles2-mesa libxrandr2 libxinerama1 libxcursor1 libegl-mesa0 
apt-get install xserver-xorg-video-nouveau
apt-get install mesa-utils mesa-utils-extra
apt-get install xserver-xorg
apt-get install locales
dpkg-reconfigure locales
# 选择 en_US.UTF-8 UTF-8
dpkg-reconfigure mesa-utils
apt-get install xvfb xorg xauth 
apt-get install python3-opengl

更改的文件

bash 复制代码
mkdir -p /usr/lib/dri
ln -s /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so /usr/lib/dri/nouveau_dri.so
mv /root/anaconda3/envs/agent/lib/libstdc++.so.6 /root/anaconda3/envs/agent/lib/libstdc++.so.6.backup
ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /root/anaconda3/envs/agent/lib/

设置的环境变量

bash 复制代码
export LIBGL_ALWAYS_SOFTWARE=1
export LIBGL_ALWAYS_SOFTWARE=true
Xvfb :99 &
export DISPLAY=:0

有谁最后搞出来了求教

相关推荐
航Hang*4 分钟前
第七章:综合布线技术 —— 设备间子系统的设计与施工
网络·笔记·学习·期末·复习
航Hang*22 分钟前
第六章:综合布线技术 —— 干线子系统的设计与施工
网络·笔记·学习·期末·复习
不吃茄子啦27 分钟前
天干地支对应五行与赤马红羊
笔记
d111111111d31 分钟前
STM32 HAL库定时器PWM输出全攻略:从零到精准控制
笔记·stm32·单片机·嵌入式硬件·学习
三块可乐两块冰34 分钟前
【第二十六周】机器学习笔记二十五
人工智能·笔记·机器学习
扑火的小飞蛾38 分钟前
【macOS】n8n 安装配置笔记
笔记·macos
hssfscv40 分钟前
Javaweb学习笔记——JDBC和Mybatis
笔记·学习·mybatis
羊小猪~~44 分钟前
数据库学习笔记(十八)--事务
数据库·笔记·后端·sql·学习·mysql
W|J1 小时前
ES 学习笔记
笔记·学习·elasticsearch
张人玉1 小时前
西门子 S7 PLC 通信 WPF 应用分析笔记
笔记·c#·wpf·plc