Program equivalence for assisted grading of functional programs

Program equivalence for assisted grading of functional programs
复制标题

功能程序辅助评分的程序等效性

DOI:
10.1145/3428239
复制
发表时间:
2020
影响因子:
--
通讯作者:
Acar, Umut A.
Acar, Umut A.
中科院分区:
--
文献类型:
--
作者:
Clune, Joshua;Ramamurthy, Vijay;Martins, Ruben;Acar, Umut A.

文献摘要

参考文献

被引文献

相似文献

在涉及编程作业的课程中,给学生有意义的反馈是一个重要的挑战。人类可以通过手动评分程序来提供有用的反馈,但这是一个耗时,劳动密集型,并且通常无聊的过程。自动评分器速度快,可扩展性好,但它们通常提供的反馈很差。虽然已经有研究提高自动分级机,缩放和提高人类grading的研究是limited.我们建议通过增加手动分级过程中的等价算法,可以识别学生提交之间的等价物来缩放人类grading。这使人类评分员能够一次为多个学生提交的内容提供有针对性的反馈。我们的技术在两个方面是保守的。首先,它识别算法相似的提交之间的等效性,例如,它不能识别快速排序和合并排序之间的等价性。其次,它使用形式化的方法,而不是机器学习文献中的聚类算法。这使我们能够证明一个可靠的结果,保证提交永远不会错误地聚集在一起。尽管只有报告等价时,有算法的相似性和正式证明等价的能力,我们表明,我们的技术可以显着减少评分时间从介绍函数编程课程的数千个编程提交。
In courses that involve programming assignments, giving meaningful feedback to students is an important challenge. Human beings can give useful feedback by manually grading the programs but this is a time-consuming, labor intensive, and usually boring process. Automatic graders can be fast and scale well but they usually provide poor feedback. Although there has been research on improving automatic graders, research on scaling and improving human grading is limited.We propose to scale human grading by augmenting the manual grading process with an equivalence algorithm that can identify the equivalences between student submissions. This enables human graders to give targeted feedback for multiple student submissions at once. Our technique is conservative in two aspects. First, it identifies equivalence between submissions that are algorithmically similar, e.g., it cannot identify the equivalence between quicksort and mergesort. Second, it uses formal methods instead of clustering algorithms from the machine learning literature. This allows us to prove a soundness result that guarantees that submissions will never be clustered together in error. Despite only reporting equivalence when there is algorithmic similarity and the ability to formally prove equivalence, we show that our technique can significantly reduce grading time for thousands of programming submissions from an introductory functional programming course.
DOI: 10.1145/1040305.1040311
发表时间: 2005-01
期刊: --
影响因子: --
作者:
Eijiro Sumii;B. Pierce
通讯作者: Eijiro Sumii;B. Pierce
编程作业自动评分:一种基于形式语义的方法
DOI: --
发表时间: 2019
期刊: Proceedings - International Conference on Software Engineering
影响因子: --
作者:
Liu, Xiao;Wang, Shuai;Wang, Pei;Wu, Dinghao
通讯作者: Wu, Dinghao
互模拟与克里普克逻辑关系的结合
DOI: 10.1145/2103656.2103666
发表时间: 2012
期刊: 2023 38th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)
影响因子: --
作者:
C. Hur;Derek Dreyer;Georg Neis;Viktor Vafeiadis
通讯作者: Viktor Vafeiadis
DOI: 10.2168/lmcs-7(2:16)2011
发表时间: 2011-01-01
影响因子: 0.6
作者:
Dreyer, Derek;Ahmed, Amal;Birkedal, Lars
通讯作者: Birkedal, Lars
SyTeCi:通过引用自动实现高阶程序的上下文等效
DOI: 10.1145/3371127
发表时间: 2019
影响因子: --
作者:
Jaber G
通讯作者: Jaber G