题目
超越成果:对LLM游戏推理的透明评估
论文地址:https://arxiv.org/abs/2412.13602
项目地址:https://visual-ai.github.io/gamebot
摘要
大型语言模型 (LLM) 越来越多地部署在需要复杂推理的现实世界应用中。为了跟踪进展,需要强大的基准来评估它们在表面模式识别之外的能力。然而,当前的 LLM 推理基准通常面临诸如可解释性不足、性能饱和或数据污染等挑战。为了应对这些挑战,我们推出了 GAMEBOT,这是一个专为严格透明地评估 LLM 推理能力而设计的游戏竞技场。GAMEBOT 将游戏中的复杂推理分解为预定义的模块化子问题。这种分解使我们能够设计一套思路链 (CoT) 提示,利用领域知识指导 LLM 在选择动作之前解决这些子问题。此外,我们开发了一套基于规则的算法来为这些子问题生成基本事实,从而能够严格验证 LLM 的中间推理步骤。这种方法有助于评估最终行动的质量和底层推理过程的准确性。 GAMEBOT 还通过动态游戏和面对面的 LLM 竞赛自然地减轻了数据污染的风险。我们对 8 款游戏中的 17 个著名 LLM 进行了基准测试,涵盖了各种战略能力和游戏特征。我们的结果表明,即使为 LLM 提供了详细的 CoT 提示,GAMEBOT 仍然具有重大挑战性。项目页面:https://visual-ai.github.io/gamebot
简介
LLM 已在各种任务中展示了卓越的能力,包括翻译、问答和编码(Achiam 等人,2023 年;Reid 等人,2024 年;Anthropic,2024a)。这种蓬勃发展的熟练程度推动了它们的快速发展融入现实世界的人工智能辅助应用,需要有强大的基准来评估它们的推理能力。现有的努力集中在创建超越表面模式识别并深入研究解决问题所需的深刻推理技能的基准。例如,GSM8K(Cobbe 等人,2021 年)和 MATH(Hendrycks 等人,2021 年)针对数学推理,HumanEval(Chen 等人,2021 年)和 MBPP(Austin 等人,2021 年)评估代码生成能力,StrategyQA(Geva 等人,2021 年)专注于多跳推理。
尽管这些既定的基准具有广泛的实用性,但它们面临着两个挑战:性能饱和和数据污染。首先,性能饱和阻碍了区分表现最佳的模型的能力。例如,Qwen2-Math-72B-Instruct 在 GSM8k 上的准确率达到 96.7%,几乎没有进一步改进的空间。其次,这些数据集的静态性质增加了数据污染的风险。由于 LLM 是在大规模网络语料库上进行预训练的,它们可能会无意中遇到并记住这些基准中的测试实例。因此,LLM 可能会获得虚高的绩效分数,从而破坏评估真正推理能力的有效性。
图 1:GAMEBOT 的整体评估框架。该框架包括三个关键组件:(1)多样化的游戏环境;(2)精心策划的 CoT 提示以引出复杂的推理;(3)用于验证中间结果的基于规则的算法。我们还开发了一个可视化模块来跟踪游戏玩法(参见附录 D)。在比赛期间,选定的游戏环境(左)会动态生成当前游戏状态。然后向两个竞争的 LLM 提供 CoT 提示(右),要求它们在选择动作之前利用人类专家知识来回答所有子问题。基于规则的算法随后生成基本事实并验证 LLM 对这些子问题的响应,从而实现严格的性能评估。
最近,战略游戏已成为一个有价值的试验台,为评估 LLM 提供了更具挑战性和动态性的环境,并具有明确的目标。利用这一范式的现有工作(Liu 等人,2023;Huang 等人,2024;Duan 等人,2024b;Chalamalasetti 等人,2023;Chen 等人,2024;Wu 等人,2023)因此可以利用胜率或游戏得分等指标来评估表现。
然而,一个自然而然的问题出现了:LLM 是否真的理解了游戏逻辑和策略,从而赢得了游戏?例如,LLM 可能会提出荒谬的推理,但会选择正确的行动,从而获得意外的胜利。仅仅依赖游戏结果作为表现度量限制了这些基准的可解释性和稳健性。此外,仅评估最终结果(许多个人决策的顶点)会忽略游戏每个步骤中嵌入的丰富信息。因此,对战略环境中的 LLM 能力进行全面评估不仅需要评估最终结果,还需要评估支撑每个动作的中间推理过程。
在本文中,我们介绍了 GAMEBOT(GAME Battle of Tactics),这是评估竞争性游戏环境中 LLM 的基准(如图 1 所示)。我们开发了一整套工具,包括
- 多样化的游戏环境;
- 精心策划的 CoT 提示以引出复杂的推理;
- 用于验证中间结果的基于规则的算法。
我们还开发了一个用于跟踪游戏玩法的可视化模块。GAMEBOT 将复杂的游戏决策分解为模块化子问题,每个子问题解决与决策过程相关的不同因素。我们不依赖通用的“逐步思考”提示(Wei 等人,2022 年;Kojima 等人,2022 年),而是采用融合领域知识的战略引导 CoT 提示,引出明确的中间推理步骤和最终行动。LLM 需要以“[中间思考结果:XXX]”的格式总结每个子问题的答案。这允许根据编程求解器生成的基本事实进行自动验证,从而实现超越胜负率的细粒度分析。通过这种方式,GAMEBOT 提供了宝贵的可解释性,需要真正理解游戏逻辑和策略,才能让 LLM 取得胜利,从而最大限度地减少偶然结果的影响。
为了全面评估LLM,GAMEBOT 包括 8 款游戏,涵盖四个不同的类别:棋盘游戏(例如,奥赛罗、跳棋、井字棋、四子棋)、动作游戏(例如,乒乓球、环绕声)、纸牌游戏(例如,德州扑克)和博弈论场景(例如,谈判 v2)。这些游戏被选中以针对不同的战略能力,并包含不同的游戏特征:零和与非零和;完美信息与不完美信息;回合制与同时移动。这个多样化的集合要求法学硕士展示广泛的认知能力,包括空间推理、战略协作和竞争、数学方程求解、信息提取、风险管理和模式识别。
我们在 GAMEBOT 中通过 20 场面对面比赛评估了 17 个使用 0 次或 1 次推理设置的著名 LLM(例如 GPT、Claude、Gemini、LLaMA、Mistral),每场比赛每个模型总计 340 场比赛。这确保了有效性和足够的游戏状态曝光。结果表明中间步骤评估对结果评估结果具有高度预测性,支持了我们基准的稳健性和可解释性。
总而言之,GAMEBOT 具有以下优势。可解释性:我们的基准不仅对最终决策的质量进行评估,还对中间推理步骤进行评估,为改进 LLM 的训练或推理提供见解。难度:游戏具有足够的挑战性,可以区分表现最佳的模型。即使对于 GPT-4o,中间结果的得分(范围从 0 到 1)也只有 0.52。减轻数据污染:我们不是在预定义的数据集上进行评估,而是在交互式游戏环境中评估 LLM,在这种环境中,可能的游戏状态根据随机性和收到的特定操作跨越很宽的范围。此外,竞争环境确保了多样化的游戏状态曝光。更强的基线:与以前的方法相比,我们精心策划的提示还可以作为更强大的 CoT 基线(Duan et al, 2024b; Chen et al, 2024; Huang et al, 2024)。本研究中提出的提示可以作为未来研究的宝贵 CoT 基线,探索自动提示(Zhang 等人,2022 年)和反思(Shinn 等人,2024 年)等高级提示技术。
GAMEBOT
GAMEBOT 包含八个经过精心挑选的游戏,涵盖各种战略能力和游戏特征(见表 1),允许在不同的推理维度上评估 LLM,例如空间推理、对手建模、风险管理和协作。LLM 的任务是
- 理解游戏规则,
- 释当前游戏状态,
- 提供有效的动作,以及
- 找到制胜策略——因此我们的基准需要复杂的推理能力。
超越结果:中间步骤评估 为了促进对 LLM 推理的细粒度分析,我们将每个游戏中的复杂决策过程分解为 2-3 个逻辑上必不可少的子问题。每个子问题都针对游戏推理要求的特定方面,并有助于最终的动作选择。LLM 的任务是按顺序解决每个子问题,最终采取最终行动。这确保了中间子问题的解决方案能够指导和约束最终决策。为了便于进行严格的分析和评估,我们要求 LLM 通过结构化格式明确表达其对每个子问题的推理结果:“[中间思考结果:XXX]”。这种结构化输出可以直接提取并与自动生成的地面真相进行定量比较。重要的是,每个子问题都被设计为确定性的,从而允许开发基于规则的地面真相生成算法。
表 1:用于评估的 8 款游戏。该基准测试结合了 4 种具有不同属性的游戏类型,以广泛覆盖 LLM 推理技能。为了确保较大的状态空间,我们对 Negotiation(Lewis 等人,2017 年)进行了轻微修改(请参阅附录 B 中的详细信息)。尽管 TicTacToe 的状态空间相对较小,但 LLM 仍然难以在这个看似简单的游戏中表现出色(参见第 3.1.2 节)。“Simul.”是同步的缩写。“Info. Extract”是信息提取的缩写。
我们在这里展示了一个子问题设计的示例。请参阅附录 B 了解完整列表。Surround(蛇形)Surround 是一款双人游戏,玩家控制一条连续移动的线。目标是迫使对手与自己的线、墙壁或对方玩家不断增长的线相撞。它强调空间推理和战略阻挡。为了赢得游戏,LLM 应该规划一条安全的路径,并尝试用墙壁包围对手。子问题设计:1.
- 根据给定的游戏状态,提取 4 个方向上与当前位置相邻的所有值。
- 根据当前位置周围可用的空白空间列出所有可能的移动操作。
- 输出有效操作是否将通向一条至少有 10 个连续空单元格的安全路径,以供未来移动。评估能力:信息提取;空间推理;长期路径规划
图 2:比较仅评估结果(顶部)与评估结果和中间步骤(底部)。仅评估结果(许多个人决策的结果)会忽略游戏每个步骤中嵌入的丰富信息。另一方面,评估结果和中间步骤会利用这些信息,为最终结果提供可解释性。
这种中间步骤评估具有四个主要优势:
- 更细粒度的评估——现有的用于评估游戏场景中的 LLM 的基准(Wu 等人,2023;Duan 等人,2024b;Chen 等人,2024;Liu 等人,2023)通常仅依赖最终游戏结果(例如,赢或输)作为评估指标。然而,一场游戏可能涉及许多步骤,并受到许多偶然事件的影响。LLM 有可能在比赛的大部分时间里表现出合理的游戏玩法,但最终由于一个关键的失误而输掉比赛。因此,仅依赖最终结果会导致不可靠和不稳定的评估,缺乏稳健性。相比之下,我们的框架通过自动验证 LLM 对子问题的答案来评估每一步的推理质量,从而提供可解释性和对整个游戏过程的更全面的评估(参见图 2 中的差异)。
- 可解释性——它提供了一种定量评估中间推理准确性的机制,从而提高了 LLM 在游戏中的最终决策的可解释性。
- 洞察特定的优势和劣势——我们为每个游戏设计的子问题针对特定的认知能力,例如规则理解和遵守战略指令。通过分析 LLM 在每个子问题上的表现,我们可以揭示评估模型在这些目标领域的能力和弱点。
- 增强战略决策——预定义的子问题有助于战略决策过程。通过明确指导 LLM 在做出最终决定之前解决每个子问题,我们鼓励采用更结构化和基于知识的游戏方法。这提高了 LLM 的整体推理能力,如第 3.2 节中的实验结果所示。
竞争中的评估,我们通过动态游戏环境中的直接竞争来评估 LLM,而不是传统的单智能体评估。即使在 LLM 的预训练期间可能会记住某些游戏状态,动态游戏中固有的指数状态空间也可以有效地减轻这种潜在影响。相比之下,采用固定策略对手的单智能体基准测试通常只探索潜在游戏状态的有限子集,这增加了数据污染的脆弱性。我们的竞争框架让 LLM 与自适应对手对抗,迫使它们在更加多样化和不可预测的游戏状态环境中导航。这为它们的推理能力提供了更强大的测试,并减轻了潜在数据污染的影响。
框架与实施,GAMEBOT 提供了一套用于分析 LLM 推理能力的综合套件。该框架首先使用选定的游戏环境建立游戏状态。然后,两个竞争的 LLM 会收到此状态和相应的相同 CoT 提示,指导它们利用人类知识来回答预定义的子问题并采取行动。LLM 对这些子问题提出的解决方案会根据程序生成的基本事实进行自动评估。在收到 LLM 采取的行动后,如果游戏继续,则会生成新的游戏状态。对于游戏环境开发,我们为 Checkers、Negotiation v2、Othello 和 TicTacToe 实现并彻底测试了我们的新自定义环境。对于 Pong、Surround、Texas Hold’em 和 Connect4,我们利用现有环境 PettingZoo 多智能体框架(Terry et al, 2021)并进行调整以促进评估。虽然 Pong 和 Surround 本质上只提供基于像素的视觉信息,但我们按照 Anand et al (2019) 提取相关表示并将其转换为文本形式,为 LLM 评估维护基于文本的游戏状态表示。
为了验证 LLM 的中间步骤,我们还开发了程序来自动生成每个游戏子问题的基本事实,从而实现严格的评估。GAMEBOT 还包含一个可视化模块,用于跟踪 LLM 之间比赛的游戏历史。这种可视化有助于理解和调试 LLM 推理行为(参见附录 D)。
提示设计为了确保公平评估 LLM 学习和应用游戏策略的能力,我们的提示被设计为独立的,作为游戏的“教程”。每个提示都提供了全面的游戏规则,标准化了输入和输出格式,并教授从人类专家玩家那里获得的游戏特定策略。通过在提示中呈现所有必要的信息,我们旨在评估 LLM 的真正泛化能力 - 它们根据提供的信息学习和推理的能力 - 而不是它们对训练数据中预先存在的知识的依赖。
提示分为三个部分:<游戏规则>、<输入> 和 <输出>。 部分指定所需的输出格式,并指导 LLM 应用提示中嵌入的策略来解决给定的子问题。对于提示中针对游戏的策略设计,我们参考了人类专家制作的教程。1 完整的提示集可在附录 F 中找到,这些提示未针对任何特定 LLM 进行优化设计,以保持公平性。
评估指标结果评估结果评估指标为:其中 Rj 表示 LLM 获得的奖励,Tj 表示第 j 场比赛可获得的最大奖励。对于基于胜/平/负的游戏(黑白棋、乒乓球、环绕棋、跳棋,井字棋、四子棋)、并且 Tj = 1。对于基于价值的游戏(德州扑克、谈判 v2),Rj 和 Tj 的值由游戏环境的奖励决定。
中间步骤评估使用 F1 分数或准确度对每个子问题进行中间步骤评估。对于答案分布不平衡的问题,使用 F1 分数,在这种情况下提供更稳健的评估。对于答案分布平衡的问题,使用准确度。有关每个子问题使用的评估指标的详细信息,请参阅附录 C。游戏的中间步骤性能用 I 表示,计算为整个游戏中各个子问题结果的平均值:I = 滑 t It T ,其中 It 是第 t 个子问题的准确度或 F1 分数,T 是子问题的总数。
实验
在本节中,我们详细介绍了在游戏环境中评估 LLM 的实验设置和结果,并对各种 LLM 的性能进行了分析。GAMEBOT 基准测试,评估的 LLM 可以在附录 A 中找到。我们使用每个 LLM 的默认采样参数进行推理。通过使用默认参数,我们确保非确定性输出,从而引入更多多样性。这使我们能够进行重复的 LLM 面对面竞赛,其中模型会接触到新的游戏状态和位置,从而对能力进行更全面的评估。对于每个 LLM,我们将最大输出 token 数参数设置为 4096,以允许足够的 token 用于推理步骤。
在每个游戏环境中,我们在每对模型之间进行 20 场比赛,每个 LLM 作为第一个玩家进行 10 场比赛,作为第二个玩家进行 10 场比赛,以减轻第一个玩家的优势。我们还评估了一个“随机玩家”,它随机选择一个可用的动作作为基线,以便更好地解释结果。
结果与分析,根据最终游戏结果和中间步骤评估每个 LLM 的整体性能(表 2)。这些结果揭示了以下关键观察结果: 观察 1:模型大小的影响 模型大小明显影响我们具有挑战性、推理密集型基准测试中的性能。在每个系列中,较大的模型始终优于较小的模型。对于像 Reka Flash 和 Jamba-1.5-mini 这样的轻量级模型,它们的性能接近随机水平。令人惊讶的是,GPT-4o 和 GPT-4o mini 之间存在相当大的性能差距。此外,尽管是旧版本,GPT-4 仍然优于 GPT-4o mini,显示出与 Chatbot Arena Leaderboard(Chiang et al, 2024)不同的趋势。所有这些发现都强调了模型规模在我们复杂的推理任务中的重要性。
观察 2:最终结果与中间步骤之间的相关性 从整体表现来看,LLM 中中间结果的验证对最终游戏结果表现具有高度预测性。例如,难以产生稳健中间结果的模型(如 Gemini-Pro、Reka Flash 和 Jamba-1.5mini)在最终结果方面也表现不佳。这一发现凸显了中间步骤验证在理解和评估 LLM 性能方面的关键作用。这种验证为 LLM 的决策提供了一个窗口,为其行为背后的“原因”提供了线索,并使最终结果不那么不透明。
然而,仔细检查个别游戏的表现会发现这种总体趋势的一些例外。例如,虽然 Claude 3.5 Sonnet 在 Pong 的中间步骤评估中获得了最高分,但其相应的最终结果得分并不那么令人印象深刻。这表明,虽然准确评估中间状态通常是成功的有力指标,但其他因素也会影响最终结果,可能包括特定于游戏的策略、风险承受能力,甚至某些游戏中的机会因素。我们将在下一节中研究这种现象。
观察 3:游戏之间的不一致性许多模型在不同游戏中表现出不稳定的性能。例如,LLaMA3.1-70b 在 Tic 中取得了最高的最终成绩TacToe 在 Pong 和 Connect4 中表现出人意料地相对较好,但在德州扑克中,它的表现低于平均水平。这些性能波动凸显了开发能够在不同场景中做出稳健和一致决策的 LLM 的挑战,这可能表明它们在迁移知识和适应新游戏规则方面的能力有限。
观察 4:GPT-4o 和 Claude 3.5 Sonnet 的优势 GPT-4o 和 Claude 3.5 Sonnet 都在两个评估指标中表现出始终如一的强劲表现,获得了最高的平均分数。这表明这些模型具有更好的泛化能力。
观察 5:具有挑战性的基准表 2 显示,所有评估模型的平均 I 分数仍然相对较低,其中最好的模型的平均分数(范围从 0 到 1)仅为 0.52。附录 C 的结果还显示,所有测试的 LLM 在一些复杂的推理子问题上都几乎完全失败。这些凸显了 LLM 在这些游戏中的复杂推理任务中面临的困难。
对结果的调查,我们进一步调查了一些意外表现背后的根本原因。 Claude 3.5 Sonnet 在 Pong 上的表现 如前所述,Claude 3.5 Sonnet 在 Pong 中的强劲中期表现并不意味着同样高的最终结果得分。手动查看视频和日志文件揭示了原因:虽然模型准确地预测了球的位置并相应地放置了球拍,但它严格遵守将球拍置于球的中心。此行为忽略了使用球拍角进行拦截的指令。游戏的跳帧机制有时会使精确居中变得不可能,导致球拍在目标附近振荡并偶尔错过球。
LLaMA3.1-70b 在德州扑克中的表现 虽然表 2 显示 LLaMA3.170b 在德州扑克中的表现基于最终游戏结果,但仔细检查中间结果表明它的推理能力比结果表现可能暗示的要强。我们观察到,游戏的高风险性质导致了这种差异。具体来说,当 LLaMA3.1-70b 错误分类其手牌强度(例如识别两对为满堂红),它倾向于高估获胜的机会,导致激进的下注,最终完全输掉那手牌的筹码。这种在误判时过度自信的倾向会严重影响其整体表现。
这些发现强调了在评估 LLM 表现时评估中间步骤和最终结果的重要性。虽然最终分数提供了一个易于量化的成功衡量标准,但它们有时会掩盖潜在的推理过程并掩盖 LLM 策略的优势或劣势,正如 Pong 和 Texas Hold’em 示例中清楚显示的那样。我们引入了中间评估,提供了一个关键的视角,揭示了 LLM 的能力与其最终表现之间原本隐藏的差异。这种细粒度的分析使我们能够更细致地了解 LLM 行为,使我们能够确定需要改进的具体领域。
表 2:基准测试结果。结果显示,结果评估与中间步骤评估之间存在高度相关性。由于 LLM 的最终操作由子问题的答案决定,因此相关性表明中间步骤评估为结果提供了可解释性。“O”:基于结果的评估,范围从 -1 到 1。“I”:中间步骤评估,范围从 0 到 1。对于 Checkers 列,标有“-”的模型很少产生有效的移动。为了简化平均分数的计算,这些情况被视为相当于 -0.5 的分数。每个结果代表与所有其他模型进行 20 场正面交锋的平均分数。“随机”表示通过在每个步骤随机选择操作实现的性能。
更强的基线,这项工作为 LLM 提出了一种新颖的评估基准。作为副产品,我们精心设计的融入游戏知识的提示可以作为更强大的 CoT 基线。表 3 将我们精心挑选的提示与仅限动作和通用提示的实验结果进行了比较。仅操作提示,指示 LLM 仅输出操作(用于 LLMArena(Chen et al, 2024)和 GAMABench(Huang et al, 2024))和通用思维链 (CoT) 提示,如“一步一步思考”(用于 GTBench(Duan 等人,2024b)),不足以引出有意义的战略推理(Duan 等人,2024a)。相反,我们的 CoT 提示整合了领域游戏知识和分步战略指导,为未来 LLM 战略推理研究奠定了坚实的基础。图 3 显示了实际案例。请注意,我们的 CoT 提示是独立于任何特定模型开发的,以确保评估的公平性。通过针对模型定制的提示设计,可以实现对特定模型的进一步改进。
表 3:我们精心挑选的提示与仅操作提示和通用提示之间的性能比较。配备我们精心挑选的 CoT 提示的 LLM 表现优于仅操作和通用提示。我们对配备不同提示的同一模型进行了 20 场面对面的比赛。结果格式为 W-D-L,分别代表我们方法的胜利、平局和失败。
LLM 推理的相关工作基准
旨在评估核心推理的各种基准LLM 的能力已经得到开发。示例包括用于数学推理的 GSM8K (Cobbe 等人,2021) 和 Math (Hendrycks 等人,2021),用于代码生成的 HumanEval (Chen 等人,2021) 和 MBPP (Austin 等人,2021),用于多跳推理的 StrategyQA (Geva 等人,2021) 以及用于地理空间推理的 Roberts 等人 (2023、2024)。
游戏中 LLM 的多智能体评估认识到单智能体基准 (Wu 等人,2023) 在评估 LLM 的真实能力方面的局限性,研究人员已转向多智能体场景,特别是在战略游戏的背景下。现有的努力,例如 GTBench(Duan 等人,2024b)、LLMArena(Chen 等人,2024)和 GamaBench(Huang 等人,2024)利用扑克、Hanabi 等游戏和其他博弈论任务来评估多智能体交互中的 LLM。然而,这些基准主要侧重于根据游戏结果(例如胜率)评估性能,而不考虑内部思维链的正确性。相反,我们的方法通过评估中间结果来提供模型性能的更多可解释性。我们将复杂的游戏推理分解为预定义的模块化子问题。我们不依赖通用的“逐步思考”提示,而是采用注入领域知识的详细、战略指导的 CoT 提示。这会在选择动作之前引导 LLM 完成每个子问题。此外,我们开发了一套基于规则的算法来为这些子问题生成基本事实,从而能够严格验证 LLM 的中间推理步骤。这为评估提供了至关重要的可解释性。
图 3:LLaMA3.1-70b 的真实 TicTacToe 游戏,使用通用提示(左)和我们精心挑选的提示(右)。
基本提示导致模型在 (0,2) 处做出错误举动,声称“这不会让 X 立即获得获胜机会”,而事实上,X 的获胜举动在 (2,2) 处可用。相比之下,使用我们精炼的提示,模型正确地将 (2,2) 识别为 X 和 O 的获胜举动,最终赢得了这场比赛。
结论
我们引入了 GAMEBOT,这是一种用于评估 LLM 在竞技游戏中的能力的新基准,包括 8 种不同的游戏,涵盖了广泛的游戏类型、特征和策略。为了取得成功,LLM 必须能够
- 理解每场游戏的规则,
- 解释每轮游戏的状态,
- 提供有效的动作,以及
- 找到获胜策略——因此我们的基准需要复杂的推理能力。
GAMEBOT 的一个关键特性是将游戏分解为 2-3 个针对特定能力的子问题。除了增强 LLM 的决策能力外,这还可以对推理优势和劣势进行细粒度的评估。我们在 GAMEBOT 上评估了 17 个前沿 LLM,发现模型性能存在明显差异,这表明我们的基准具有足够的挑战性来区分最强模型的能力。
总体而言,表现最好的模型是闭源的,GPT-4o 得分最高。我们精心设计的 CoT 提示引入了领域专业知识,并被证明是比以前的方法更强大的基线。我们将不断更新新发布模型的基准。我们希望我们的基准和总体发现有助于指导战略推理这一重要领域的研究。
局限性
本研究有几个局限性。首先,它依赖于人工制作的提示模板。众所周知,LLM 性能对提示措辞很敏感,提示设计的变化可能会导致结果变化。其次,为了促进有效评估,我们选择了轻量级、计算成本低的游戏。未来研究的一个有价值的方向是研究更接近真实世界应用程序复杂性的游戏的性能。最后,当前 LLM 的有限输入和输出标记长度(例如 4096 个标记)限制了我们可以为每个游戏包含的子问题的数量。通常,在这些限制内只有两到三个子问题是可行的。随着 LLM 的发展及其上下文窗口的扩大,后续研究可以纳入更多子问题以进行更全面的评估。
附录
A 评估的 LLM
我们对 17 个著名的 LLM 进行了基准测试。在可能的情况下,我们专注于聊天或指令调整的变体,因为它们通常具有更强的指令遵循能力。我们的评估包括以下 LLM:闭源:GPT-4(Achiam 等人,2023 年)、GPT-4o(OpenAI,2024b)、GPT-4o mini(OpenAI,2024a)、Gemini 1.5 Pro、Gemini 1.5 Flash(Reid 等人,2024 年)、Gemini-Pro(Gemini Team 等人,2023 年)、Claude 3 Haiku、Claude 3 Sonnet(Anthropic,2024a)、Claude 3.5 Sonnet(Anthropic,2024b)、Reka Core 和 Reka Flash(Ormazabal 等人,2024 年)。
开源:LLaMA 3.1(8B、70B、405B)(Dubey 等人,2024 年)、Jamba 1.5(大型、迷你)(Team 等人,2024 年)和 Mistral Nemo(AI,2024a)。
本研究中的所有推理都是使用 API 服务进行的。具体来说,我们对 Gemini、Claude、Mistral、Jamba 和 LLaMA 3.1 系列中的模型使用了 Vertex AI API(Google,2024 年),对 Reka Core 和 Flash 使用了 Reka API(AI,2024b),对 GPT 模型使用了 Azure OpenAI 服务(Microsoft,2024 年)。以下是通过 API 访问的模型的具体版本列表:
- Gemini-Pro:gemini-1.0-pro-002
- Gemini 1.5 Flash:gemini-1.5-flash-preview-0514
- Gemini 1.5 Pro:gemini-1.5-pro-preview-0514
- GPT-4:gpt-4-1106
- GPT-4o mini:gpt-4o-mini-2024-07-18
- GPT-4o:gpt-4o-2024-05-13
- Reka Flash:reka-flash-20240904
- Reka Core:reka-core-20240415
- Claude 3 Haiku:claude-3-haiku@20240307
- Claude 3 Sonnet:claude-3-sonnet@20240229
- Claude 3.5 Sonnet:claude-3-5-sonnet@20240620
- Jamba 1.5 Large:jamba-1.5-large
- Jamba 1.5 Mini:jamba-1.5-mini
- Mistral Nemo:mistral-nemo-2407
- LLaMA 3.1 {8,70,405b}:meta/LLaMA3-{8,7,405}b-instruct-maas
B 游戏选择和子问题设计
所选游戏在概念上简单易懂,便于人类理解,方便 LLM 开发人员使用 GAMEBOT。然而,必须注意的是,尽管规则简单,但这些游戏对 LLM 来说却是一场不小的挑战(参见附录 C)。控制难度级别对于有效评估至关重要,因为过于复杂的游戏会导致所有模型无效,而过于简单的游戏则无法区分性能。此外,黑白棋、跳棋和德州扑克等几种游戏即使对于人类玩家来说也具有相当大的战略深度。
黑白棋 (Reversi) 黑白棋是一种在 8x8 棋盘上进行的棋盘游戏。两名玩家轮流放置自己颜色的棋子,试图通过夹在自己的棋子之间来包抄并吃掉对手的棋子。被吃掉的棋子将被翻转为玩家的颜色。为了获胜,LLM 应该采取战略性举措,以确保游戏结束时大多数棋子都显示玩家的颜色。游戏强调战略布局和战术机动来控制棋盘。
子问题设计:1. 输出您是否可以直接占据角落。2. 黑白棋中的“楔入”是指玩家可以将棋子放置在对手边缘的两个稳定棋子之间,…,输出可以创建楔入的所有坐标。
评估能力:空间推理;位置评估 Pong Pong 是一款模拟乒乓球的经典双人街机游戏。玩家控制桨来回击球,目的是通过让对手失误来得分。它代表了一个具有连续动作空间的简化环境。为了赢得比赛,LLM 应该预测球的轨迹并拦截它,然后给对手制造一个困难的角度。
子问题设计:1. 输出球的移动方向。2. 当球的 x 坐标与桨的 x 坐标相同时,输出球的 y 坐标。
评估能力:数学推理 环绕(蛇) 环绕是一个双人游戏,玩家控制一条连续移动的线。
目标是迫使对手与自己的线、墙壁或对方玩家不断增长的线相撞。它强调空间推理和战略阻挡。为了赢得比赛,LLM 应该规划一条安全的路径,并尝试用墙壁包围对手。
子问题设计: 1. 根据给定的游戏状态,提取当前位置 4 个方向上相邻的所有值。 2. 根据当前位置周围可用的空白区域,列出所有可能的移动操作。 3. 输出有效操作是否会通向一条至少有 10 个连续空白单元格的安全路径,以供未来移动。
评估能力:信息提取;空间推理;长期路径规划 跳棋(国际跳棋) 跳棋是一种棋盘游戏,玩家沿对角线移动棋子,跳过对手的棋子来捕获它们。普通棋子只能向前移动,而通过到达对手后排获得的“王”可以向前和向后移动和捕获。当一个玩家捕获了对手的所有棋子或阻挡了对手的棋子时,游戏结束。它涉及战略规划和战术棋子推进。要赢得游戏,LLM 应该全面考虑提示中列出的所有因素。
子问题设计: 1. 输出所有给你新王棋子的移动。 2. 输出所有导致骰子一文不值的坏动作。
评估能力:空间推理;游戏板理解井字游戏(井字游戏)井字游戏是一种在 3x3 网格上进行的简单的双人游戏。
玩家轮流用各自的符号标记一个方格,目的是水平、垂直或对角线地形成一条由三个符号组成的线。为了赢得比赛,LLM 应该尝试创造将 3 个符号排成一行的机会,同时阻挡对手。它的简单性使其成为对 LLM 的轻量级评估。尽管如此,我们发现它对 LLM 来说仍然具有挑战性。
子问题设计:1. 是否有任何潜在的获胜动作可以让你形成连续的 3 个?2. 是否有任何潜在的获胜动作可以让你的对手形成连续的 3 个?
评估能力:模式识别;游戏板理解四子棋四子棋是一种在垂直悬挂的 6x7 网格上进行的双人游戏。玩家将彩色圆盘放入列中,目标是水平、垂直或对角线连接四个自己的圆盘。为了赢得比赛,LLM 应该尝试创造将 4 个圆盘连成一线的机会,同时阻止对手。这涉及战略思维和预测对手的动作。
子问题设计:1. 是否有任何潜在的获胜动作可以让你形成 4 个连成一线?2. 是否有任何潜在的获胜动作可以让你对手形成 4 个连成一线?评估能力:模式识别;游戏板理解
德州扑克 德州扑克是一种流行的扑克游戏,涉及下注、虚张声势和不完整信息。玩家收到两张私人牌并共享五张公共牌,形成最好的五张牌手牌。整个手牌过程中会出现多轮下注,允许玩家根据手牌强度和对对手手牌的评估进行策略性下注。摊牌时拥有最佳手牌的玩家或所有其他玩家都弃牌后剩下的最后一位玩家赢得底池。要赢得这场比赛,LLM 应该评估获胜的概率,并进行相应的下注。它呈现了一个具有挑战性的环境,信息不完整,战略考虑复杂。
子问题设计:1. 给定私人手牌的获胜概率为…,判断哪个是您的私人手牌并输出相应的获胜概率。2. 在翻牌、转牌和河牌轮次,首先分析您最好的五张牌手牌并根据游戏规则输出您的手牌排名。
评估能力:风险管理;虚张声势;手牌分析谈判 v2 谈判 (Lewis 等人,2017) 是一款两名玩家通过谈判分配一组物品的游戏,每名玩家对每件物品都有私人估价。为了确保游戏状态多样化和战略互动更加丰富,我们修改了标准设置,将每名玩家的物品总价值增加到 30。
玩家通过谈判来最大化他们个人获得的总价值。此外,我们引入了一个动态设置:经过 8 轮谈判后,游戏在随后的每一轮中都有 20% 的机会结束。如果在游戏强制终止之前未达成协议,则两名玩家都将获得 0 的奖励。这种修改激励玩家考虑个人收益和合作结果。为了赢得比赛,LLM 应该能够评估对手的提议,并提出有利的提议或在必要时进行合作。谈判游戏探索资源分配中的合作、竞争和公平概念。
子问题设计:1. 根据前几轮谈判,评估对手的最新提案并计算物品总价值并输出结果。2. 对于自己的有效提案,输出物品总价值。
评估能力:竞争协作;对手建模;数学推理
C 中间步骤评估的详细结果
表 4:LLM 在中间结果验证中的表现。该表显示了每个 LLM 在每场游戏中特定子问题(分别表示为 P-f1 和 P-acc)上的 F1 分数和准确率。子问题设计见附录 B。值得注意的是,在某些复杂的推理子问题上,例如 Othello 子问题 2、Checkers 子问题 2 和 Connect4 子问题 2,其性能极差(接近 0)。
本节介绍每个子问题的完整结果。研究结果表明,所有经过测试的 LLM 在一些复杂的推理任务上都几乎完全失败。以 Othello 游戏为代表。在第一个中等复杂度的子问题中,当其中一个是有效移动时,需要 LLM 识别角的坐标,GPT-4o 和 LLaMA3.1-405b 表现出相对合理的结果。然而,所有 LLM 几乎完全无法完成第二个更复杂的子问题复杂的推理任务。这个子问题涉及确定“玩家何时可以将棋子放在对手边缘的两个稳定棋子之间”。成功执行此任务需要 LLM:
- 准确识别哪些棋子位于边缘,
- 区分这些棋子属于对手,
- 识别这些棋子是稳定的,这意味着它们不能被翻转,
- 识别这两个对手棋子之间的空隙,
- 确定这个空隙构成有效的移动。无法解决这个多跳推理任务导致第二个子问题上所有测试模型都失败。
D 可视化
我们开发了一个可视化模块来跟踪图 4 所示的游戏玩法。对于在这些基于文本的游戏环境中研究 LLM 推理的 LLM 开发人员,它将复杂的文本游戏日志转换为易于理解的动画,简化流程并更清楚地展示 LLM 的决策动态。
图 4:游戏动画的截图。
E LLM 输出示例
我们在此提供一个示例供参考。 可以在补充材料中找到所有游戏的更多输出。
Gemini 1.5 pro 与德州扑克中的 GPT-4o 当前游戏状态为 GPT-4o:[红心 Q,梅花 A] 全押; Gemini 1.5 pro:[黑桃 Q,梅花 4] ?
Gemini 1.5 pro 的输出
1. **战略分析** 我的手牌 [黑桃 Q,梅花 4] 在德州扑克中不是一手强起手牌。 根据给出的表格,Q4o 的获胜概率为 47.7%,属于中等范围。
考虑到我的对手在翻牌前全押,这表明这是一手非常强的手牌。
2. **结论** 考虑到对手可能拿到的手牌强度和我平庸的起手牌,我输掉所有筹码的风险太高了。 弃牌是最合乎逻辑的决定。
3. **选择的动作** 弃牌
F 完整提示
F.1 黑白棋 黑白棋提示
您是黑白棋游戏的专家。游戏的目标是在游戏结束时让大多数棋子显示您的颜色。
**游戏规则**
4. 黑白棋在 8x8 棋盘上进行,列标记为 A-H,行标记为 1-8。
5. 黑棋:“B”;白棋:“W”。
6. 初始棋盘在 (D,4) 和 (E,5) 处有黑棋,在 (D,5) 和 (E,4) 处有白棋。
7. 一步棋包括“包抄”对手的棋子,然后将包抄的棋子翻转成您的颜色。包抄意味着在棋盘上放置一个棋子,使对手的一行(或多行)棋子两端都与您的颜色棋子接壤。 (一行可以由一个或多个棋子组成)。
8. 可能会发生这样的情况:下棋时,对手在多个方向上的棋子会被困在你新下出的棋子和你的其他棋子之间。在这种情况下,所有可行方向上的棋子都会翻转为你的颜色。
9. 如果你没有合法的走子,你的回合将被放弃,你的对手将再次走子。
10. 当两个玩家都没有合法的走子(即至少吃掉一个对手棋子的走子)或棋盘已满时,游戏结束。
**输入** 你将收到一个表示当前游戏板的状态矩阵:* 空格:O * 黑棋:B * 白棋:W 你还将获得所有当前合法的走子。你应该根据你的战略分析选择最佳走子。
**输出** 提供你选择的走子。在做出决定之前,阐明你的内部思考过程。你的表现将根据中间思考结果和最终决定进行评估。遵循思考过程:
11. **战略分析** 评估每一步合法的走法,考虑以下因素: (a) 角控:尽量占据棋盘的四个角很重要,因为角棋不能翻转。输出您是否有走法直接占据角。格式为“[中间思考结果 1:对/错]”。获得对角的控制可以提供稳定的立足点,并影响棋盘上的整体位置。您应该小心占据紧邻角落的位置,因为它可能很容易失去对角落的控制。
(b) 边缘控制:棋盘的边缘不如角落强大,但仍提供许多防御优势。
(c) 棋子稳定性:最好将棋子放置在稳定的位置,以避免被轻易翻转。稳定的棋子可以作为进一步扩展的基础。
(d) 边界:尽量减少与空白区域(边界)相邻的棋子。通过这样做,您可以限制对手的机动性(减少走法选择)。
(e) 楔形:黑白棋中的“楔形”是指棋手可以将棋子放在棋盘边缘上对手的两个稳定棋子之间。这通常发生在对手的两个棋子之间有 1 个空边空间时,但可以发生在任何奇数个空间(1、3 或 5)的情况下。楔形对于能够确保楔形的棋手来说是一个巨大的优势,因为它们提供了一个强大的锚点,他们最终可以从中赢得一个或多个角。如果您看到创建楔形的机会,您几乎总是应该抓住它。它们严重限制了对手的可行动作。
例如,如果其中一条边是:[(A,1):O (B,1):O (C,1):B (D,1):O (E,1):B (F,1):O (G,1):O (H,1):O],因为 (D,1) 是两个 B 棋子之间的空边空间,如果 (D,1) 对 W 棋手来说是合法的移动,它将创建一个楔形。
以“[中间思考结果 2:(X,X),(X,X),...]”格式输出所有可以创建楔形的坐标。
(f)移动性:玩家可以合法移动的次数。拥有更多的机动性通常更好,因为它在游戏中提供了更多的选择和灵活性。
请注意,在游戏早期捕捉大量的棋子并不总是最好的。
2.**结论**您应该在本节之前输出* *战略分析* *。在这一部分,基于你之前的分析,清楚地陈述你的决定和理由。
3.**选择的移动** *在这个部分,只输出选择的移动。不要包含任何其他单词。
*格式为:“选择的移动:(X,X)”。
F.2 Pong提示
你是雅达利Pong游戏的专家。你的任务是控制右桨击败左对手。给定一系列游戏画面,你的目标是预测赢得游戏的最佳行动。可用的动作定义如下:0 -保持静止;1 -上移;2 -下移。
这里有一些额外的信息:球的位置:球在屏幕上的X和Y坐标。
你的球拍位置:右球拍的Y坐标范围。右桨的X坐标总是140。
对手的桨位:左桨的Y坐标范围。左挡板的X坐标总是20。
下壁Y坐标:16上壁Y坐标:176较大的X坐标表示相对右对齐,较大的Y坐标表示相对较高。
你的策略是,如果球向左移动,只需将你的球拍放在屏幕中间。如果球向右移动,预测球的轨迹,并调整你的球拍的位置来拦截它。为了给你的对手制造一个困难的角度,你可以在你的球拍边缘附近截住球。
提供您选择的移动。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。遵循思维过程:*【观察】**观察球的运动方向。以“[中级思维结果1:左下/右上/左上/右下]”的格式输出球的移动方向。
* *[思想]**分析球的轨迹。当球的x坐标与你的球拍的x坐标相同时,预测球的y坐标。检查,直到你的预测是有效的,但如果你已经检查了3轮,它仍然无效,只是移动你的桨到中间的位置。将您当前的位置与您的球拍应该移动到的y坐标进行比较,然后决定您的移动。当球的x坐标与你的桨的x坐标相同时,以“[中级思考结果2: XXX]”的格式输出球的y坐标。
* *[行动]**根据您的想法给出行动结果。
这里有一个例子。
输入:帧1 {'ball_x': 71,' ball_y': 136,' player_x': 140,' player_y': [66,82],'对手_x': 20,'对手_y': [111,127],' upper_bound': 176,' lower_bound': 16}帧2 {'ball_x': 75,' ball_y': 144,' player_x': 140,' player_y': [62,78],'对手_x': 20球的y坐标在增加(152 > 144 > 136),表明球在向上移动。
【中间思考结果1:右向上】* *[思考]* *[计算球的轨迹]我们可以用方程y = mx + b计算轨迹,给定最后两帧的点,(x1,y1) = (79,152),(x2,y2) = (75,144),我们可以确定斜率m为(y2-y1)/(x2-x1)=(144-152)/(75-79)=(-8)/(-4)= 2。
y轴截距b可以用公式b = y1 - mx1 = 152 - 2 * 79 = 152 - 158 = -6来计算。因此,球的轨迹方程是y = 2x - 6。将x = 140代入方程,y' = 2 * 140 - 6 = 280 - 6 = 274。
[检查]有效的y值在16 <= y <= 176的范围内。但是计算出来的y' 274 > 176,这是无效的。暗示球的轨迹会因反弹而改变。
【计算球的轨迹】从上次观察来看,球是向上运动的,所以会碰到上界,改变方向。现在球的更新观察值正在向下移动。将y = 176代入方程y = 2x - 6,x = (176 + 6) / 2 = 182 / 2 = 91。反弹后,斜率m将变为-2。用方程y = -2x + b代入(91,176)可以求出b = y + 2x = 176 + 2 * 91 = 176 + 182 = 358。所以球的轨迹方程是y = -2x + 358。将x = 140代入方程,y' = -2 * 140 + 358 = -280 + 358 = 78。
[检查]有效的y值在16 <= y <= 176的范围内。
[决定]你的桨应该覆盖的y坐标是78。你的球拍的y坐标范围是[59,75]。78在[59,75]范围之外,75 < 78,暗示你的桨低于想要的地方,所以推荐的动作应该是1 -上移。
【中级思考结果2:78】* *[动作]** 1 -上移
F.3环绕提示对于环绕
你是在雅达利2600中玩游戏环绕的专家。你的目标是尽可能长时间生存,并智胜你的对手。
**游戏规则** *游戏在一个20 x 40的格子上进行,格子的边缘用墙围起来。
*当你移动时,你和你的对手在你身后留下一道墙。
*撞上墙结束游戏。
*您只能移动到空白空间(值为0)。
**目标* *通过分析游戏状态,预测对手的行动,并做出明智的决策来生存和诱捕对手,从而制定获胜策略。为了延长你的生存时间,你必须仔细规划你的路线以节省空间。
此外,你应该尝试用墙包围你的对手,让他们跑出空间,被迫撞到墙上。
**输入**您将收到一个记录您所到过的每个位置的移动轨迹,以及一个表示当前游戏棋盘的状态矩阵:*空白:0 *墙壁:1 * {}最后位置:2 * {}当前位置:3 * {}最后位置:4 * {}当前位置:5 * *输出* *提供您选择的移动。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。遵循思维流程:1。**当前位置分析** *用值{}说明您当前位置的坐标(行、列)。左上角的坐标是(0,0)。
*根据给定的游戏状态,提取4个方向上与你当前位置相邻的所有值。格式为“[中级思维结果1:上X,下X,左X,右X]”,其中X为该位置的值,但如果该位置超出边界,则将X设为-1。
*示例:“[当前位置]: (10,15)。【上】(9,15): 1(墙);【下】(11,15): 0(空格);[Left] (10,14): 0(空白);【对】(10,16): {}(我上一个位置)。【中级思维结果1:上1,下0,左0,右{}】2.**有效动作** *根据您当前位置周围的可用空间列出所有可能的移动动作。以[中级思维结果2: X,X,...],其中X是可用的动作。如果没有有效动作,则输出【中级思考结果2:无】。
*例:“【中级思维结果2:下移,左移】”3。**战略分析** *解释你选择最终行动的理由,考虑如下因素:*长期生存:为未来行动创造开放空间。考虑到输入的游戏状态,确保不要给自己设陷阱。你应该至少保证10个连续的空单元格以备将来移动。对于每个有效的动作,找到空白区域并输出结果。当你总共找到10个时,你可以停止这个过程。例如,假设局部博弈状态为(0,23):1 (0,24):1 (0,25):1 (0,26):1 (0,27):1 (1,23):0 (1,24):{} (1,25):0 (1,26):1(2,23):0 (2,24):{} (2,25):0 (2,26):0 (2,27):1 (3,23):0 (3,3)对于(1,25),继续查找所有方向都为0的相邻单元格。
1.发现为空:[(1,25)]
For (1,25)。Up (0,25): 1,Right (1,26): 1,Left (1,24): {},Down (2,25): 0 (new empty)
2。发现为空:[(2,25)]
For (2,25)。Up (1,25): 0(新增空),Right (2,26): 0(新增空),Left (2,24): {},Down (3,25): 0(新增空)
3。发现为空:[(2,26),(3,25)]
For (2,26)。Up (1,26): 1,Right (2,27): 1,Left (2,25): 0(加空),Down (2,27): 1 For (3,25)。Up (2,25): 0(添加空值),Right (3,26): 1,Left (3,24): 1,Down (4,25): 1
4.没有发现更多新的空,结束该过程。找到的空单元的并集:[(1,25),(2,25),(2,26),(3,25)],共4个单元,少于10个。
所以在这种情况下我们不应该向右移动。
请注意,对于所有有效的操作,您应该严格遵循示例中一步一步显示的分析过程。
输出有效动作是否会导致至少10个连续空单元格的安全路径,以供将来移动。格式为“【中级思维结果3:‘有效动作’安全/不安全,...]".比如“【中级思维结果3:右移不安全,左移安全】”。
*困住对手:迫使他们进入更小的区域。
*风险评估:避免与墙壁的潜在碰撞或自己被困。
4.**结论** *根据你之前的分析,清楚地陈述你的决定和理由。
5.**选择的动作** *在这个部分中,只输出选择的动作。不要包含任何其他单词。
*示例:“向左移动”
F.4跳棋提示跳棋
你是跳棋游戏的专家玩家。跳棋是一种经典的棋盘游戏,在英国被称为跳棋。游戏的目标是通过跳过对方的棋子来获得对方的所有棋子。
**游戏规则** *游戏基础:跳棋是在一个8×8的棋盘上玩的,列和行都标有0-7,在32个暗方格和32个亮方格之间交替。每个玩家从12个棋子开始,放在棋盘的黑色方块上。黑人玩家的棋子从第5-7行开始,白人玩家的棋子从第0-2行开始。
*游戏玩法:1。只能在深色方块上移动:棋子只能在深色方块上对角移动,棋盘上浅色的方块永远不会被使用。
2.一次只移动一格:正常的移动是将一个棋子对角向前移动一格到对手。你不能移动到被另一个棋子占据的方格上。
3.跳跃抓取棋子:进行抓取动作(跳跃)的棋子跳过对手的一个棋子,以直线对角线落在对方。一次跳跃只能捕捉一个棋子;然而,在一个回合中允许多次跳跃。当一个棋子被捕获时,它会从棋盘上被拿走。
4.必须进行跳跃(或捕捉):如果玩家能够捕捉,则没有选择;必须进行跳跃。如果有一个以上的捕捉可用,玩家可以自由选择他或她喜欢的。
5.棋子成为国王:当一个棋子到达离控制该棋子的玩家最远的一排时,它成为国王。
(即,黑棋到达第0行,白棋到达第7行)国王只能沿对角线移动,但可以向前和向后移动。(记住正常的棋子,也就是非王,永远只限于前进。)国王可以在同一个回合中组合几个方向的跳跃,向前和向后。普通棋子可以在多次抓取回合中对角移动方向,但必须总是向前跳(朝向对手)。
6.当对手不能移动时,玩家赢得游戏。在大多数情况下,这是因为对手的所有棋子都被占领了,但也可能是因为他们的所有棋子都被封锁了。如果完全相同的棋盘状态出现三次,游戏以平局结束。这是为了避免剩下的两个部分只是四处移动而无法互相捕捉的情况。如果有40步棋(每个玩家20步)没有棋子被抓,游戏也以和局结束。
**输入* *你会收到一个表示当前游戏棋盘的状态矩阵:*空白:_ *黑正常棋子:b *黑王棋子:B *白正常棋子:w *白王棋子:W坐标(a,B)表示在a行B列的位置(从0行0列开始的零基索引)。
你也将获得所有最新的合法行动。你应该根据你的战略分析选择最好的行动。
**输出* *提供您选择的移动。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。遵循思维流程:1。**战略分析* *评估每一个合法的移动,考虑所有列出的因素:(a)中心控制:这包括通过将您的棋子移动到中心来占据中心,以及当您可以选择不止一种方式跳跃时向中心跳跃。
中心方块比边缘更难控制。当然,所有的方块都很重要,有时在棋盘边上放置一个合适的方块是有利的。还是那句话,不要忽视在棋盘上的位置。
但是如果你可以选择移动或跳到一边或中间,那就朝中间走。
为什么这有帮助?因为集中的一块有更多的选择。
*它有两种可能的移动,而边缘棋子只有一种。
*如果有机会,它可以迅速到达任何一方。
*它可以阻止你的对手攻击对面的弱点。
(b)获得一个国王:获得国王棋子是非常有益的,因为国王棋子也可以向后移动。黑棋应该尝试到达第0行。怀特应该设法到达第7排。
*输出所有给你一个新的国王棋子的移动。格式为“[中级思维结果1: (X,X)->(X,X),...]".如果没有这样的举动,输出“[中级思考结果1:无]”。
(c)没有无价值的骰子:例子:考虑一个游戏棋盘[(0,5):_,(0,3):_,(1,4):w,(2,3):_,(3,2):b]。对于白棋,从(1,4)->(2,3)移动是一个糟糕的移动,因为它会立即被(3,2):b捕获,但是没有捕获回来,因为(0,5)和(0,3)都是空的。
*输出所有导致无价值骰子的坏棋。格式为“[中级思维结果2: (X,X)->(X,X),...]".如果没有这样的举动,输出“[中级思考结果2:无]”。
(d)保护你的国王行:在技术不太好的玩家中,获得第一个国王是一个巨大的优势。自然的趋势是避免移动你的后排。这当然比没有任何计划就不小心把它们搬出去要好。
但是有更好的方法。
如果你不向后移动四个棋子,那么你还有八个棋子可以向你的对手前进。如果你的对手移动了一些后面的棋子,你的八个棋子可能会与十个或十二个棋子发生冲突。这很容易让你在某些交易中站在错误的一方。
专家使用的一般策略是推进四个后片中的两个。这给了你十点的攻击力,同时留下足够的防御来严重减缓任何称王的企图。如果你的对手不想移动任何后排棋子,你就有优势了。你将会以十枚棋子对八枚棋子前进,而你的后排仍然有足够的防御。
那么,你留下哪两件?如果你看看后排,你会发现只有一对成功地保护了他们前面的每一格。对于黑色,是(7,2)和(7,6)上的棋子;对于白色,它是(0,1)和(0,5)上的部分。尽可能长时间地离开这两个人,把另外两个人带进你的攻击范围。
(e)保持坚固的结构:组合在一起的碎片比分开的碎片更坚固。集体推进你的棋子,用后面的来支持前面的。例如,如果游戏棋盘的一部分是[(2,3):w,(3,4):w,(4,5):b,(5,6):_]并且轮到黑棋,由于(5,6)是空的,(4,5):b面临被(3,4)俘获的危险:w .黑棋可以考虑移动(4,5):b到其他地方或者移动其他棋子到(5,6)以保持强大的阵型。
一块坚固的碎片不容易受到二级或三级跳跃的攻击。它也不容易被打破。
如果你的对手强迫你与前面的棋子交换,你仍然可以用后面的相连棋子继续冲锋。
业余爱好者经常随机交换棋子,只是为了简化游戏。相反,尝试建立一个强大的编队。当你的对手感受到压力并开始交换时,你会发现你的优势会让你处于更有利的位置。
(f)二打一:这可能是棋手最基本的战术。跳一个棋子,然后跳两个作为回报,感觉真的很棒。在新手之间的游戏中,这些情况似乎就是会发生的。
不过,真的,他们不是凭空出现的。知道如何创造这些镜头会让你赢得很多比赛。
例如,如果游戏棋盘是[(1,4):w,(2,7):_,(3,4):w,(3,6):w,(4,5):_,(5,4):b,(5,6):b,(6,7):b,empty else]推进黑棋(5,6) -> (4,5)迫使白棋(3,4)捕获此黑棋并成为(5:6):w .黑棋失去一枚棋子但现在棋盘变成[(1,4):w,(2,7):_,.所以黑棋牺牲一个棋子来获得两个白棋的棋子。
对于三对一或三对二拍摄,它们的工作原理是相同的。
*以“【中级思维结果3: (X,X)->(X,X)格式输出所有能创造二打一出手的招式,...]".如果没有这样的举动,输出“[中级思考结果3:无]”。
(g)攻击三角形和三个一组:三个相连的棋子组成的一组,无论是三角形还是对角线,如果中间的棋子可以移走,很快就会成为不利因素。这将使两个间隔开的部分容易发生双跳。
举例:考虑一个游戏棋盘[(0,5):w,(1,2):w,(2,3):_,(3,2):b,(4,1):b,(4,3):b,(5,0):W,(5,4):_,empty else],黑棋的棋子呈三角形队形,白棋在正方形(5,0)上有一个王。白棋可以通过推进(1,2)到(2,3)来移除三角形的中间,迫使黑棋(3,2)跳过(2,3):w到(1,4)。所以(3,2)现在是空的。这让黑王有了两次跳跃。(5,0):W现在可以跳过(4,1):b到(3,2),跳过(4,3):b到(5,4)。
2.**结论**您应该在本节之前输出* *战略分析* *。
在这一部分,基于你之前的分析,清楚地陈述你的决定和理由。
3.**选择的移动** *在这个部分,只输出选择的移动。不要包含任何其他单词。
*格式为:“选择的移动:(X,X)->(X,X)”。
F.5 TicTacToe提示音TicTacToe
你是游戏TicTacToe的专家玩家。
**游戏规则** 1。井字游戏是由X和o两个玩家在一个3x 3的格子上玩的。
2.x先放,O后放。然后玩家轮流上场。
3.成功在水平、垂直或对角线上放置三个标记的玩家获胜。
4.如果一个位置已经被标记,玩家不能再在这里放置标记。如果所有九个方格都被填满,并且没有玩家连续三个,则该游戏为平局。
**输入* *你会收到一个表示当前游戏棋盘的状态矩阵:*空格:_ * X玩家:X * O玩家:O坐标是零基索引。
**定义**中心-中间的正方形被所有其他正方形包围:[(1,1)]边缘-与中心接壤的棋子:[(0,1)],[(1,0)],[(1,2)],[(2,1)]角-由两个边缘正方形接壤的棋子:[(0,0)],[(0,2)],[(2,0)],[(2,2)]* *输出* *提供您选择的移动。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。遵循思维流程:1。**观察* *根据当前游戏状态,提供以下观察:*您的棋子在哪里?*对手的棋子在哪里?*对于所有有效的移动,逐步检查所有水平、垂直或对角线行:是否有任何潜在的获胜移动对您或您的对手形成3行?以“【中级思维结果1: (X,X),(X,X)的格式为你输出所有的获胜招式,...]".如果没有,输出“[中级思考结果1:无]”。
以“[中级思维结果2: (X,X),(X,X)”的格式输出对手的所有获胜招式,...]".如果没有,输出“[中级思考结果2:无]”。
对于所有有效的动作,严格地按如下步骤执行检查过程。
比如假设你是玩家O,当前游戏棋盘:(0,0):_ (0,1):O (0,2):X (1,0):X (1,1):O (1,2):X (2,0):O (2,1):X (2,2):_所有合法走法:['(0,0)','(2,2)']对于(2,2),过牌过程是:横排:(2,0):O (2,1):X (2,2):?;- (2,0)和(2,1)是不同的,对于O或X竖行不赢棋:(0,2):X (1,2):X (2,2):?;- (0,2)和(1,2)都是‘X’,赢棋为X对角线行:(0,0):_ (1,1):O (2,2):?;- (0,0)是空的,不是O或x的赢棋。
在这个例子中,在检查了所有有效的移动后,结果应该是[中级思考结果1:无],[中级思考结果2: (2,2)]。
2.**策略分析* *从你之前的观察来看,如果检查后有胜招,直接选择。否则,如果你的对手有一个胜利的移动,阻止它。如果不是这样,根据下面的策略选择最好的走法:*第一局时(如果你是X):避免将你的第一枚棋子放在一个边缘方块上,保持在中心或角落方块上。把它放在一个正方形的边缘会让你很脆弱,而给你的对手优势。
1)中心如果你标记了中心,你的对手将会把他/她的第一个棋子放在一个边缘或角上。
*如果他们有优势,赢起来会非常容易——甚至没有机会打平。只需将下一枚棋子放在离边缘棋子最远的两个角中的一个上。他们很可能会阻止这一举动,这反过来给他们一个获胜的机会。挡住他们的移动,突然之间,你就有了两种取胜的方法,对手也就无可奈何了。
*如果他们标记一个角球,就像一个聪明的对手会做的那样,那就有点复杂了。将你的下一个标记放在对角,或者将两个X和一个O形成对角线的角上。如果他们将下一个棋子放在一个边上,他们就犯了一个错误,现在你有两种获胜的方式,这取决于他们将O放在哪个边上。否则,假设你一直反击,比赛会以平局告终。
2)角球如果你先打出角球,你的对手只能做出两种有意义的反应:居中,或者不居中。
*如果他们的第一步是远离中心,你应该能赢。请记住,您的第一个作品包含在垂直和水平行。你的下一步应该是在你放置第一枚棋子的同一行的另一个角落。他们可能会反击,给你留下一条通往胜利的捷径,就像放置在其他角落,一次连接到你以前的两个棋子。不管他们是先打角球还是先打边球,这都会起作用。
*如果他们的第一步是在中间,那就有点棘手了。再次,形成对角线。如果他们的下一步是在角落里,你可以通过把你的下一个棋子放在前两个X的行列的交叉点来困住他们。如果他们的下一步棋处于边缘,你将被迫接受和棋。
*打第二个的时候(如果你是O):对于你对手的第一步棋,如果是在1)中心如果他们选择了中心,立刻把你的O放在角落里,这会给你争取一些时间。根据最佳策略,你的对手会把他们的下一个X放在你的对角。你的下一个棋子不应该与你之前的棋步相邻。然后,就是简单的连续拦网和反击,直到平局。
即使他们不使用这种策略,也要一直挡,直到打成平手。
2)角球如果他们标记角球,就标记中心,否则你几乎肯定会输给一个好对手。那么请记住,有一种结果是上面的平局是可能的。
你的对手有两个选择,要么形成一个对角线,要么把他们的n
F.6连接4提示连接4
你是游戏连接4的专家玩家。
**游戏规则** 1。游戏由两个玩家X和o在6x7的格子上进行。
2.x通常先玩,然后玩家轮流放下他们的棋子。
3.只能将零件放在列中最低的可用空间。
4.第一个将四个棋子连成一排的玩家赢得游戏。
5.连接可以是水平的、垂直的或对角的。
**输入* *你会收到一个表示当前游戏棋盘的状态矩阵:*空格:_ *玩家1的棋子:X *玩家2的棋子:O坐标是从零开始的索引。例如,“(0,4):X”表示玩家1在第0行第4列有一个棋子。第0行最低,第5行最高。
**输出* *提供您选择的移动。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。遵循思维流程:1。**观察* *根据当前游戏状态,提供以下观察:*您的棋子在哪里?*对手的棋子在哪里?*检查所有水平、垂直或对角线:您或您的对手是否有可能连续形成4个赢棋?以“【中级思维结果1: (X,X),(X,X)的格式为你输出所有的获胜招式,...]".如果没有,输出“[中级思考结果1:无]”。
以“[中级思维结果2: (X,X),(X,X)”的格式输出对手的所有获胜招式,...]".如果没有,输出“[中级思考结果2:无]”。
对于所有有效的动作,严格地按如下步骤执行检查过程。
例如,假设您是X玩家,并且想要检查有效的移动(3,2),当前游戏棋盘:(5,0):_ (5,1):_ (5,2):_ (5,3):O (5,4):_ (5,5):_ (4,0):_ (4,1):_ (4,2):_ (4,3):X (4,4):_ (4,5):_(4,6):_ (3,1):O (3,3)向右检查:(3,3):O,不是X,停。总共零X。
-垂直:检查到向下:(2,2):X,(1,2):X,(0,2):X .总共3 X。x的制胜一招。
-对角线1:向左上方检查:(4,1):_,不是X,停;向右下方检查:(2,3):X,(1,4):X,(0,5):O,停止。总共2 X,不够。
-对角线2:向右上方检查:(4,3):X,(5,4):_;向左下方检查:(2,1):O. 1 X,不够。
检查O: -水平:向左检查:(3,1):O,(3,0):_;向右检查:(3,3):O,(3,4):O .共3 O。o的制胜一招。
-垂直:检查到向下:(2,2):x . O共。
-对角线1:向左上方检查:(4,1):_,不是O,停;向右下方检查:(2,3):X. 0 O。
-对角线2:向右上方检查:(4,3):X;向左下方检查:(2,1):O,(1,0):X,1 O,不够。
在这个例子中,在检查了除(3,2)之外的所有有效移动之后,结果应该是[中级思考结果1: (3,2)],[中级思考结果2: (3,2)]。
2.**策略分析* *从你之前的观察来看,如果检查后有胜招,直接选择。否则,如果你的对手有一个胜利的移动,阻止它。如果不是这样,请根据以下策略选择最佳行动:*寻找机会同时创造多条成功线。如果你有两个圆盘水平地排成一行,两个圆盘倾斜地排成一行,把下一个圆盘放在正确的位置可能会导致多方面的胜利。例如,你在[(0,1),(1,2),(2,2),(2,1)]有圆盘,然后把你的下一个圆盘放在(2,3)将连接两条线:[(0,1),(1,2),(2,3)]和[(2,1),(2,2),(2,3)]。如果你的对手有两个连续的圆盘在水平方向排成一行,阻止他们在那一行得到第三个圆盘。
例如,如果你的对手在[(0,1),(0,2)]有牌,那么将你的下一张牌放在(0,3)或(0,0)来阻挡他们。
*将中间列视为战略起点。将您的光盘放在中间的栏中,可以让您有更多的机会在不同的方向创建获奖线。通过在中间的柱子中玩耍来充分利用你的开始移动。
*提前计划:提前考虑一两个步骤。试着预测你的对手可能的目标,并据此计划你的策略。例如,如果你的对手在(3,3)上有一个赢棋,而(2,3)不是你的赢棋,你不应该把(2,3)作为你的棋,避免(3,3)成为你对手的有效棋。
*尽量将3张碟片排成一排,两端留有空隙。
3.**结论* *在本节中,根据您之前的分析,清楚地陈述您对放置下一张光盘的位置的决定,并给出解释。
4.**选择的移动** *在这个部分,只输出选择的移动
*格式为:“choosed Move:(a,b)”,其中a是要放置光盘的行号(0-5),b是列号(0-6)。
F.7德州扑克德州扑克提示
您是玩德州扑克的专业玩家。
**游戏规则** 1。德州扑克是一种流行的扑克游戏,有两张私人牌和五张公共牌。
2.双方玩家都以100个筹码开始下注,游戏结束时筹码最多的玩家获胜。如果你的筹码降到0,你就输了。
3.该游戏包括四轮下注:翻牌前、翻牌圈、转牌圈和河牌圈。在翻牌圈、转牌圈和河牌圈,分别出现三张、一张和一张公共牌。
4.在每一轮,玩家可以选择弃牌、过牌和跟注、加注半底池、加注满底池,全押。
-弃牌:弃牌,放弃任何可能赢得底池的筹码,并且不再下注。
-过牌跟注:如果没有下注,玩家可以选择“过牌”,这意味着他们不想下注,并把牌传给下一个玩家。当一名玩家选择“跟注”时,他们承诺的筹码数量等于前一名玩家的下注或加注。
-加注半底池:加注的金额等于当前底池的一半。
-加注满底池:加注金额等于当前底池的大小。
-全押:赌上你所有剩余的筹码。
5.拥有最好五张牌的玩家赢得底池。
6.手牌从高到低排列为:皇家同花顺、同花顺、四张同花、满堂红、同花顺、顺子、三张同花、两对、一对、大牌。
排名1 -皇家同花顺:A,K,Q,J,10都是同一花色。
排名2 -同花顺:同花色的连续五张牌。最高牌赢。
等级3 -四张相同的牌:四张相同等级的牌。等级高者胜;如果相同,比较第五张卡片。
等级4 -满座:一个等级的三张牌和另一个等级的两张牌。三张牌等级高者胜;如果相同,比较两个卡的等级。
排名5 -同花顺:同花色的五张不连续的牌。比较最高的牌,然后是第二高的牌,依此类推。
排名6 -顺子:连续五张不同花色的牌。最高牌赢。
等级7 -三张相同的牌:三张相同等级的牌。更高的等级获胜。
等级8 -两对:一个等级的两张卡和另一个等级的两张卡。首先比较较高的一对,然后是较低的一对,然后是第五张牌。
等级9 -一对:两张相同等级的牌。首先比较对子,然后是最高的未配对牌,然后是第二高的牌,依此类推。
排名10 -高牌:如果不能形成手牌,最高牌获胜。如果最高的牌相同,则比较第二高的牌,以此类推。卡片从A,K,...到3,2,这里A最高。
**输入* *您将收到以下输入:*您的两张私人卡。
*显示的社区卡。
*你的筹码在锅里。
*您对手在底池中的筹码。
**输出* *提供您选择的操作。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。
遵循思维流程:1。**战略分析* *根据您的两张私人牌和显示的社区牌,评估您的获胜概率。
*翻牌前:给定一手私人牌的获胜概率如下,[AA:84.9%,KK:82.1%,QQ:79.6%,JJ:77.1%,TT:74.7%,99:71.7%,88:68.7%,77:65.7%,66:62.7%,55:59.6%,44:56.3%,33:52.9%,22:49.3%,AKs:66.2% T7:46.5%,T6:44.6%,T5:42.6%,T4:41.8%,T3:40.9%,T2:40.1%,98s:48.9%,98o:46.1%,98:46.8%,97:44.8%,96:42.9%,95:40.9%,94:38.9%,93:38.3%,92:37.4%,87s:45.7%,80% t表示10。
判断哪个是你的私人手,输出对应的中奖概率。格式为“[中级思维成果1: XXX]”。比如你的私手是“迪亚曼3,迪亚曼4”,那么就是43s,输出【中级思维结果1: 35.7%】。
如果赢的概率大于57%,你可以考虑加注或全押。如果中奖概率小于43%,可以考虑盖牌。但是,如果你的筹码和对手的筹码都在
*你目前的牌局排名以及提高排名的概率。
*社区卡和潜在的中奖组合。
*对手可能的牌和下注模式。
*底池赔率和隐含赔率。
*您在牌桌和下注回合中的位置。
*偶尔可以考虑诈唬,但注意有风险,只能低频率使用。
2.**结论* *根据你之前的分析,清楚地陈述你的决定和理由。
3.**选择的动作** *在这个部分中,只输出选择的动作。不要包含任何其他单词。
*格式为:“盖牌”、“过牌跟注”、“加注半锅”、“加注满锅”、“全进”。
F.8谈判v2谈判提示v2
你是博弈论谈判的专家。
**游戏规则** *游戏由两个玩家组成,玩家1和玩家2。
*在库中,有多个项目可供洽谈。每个物品对每个玩家都有不同的价值(对方玩家不知道)。但是对于每个玩家来说,这些项目的总值都是30。
*玩家协商分享物品。每个玩家的目标是最大化通过谈判获得的物品的总价值。
*在每一轮中,玩家可以接受对手的提议,也可以提议对物品进行新的划分。如果提议被接受,游戏结束,玩家根据提议获得物品。玩家将获得他们所获得物品的总价值。
*在8轮谈判后,游戏有20%的机会在每轮结束。如果游戏在没有达成协议的情况下结束,双方玩家都将获得0奖励。
**输入* *该库包含3个不同数量的项目。
您将收到以下输入:*可供协商的每种项目的数量列表。
*每一项对你的价值。
*前几轮谈判的历史。
**输出* *根据谈判历史,你同意对手的最新提议吗?如果没有,请提供您建议的项目划分。在做决定之前,阐明你的内部思维过程。您的表现将根据中间思考结果和最终决定进行评估。
遵循思维流程:1。**对提案的评估* *根据前几轮谈判,评估对手的最新提案。
*首先,为您计算项目的总价值并输出结果。格式为“[中级思维成果1: XXX]”。例如,如果最后一轮的提议是[P1: (3,3,2),P2: (2,1,1)],而你是项目值为[2,5,0]的玩家2,你的总价值是2*2+5*1+0*1=9。【中级思维成果1: 9】。
*然后,对对手之前的提议进行同样的计算。并将以前的建议和最新的建议的总价值进行比较。你的对手是否为你提出了更好的提议?*根据对手的提议,推断出对手最看重的物品。
2.**战略分析* *根据您的评估,做出考虑以下因素的决策:*由于您池中物品的总价值为30,如果您收到的价值低于总价值的一半,即15,您应该考虑提出一个新的,而不是接受它。
*考虑回合数和游戏结束的几率。在更早的回合中,你可能会提出一个更激进的划分,以最大化你的价值,但在后面的回合中(例如大于8),你可能会考虑更加合作,以避免游戏在没有达成协议的情况下结束。
*提出新的提议时,考虑你最看重的项目和你的对手最看重的项目。如果你们两个有相同的最有价值的物品,你可以考虑提议分配给你们更多的物品。
*考虑你的建议的接受率。分析你在前一轮被拒绝的提议,并做出调整。
*你也可以考虑在游戏开始时隐藏你的有价值的物品,在后面的回合中显露出来,以引导对手接受你的提议。但是请注意,这有点冒险。
*在提出新的建议时,不要让项目的总价值少于15英镑。可以设置更高的门槛。
3.**检查有效性* *如果您正在制定新提案,请检查提案的有效性。比如Pool: [X,Y,Z],Proposal: [P1: (X1,Y1,Z1),P2: (X2,Y2,Z2)],确定X1+X2=X,Y1+Y2=Y,Z1+Z2=Z
如果提议无效,您需要重新提议。
对于有效的建议,输出项目的总价值。严格按照格式:“【中级思维成果2: XXX】”。
4.**结论* *在这一节中,根据你先前的分析,清楚地陈述你的决定和理由。
5.**建议** *在此部分中,仅输出建议。不要包含任何其他单词。
*如果同意对方的提议,输出“提议:[同意]”。如果您不同意,输出您建议的项目划分。格式为:“提议:[P1: (X,X,X),P2: (X,X,X)]”,其中X为每种的项数。
标签:对手,游戏,Outcomes,棋子,Games,LLM,玩家,Transparent,评估
From: https://blog.csdn.net/weixin_43961909/article/details/145066353