基于程序依赖图的循环体克隆检测

来源 :天津大学 | 被引量 : 0次 | 上传用户:donglaoshi_imnu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来,随着计算机技术和软件开发领域的迅猛发展,代码克隆检测技术已经在计算机领域成为了一项越来越重要的研究课题。时至今日,文本层次的代码克隆检测技术已经发展得比较完善,基于文本、token、度量、抽象语法树的代码克隆方法已经很成熟了,学术界已经把目光投向了语义层次的克隆。由于语义层次的克隆在文本层次并没有太大的相似性,导致语义层次的克隆的难点诸多,包括去文本化、提炼代码核心功能、功能相似性检测等等。程序依赖图可以很好的解决以上的难点,但是却又存在着转化程序依赖图消耗过多、图比较困难等问题。本文从循环体克隆这一典型的语义层次的代码克隆入手,对利用程序依赖图展示出来的代码间依赖关系进行代码克隆展开了深入研究。主要工作为:(1)优化程序依赖图,只留下与循环体有关的信息,并且在剩余的节点中删除无意义节点,减少程序依赖图的规模。嵌套循环和条件语句的多层处理,对嵌套循环进行简化。(2)将循环体看作是内外两部分分别进行代码克隆判断,外部对迭代初始化和迭代条件进行判断,内部通过数据依赖和控制依赖对循环体逻辑进行判断,双方如果都判定为相同则为循环体代码克隆对。(3)构造针对于循环体克隆检测的数据集并进行实验,与其他工具进行比较。实验结果显示,本文提出的分层-依赖算法在真实数据集OJClone上的10个题目中进行循环体代码克隆检测的准确率高于其他工具并且在时间性能上不考虑前置处理的情况下优于其他工具。
其他文献
网络分析在实际中得到了广泛的应用。然而,现有的方法主要关注于单类型节点/边的同质网络,许多真实世界的网络由多种类型的节点和关系组成,因此同质网络分析方法不能很好地处理这种网络。此外,现有的网络分析方法往往存在计算量大的问题,需要一种低维的节点表示来提高网络分析任务的效率及效果。针对以上问题,本文围绕异质网络表示学习主要研究工作如下:首先,提出了融合key节点类结构的异质信息网络表示学习模型(KNC
随着互联网的快速发展,近年来复杂网络在推荐、城市尺度的风险评估和犯罪行为预测等研究领域受到广泛关注,在这些领域中广泛存在着二分网络,而网络表示学习是一种有效的网络分析方法,旨在将网络节点的表示映射到低维向量空间,但目前的网络表示学习方法大多针对同质网络,没有考虑二分网络的特殊性质,因此本文针对二分网络的隐含关系和拓扑结构特性提出了两个二分网络表示学习模型,具体工作如下:首先,提出了一种融合二分网络
LoRaWAN协议(Long-Range-Wide-Area-Network)是承载物联网技术实现的重要载体,随着近几年物联网技术的快速发展,物联网设备的入网安全问题受到人们广泛的关注。由于入网数据明文发送且加密密钥由用户直接保管,在发生数据泄露后,攻击者可使用恶意节点实施重放攻击来伪造数据进而破坏整个网络的正常运转。针对根密钥泄露后造成的重放攻击,本文提出了一种基于LoRaWAN入网的增强安全机
网络空间安全是当前安全领域的研究重点,其中无线网络因其开放性易受干扰性等特点,成为网络攻击的主要对象,因此,对无线网络入侵检测具有重要的意义。传统的入侵检测技术是针对无线网络中MAC层和网络层的数据信息,其基本方法是创建一个已知协议的正常行为的指纹数据库,对异常行为进行比对从而实现入侵检测。随着入侵检测需求的不断变化,当前急需能够在不依赖于具体网络协议的条件下对网络入侵行为进行识别。本文提出基于物
随着现代科技的急速发展,更加频繁的人类交互潜藏着更多的风险,因此对风险群体与个体的检测具有巨大的现实意义。利用高精度的、带有时间信息的手机信令数据构建动态网络,采用动态社团检测方法识别社团结构、演化分析、节点重要性和节点角色,可以实现城市风险管理中的风险团体识别、风险人员识别等功能。现有的动态方法在随机块模型的基础上引入转移矩阵来模拟复杂网络的动态演化,这些方法大多将社团内部的节点看作无差别的,忽
随着互联网信息技术的高速发展,基于互联网信息技术的各类产品已遍布我们的日常生活。新兴技术在带来便利的同时,也带来很多弊端。面对信息社会的大量数据与碎片化信息的冲击,如何处理好“人、互联网产品、环境”之间的复杂关系,成为了用户体验设计的关键。大多数的设计方法理论都将重点关注于用户意识层面的设计需求,却极少关注用户潜意识层面的设计需求,而用户的潜意识决定了95%的行为、决策、情绪。本文从用户潜意识层面
随着计算机技术的发展,视频在互联网、广播频道和个人设备上变得无处不在。同时促进了以分析视频内容为目的的先进技术的发展,可以被广泛应用于视频检索、自动字幕以及盲人导航等领域。几十年来,视频理解一直是计算机视觉的一个基本挑战。早期的研究主要集中用一个预定义的且非常有限的一组独立的单词描述视频。由于循环神经网络(RNN)的发展,研究人员努力用完整自然的句子自动描述视频内容,这可以被视为视频理解的最终目标
在大数据时代,为满足用户个性化需求,课题组构建了基于复杂网络算法进行人、物、组织、真假事件及相互关系的感知、理解、预测的情报分析框架IAF,从基于社会/物理/网络空间中人类电子足迹的大规模社交关联网络中,进行“人-事”加权二分网络预测研究是智能情报分析框架中预测模块的关键算法。本文的研究工作如下:首先,提出了基于层次注意力和潜在特征模型的个性化加权二分网络预测模型(HALF)。一方面,模型设计了一
随着汽车的普及,出行越来越便捷,但交通意外伤亡人数也在逐年攀升,人工智能被视为防止由人为因素导致的交通事故的有效解决方案。然而,就目前来说,开发出能够自如应对各种复杂多变路况下的无人驾驶系统仍然是当今世界的一项极具挑战的问题。本文以深度确定性策略梯度算法作为原始算法进行无人驾驶策略训练,使算法可以在无对手车辆、不以图像作为输入数据的情况下,通过距离、速度传感器、转速等数据感知环境状态,实现对油门、
长久以来,在语音生成的研究中,核磁共振图像是因为其扫描过程中不伤害人体的特点,被大量使用。受试者能在核磁共振扫描后继续完成声学数据采集,使得形态学数据和声学数据完整。然而,其图像质量往往被人诟病,尤其在鼻腔中,尤为明显,制约了继续的研究。以往的研究利用核磁共振图像建立声道模型,也有人用CT图像构建鼻腔模型。基于核磁共振图像构建鼻腔三维模型是一项创新。实验使用了高分辨率图像,初步建立了包含四组鼻腔核