MARS: Multi-Specialist LLM Relay System for Competitive Programming
MARS 是一个仅基于提示词(prompt-only)的检索增强型多智能体框架,它通过接力系统利用特定主题的语言大模型来迭代优化程序设计竞赛解法,在 CodeContests 上实现了 0.624 的通过率,且与现有方法相比显著降低了成本和方差。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
在竞争激烈的程序设计竞赛这一高风险领域,计算机科学家和学生们面临着一个独特的挑战:在严格的时间限制内解决复杂的逻辑谜题。这些问题不仅仅是关于编写能运行的代码,它们还需要对特定的数学策略有深刻的理解,例如如何寻找点与点之间的最短路径,或者如何高效地组织数据。多年来,人工智能研究人员一直试图教会计算机掌握这些谜题。他们构建了一些系统,其中一个强大的计算机程序尝试一次性解决整个问题,或者由一组通用的数字助手将工作划分为规划、编码和检查。虽然这些方法有所改进,但当问题需要一种通用型选手可能会忽略的特定且深刻的洞察力时,它们往往会失手。核心难点在于,计算机程序在开始构建解决方案之前,需要准确知道该使用哪种数学工具,就像木匠在切割木材之前必须先选择合适的锯子一样。
一项新研究引入了一种不同的方法,它不将问题视为通用型选手的任务,而是将其视为一场由专家组成的接力赛。研究人员利用一个名为 MARS 的系统,设计了一个框架,在该框架下,计算机不再依赖单一的大脑来解决所有问题。相反,当出现一个困难的编程问题时,系统首先会咨询一个数字专家库,每位专家都受过特定领域的训练,如几何、图论或动态规划。系统会询问每位专家该问题是否符合其特定的知识领域。根据这些回答,它会组建一支由两到三名相关专家组成的小型定制团队来共同应对任务。这种方法确保了从一开始就能应用正确的知识,而不是寄希望于通用模型能靠运气偶然发现正确的策略。
一旦团队组建完毕,工作便开始以结构化的顺序进行。第一位专家用一种标准编程语言编写解法的初稿。随后,该草案立即针对问题提供的公测样例进行测试。测试结果会被反馈给同一位专家,由其决定是保留现有代码、修复错误,还是将草案传递给团队中的下一位专家。这个过程不断重复,每位专家都会根据测试提供的具体反馈来完善工作。如果一位专家无法改进代码,或者解法已经完整,他们就会将其移交给下一位成员。该系统包含一种安全机制,如果团队陷入停滞不前的循环中,则会停止该过程,以确保计算机不会在死胡同里浪费时间。最后,通过快速检查确保代码格式正确后进行提交。
该实验的结果是在一组由 165 个具有挑战性的编程问题组成的集合上进行衡量的。新系统 MARS 解决问题的百分比显著高于以往依赖单一模型或通用型团队的方法。具体而言,专门化团队方法解决了约 62% 的问题,相比于标准单模型方法所达到的 48%,这是一个显著的提升。研究人员发现,这种增益在最难的问题上最为剧烈,在这些问题上,专门化团队解决的任务数量是基准方法的两倍多。虽然另一个被称为 CodeSIM 的先进系统仍保持着最高的成功率,但新方法在达到相似性能水平的同时,使用的计算时间和资源却少得多。研究表明,通过将人工智能组织成能够实时检查并纠正彼此工作的专题型专家团队,计算机可以更有效地解决复杂的逻辑谜题。
研究人员还测试了该系统在不同底层“大脑”和编程语言下的表现。他们发现,专门化团队方法在各种模型中始终优于其他方法,证明了使用特定主题专家的策略是稳健的。然而,他们也指出,该系统仍然依赖于在安全隔离环境中运行代码以获取测试结果的能力。如果没有这种查看代码即时结果的能力,专家们就无法获得进行修正所需的反馈。研究结论认为,尽管在处理最高难度等级的问题上仍有改进空间,但从通用型团队向专门化、自我纠错式接力赛的转变,代表了在教导机器像专家级问题解决者一样思考方面迈出了具有意义的一步。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。