Automatic program synthesis is a long-lasting dream in software engineering. Recently, a promising Deep Learning (DL) based solution, called Copilot, has been proposed by OpenAI and Microsoft as an industrial product. Although some studies evaluate the correctness of Copilot solutions and report its issues, more empirical evaluations are necessary to understand how developers can benefit from it effectively. In this paper, we study the capabilities of Copilot in two different programming tasks: (i) generating (and reproducing) correct and efficient solutions for fundamental algorithmic problems, and (ii) comparing Copilot's proposed solutions with those of human programmers on a set of programming tasks. For the former, we assess the performance and functionality of Copilot in solving selected fundamental problems in computer science, like sorting and implementing data structures. In the latter, a dataset of programming problems with human-provided solutions is used. The results show that Copilot is capable of providing solutions for almost all fundamental algorithmic problems, however, some solutions are buggy and non-reproducible. Moreover, Copilot has some difficulties in combining multiple methods to generate a solution. Comparing Copilot to humans, our results show that the correct ratio of humans' solutions is greater than Copilot's suggestions, while the buggy solutions generated by Copilot require less effort to be repaired.


翻译:自动程序合成是软件工程中梦寐以求的目标。最近,OpenAI和Microsoft提出了一种基于深度学习的解决方案Copilot,作为一种工业产品。尽管一些研究评估了Copilot解决方案的正确性并报告了它的问题,但需要更多的经验性评估来理解开发人员如何有效地从中受益。在本文中,我们研究了Copilot在两个不同的编程任务中的能力:(i) 生成(和再现)基本算法问题的正确且高效解决方案,以及(ii) 将Copilot的提议解决方案与人类程序员的解决方案进行比较。对于前者,在计算机科学中选择的基本问题中评估了Copilot的性能和功能,例如排序和实现数据结构。对于后者,使用人类提供的解决方案的编程问题数据集。结果表明,Copilot能够为几乎所有基本算法问题提供解决方案,但一些解决方案是有缺陷且不可重现的。此外,Copilot有些难以将多种方法组合起来生成解决方案。将Copilot与人类进行比较,我们的结果显示人类的解决方案正确率大于Copilot的建议,而由Copilot生成的有缺陷的解决方案需要更少的修复工作。

0
下载
关闭预览

相关内容

[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
TensorFlow 2.0 学习资源汇总
专知会员服务
66+阅读 · 2019年10月9日
八个不容错过的 GitHub Copilot 功能!
CSDN
11+阅读 · 2022年9月22日
AI帮写代码67元/月!
夕小瑶的卖萌屋
0+阅读 · 2022年6月27日
CALDERA 一款对手自动模拟工具
黑白之道
20+阅读 · 2019年9月17日
RoBERTa中文预训练模型:RoBERTa for Chinese
PaperWeekly
57+阅读 · 2019年9月16日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
Arxiv
0+阅读 · 2023年6月1日
Arxiv
1+阅读 · 2023年5月31日
Arxiv
15+阅读 · 2021年11月19日
VIP会员
相关资讯
八个不容错过的 GitHub Copilot 功能!
CSDN
11+阅读 · 2022年9月22日
AI帮写代码67元/月!
夕小瑶的卖萌屋
0+阅读 · 2022年6月27日
CALDERA 一款对手自动模拟工具
黑白之道
20+阅读 · 2019年9月17日
RoBERTa中文预训练模型:RoBERTa for Chinese
PaperWeekly
57+阅读 · 2019年9月16日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
相关基金
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
Top
微信扫码咨询专知VIP会员