子图同构检测方法、装置、设备及存储介质制造方法及图纸

技术编号:36932218 阅读:44 留言:0更新日期:2023-03-22 18:54
本发明专利技术公开一种子图同构检测方法、装置、设备及存储介质。通过获取检索图和目标图,以第一预设条件判断检索图为目标图的子图时,获取以检索图中的各节点为根的检索根子树和以目标图中的各节点为根的目标根子树,以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图,在二部图中的所有节点为匹配点时,判定检索图和目标图之间存在子图同构。相较于现有的通过寻找目标图中的所有匹配判断目标图是否与检索图之间存在子图同构,本发明专利技术能够将指数级别计算复杂度的子图同构问题转化为具有多项式级别复杂度的子树匹配问题,从而有效地降低子图同构检测的计算复杂度,保证子图同构检测的效果。证子图同构检测的效果。证子图同构检测的效果。

【技术实现步骤摘要】
子图同构检测方法、装置、设备及存储介质


[0001]本专利技术涉及子图匹配
,尤其涉及一种子图同构检测方法、装置、设备及存储介质。

技术介绍

[0002]图数据作为一种通用的数据形式,因为其对复杂结构的优秀表达能力而被广泛的应用于各类场景。其中,子图同构或子图匹配是一个关键并且极具挑战性的图相关任务。给定一张小的检索图和一张大的目标图,子图同构旨在决定检索图是否与目标图的子图同构。现有的技术中,通常将子图同构视为一个组合优化问题,目标是精确的找到目标图中的所有匹配,这使得该问题成为了NP完全问题,NP完全问题的英文全称是Non

deterministic Polynomial的问题,即多项式复杂程度的非确定性问题,求解该问题所使用的回溯框架具有指数级别的时间成本。因此,如何有效地降低子图同构检测的计算复杂度,成为一个亟待解决的问题。
[0003]上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。

技术实现思路

[0004]本专利技术的主要目的在于提供了一种子图同构检测方法、装置、设备及存储介质,旨在解决如何有效地降低子图同构检测的计算复杂度的技术问题。
[0005]为实现上述目的,本专利技术提供了一种子图同构检测方法,所述子图同构检测方法包括以下步骤:获取检索图和目标图;以第一预设条件判断所述检索图为所述目标图的子图时,获取以所述检索图中的各节点为根的检索根子树和以所述目标图中的各节点为根的目标根子树;以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图;在所述二部图中的所有节点为匹配点时,判定所述检索图和所述目标图之间存在子图同构。
[0006]可选地,所述以第一预设条件判断所述检索图为所述目标图的子图时,获取以所述检索图中的各节点为根的检索根子树和以所述目标图中的各节点为根的目标根子树的步骤之前,还包括:获取所述检索图中的所有检索节点和所述目标图中的所有目标节点;生成所述检索图中以所述检索节点为根的第一根子树和所述目标图中与所述检索节点对应的目标节点为根的第二根子树;在所述目标节点包含所述检索节点且所述第二根子树包含所述第一根子树时,判定所述检索图为所述目标图的子图。
[0007]可选地,所述获取所述检索图中的所有检索节点和所述目标图中的所有目标节点的步骤,具体包括:获取所述检索图中的所有初始检索节点和检索无弦环;根据所述初始检索节点和所述检索无弦环确定所述检索图中的所有检索节点;获取所述目标图中的所有初始目标节点和目标无弦环;根据所述初始目标节点和所述目标无弦环确定所述目标图中的所有目标节点。
[0008]可选地,所述以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图的步骤之前,还包括:获取所述目标节点中与所述检索节点中的单射检索节点之间存在单射的单射目标节点;获取所述目标图中以所述单射目标节点为根的第三根子树和所述检索图中以所述单射检索节点为根的第四根子树;在所述目标根子树包含所述检索根子树且所述第三根子树包含所述第四根子树时,判定所述检索根子树为所述目标根子树的子树。
[0009]可选地,所述以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图的步骤,具体包括:以第二预设条件判断所述检索根子树为所述目标根子树的子树时,将所述检索根子树转换为一阶检索根子树,将所述目标根子树转换为一阶目标根子树;根据所述一阶检索根子树和所述一阶目标根子树确定所述一阶检索根子树和所述一阶目标根子树之间的二部图。
[0010]可选地,所述根据所述一阶检索根子树和所述一阶目标根子树确定所述一阶检索根子树和所述一阶目标根子树之间的二部图的步骤,具体包括:获取所述一阶检索根子树中与所述一阶目标根子树中的各节点存在单射关系的对应节点;获取所述一阶检索根子树中以所述一阶检索根子树中的各节点为根的第五根子树;获取所述一阶目标根子树中以所述对应节点为根的第六根子树;根据所述第五根子树和所述第六根子树确定所述一阶检索根子树和所述一阶目标根子树之间的二部图。
[0011]可选地,所述在所述二部图中的所有节点为匹配点时,判定所述检索图和所述目标图之间存在子图同构的步骤之前,还包括:获取所述二部图中检索节点的子集和所述子集对应的子集数量;获取所述二部图中所述子集对应的邻居集数量;在所述邻居集数量大于所述子集数量时,判定所述二部图中的所有节点为匹配点。
[0012]此外,为实现上述目的,本专利技术还提供一种子图同构检测装置,所述子图同构检测装置包括:图获取模块,用于获取检索图和目标图;根子树获取模块,用于以第一预设条件判断所述检索图为所述目标图的子图时,
获取以所述检索图中的各节点为根的检索根子树和以所述目标图中的各节点为根的目标根子树;二部图获取模块,用于以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图;子图同构判定模块,用于在所述二部图中的所有节点为匹配点时,判定所述检索图和所述目标图之间存在子图同构。
[0013]此外,为实现上述目的,本专利技术还提出一种子图同构检测设备,所述子图同构检测设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的子图同构检测程序,所述子图同构检测程序配置为实现如上文所述的子图同构检测方法的步骤。
[0014]此外,为实现上述目的,本专利技术还提出一种存储介质,所述存储介质上存储有子图同构检测程序,所述子图同构检测程序被处理器执行时实现如上文所述的子图同构检测方法的步骤。
[0015]本专利技术通过获取检索图和目标图,以第一预设条件判断检索图为目标图的子图时,获取以检索图中的各节点为根的检索根子树和以目标图中的各节点为根的目标根子树,以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图,在二部图中的所有节点为匹配点时,判定检索图和目标图之间存在子图同构。本专利技术通过将子图匹配转换为检测检索根子树与目标根子树是否匹配,然后获取获取检索根子树和目标根子树之间的二部图,在二部图中的所有节点为匹配点时,即二部图存在完美匹配时,判定检索图和目标图之间存在子图同构,相较于现有的通过寻找目标图中的所有匹配判断目标图是否与检索图之间存在子图同构,本专利技术上述方式能够将指数级别计算复杂度的子图同构问题转化为具有多项式级别复杂度的子树匹配问题,进一步简化为线性复杂度,从而有效地降低子图同构检测的计算复杂度,同时保证了子图同构检测的效果。
附图说明
[0016]图1是本专利技术实施例方案涉及的硬件运行环境的子图同构检测设备的结构示意图;图2为本专利技术子图同构检测方法第一实施例的流程示意图;图3为本专利技术子图同构检测方法一实施例的检索图和目标图的示意图;图4为本专利技术子图同构检测方法第二实施例的流程示意图;图5为本专利技术子图同构检测装置第一实施例的结构框图。...

