gym 自定义游戏环境
gym 自定义游戏环境
需要继承gym.Env类,实现reset(self)、step(self, action)函数
import gym
from typing import List, Optional, Tuple, Anyclass ToyEnv(gym.Env):def __init__(self):super(ToyEnv, self).__init__()self.observation_space = gym.spaces.Discrete(n=5) # 定义状态空间为discrete类型 范围0~4self.action_space = gym.spaces.Discrete(n=3) # 定义动作空间为discrete类型 范围0~2self.step_index = 0def reset(self): # 初始化状态,计数器置零self.step_index = 0return self.step_indexdef step(self, action):is_done = self.step_index == 10 # 计数器到10,游戏结束if is_done: # 游戏结束# 返回(s,r,done,info)return self.step_index % self.observation_space.n, \0.0, is_done, {}# 游戏未结束 返回(s_,r,done,info)self.step_index += 1return self.step_index % self.observation_space.n, \float(action), False, {}# 使用
env = ToyEnv()
s = env.reset()
print("env.reset() -> %s" % s)
s = env.step(1)
gym 自定义游戏环境相关推荐
- Gym导入Atari游戏环境报错
由于Gym近期版本的更新,导致程序中 import Atari的游戏环境报错.Gym最新版本 0.21.0 虽然修复了一系列更新后的Bug,但是貌似只支持 Python 3.7及以上版本.于是为了能够 ...
- PettingZoo:多智能体游戏环境库入门
文章目录 概述 游戏环境 安装 PettingZoo 导入包 初始化环境 与环境交互 概述 PettingZoo1 类似于 Gym 的多智能体版本.Gym2是 OpenAI 开发的一个著名的强化学习库 ...
- 人工智能中的rl是什么意思_AI学习如何使用第二部分来创建自定义RL环境并培训代理...
人工智能中的rl是什么意思 From Icarus burning his wings to the Wright brothers soaring through the sky, it took ...
- highway-env自定义高速路环境
highway-env自定义高速路环境 问题描述 highway-env自车(ego vehicle)初始状态(位置,速度)可以根据给出的API进行设置,但周围车辆(other vehicles)初始 ...
- OpenAI Gym 经典控制环境介绍——CartPole(倒立摆)
摘要:OpenAI Gym是一款用于研发和比较强化学习算法的工具包,本文主要介绍Gym仿真环境的功能和工具包的使用方法,并详细介绍其中的经典控制问题中的倒立摆(CartPole-v0/1)问题.最后针 ...
- [环境] OpenAI gym经典控制环境CartPole-v0 介绍
[环境]CartPole-v0 聊一聊我对强化学习的理解 对应的代码请访问我的GitHub:fxyang-bupt(可能你进去之后发现什么都没有,那是因为我注册了新的账号还在整理,这并不影响你先fol ...
- 游戏环境公示及处罚名单9月18日
亲爱的召唤师: 游戏环境与竞技公平一直是英雄联盟对局体验的基石,也是产品一路走来恪守不渝的承诺.这些年来,我们很高兴看到,保持良好游戏行为.维护峡谷环境已经成为越来越多召唤师的共同选择,但另一方面,口 ...
- 魔兽服务器优化,官方:游戏环境优化方案启动 新服务器开放
尊敬的用户: 自从<魔兽世界>正式运营以来,广大玩家都在游戏中结交朋友.体验游戏内容.为了把更好的游戏体验带给大家,我们的"游戏环境优化方案"也随之正式启动,包括了新服 ...
- 传世单机 GM命令 查看所有GM命令 自定义游戏命令
有些人拿到单机,却不知道怎么刷装备,这里告诉你! 打开游戏主引擎界面,点击选项,点击游戏命令,即可看到所有游戏命令.也可以自定义游戏命令.
最新文章
- ADAS处理器集成功能安全单片机MCU
- R语言使用magick包的image_rotate函数、image_flip函数、image_flop函数对图像进行缩放旋转、镜像、翻转(Rotate or mirror the image)
- 解决python发送multipart/form-data请求上传文件的问题
- UVa11402 Ahoy, Pirates!
- 延迟放学,让“996父母”松了口气
- linux的mysql修改用户密码与忘记密码的方法
- python语言能够整合各类程序代码-python语言概述
- 【HDU - 1263】 水果(STL)
- Observable与Observer
- Mysql 的ERROR 1005 (HY000): Can't create table 'xxx' (errno: 150)
- Qos限速、流量监管、流量整形原理和实验(华为设备)
- 【力扣】735. 行星碰撞
- 创蓝253云通讯短信平台变量说明
- TI毫米波雷达开发常见问题总结
- itchat给指定联系人发消息
- 案件被终本后,失信被执行人会从黑名单中移除吗?
- 每日词根——sol(完整可靠安慰,太阳严肃)
- 认证管理(锐捷交换篇)
- JZOJ4883. 【NOIP2016提高A组集训第12场11.10】灵知的太阳信仰 2017.10(B组)
- 【夏目鬼鬼分享】SpringBoot2.0整合mybatis
热门文章
- 容器安装java_用容器重新定义 Java 虚拟化部署
- 用计算机打出惊雷这首,惊雷表情包图片-惊雷表情包图片动图大全高清免费分享 v1.0预约_手机乐园...
- [I T]越便宜越好? 小米、AK47与盛大你该选谁2
- 学会自己测天气之 起卦篇
- paddle 图标注_服装设计 | 上色款式图!(40款成衣vs款式图绘制)
- C语言阶段性总结(一)
- 网络另类生意闷声挣钱 一人经营几十万个网站
- 地图 显示 动态轨迹_【对讲机的那点事】你了解公网对讲机的地图调度功能吗?...
- android 9华为p20,LineageOS ROM 彻底放弃安卓 9 Pie,华为P20 Pro/小米5s等24款手机不再更新...
- Android Studio怎样连接夜神模拟器