ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

实验记录完全指南:ma-gym Monitor 包装器的统计、视频与多智能体日志用法

实验记录完全指南:ma-gym Monitor 包装器的统计、视频与多智能体日志用法 实验记录完全指南ma-gym Monitor 包装器的统计、视频与多智能体日志用法【免费下载链接】ma-gymA collection of multi agent environments based on OpenAI gym.项目地址: https://gitcode.com/gh_mirrors/ma/ma-gym 本文带你完整掌握ma-gym Monitor 包装器的用法它为基于 OpenAI Gym 的多智能体环境提供训练统计记录、视频录制和多智能体日志三大能力。无论你在调试 Checkers、Switch 还是 TrafficJunction几行代码就能让每次实验都留下可回放的黑匣子。 Monitor 是什么多智能体版的实验记录仪ma-gym 是 OpenAI Gym 的多智能体环境扩展库内置了 Checkers、Combat、PredatorPrey、PongDuel、Switch、Lumberjacks、TrafficJunction 等经典博弈环境。而 Monitor 就是对标官方gym.wrappers.Monitor的多智能体版本继承自 Gym 原生的 Monitor见 ma_gym/wrappers/monitor.py自动读取环境的n_agents属性适配多智能体每回合结束时把总奖励和是否全体结束写入统计文件可选按回合录制视频并生成 manifest 清单文件方便后续批量分析。 快速上手3 步开启实验记录第 1 步安装环境库pip install ma-gym第 2 步创建环境并套上 Monitor指定一个专用记录目录import gym from ma_gym.wrappers import Monitor env gym.make(ma_gym:Switch2-v0) env Monitor(env, directoryrecordings/Switch2, forceTrue)第 3 步按常规多智能体循环交互即可统计会自动落盘obs_n env.reset() done_n [False for _ in range(env.n_agents)] while not all(done_n): obs_n, reward_n, done_n, info env.step(env.action_space.sample()) env.close()项目里已附带两个可直接运行的示例脚本值得先跑一遍随机智能体记录示例examples/random_agent.py交互式手动操作记录示例examples/interactive_agent.py 训练统计每回合都留下数据痕迹ma-gym 的 StatsRecorder 对原生统计记录器做了关键的多智能体改造——在after_step中把多智能体的奖励求和、把结束标志取全体allsuper().after_step(observation, sum(reward), all(done), info)这意味着只要所有智能体都结束本回合的统计数据初始观测、总奖励、步数等才会被写入目录下的openaigym.episode_batch.id.uid文件。训练结束后你可以用 Gym 自带的可视化脚本分析这些 batch 文件画出奖励曲线、步数趋势判断你的策略是否在进步。 视频录制video_callable 参数速查表Monitor 的_start方法支持精细控制录像时机参数说明见 monitor.py参数作用推荐场景video_callableNone默认按完全立方数回合录像1, 8, 27…超过 1000 后每 1000 回合录一次长时训练自动抽样video_callableFalse完全关闭录像纯统计记录节省磁盘video_callable自定义函数传入lambda ep: ep % 100 0之类函数自定义录像频率只在关键时刻录像内置的两个调度函数分别在 capped_cubic_video_schedule 与 disable_videos 中实现逻辑一目了然。 多智能体记录的 3 个注意点目录要唯一如果记录目录里已存在旧的openaigym.manifest.*文件Monitor 会直接报错见 detect_training_manifests。每个训练实验建议用独立目录。forcevsresumeforceTrue会清空目录里所有openaigym.前缀的旧文件resumeTrue则保留旧数据并与新数据合并适合断点续训。write_upon_reset置为True后每次reset都会刷新 manifest 文件。由于 manifest 是 JSON 格式、写入有开销长时间训练建议保持默认的False。 额外技巧一行命令生成环境 GIF除了 Monitor 的视频项目还提供了一个轻量 GIF 录屏脚本 scripts/record_environment.py随机跑完一整局并输出 GIFpython scripts/record_environment.py --env Checkers-v0 --frames 100 --fps 21生成的 GIF 默认保存在static/gif/目录可以直接贴进实验报告或 README直观展示你的多智能体环境。✅ 常见问题速查Q记录文件都去了哪里A全部落在你传入的directory目录下openaigym.episode_batch.*是回合统计openaigym.video.*.mp4是录像openaigym.manifest.*是清单索引。QMonitor 会影响性能吗A统计记录开销极小主要开销来自视频编码建议用video_callable控制频率而非全程录像。Q能用于ma_CartPole-v0这类单智能体环境吗A可以。ma_前缀环境见 ma_gym/init.py同样带n_agents属性Monitor 完全兼容非常适合新手调试。掌握 Monitor 之后你的每一次多智能体实验都将是可统计、可回放、可追溯的——这正是严肃研究与快速验证的分水岭。【免费下载链接】ma-gymA collection of multi agent environments based on OpenAI gym.项目地址: https://gitcode.com/gh_mirrors/ma/ma-gym创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表