【技术保护点】

【技术特征摘要】
1.一种子图同构检测方法,其特征在于,所述子图同构检测方法包括以下步骤:获取检索图和目标图;以第一预设条件判断所述检索图为所述目标图的子图时,获取以所述检索图中的各节点为根的检索根子树和以所述目标图中的各节点为根的目标根子树;以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图;在所述二部图中的所有节点为匹配点时,判定所述检索图和所述目标图之间存在子图同构。2.如权利要求1所述的子图同构检测方法,其特征在于,所述以第一预设条件判断所述检索图为所述目标图的子图时,获取以所述检索图中的各节点为根的检索根子树和以所述目标图中的各节点为根的目标根子树的步骤之前,还包括:获取所述检索图中的所有检索节点和所述目标图中的所有目标节点;生成所述检索图中以所述检索节点为根的第一根子树和所述目标图中与所述检索节点对应的目标节点为根的第二根子树;在所述目标节点包含所述检索节点且所述第二根子树包含所述第一根子树时,判定所述检索图为所述目标图的子图。3.如权利要求2所述的子图同构检测方法,其特征在于,所述获取所述检索图中的所有检索节点和所述目标图中的所有目标节点的步骤,具体包括:获取所述检索图中的所有初始检索节点和检索无弦环;根据所述初始检索节点和所述检索无弦环确定所述检索图中的所有检索节点;获取所述目标图中的所有初始目标节点和目标无弦环;根据所述初始目标节点和所述目标无弦环确定所述目标图中的所有目标节点。4.如权利要求3所述的子图同构检测方法,其特征在于,所述以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图的步骤之前,还包括:获取所述目标节点中与所述检索节点中的单射检索节点之间存在单射的单射目标节点;获取所述目标图中以所述单射目标节点为根的第三根子树和所述检索图中以所述单射检索节点为根的第四根子树;在所述目标根子树包含所述检索根子树且所述第三根子树包含所述第四根子树时,判定所述检索根子树为所述目标根子树的子树。5.如权利要求3所述的子图同构检测方法,其特征在于,所述以第二预设条件判断所述检索根子树为所述目标根子树的子树时,获取所述检索根子树和所述目标根子树之间的二部图的步骤,具体包括:以第二预...

【专利技术属性】
技术研发人员:刘轩舟张林杨海钦幺宝刚
申请(专利权)人:粤港澳大湾区数字经济研究院福田
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1