Recent years have seen a significant surge in complex AI systems for competitive programming, capable of performing at admirable levels against human competitors. While steady progress has been made, the highest percentiles still remain out of reach for these methods on standard competition platforms such as Codeforces. Here we instead focus on combinatorial competitive programming, where the target is to find as-good-as-possible solutions to otherwise computationally intractable problems, over specific given inputs. We hypothesise that this scenario offers a unique testbed for human-AI synergy, as human programmers can write a backbone of a heuristic solution, after which AI can be used to optimise the scoring function used by the heuristic. We deploy our approach on previous iterations of Hash Code, a global team programming competition inspired by NP-hard software engineering problems at Google, and we leverage FunSearch to evolve our scoring functions. Our evolved solutions significantly improve the attained scores from their baseline, successfully breaking into the top percentile on all previous Hash Code online qualification rounds, and outperforming the top human teams on several. Our method is also performant on an optimisation problem that featured in a recent held-out AtCoder contest.
翻译:近年来,复杂AI系统在编程竞赛领域取得了显著进展,其表现已达到可与人类选手相媲美的水平。尽管持续取得进步,但在Codeforces等标准竞赛平台上,这些方法仍难以触及最高百分位段。本文转而聚焦于组合式编程竞赛,其目标是在特定给定输入条件下,为计算难解问题寻找尽可能优的解决方案。我们假设该场景为人机协同提供了独特的测试平台:程序员可编写启发式解决方案的核心框架,随后利用AI优化启发式算法使用的评分函数。我们在Hash Code(谷歌受NP难软件工程问题启发创办的全球团队编程竞赛)往届赛题中部署该方法,并借助FunSearch进化评分函数。进化后的解决方案较基线得分显著提升,成功跻身历届Hash Code在线资格赛最高百分位段,并在多个赛题中超越顶尖人类团队。该方法在近期AtCoder竞赛的优化问题中也表现出优异性能。