基于大模型的Agent,已经成为了大型的博弈游戏的高级玩家,而且玩的还是德州扑克、21点这种非完美信息博弈。
来自浙江大学、中科院软件所等机构的研究人员提出了新的Agent进化策略,从而打造了一款会玩德州扑克的“狡猾”智能体Agent-Pro。
通过不断优化自我构建的世界模型和行为策略,Agent-Pro掌握了虚张声势、主动放弃等人类高阶游戏策略。
Agent-Pro以大模型为基座,通过自我优化的Prompt来建模游戏世界模型和行为策略。
相比传统的Agent框架,Agent-Pro能够变通地应对复杂的动态的环境,而不是仅专注于特定任务。
而且,Agent-Pro还可以通过与环境互动来优化自己的行为,从而更好地达成人类设定的目标。
同时作者还指出,在竞争、公司谈判和安全等现实世界中遇到的情景,大多可以抽象为multi-agent博弈任务,而Agent-Pro通过对这类情境的研究,为解决众多现实世界的问题提供了有效策略。
那么,Agent-Pro在博弈游戏中的表现究竟如何呢?
在研究中,作者使用了“21点”和“有限注德州扑克”这两款游戏对Agent进行了评估。
首先简要介绍下两个博弈游戏的基本规则。
在“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),他们的手牌和公共牌如下图所示:
在当前游戏状态(Current game state)下,Agent-Pro分析得出Self-Belief、World-Belief和最终的Action,并随着游戏状态的变化,不断更新Belief,根据自身和对手的情况,做出灵活合理的选择。
统计数据上看,21点游戏中,在使用GPT、Llama等多种大模型的情况下,Agent-Pro的表现都显著超过了原始模型和其他参与对比的Agents框架。
在更为复杂的德州扑克游戏中,Agent-Pro不仅超过了原始大模型,还击败了DMC等训练后的强化学习Agent。
那么,Agent-Pro是如何学习和进化的呢?
Agent-Pro包括“基于信念的决策”“策略层面的反思”和“世界模型和行为策略优化”这三个组件。
Agent-Pro根据环境信息,首先形成Self-Belief和World-Belief,然后基于这些Belief做出决策(Action)。
在后续环境交互中,Agent-Pro动态更新Belief,进而使做出的Action适应环境的变化。
例如,德州扑克游戏中:
与人类一样,Agent-Pro 会从历史经验、历史认知和历史结果中进行反思和优化。它自主调整自己的Belief,寻找有用的提示指令,并将其整合到新的策略Policy中。
首先,Agent-Pro以文字的形式设计了一个对任务世界的建模以及对行为准则的描述, 他们一起被当做Policy:
其次,为了更新World Modeling和Behavioral Guideline,Agent-Pro设计了一个Policy-level Reflection过程。
与Action-level Reflection不同,在Policy-level的反思中,Agent-Pro被引导去关注内在和外在信念是否对齐最终结果,更重要的是,反思背后的世界模型是否准确,行为准则是否合理,而非针对单个Action。
例如,德州扑克游戏中Policy-level的反思是这样的:
在Policy-level Reflection之上,面对动态的环境,Agent-Pro还采用了深度优先搜索(DFS)和策略评估,来持续优化世界模型和行为准则,从而找到更优的策略。
策略评估是指Agent-Pro 在新的采样的轨迹中对新Policy进行更全面的评估,从而考察新策略的泛化能力。例如,德州扑克游戏中,新采样多条游戏轨迹。
通过交换玩家位置或手牌,来消除由于运气带来的随机因素,从而更全面评估新策略的能力。
而DFS搜索则在新策略不能在新的场景中带来预期的改进(策略评估)时使用,按照DFS搜索策略,从其他候选策略中寻找更优的策略。
论文地址:
https://arxiv.org/abs/2402.17574
Github:
https://github.com/zwq2018/Agent-Pro
【开源免费】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
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0