本文为个人学习笔记,方便个人查阅观看
原文链接
利用OPenAI gym建立自己的强化学习探索环境:
首先,先定义一个简单的RL任务:
文章图片
如图所示:初始状态下的环境,机器人在左上角出发,去寻找右下角的电池,静态障碍:分别在10、19位置,动态障碍:有飞机和轮船,箭头表示它们可以移动到的位置,会随时间改变而改变。
这里假设:它们的移动速度和机器人一样。飞机会沿着当前列上下来回移动,轮船则只在当前位置到左边两格的范围来回移动。移动范围:如箭头所示。
假设每个训练episode中,机器人在每一个step都有四个方向选择,碰到障碍物或者step超过了20步则终止该次训练。
一、安装gym
这部分不单独介绍,官网有详细步骤(简洁版及完整版)
[OPenAI gym官网]
二、进入gym文件夹
文章图片
主要是这三个地方
- 首先打开初始化文件__init___
在classic下加入这一段
文章图片
register(
id='MyEnvrobt-v0',
entry_point='gym.envs.classic_control:MyEnvrobt',
max_episode_steps=200,
reward_threshold=195.0,
)
- 在\gym\envs\classic_control中建立myenv文件夹
文章图片
可以将\gym\envs中的registration文件复制放入\gym\envs\classic_controlmyenv文件夹中,并更名为MyEnvrob.py
文章图片
文章图片
- 打开myenvrobt.py文件
首先将class myenv改为 class MyEnvrobt
文章图片
后续 def函数就可以根据你所需要去定义环境的动作空间、状态空间、奖励、折扣等等
- 返回上一层\envs\classic_control, 打开__init__.py初始化文件,并加入
文章图片
文章图片
from gym.envs.classic_control.myenv.myenvrobt import MyEnvrobt
这样就完成啦
- 测试环境
import gym
import time
env = gym.make('MyEnvrobt-v0')
env.reset()
env.render()
time.sleep(10)
env.close()
文章图片
加入Q-learning后的简单测试:
文章图片
完整代码及链接请看:
【笔记|RL强化学习笔记(OpenAI gym建立自己的探索环境)】源码
推荐阅读
- Datawhale吃瓜教程|第27期 Datawhale 组队学习 吃瓜教程——西瓜书+南瓜书第三章 / 周志华《机器学习》
- 深度学习|深度学习中的优化标准(交叉熵与均方误差)
- K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
- Python|python opencv透视变换矫正文档
- #|图像去噪论文综述(更新中...)
- 算法|PyTorch 之 Checkpoint 机制解析
- 人工智能|一文详解YOLOX算法实现血细胞检测
- R语言入门课|R语言使用<-操作符创建新的变量、使用两个数据列通过加和创建新的数据列(sum variables to make new featurs in dataframe)
- 数据科学从0到1|pandas使用query函数基于组合索引筛选dataframe的数据行(与and、或or、非not)