# 热门搜索 #
搜索
浙大&中科院让Agent学会自我进化,玩德州扑克心机尽显
2555点击    2024-03-12 18:13

基于大模型的Agent,已经成为了大型的博弈游戏的高级玩家,而且玩的还是德州扑克、21点这种非完美信息博弈。


来自浙江大学、中科院软件所等机构的研究人员提出了新的Agent进化策略,从而打造了一款会玩德州扑克的“狡猾”智能体Agent-Pro。


通过不断优化自我构建的世界模型和行为策略,Agent-Pro掌握了虚张声势、主动放弃等人类高阶游戏策略。



Agent-Pro以大模型为基座,通过自我优化的Prompt来建模游戏世界模型和行为策略。


相比传统的Agent框架,Agent-Pro能够变通地应对复杂的动态的环境,而不是仅专注于特定任务。


而且,Agent-Pro还可以通过与环境互动来优化自己的行为,从而更好地达成人类设定的目标。



同时作者还指出,在竞争、公司谈判和安全等现实世界中遇到的情景,大多可以抽象为multi-agent博弈任务,而Agent-Pro通过对这类情境的研究,为解决众多现实世界的问题提供了有效策略。


那么,Agent-Pro在博弈游戏中的表现究竟如何呢?


进化出游戏世界模型


在研究中,作者使用了“21点”和“有限注德州扑克”这两款游戏对Agent进行了评估。


首先简要介绍下两个博弈游戏的基本规则。


21点


  • 游戏中包含一个庄家和至少一名玩家。
  • 玩家可以看到自己的两张手牌, 以及庄家的一张明牌,庄家还隐藏了一张暗牌。玩家需要决定是继续要牌(Hit)还是停牌(Stand)。
  • 游戏的目标是在总点数不超过21点的前提下,尽量使总点数超过庄家。


有限注德州扑克


  • 游戏开始阶段为Preflop阶段,每位玩家将获得两张只属于自己且对其他玩家保密的私牌(Hand)。
  • 随后,会有五张公共牌面(Public Cards)依次发出:首先翻牌(Flop)3 张,其次转牌(Turn)1张,最后是河牌(River)1张。
  • 玩家有四种选择:弃牌(fold)、过牌(check)、跟注(call)或加注(raise)。
  • 目标是利用自己的两张Hand和五张Public Cards任意组合,尽可能构造出最佳的五张扑克牌组合。


在“21点”当中,同样是使用GPT-4作为基础模型,Agent-Pro的表现超过了ReAct框架。


在手牌相同的情况下,二者的表现如下图所示。



Agent-Pro通过分析得出自我信念(Self-Belief)和对外部世界的信念(World-Belief),正确认识到自己的手牌已接近21点,合理的选择了停牌。


而ReAct则未能及时停牌,导致最终爆牌,输掉了游戏。


从游戏中能够看出Agent-Pro更好的理解了游戏的规则,并给出了合理的选择。


接下来再看看在德州扑克中Agent-Pro的表现。


一次牌局中,参赛选手分别是训练后的DQN、DMC策略,原生GPT3.5和Agent-Pro(基于GPT-4),他们的手牌和公共牌如下图所示:



S、H、C、D分别代表黑桃、红桃、梅花、方块


在当前游戏状态(Current game state)下,Agent-Pro分析得出Self-Belief、World-Belief和最终的Action,并随着游戏状态的变化,不断更新Belief,根据自身和对手的情况,做出灵活合理的选择。



相同牌局同一位置的Baseline(原始大模型)结果为-13


统计数据上看,21点游戏中,在使用GPT、Llama等多种大模型的情况下,Agent-Pro的表现都显著超过了原始模型和其他参与对比的Agents框架。



在更为复杂的德州扑克游戏中,Agent-Pro不仅超过了原始大模型,还击败了DMC等训练后的强化学习Agent。



那么,Agent-Pro是如何学习和进化的呢?


三管齐下提高Agent表现


Agent-Pro包括“基于信念的决策”“策略层面的反思”和“世界模型和行为策略优化”这三个组件。


基于信念的决策(Belief-aware Decision-making)


Agent-Pro根据环境信息,首先形成Self-Belief和World-Belief,然后基于这些Belief做出决策(Action)。


在后续环境交互中,Agent-Pro动态更新Belief,进而使做出的Action适应环境的变化。



例如,德州扑克游戏中:


  • 环境信息可包括手牌(Private State)、公共牌(Public State)、行动轨迹(Trajectory)等;

  • Agent-Pro对手牌(State)、出牌计划(Plan)及潜在风险(Risk)的预估等信息构成了它的Self-Belief;

  • 而Agent-Pro对对手(Opponent)、环境(Environment)和规则(Rule)的理解则构成了它的World-Belief;

  • 这些Belief在每一个决策周期中都会被更新,从而影响下个周期中Action的产生

策略层面的反思(Policy-Level Reflection)


与人类一样,Agent-Pro 会从历史经验、历史认知和历史结果中进行反思和优化。它自主调整自己的Belief,寻找有用的提示指令,并将其整合到新的策略Policy中。



首先,Agent-Pro以文字的形式设计了一个对任务世界的建模以及对行为准则的描述, 他们一起被当做Policy:


  • World Modeling:任务世界的建模,例如对游戏环境的理解、对手们的风格分析、环境中其他Agent的策略估计等;

  • Behavioral Guideline:行为准则的描述,例如对游戏目标的认识、自己策略规划、未来可能面临的风险等

其次,为了更新World Modeling和Behavioral Guideline,Agent-Pro设计了一个Policy-level Reflection过程。


与Action-level Reflection不同,在Policy-level的反思中,Agent-Pro被引导去关注内在和外在信念是否对齐最终结果,更重要的是,反思背后的世界模型是否准确,行为准则是否合理,而非针对单个Action。


例如,德州扑克游戏中Policy-level的反思是这样的:


  • 在当前世界模型和行为准则(World Modeling & Behavioral Guideline)的指导下,Agent-Pro观察到外部状态,然后生成Self-Belief和World-Belief,最后做出Action。但如果Belief不准确,则可能导致不合逻辑的行动和最终结果的失败;

  • Agent-Pro根据每一次的游戏来审视Belief的合理性,并反思导致最终失败的原因(Correct,Consistent,Rationality…);

  • 然后,Agent-Pro将反思和对自身及外部世界的分析整理,生成新的行为准则Behavioral Guideline和世界建模World Modeling;

  • 基于新生成的Policy(World Modeling & Behavioral Guideline),Agent-Pro重复进行相同游戏,来进行策略验证。如果最终分数有所提高,则将更新后的World Modeling & Behavioral Guideline和保留在提示中。

世界模型和行为准则的优化(World Modeling & Behavioral Guideline Evolution)


在Policy-level Reflection之上,面对动态的环境,Agent-Pro还采用了深度优先搜索(DFS)策略评估,来持续优化世界模型和行为准则,从而找到更优的策略。



策略评估是指Agent-Pro 在新的采样的轨迹中对新Policy进行更全面的评估,从而考察新策略的泛化能力。例如,德州扑克游戏中,新采样多条游戏轨迹。


通过交换玩家位置或手牌,来消除由于运气带来的随机因素,从而更全面评估新策略的能力。


而DFS搜索则在新策略不能在新的场景中带来预期的改进(策略评估)时使用,按照DFS搜索策略,从其他候选策略中寻找更优的策略。


论文地址:

https://arxiv.org/abs/2402.17574


Github:

https://github.com/zwq2018/Agent-Pro


文章来自于 微信公众号“量子位”(ID: QbitAI),作者 “Wenqi Zhang”


AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

2
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0