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

强化学习入门:Gym实现CartPole随机智能体

前言

 最近想开一个关于强化学习专栏,因为DeepSeek-R1很火,但本人对于LLM连门都没入。因此,只是记录一些类似的读书笔记,内容不深,大多数只是一些概念的东西,数学公式也不会太多,还望读者多多指教。本次阅读书籍为:马克西姆的《深度强化学习实践》
 限于篇幅原因,请读者首先看下历史文章:
 马尔科夫过程
 马尔科夫奖励过程
 马尔科夫奖励过程二
 RL框架Gym简介
 本篇继续介绍:openai的RL开源框架Gym。在介绍之前,先来玩一个经典游戏。

1、CartPole游戏介绍

在这里插入图片描述
 如下图所示:CartPole游戏就是平衡木游戏:游戏中,智能体需要控制左或者右动作来维持平衡,当然,这个环境的观察是4个浮点数,包含了木棒质点的x坐标、速度、与平台的角度以及角速度的信息。
 由于目前还没有学习到RL算法,因此,本文首先借助Gym实现一个随机智能体。

2、代码

import gymif __name__ == "__main__":env = gym.make("CartPole-v0")total_reward = 0.0total_steps = 0obs = env.reset()while True:action = env.action_space.sample()obs, reward, done, _ = env.step(action)total_reward += rewardtotal_steps += 1if done:breakprint("Episode done in %d steps, total reward %.2f" % (total_steps, total_reward))

 这个代码是一个随机的智能体,即没有任何的学习策略,每次都是随机选择向左或者向右移动。同时每次调用env.step会返回当前的观察、奖励以及游戏是否结束(木棍倒了)。之后在累加奖励和步长。如果游戏结束,则跳出循环。
 可以看出,这个智能体是没有任务策略,而且也没有用到观察、以及奖励作为反馈。如果你运行代码:大概得到以下结果:
在这里插入图片描述
 从上述结果可以看出:当执行到13步时候游戏结束,且最终返回的总奖励为13。当然这个结果很差,但这只是个随机智能体版本,后续会借助RL算法来不断优化性能,使其坚持的步骤更多。

总结

 本篇只是用gym实现了一个简单的CartPole智能体,无须担心,后面博客会介绍用其余RL算法来逐渐改进这个智能体。

http://www.dtcms.com/a/233071.html

相关文章:

  • 基于正点原子阿波罗F429开发板的LWIP应用(5)——TFTP在线升级功能
  • 算法题(162):火烧赤壁
  • 看板中“进行中”任务过多如何优化
  • 【数据结构】树形结构--二叉树(二)
  • 梯度下降:机器学习优化的核心算法
  • 互联网大厂Java求职面试:AI与大模型技术在企业知识库中的深度应用
  • Oracle-高频业务表的性能检查
  • 【技术笔记】AI Agent 项目 SUNA 部署:MSYS2 环境中 Python 版本从 3.12 降级至 3.11 的实操指南
  • React 第五十三节 Router中 useRouteError 的使用详解和案例分析
  • 70年使用权的IntelliJ IDEA Ultimate安装教程
  • [论文阅读] 人工智能+项目管理 | 当 PMBOK 遇见 AI:传统项目管理框架的破局之路
  • Git 安装全攻略Linux、macOS、Windows 与源码编译
  • 电子行业AI赋能软件开发经典案例——某金融软件公司
  • Authpf(OpenBSD)认证防火墙到ssh连接到SSH端口转发技术栈 与渗透网络安全的关联 (RED Team Technique )
  • 总结HTML中的文本标签
  • 智能标志桩图像监测装置如何守护地下电缆安全
  • Unity 单例模式完全指南
  • SQL Server 2025 预览版新功能
  • 大疆相关知识收集
  • 命名管道实现本地通信
  • Python环境搭建竞赛技术文章大纲
  • Mysql莫名奇妙重启
  • 【Java】RxJava解析
  • 学习STC51单片机28(芯片为STC89C52RCRC)
  • 深入浅出玩转物联网时间同步:基于BC260Y的NTP实验与嵌入式仿真教学革命
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: TTask创建多线程, 更简单, 更快捷.
  • 5.Declare_Query_Checking.ipynb
  • 以光量子为例,详解量子获取方式
  • 【Redis】笔记|第9节|Redis Stack扩展功能
  • 《图解技术体系》How Redis Architecture Evolves?