当前位置: 首页 > news >正文

[Ubuntu20] Gym入门,Mujoco

OpenAI Gym是 OpenAI 出的研究强化学习算法的 toolkit,对于强化学习算法来说,大部分的论文环境都已经被 OpenAI 的 gym 环境集成,我们可以很便利的使用该工程来测试自己的强化学习算法,与他人的算法做一个对比。

Gym 官网

Github:https://github.com/openai/gym

官网:http://gym.openai.com/

安装方式

pip install gym

Gym 使用介绍

创建一个 gym 环境:

env = gym.make("CartPole-v1")

获取所有可用环境:

gym.envs.registry.all()

 创建环境后,必须用 reset() 初始化,返回第一个观察值,观察值取决于环境的类型。

obs = env.reset()

 环境可能采取的行动: env.action_space,每个环境都带有 action_space 和 observation_space 对象。这些属性是 Space 类型,描述格式化的有效的行动和观察。

step() 执行给定动作并返回四个值

  • obs: 新观察
  • reward: 无论做什么,每一步获得 1.0 奖励,因此目标是使小车尽可能长时间运行
  • done: 整个回合结束时,此值为 True,之后必须重置环境
  • info: 环境特定的字典,提供额外的信息
obs, reward, done, info = env.step(env.action_space.sample())

使用完环境后,调用 close() 释放资源。

env.close()

import timeimport gym"""
1. 环境(environment)
2. 智能体agent(算法)
agent发送action至environment,environment返回观察和回报。
"""def main():"""用 make() 创建一个 gym 中的现成环境"""env = gym.make("CartPole-v1")obs, reward, done, info = env.reset()print("obs: {}".format(obs))print("reward: {}".format(reward))print("done: {}".format(done))print("info: {}".format(info))print("action_space: {}".format(env.action_space))print("observation_space: {}".format(env.observation_space))print("observation_space.high: {}".format(env.observation_space.high))print("observation_space.low: {}".format(env.observation_space.low))# 刷新当前环境,并显示for _ in range(1000):env.render()obs, reward, done, info = env.step(env.action_space.sample())if done:breaktime.sleep(0.1)env.close()if __name__ == "__main__":main()

http://www.lryc.cn/news/493303.html

相关文章:

  • Linux(ubuntu)系统的一些基本操作和命令(持续更新)
  • 【NLP高频面题 - 分布式训练】ZeRO1、ZeRO2、ZeRO3分别做了哪些优化?
  • android 安全sdk相关
  • NVR监测软件EasyNVR多个NVR同时管理:录播主机的5条常见问题与解决办法
  • Z2400027基于Java+SpringBoot+Mysql+thymeleaf引擎的图书馆管理系统的设计与实现 代码 论文
  • 完美解决Docker pull时报错:https://registry-1.docker.io/v2/
  • A051-基于Spring Boot的网络海鲜市场系统的设计与实现
  • 【组件】前端ElementUi 下拉Tree树形组件 带模糊搜索自动展开高亮功能 树结构 封装为组件使用
  • Blender 运行python脚本
  • 递归:求fib数列的第n项,前几项是1,1,2,3,5,每一项都等于前面两项的和:JAVA
  • 三分钟快速掌握——Linux【vim】的使用及操作方法
  • Wrapper包装类
  • MySQL高级(六):全局锁、表锁和行锁
  • 【CLIP】3: semantic-text2image-search允许局域网访问
  • FPGA实现GTP光口视频转USB3.0传输,基于FT601+Aurora 8b/10b编解码架构,提供3套工程源码和技术支持
  • docker搭建nginx
  • Java 17的新特性及其对现代Java开发的影响
  • 【Flink】快速理解 FlinkCDC 2.0 原理
  • 使用R的数据包快速获取、调用各种地理数据
  • scrapy豆瓣爬虫增强-批量随机请求头
  • 基于华为昇腾910B,实战InternLM个人小助手认知微调
  • Electron文件写入、读取(作用:公共全局变量,本地存储)
  • 水体分割检测 包含YOLOV,COCO,VOC三种标记的数据集包含 857张图片
  • Harbor安装、HTTPS配置、修改端口后不可访问?
  • 正定矩阵(Positive Definite Matrix)的定义与性质
  • React与Ant Design入门指南
  • MAC卸载Vmware Fusion后无法再安装解决方案
  • 单点登录深入详解之技术方案总结
  • 数据库(MySQL黑马)
  • HTML5+JavaScript实现消消乐游戏