PettingZoo 学习

前言:继上上周和上周对TorchRL和BenchMARL的学习之后,基本了解相关库的实际操作;

本周开启MARL环境PettingZoo的学习,该环境库类似SARL下的Gym;

对于MARL,该库给了两种形式:AEC和Parallel;

AEC API

AEC是默认的形式,并且该库提供了两种转换的包装器Wrappers;

用法:

实例化;

reset;

Loop:

这里的区别就是需要last来获得输出,而parallel直接在step就实现了输出;

这是因为AEC本身就是串行的

动作掩码

动作掩码 (Action Mask) 的作用正是为了在回合制或复杂规则游戏中处理非法动作:

  1. 表示合法性: 动作掩码是一个布尔数组或向量,它标识了在当前状态下,哪些动作是有效的(合法的),哪些是无效的(非法的)。

  2. 限制采样空间: 通过将这个掩码作为参数传递给动作空间的 sample() 方法,环境或策略可以确保随机采样(或策略选择)只会从 合法的动作集合 中进行。

  3. 最终结果: 这种机制保证了智能体不会选择非法动作,这是在国际象棋这类复杂规则环境中进行有效策略学习的必要条件。

这部分体现了pettingZoo的设计理念

就是引入了虚拟自然

Parallel API 并行 API

相关推荐
辰海Coding8 小时前
MiniSpring框架学习笔记-解决循环依赖的简化IoC容器
笔记·学习
晓梦林8 小时前
cp520靶场学习笔记
android·笔记·学习
心中有国也有家9 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”
经验分享·笔记·学习·算法
Upsy-Daisy10 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
LuminousCPP11 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
魔法阵维护师11 小时前
从零开发游戏需要学习的c#模块,第十四章(保存和加载)
学习·游戏·c#
_李小白12 小时前
【android opencv学习笔记】Day 17: 目标追踪(MeanShift)
android·opencv·学习
一只机电自动化菜鸟12 小时前
一建机电备考笔记(40) 建筑机电施工—排水管道施工(含考频+题型)
经验分享·笔记·学习·职场和发展·课程设计
2301_8187305612 小时前
numpy的学习(笔记)
学习·numpy
GHL28427109013 小时前
Logon failed, use ctrl+c to cancel basic credential prompt
学习·prompt