程序代码相似度度量算法研究.docVIP

  • 4
  • 0
  • 约1.09万字
  • 约 4页
  • 2019-06-28 发布于江西
  • 举报
第 29 卷 第 17 期计算机工程与设计 第 29 卷 第 17 期 计算机工程与设计 Computer Engineering and Design 2008 年 9 月 Sept. 2008 Vol . 2 9 No . 1 7 程序代码相似度度量算法研究 邓爱萍 (湖南人文科技学院 计算机科学技术系,湖南 娄底 417000) 摘 要:代码剽窃是程序设计课程中经常出现的一种作弊行为,检测剽窃的源代码、验证学生程序作业的原创性在教学中 很重要。程序代码的相似度度量是剽窃检测的关键技术。通过对现有程序代码相似度度量技术进行研究后,基于 Karp-Rabin 和最长公共子串算法思想,提出了一种改进的源代码相似度度量算法,即串的散列值匹配算法。 关键词:源代码; 相似度度量; 剽窃检测; 串匹配算法; 散列值匹配 文章编号:1000-7024 (2008) 17-4636-04 中图法分类号:TP311.52 文献标识码:A Study on similarity measurement of program code DENG Ai-ping (Department of Computer Science, Hunan Institute of Humanitles, Science and Technology, Loudi 417000, China) Abstract:Code plagiarism is one kind of cheat behavior, which appears frequently in the programming curriculum. Detection of source code plagiarism is important to verify the originality of students’ project works. The code similarity measurement is the key technology in the plagiarizing detection. The similarity measurement of program code is studied first, then the string’s hash value matching arithmetic which based on Karp-Rabin and longest common substring algorithm is provided, and the results show the improved arithmetic is effective. Key words:source code; similarity measure; plagiarism detection; string matching arithmetic; hash value matching 1996 年指出,对于仅仅使用属性计数法的检测算法,增加向量 维数并不能改善错误率。改进属性计数法的措施就是加入程 序的结构信息,结合结构度量来检测剽窃。McCabe 提出的圈 复杂度方法是一种典型的结构度量法。它通过计算执行路径 的数量来衡量一个程序中的控制流。圈复杂度只给出了程序 的一个结构特征即控制流,往往需要与其它特征结合使用,因 此常作为属性计数法中的一个度量指标。其它的结构度量法 还有分析控制结构、计算代码嵌套深度、分析数据依赖关系等。 在实际应用中,很多代码剽窃检测系统将两种度量方法相结 合。Donaldson et al.开发的 ACCUSE 系统结合属性计数法和结 构度量法来实现对 Fortran 程序代码的剽窃检测。最近提出的 系统大都是通过对表达源程序结构的字符串进行比较来达到 剽窃检测的目的,如:Plague, JPlag, SIM, MOSS,YAP 系列等。 另外,Faith 和 Robinson 提出使用 24 个分量来评估代码的 相似程度,前 10 个是主要针对初学者的低级的剽窃,其它的 用于有经验的剽窃;Jankowitz 方法通过对代码中的主程序和 方法进行语法分析,得到静态执行树,用于对代码的分析等。 综上所述,应用于程序代码剽窃检测系统中的代码相似 度度量方法可分成两类:属性计数技术和结构度量技术。 1.1 属性计数技术 在剽窃检测算法的发展过程中,大多数工作集中在 Hal- stead 的软件科学理论。这些基于软件科学度量的算法是从程 序中提取出数个软件度量特征,计算每一个程序的 n 个不同 0 引 言 程序代码相似度度量技术主要应用在代码的剽窃检测 上。判断一个程序

文档评论(0)

1亿VIP精品文档

相关文档