基于大模型的 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