新闻详情

新闻详情

首页 / 资讯中心 / 详情

第 3 课:第一个 MuJoCo Agent——Random Agent

发布时间:2026/9/26 8:15:58来源:尧图网络
第 3 课:第一个 MuJoCo Agent——Random Agent
一、本节目标本节仍然不训练算法。目标是把上一节的环境测试整理成完整的 Agent–Environment Loop。对应代码lesson01/01_random_agent.py完成后应能解释Random Agent 的 Policy 是什么Observation 和 Action 的实际类型与 shapereset()和step()返回的数据怎样流动为什么“Agent 能行动”不等于“Agent 在学习”。二、先看完整代码import gymnasium as gym env gym.make( InvertedPendulum-v5, render_modehuman ) observation, info env.reset() print(初始 observation:) print(observation) print(\nobservation space:) print(env.observation_space) print(\naction space:) print(env.action_space) for step in range(1000): action env.action_space.sample() observation, reward, terminated, truncated, info env.step(action) print( fstep{step}, faction{action}, freward{reward} ) if terminated or truncated: print(Episode finished!) observation, info env.reset() env.close()运行cd lesson01 python3 01_random_agent.py三、什么是 Random Agent代码中决定动作的是action env.action_space.sample()因此它的 Policy 是每一步都从合法 Action space 随机采样。它确实有选择动作的方法所以可以说它有一个随机 Policy但是它没有根据经验更新任何参数因此不会学习。四、逐行理解重要代码1.observation, info env.reset()这行使用 Python 的“序列解包”右侧返回两个对象左侧使用两个变量接收。当前环境的一次初始输出可能类似[-0.003, 0.008, 0.001, -0.005]它是 NumPy arrayshape (4,) dtype float64四个元素的准确物理意义应以环境文档为准。当前学习重点是理解Agent 每一步接收一个长度为 4 的连续数值向量。2. 打印 Observation spaceprint(env.observation_space)实测形式是Box(-inf, inf, (4,), float64)逐项解释Box连续数值空间-inf, inf各维没有有限上下界(4,)shape 为一维长度 4float64元素类型。3. 打印 Action spaceprint(env.action_space)该环境的形式是Box(-3.0, 3.0, (1,), float32)Action 是一个 shape 为(1,)的数组而不是离散整数0/1/2。例如action [1.42]4. f-stringfstep{step}, action{action}, reward{reward}字符串前面的f表示 f-string。花括号中的变量会被替换成当前值。如果step3、action[1.2]打印结果会包含step3, action[1.2]5. 为什么需要 resetif terminated or truncated: observation, info env.reset()episode 已结束后旧 episode 的状态不应继续使用。reset()返回下一局的初始 Observation。五、一次循环的数据流假设当前 Observation 为o_to_t ↓ 随机 Policyaction_space.sample() ↓ a_t ↓ env.step(a_t) ↓ o_(t1), r_t, terminated, truncated, info变量覆盖需要特别注意observation, reward, terminated, truncated, info env.step(action)执行后变量observation不再保存旧 Observation而是保存新的 Observation。六、运行现象怎样回到理论Random Agent 往往很快失去平衡因为动作与当前 Observation 没有合理关系。这说明有 Agent–Environment Loop ≠ 有学习 ≠ 能解决任务当前程序只证明环境能够接收 Action环境能够返回 Observation 和 Rewardepisode 结束后能够重新开始。七、建议实验实验 1打印 shape在 reset 后增加print(observation.shape , observation.shape)在采样动作后增加print(action.shape , action.shape)观察(4,)和(1,)的区别。实验 2缩短运行把range(1000)改成range(20)确认这只改变总步数。八、常见错误把 Action space 当成离散动作该 MuJoCo 环境使用连续BoxAction不能直接照搬后续SimpleMoveEnv的0/1/2动作。把 Random Agent 叫作训练算法它有 Policy但没有更新过程所以不是学习算法。把总循环 step 当作 episode step外层step从 0 数到 999中间 reset 后它不会重新变成 0。九、本节复盘Observation shape(4,) Action shape(1,) Policy随机采样合法动作 学习没有 episode 结束reset真正的强化学习算法会替换“随机选择动作”这一部分但算法必须和环境的动作空间匹配。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

DeepSeek R1-Lite-Preview 推理模型实测:用 TaoToken 统一 Key 跑通 OpenAI o1 对比配置 2026/9/26 9:53:14

DeepSeek R1-Lite-Preview 推理模型实测:用 TaoToken 统一 Key 跑通 OpenAI o1 对比配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
MCP 完整学习指南与 Spring AI 实战:从零搭建可复用的 MCP 服务端 2026/9/26 9:53:14

MCP 完整学习指南与 Spring AI 实战:从零搭建可复用的 MCP 服务端

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Windows 64位下MySQL 5.7安装全指南:下载、配置、排错一步到位 2026/9/26 9:53:14

Windows 64位下MySQL 5.7安装全指南:下载、配置、排错一步到位

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
STM32入门到实战:选型、开发环境与核心外设详解 2026/9/26 9:53:14

STM32入门到实战:选型、开发环境与核心外设详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Warp+MJWarp:用GPU并行重构MuJoCo物理仿真范式 2026/9/26 9:53:08

Warp+MJWarp:用GPU并行重构MuJoCo物理仿真范式

1. 项目概述:这不是“跑个仿真”那么简单,而是重构机器人训练的底层范式 你有没有试过在 MuJoCo 里训一个四足机器人?从单环境起步,调参数、看曲线、等收敛——一小时过去,agent 还在原地打转。再加个随机初始化、多个…

阅读更多 →
Atlas 300V部署YOLO全流程解析:推理卡选型与性能调优 2026/9/26 9:53:08

Atlas 300V部署YOLO全流程解析:推理卡选型与性能调优

搞AI推理这么久,只要提到Atlas,总有朋友问一句:这玩意儿到底是什么定位,能跑YOLO吗?那卡是不是真能当训练卡用?今天就把这几件事一次说清楚。我自己从Atlas 200 DK一路裸板玩到Atlas 300I,再到现…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