【强化学习】港中大强化学习课程Assignment解析 01_1
博主最近在学习强化学习与边缘计算相关的知识,以港中大的强化学习课程和Bolei Zhou老师的B站视频为学习资料。注意到港中大强化学习课程中的Assignment还没有同学分享自己的代码答案和思路,所以把自己的解答记录下来,希望能帮助到有需要的朋友,也恳请各位大佬批评指正!
课程相关
- 课程首页:https://cuhkrlcourse.github.io/
- 视频链接:https://space.bilibili.com/511221970/channel/seriesdetail?sid=764099【B站】
- 相关资料:https://datawhalechina.github.io/easy-rl/#/【EasyRL】
- Reinforcement Learning: An Introduction:https://web.stanford.edu/class/psych209/Readings/SuttonBartoIPRLBook2ndEd.pdf
- Github首页(作业获取):https://github.com/cuhkrlcourse/ierg5350-assignment-2021
- Gitee(我的解析):https://gitee.com/cstern-liao/cuhk_rl_assignment
- 喜欢的朋友可以打个星哦
1 热身活动
Gym的基础应用
-
env.step(action)
输入一个动作,依次返回observation(下一步的环境/观测),reward(即时奖励),done(游戏状态),info(额外信息)。done的值表示episode是否已经结束。
-
env.reset()
环境初始化,返回一个初始的observation
-
env.render()
将环境用人类理解的方式展示出来(可视化)
-
env.action_space() env.observation_space()
返回环境的动作集合与观测集合。
-
env.seed(seed)
设置环境的随机种子
FrozenLake8x8-v1 环境
本次作业采用的环境为"FrozenLake8x8-v1"环境。在这个环境中,**智能体(Agent)**需要控制角色在网格中行走,其中一些网格是可以行走的,而有一些是不结实的冰面,角色掉到水中,游戏结束。此外,当角色找到到达终点的路径时会获得奖励。
环境的可视化采用字母矩阵来实现,其中:
- S:起点,安全
- F:冰面,安全
- H:洞,不安全
- G:终点,安全
1.1 创造环境
在这一节中,需要学会:
- 创建环境
- 设置环境的随机种子
- 理解什么是观测空间**(observation space),什么是动作空间(action space)**
# Create the environment
env = gym.make('FrozenLake8x8-v1')
# You need to reset the environment immediately after instantiating env.
env.reset