强化学习--实验一倒立摆

news/2024/11/14 13:39:58/

强化学习


强化学习--实验一倒立摆

  • 强化学习
  • 一、安装库
  • 二、实验代码及解释


一、安装库

首先需要安装pygame与gym,直接在命令窗口中运行如下指令即可

pip install pygame
pip install gym

如果安装不成功,可下载相应的镜像进行安装。

二、实验代码及解释

import gym  # 导入 Gym 的 Python 接口环境包
env = gym.make('CartPole-v0')  # 构建实验环境
env.reset()  # 重置一个回合
for _ in range(1000):env.render()  # 显示图形界面action = env.action_space.sample() # 从动作空间中随机选取一个动作env.step(action) # 用于提交动作,括号内是具体的动作
env.close() # 关闭环境

按链接中代码运行会报如下错误

D:\Users\Administrator\anaconda3\lib\site-packages\gym\envs\registration.py:564: UserWarning: WARN: The environment CartPole-v0 is out of date. You should consider upgrading to version `v1`.logger.warn(

将上述代码中的实验环境由’CartPole-v0’更改为’CartPole-v1’后,该错误消失。

执行这段代码时,机器人会驾驶着小车朝某个方向一直跑,直到不见,这是因为还没开始训练机器人。

Gym 库中的大部分小游戏都可以用一个普通的实数或者向量来表示动作。输出env.action_space.sample()的返回值,能看到输出为 1 或者 0。env.action_space.sample()的含义是,在该游戏的所有动作空间里随机选择一个作为输出。在这个例子中,动作只有两个:0 和 1,一左一右。env.step()方法有4个返回值:observation、reward、done、info 。

observation 是状态信息,是在游戏中观测到的屏幕像素值或者盘面状态描述信息。reward 是奖励值,即动作提交以后能够获得的奖励值。这个奖励值因游戏的不同而不同,但总体原则是,对完成游戏有帮助的动作会获得比较高的奖励值。done 表示游戏是否已经完成,如果完成了,就需要重置游戏并开始一个新的回合。info 是一些比较原始的用于诊断和调试的信息,或许对训练有帮助。不过,OpenAI 在评价我们提交的机器人时,是不允许使用这些信息的。

在每个训练中都要使用的返回值有 observation、reward、done。但 observation 的结构会由于游戏的不同而发生变化。


http://www.ppmy.cn/news/624429.html

相关文章

现代控制理论课程实验三:一阶倒立摆的LQR控制器设计

现代控制理论课程实验三:一阶倒立摆的LQR控制器设计 一、实验目的二、实验设备与软件三、实验原理3.1、被控对象模型及其线性化3.2、时不变线性连续系统的状态反馈控制与线性二次型最优控制LQR3.3、实验平台的基本原理与使用指南 四、实验内容4.1、MATLAB仿真结果4.…

倒立摆的模糊控制实验(基于matlabsimulink仿真)

倒立摆模糊控制仿真系统设计 本文目录 倒立摆模糊控制仿真系统设计实验1 单级倒立摆的PID模糊控制一、被动对象数学描述与特性分析二、模糊控制器的设计步骤与具体参数选择三、控制系统仿真程序的设计步骤与运行结果四、总结与结论 实验2 单级倒立摆的分段模糊控制一、被动对象…

01-ES6中数组新增的扩展

一、扩展运算符的应用 🍔ES6通过扩展元素符…,好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列 参数序列 console.log(...[1,2,3]) // 1 2 3 console.log(1,...[2,3,4],5) // 1 2 3 4 5 [...document.querySelectorAll(div)] /…

HOT19-螺旋矩阵

leetcode原题链接:螺旋矩阵 题目描述 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5]示例…

蚂蚁市场教程:电视安装看B站(哔哩哔哩)TV版

哔哩哔哩,简称B站,现为中国年轻世代高度聚集的文化社区和视频平台,站早期是一个ACG(动画、漫画、游戏)内容创作与分享的视频网站。经过十年多的发展,围绕用户、创作者和内容,构建了一个源源不断…

电视家3.0用U盘自建频道踩坑,最终安装成功

如何把从网上找来的直播源加入到电视家(TV端)的自建频道中? 网上传统方法是:新建channel.txt文件(UTF8格式保存),里面格式为:电视台名称,直播地址; 然后放到U盘的根目录,在电视端…

64码高清电视 android版,爱直播tv版-爱直播v4.7.64 安卓智能电视版__西西安卓tv

爱直播tv版是一款安卓智能盒子上的播放直播应用,让观众体验到免费看电视台的快乐,尽享天伦之乐。 简介: 主要是提供了央视和各省卫视的电视节目,多数为高清节目源,稳定流畅,全面支持遥控器操作,…

阿里云盘tv版 v1.0.6电视版

阿里云盘tv版 v1.0.6电视版 阿里云盘tv版是一款专门为智能电视机用户打造的云盘软件,说起云盘大家第一个想到的肯定是百度云盘吧,毕竟这是我们最常用的云盘,但你不开通会员的话百度云盘的速度就非常非常的慢,这对用户的体验及其的…