摘要
为了检测程序设计类课程中出现的作业抄袭行为,提出一种基于抽象语法树的抄袭检测方法.该方法根据多种语言的文法文件,用语法分析工具生成对应的抽象语法树(AST),利用计算生物学中序列匹配算法进行程序相似度计算,提取程序相似部分的AST特征,生成空间向量,通过聚类分析找出"抄袭团伙".实验结果表明,该方法对抄袭行为具有较好的检测效果,能准确地找出"抄袭团伙".
To detect plagiarism on programming course,AST-based plagiarism detection method is proposed.First,parsing the code generated the corresponding Abstract Syntax Tree(AST).Biology sequence matching algorithms are used to calculate the similarity of the program.Find the similar part of the code,and then extract the AST feature in this part.Generated vector space model,and then find "copycluster" by clustered the feature.Experiments show that this method has a good effect on the detection of plagiarism and can find the "copy cluster" accurate.
出处
《内蒙古师范大学学报(自然科学汉文版)》
CAS
北大核心
2012年第4期385-392,共8页
Journal of Inner Mongolia Normal University(Natural Science Edition)
基金
国家自然科学基金资助项目(60940027)
内蒙古自然科学基金资助项目(2010MS0906)
关键词
抄袭检测
抽象语法树
序列匹配
聚类分析
plagiarism detection
AST
sequence alignment
cluster analysis