We introduce a new type of programming challenge called programming puzzles, as an objective and comprehensive evaluation of program synthesis, and release an open-source dataset of Python Programming Puzzles (P3). Each puzzle is defined by a short Python program $f$, and the goal is to find an input $x$ which makes $f$ output "True". The puzzles are objective in that each one is specified entirely by the source code of its verifier $f$, so evaluating $f(x)$ is all that is needed to test a candidate solution $x$. They do not require an answer key or input/output examples, nor do they depend on natural language understanding. The dataset is comprehensive in that it spans problems of a range of difficulties and domains, ranging from trivial string manipulation problems that are immediately obvious to human programmers (but not necessarily to AI), to classic programming puzzles (e.g., Towers of Hanoi), to interview/competitive-programming problems (e.g., dynamic programming), to longstanding open problems in algorithms and mathematics (e.g., factoring). The objective nature of P3 readily supports self-supervised bootstrapping. We develop baseline enumerative program synthesis and GPT-3 solvers that are capable of solving easy puzzles -- even without access to any reference solutions -- by learning from their own past solutions. Based on a small user study, we find puzzle difficulty to correlate between human programmers and the baseline AI solvers.


翻译:我们引入了一种新型的编程挑战,称为编程拼图,作为对程序合成的客观和全面的评估,并发布一个开放源数据集(P3) Python 编程拼图(P3) 。每个拼图都由一个简短的 Python 程序来定义,目标是找到一个输入方x$,使美元输出成为“ True ” 。这个拼图是客观的,因为每个输入方的拼图完全由其核查器源代码 $f.f(x) 美元来指定,因此,要测试一个候选解决方案,就需要评估美元(x) 。它们不需要关键或输入/输出示例,也不依赖于自然语言理解。数据集是全面的,因为它涉及一系列困难和领域的问题,从人类程序(但不一定是AI)直接可见的小串操作问题到典型的编程拼图拼图(例如河内塔),到访谈/竞争性拼图问题(例如动态编程),到算法和数学(e.ving) 的解算和数学长期的解算(例如,不易读的算器)的解算和数学解算方法基础基础基础基础研究,我们很容易地支持了自己的解算的自我学习基础的路径。

0
下载
关闭预览

相关内容

持续学习最新综述论文,29页pdf
专知会员服务
117+阅读 · 2021年4月22日
专知会员服务
17+阅读 · 2020年9月6日
【经典书】贝叶斯编程,378页pdf,Bayesian Programming
专知会员服务
247+阅读 · 2020年5月18日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
MIT新书《强化学习与最优控制》
专知会员服务
275+阅读 · 2019年10月9日
意识是一种数学模式
CreateAMind
3+阅读 · 2019年6月24日
逆强化学习-学习人先验的动机
CreateAMind
15+阅读 · 2019年1月18日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
五个精彩实用的自然语言处理资源
机器学习研究会
6+阅读 · 2018年2月23日
【推荐】自然语言处理(NLP)指南
机器学习研究会
35+阅读 · 2017年11月17日
Capsule Networks解析
机器学习研究会
11+阅读 · 2017年11月12日
【推荐】决策树/随机森林深入解析
机器学习研究会
5+阅读 · 2017年9月21日
【推荐】SVM实例教程
机器学习研究会
17+阅读 · 2017年8月26日
【推荐】TensorFlow手把手CNN实践指南
机器学习研究会
5+阅读 · 2017年8月17日
Arxiv
0+阅读 · 2021年11月9日
Arxiv
0+阅读 · 2021年11月8日
Arxiv
0+阅读 · 2021年11月5日
VIP会员
相关VIP内容
持续学习最新综述论文,29页pdf
专知会员服务
117+阅读 · 2021年4月22日
专知会员服务
17+阅读 · 2020年9月6日
【经典书】贝叶斯编程,378页pdf,Bayesian Programming
专知会员服务
247+阅读 · 2020年5月18日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
MIT新书《强化学习与最优控制》
专知会员服务
275+阅读 · 2019年10月9日
相关资讯
意识是一种数学模式
CreateAMind
3+阅读 · 2019年6月24日
逆强化学习-学习人先验的动机
CreateAMind
15+阅读 · 2019年1月18日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
五个精彩实用的自然语言处理资源
机器学习研究会
6+阅读 · 2018年2月23日
【推荐】自然语言处理(NLP)指南
机器学习研究会
35+阅读 · 2017年11月17日
Capsule Networks解析
机器学习研究会
11+阅读 · 2017年11月12日
【推荐】决策树/随机森林深入解析
机器学习研究会
5+阅读 · 2017年9月21日
【推荐】SVM实例教程
机器学习研究会
17+阅读 · 2017年8月26日
【推荐】TensorFlow手把手CNN实践指南
机器学习研究会
5+阅读 · 2017年8月17日
Top
微信扫码咨询专知VIP会员