CN108197186B - 一种应用于社交网络中的动态图匹配查询方法 - Google Patents
一种应用于社交网络中的动态图匹配查询方法 Download PDFInfo
- Publication number
- CN108197186B CN108197186B CN201711435481.9A CN201711435481A CN108197186B CN 108197186 B CN108197186 B CN 108197186B CN 201711435481 A CN201711435481 A CN 201711435481A CN 108197186 B CN108197186 B CN 108197186B
- Authority
- CN
- China
- Prior art keywords
- graph
- query
- matching
- ball
- result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000010276 construction Methods 0.000 claims abstract description 31
- 238000005457 optimization Methods 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims description 46
- 238000004088 simulation Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 20
- 230000003068 static effect Effects 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 4
- 230000009191 jumping Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 17
- 238000012217 deletion Methods 0.000 abstract description 7
- 230000037430 deletion Effects 0.000 abstract description 7
- 238000003780 insertion Methods 0.000 abstract description 7
- 230000037431 insertion Effects 0.000 abstract description 7
- 238000012958 reprocessing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000003313 weakening effect Effects 0.000 description 2
- 238000010420 art technique Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出一种应用于社交网络中的动态图匹配查询方法。本发明为每个输入查询生成最优k(top‑k)个团队,供用户选择满足需求的团队。本发明将现有图匹配查询方法进行扩展并提出一种新的图匹配查询方法,使其能够表达出团队构建问题的实际需求,用于解决最优k个团队构建问题;基于应用中动态环境对于动态计算方法需求的日益增加,提出并研究动态的最优k个团队构建问题,处理伴有查询图和数据图连续更新的团队构建查询,并支持同时的或单独的查询图和数据图上的节点和边的插入和删除更新;提出统一的增量模型和优化方法,统一处理连续的查询图和数据图更新。
Description
技术领域
本发明涉及一种图匹配查询方法,尤其涉及一种应用于社交网络中的动态图匹配查询方法。
背景技术
团队构建在数据挖掘领域被广泛研究与应用,其目标是在搜索一组满足团队技术需求的团队成员基础上,最小化团队成员之间的沟通成本。沟通成本的定义是该问题的关键研究点,比如定义为由团队成员构成的生成子图的直径,密度,最小生成树,斯坦纳树以及两两成员之间距离的总和。
现有技术中的图查询分为很多种类,如点查询、路径查询、图匹配查询等等,其中关于图匹配查询的研究工作近年来被相继提出。图匹配查询即给定一个查询模式图P和一个数据图G,在数据图G中查找满足查询图P中标签和拓扑结构约束的子图。尽管查询模式图P结构都一样,由于“匹配”语义的不同,图匹配查询形成了子图同构、图模拟以及其扩展强模拟等不同的图匹配查询语言。传统的图匹配查询是基于子图同构语义定义的,然而该语义是NP-完全问题,其查询效率较低,并且由于子图同构要求搜索数据图中与查询图具有完全相同的拓扑结构的子图,通常命中率很低,这些因素限制了子图同构的应用范围。随着应用中图数据库规模的不断扩大,需要找到一个高效率及高性能的查询算法。因此,最近相关研究试图通过减少或者减弱匹配的约束条件来提高图匹配查询的实用性。图模拟语义通过减弱查询图的结构约束条件,即将搜索与查询图结构完全相同的匹配图变为搜索只保持边的对应关系的匹配图,将问题的时间复杂度由NP-完全转化为多项式时间。由于图模拟极大程度减弱了匹配的约束条件,导致匹配图规模过大,且结果过于松散。为了保证匹配结果的准确性,各种图模拟的扩展语义相继被提出。强模拟在保证图模拟的匹配条件外,额外增加了结构匹配条件,从而有效的保证了图的拓补结构匹配,在时间复杂度和查询准确度两方面做了平衡。然而,这些现有技术远远不能满足不断出现的新兴应用下的查询需求。
增量技术由于其高效的处理性能特点被广泛应用于很多领域,在图匹配查询领域和团队构建领域也有很多的研究和应用。增量技术是指当输入数据有变化时,复用已有查询结果再结合输入数据变化部分增量处理得出输入数据变化后的查询结果,从而避免重新处理,提高系统处理的效率。
在现有技术中,团队构建问题以最小化所有团队成员之间的沟通成本为目标函数,忽略了特定团队成员之间的合作关系。在实际应用中构建团队时,往往不需要所有团队成员之间都有合作关系,而是需要拥有某些技能的团队成员之间可以紧密合作。另外,对于每种技能,需要至少有特定个数的成员拥有该项技能进而可以完成工作任务,并且要求成员个数不能多于某个数值,从而使得查询到的团队满足经费预算。图匹配查询语义具有多样性,需要根据具体应用需求设计合适准确的查询语义,而且在定义查询语言的过程中需要在其表达应用需求准确性和计算复杂度之间做出平衡。
在现有技术中,一个团队构建查询是在一个高度动态的环境下执行的,需要很多努力才能找到理想的团队,而且用户通常会多次完善查询信息来得到满足用户需求的查询结果。此外,现实生活中的社交网络数据图很大,并且随着时间的推移不断演变。然而,现有图匹配查询的增量技术仅考虑了数据图变化后的增量处理,而从未考虑输入查询图变化的增量处理技术。现有团队构建问题只考虑处理连续任务,每当团队构建需求的查询有变化时,需要重新处理更新后的查询在数据图中的查询结果,导致系统处理效率过低,根据用户输入查询得到满足用户需求团队的时间过长。
发明内容
为了解决上述问题,本发明提出了一种应用于社交网络中的动态图匹配查询方法。本发明旨在利用动态图匹配查询方法解决社交网络中的动态团队构建问题。相对于传统团队构建技术为每个查询只生成一个最优的团队,本发明为每个输入查询生成最优k(top-k)个团队,供用户选择满足需求的团队。
本发明首先将现有图匹配查询方法进行扩展并提出一种新的图匹配查询方法,使其能够表达出团队构建问题的实际需求,用于解决最优k个团队构建问题。然后,基于应用中动态环境对于动态计算方法需求的日益增加,本发明基于动态的最优k个团队构建问题,提出处理伴有查询图和数据图连续更新的团队构建查询,并支持同时的或单独的查询图和数据图上的节点和边的插入和删除更新的方法。最后,本发明设置统一的增量模型和优化方法,统一处理连续的查询图和数据图更新
在实际应用中,本发明首次提出对查询图的更新,也是迄今为止所考虑的最广泛和最实用的动态设置。
本发明解决的技术问题和达到的技术效果为:本发明将现有图匹配查询方法进行扩展并提出一种新的图匹配查询方法,通过利用查询图的结构特征和容量特征来解决最优k个团队构建问题。本发明中基于团队模拟的图匹配查询方法,对传统的基于图模拟的图匹配进行修改,提出一个获取最优k个团队的处理方法。本发明解决了查询图的可满足性问题,并提出两种优化方法:增量处理内层球中的图匹配查询和基于密度的过滤方法,以加速处理过程。
为了解决团队构建查询的高度动态环境的问题,本发明基于动态的最优k个团队构建,使用统一的增量计算模型来分别或同时处理查询图和数据图的连续更新。本发明中基于查询图划分和标注增量影响区域的增量处理策略,将查询图和数据图更新带来的全局影响局域化。由于静态top-k查询的一个常用优化方法是提前结束优化技术,即不需要执行完毕所有处理过程即可以确定并输出最优k个查询结果,因此在本发明中,当仅处理连续查询图更新时,增量top-k查询采用反馈优化方法,在增量处理过程中提前输出最优k个查询结果并在后台继续获取维护下一轮增量处理所依赖的中间结果,从而提高增量处理的性能。
附图说明
图1为本发明静态最优k个团队构建图匹配查询方法的流程图;
图2为本发明动态top-k提前反馈的处理流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明采用图匹配方法来解决传统的团队构建问题。图匹配方法根据查询图和匹配语义的不同会形成不同的图匹配查询语义。本发明对传统的基于“图模拟”的图匹配语义进行修改,采用基于“团队模拟”的图匹配语义,使其能够表达出团队构建问题的实际需求,即团队结构需求和团队成员的容量需求。
团队构建问题中,数据图G(V,E)表示专业人员合作关系图,节点集合V表示所有专业人员,每个节点有标签标注该成员的专业技能,E表示专业人员之间的合作关系,两个节点之间存在边当且仅当两个成员在以往项目中有过良好的合作关系。查询图P(Vp,Ep)用Vp表示查找成员的集合,每个成员有标签表示需要查找的成员的专业技能,以及容量区间表示所需成员的个数,用Ep表示所需成员之间的合作关系,即团队成员之间的结构关系。
团队模拟:给定查询图P,数据图G,正整数半径r,数据图G与查询图P基于团队模拟匹配当且仅当数据图G中存在一个半径为t的球G[v,t](t∈[1,r],t为正整数),使得
(1)P与球G[v,t]通过图模拟匹配,相应的匹配生成子图为Gs;
(2)对于P中的所有节点v,并且Gs中v的匹配节点个数满足P中v上的容量要求。
其中所述Gs是数据图G中的球G[v,t]中与P匹配的完美匹配子图,即查询图P与数据图G基于团队模拟匹配的一个团队查询结果。所述球G[v,t]的引入使得查询团队的半径被限制在r内,即团队成员之间具有紧密的合作关系。
本发明解决静态最优k个团队构建问题的方法为,给定查询图P,数据图G,正整数半径r和正整数最优团队个数k,最优k团队构建问题即从G中查找k个密度最大的完美子图,所述k为正整数。
一个子图Gs(Vs,Es)的密度为|Es|/|Vs|,Gs的密度越大,说明Gs的节点之间的边越多。
在团队构建问题中,完美匹配子图Gs表示一个团队,Vs表示团队成员,Es表示团队成员之间的合作关系,Gs密度越大,说明团队成员之间的合作越紧密。
本发明中静态最优k团队构建方法包括两个主要模块:查询图可满足性检查模块,团队模拟处理模块,本发明中两个加速计算过程的优化方法为增量处理内层球中的图匹配查询优化方法和基于密度的过滤优化方法。
本发明的查询图可满足性检查与图模拟及其扩展图匹配语义不同,由于查询图的节点上存在容量限制,因此存在一些查询图不能通过团队模拟图匹配语义匹配任何数据图。因此在执行团队模拟查询处理之前,为每个用户输入的查询图执行查询图可满足性检查操作。
本发明的团队模拟处理方法是扩展基于图模拟的图匹配查询处理方法来处理基于团队模拟的图匹配查询,并保持同样的计算时间复杂度。
本发明中增量处理内层球中的图匹配查询优化方法为:最优k个团队构建问题是在数据图G中的球G[v,t]内找到top-k个最优团队,其中v∈V并且t∈[1,r],k为正整数。然而构造所有r|V|个球并在所有这些球中执行图匹配处理花销太大。因此本发明采用内层球增量处理方法,只需要构造和获取数据图G中|V|个以每个节点为球心半径为r的球中的匹配结果,即v∈V且半径为r的球G[v,r]中的匹配结果,然后基于球G[v,r]中的匹配结果增量的得出球G[v,t](t∈[1,r-1])中的匹配结果。
本发明基于密度的过滤优化方法,在处理过程中过滤一部分球进一步减少构建球和在球中执行图匹配查询的次数,从而加速处理过程。其关键是判断一个球是否可能产生最终top-k个结果中的一个结果。给定一个球G[v,r],计算其密度上界den_up(Gs),其中所述Gs是G[v,r]中与P匹配的任意一个完美匹配子图,所述den_up(Gs)为球G[v,r]中所有可能的完美匹配子图Gs的最大值。如果den_up(Gs)大于当前最优的第k个结果的密度,那么该球中有可能存在最终top-k个匹配结果中的一个结果;否则,该球被过滤掉,以避免多余的处理。
静态最优k个团队构建图匹配查询方法的工作流程如图1所示:
步骤1.给定数据图G,用户输入查询图P,检查P的可满足性,即检查P上的容量要求是否能够使得P在数据图G上找到匹配结果。
步骤2.为数据图G中的球G[v,r](v∈V)计算密度上界den_up(Gs)。
步骤3.如果den_up(Gs)小于当前最优的第k个结果的密度,则过滤掉该球,并跳至步骤2,为数据图G中的下一个球执行系列操作;否则,进入步骤4。
步骤4.在球G[v,r]中为查询图P处理基于团队模拟的图匹配结果,并将结果添加至当前top-k结果列表。
步骤5.基于G[v,r]中匹配结果,为所有内层球G[v,t](t∈[1,r-1])增量处理其中图匹配结果,将结果添加至top-k结果列表。跳至步骤2为G中的下一个球执行系列操作。
步骤6.当为数据图G中的所有球执行完毕步骤2-5后,输出最终k个密度最大的匹配结果,作为查找到的k个最优团队。
本发明解决动态最优k个团队构建问题,处理伴有查询图和数据图连续更新的团队构建查询,并支持同时的或单独的查询图和数据图上的节点和边的插入和删除更新。其中,本发明中的查询图P的更新包括五种类型:边插入,边删除,节点插入,节点删除,以及节点上的容量变化。
本发明中的数据图G的更新有四种类型:边插入,边删除,节点插入,以及节点删除。
在社交网络中,动态最优k个团队构建问题为:给定查询图P,数据图G,正整数半径r和正整数最优团队个数k,P在G中的最优k个团队Lk(P,G),查询图更新集合ΔP,数据图更新集合ΔG,表示更新后的查询图P,表示更新后的数据图G。动态最优k个团队构建问题即从中查找与匹配的k个密度最大的完美匹配子图Lk
为了解决动态最优k个团队构建问题,本发明采用统一的增量处理模型来分别或同时处理查询图和数据图的连续更新。在本发明中,增量处理基于P在G中的最优k个团队结果Lk(P,G),增量处理得出在的最优k个团队结果而不需要重新处理,从而提高处理效率。
增量处理相对重新处理会显著提高系统处理效率,因为增量处理仅需要处理查询图或数据图变化部分带来的查询结果中的变化部分,而避免了查询结果中未变化部分的重新处理。然而增量更新,特别是查询图更新带来的影响往往是全局的,此时增量处理相当于重新处理查询结果中的所有部分,时间花费等于重新处理,这极大限制了增量处理的效率。
本发明提出的增量处理模型基于查询图划分和标注增量影响区域增量处理策略。通过所述增量策略,本发明将查询图和数据图更新带来的全局影响局域化。
本发明的查询图划分策略为:给定查询图P,划分块数h,{P_f1(V_f1,E_f1),…,P_fh(V_fh,E_fh),C}是查询图P(Vp,Ep)的一个h-划分,且∪_(i=1)^hV_fi=Vp,对于任意i≠j∈[1,h],E_fi是V_fi在P中附有的所有边,C=Ep\(E_f1∪…∪E_fh)。
本发明中P_fi(i∈[1,h])是P的一个局部查询图,C是P的划分割。通过将查询图划分成h个局部查询图,本发明将作用于P上的查询更新转变为作用在某个局部查询图P_fi上或者划分割C上,从而将查询更新的影响由全局范围限制为局域范围。在增量计算过程中,只需要增量计算查询图变化部分即P_fi在G中的查询结果,而不需要重新计算剩余所有未变化部分P_fj(j∈[1,h],j≠i)在G中的查询结果,再将P_fi在G中的查询结果与原有所有未变化部分P_fj在G中的查询结果合并,得到更新变化后的查询图在G中的查询结果。
为了进一步提高查询效率,在查询图划分的基础上,本发明采用标注增量影响区域处理策略来定位查询图更新和数据图更新为查询结果更新带来的影响区域。增量计算过程中,一个增量算法必须访问数据图G中的一个球才能输出正确结果,所述球为增量影响球,所述增量影响球的集合即为增量影响区域。对于ΔP和ΔG,增量影响球是可能含有最终结果的球,增量计算过程中只访问所述增量影响球,而忽略其余的球。具体而言,对于查询图更新ΔP,该策略允许避免为每个球中的每个变化的局部查询图增量计算查询结果;对于数据图更新ΔG,团队模拟语义的局部性性质支持将数据图更新影响定位于因ΔG而产生结构变化的一组增量影响球中。
基于查询图划分和标注增量影响区域这两个增量策略,本发明中采用统一的增量计算模型来分别或同时处理连续的查询图更新和数据图更新。
给定查询图P和查询图的一个h-划分{P_f1(V_f1,E_f1),…,P_fh(V_fh,E_fh),C},数据图G,两个正整数r和k,中间存储结构(比如P_fi在G中所有球内的局部中间结果),查询图更新ΔP和数据图更新ΔG,本发明的增量计算方法步骤为:
步骤1.标注增量影响区域:增量方法分别调用两个不同的子过程来分别为ΔP和ΔG标注增量影响区域;对于同时产生的ΔP和ΔG,增量方法取两个子过程的输出作为总的影响区域。
步骤2.更新局部中间结果并维护中间数据结构:对于受ΔP影响的增量影响区域中的任意一个增量影响球,增量计算得出更新的局部查询图在这个球中的局部中间结果;对于受ΔG影响的增量影响区域中的任意一个增量影响球,增量计算得出所有的局部查询图在这个球中的局部中间结果;对于一个受ΔP和ΔG共同影响的增量影响区域中的任意一个增量影响球,增量计算得出所有的局部查询图在这个球中的局部中间结果。在更新局部中间结果的同时维护其他的中间数据结构,以处理连续到来的查询图和数据图更新。
步骤3.合并局部中间结果:增量方法在每一个增量影响球中,合并更新后的局部中间结果和原有未变化的局部中间结果,得到所述增量影响球中的完美匹配子图。基于匹配结果再根据静态最优k个团队构建方法中的优化方法计算得出所有增量影响球的所有内层球中的完美匹配子图,并综合计算得出密度最大的k个完美子图作为查找到的k个最优团队。
当处理连续查询图更新时,本发明在增量计算模型中采用提前反馈优化方法,以进一步提高计算效率。
增量top-k查询提前反馈优化方法为:静态top-k查询的一个常用优化方法是提前结束优化技术,即不需要执行完毕所有计算过程即可以确定并输出最优k个查询结果。基于这种考虑,当仅处理连续查询图更新时,本发明为增量top-k查询设计了提前反馈优化技术,即在增量计算过程中提前输出最优k个查询结果并在后台继续计算维护下一轮增量计算所依赖的中间结果,从而提高整个社交网络系统的处理效率。
如图2所示为本发明的动态top-k查询提前反馈优化的具体工作流程:
步骤1.给定查询图更新ΔP,在G中标记ΔP的增量影响区域。
步骤2.将增量影响区域中的所有增量影响球根据球的密度上界按降序排列。
步骤3.在增量影响区域中,按密度上界降序依次访问每一个增量影响球G[v,r],其密度上界为den_up(Gs)。
步骤4.如果当前已经找到k个匹配结果并且den_up(Gs)小于当前最优的第k个结果的密度,则当前密度最大的k个匹配结果即为全局密度最大的k个匹配结果,输出作为增量更新后查找到的k个最优团队,进入步骤(5),输出结果之后的所有计算均为后台计算;否则,直接进入步骤5。
步骤5.增量影响球G[v,r]中,增量计算得出更新的局部查询图在这个球中的局部中间结果并维护中间数据结构。
步骤6.合并增量影响球G[v,r]中的所有局部中间结果。基于G[v,r]中匹配结果,为所有内层球G[v,t](t∈[1,r-1])计算其中图匹配结果,并将结果添加至top-k结果列表。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (5)
1.一种应用于社交网络中的动态图匹配查询方法,其特征在于,图匹配方式包括动态图匹配和静态图匹配两种方式,所述动态图匹配查询方法基于查询图划分和标注增量影响区域的增量处理策略,将查询图和数据图更新带来的全局影响进行局域化处理;设置增量处理模型来分别或同时处理查询图和数据图的连续更新,所述增量处理基于查询图P在数据图G中的最优k个团队结果Lk(P,G),增量处理得出在的最优k个团队结果所述ΔP为查询图更新,所述ΔG为数据图更新,在所述增量处理过程中,增量处理查询图变化部分即P_fi在G中的查询结果,再将P_fi在G中的查询结果与原有所有未变化部分P_fj在G中的查询结果合并,获得更新变化后的查询图在G中的查询结果,所述P_fi和P_fj(i,j∈[1,h])是P的一个局部查询图,所述h为划分块数。
2.如权利要求1所述的方法,其特征在于,增量top-k查询提前反馈优化流程为:步骤1,给定查询图更新ΔP,在G中标记ΔP的增量影响区域;步骤2,将增量影响区域中的所有增量影响球根据球的密度上界按降序排列;步骤3,在增量影响区域中,按密度上界降序依次访问每一个增量影响球G[v,r],其密度上界为den_up(Gs);步骤4,如果当前已经找到k个匹配结果并且den_up(Gs)小于当前最优的第k个结果的密度,则当前密度最大的k个匹配结果即为全局密度最大的k个匹配结果,输出作为增量更新后查找到的k个最优团队,进入步骤5,输出结果之后的所有处理均为后台处理;否则,直接进入步骤5;步骤5,增量影响球G[v,r]中,增量处理得出更新的局部查询图在这个球中的局部中间结果并维护中间数据结构;步骤6,合并增量影响球G[v,r]中的所有局部中间结果,基于G[v,r]中匹配结果,为所有内层球G[v,t](t∈[1,r-1])获取其中图匹配结果,并将结果添加至结果列表,其中,G[v,r]是以v为球心半径为r的球,v是G中的一个节点,r是用户设置正整数;G[v,t](t∈[1,r-1])是以v为球心半径为t的球,t的值在区间[1,r-1]内且t为正整数;Gs是数据图G中的球G[v,r]中与P匹配的完美匹配子图;den_up(Gs)为球G[v,r]中所有可能的完美匹配子图Gs的密度的最大值。
3.如权利要求1所述的方法,其特征在于,所述静态图匹配方式进行最优k个团队构建图匹配查询的步骤为:步骤1,给定数据图G,用户输入查询图P,检查P的可满足性,即检查P上的容量要求是否能够使得P在数据图G上找到匹配结果;步骤2,设置正整数半径r,在数据图G中的球G[v,r](v∈V)中计算密度上界den_up(Gs);步骤3,如果den_up(Gs)小于当前最优的第k个结果的密度,则过滤掉该球,并跳至步骤2,为数据图G中的下一个球执行系列操作,否则,进入步骤4;步骤4,在球G[v,r]中为查询图P获取基于团队模拟的图匹配结果,并将结果添加至当前top-k结果列表;步骤5,基于G[v,r]中匹配结果,为所有内层球G[v,t](t∈[1,r-1])增量获取其中图匹配结果,将结果添加至top-k结果列表,跳至步骤2为数据图G中的下一个球执行系列操作;步骤6,当为数据图G中的所有球执行完毕步骤2-5后,输出最终k个密度最大的匹配结果,作为查找到的k个最优团队,其中,G[v,r]是以v为球心半径为r的球,V是数据图G的节点集合,v∈V表示v是属于V中的一个节点,r是用户设置正整数;G[v,t](t∈[1,r-1])是以v为球心半径为t的球,t的值在区间[1,r-1]内且t为正整数;Gs是数据图G中的球G[v,r]中与P匹配的完美匹配子图;den_up(Gs)为球G[v,r]中所有可能的完美匹配子图Gs的密度的最大值。
4.如权利要求1所述的方法,其特征在于,所述数据图G与所述查询图P基于团队模拟图匹配,即当且仅当数据图G中存在一个以v为球心半径为t的球G[v,t](v∈V),所述V是数据图G的节点集合,v是属于V中的一个节点,t的值在区间[1,r]内且t为正整数,所述r为正整数,使得以下条件成立:P与球G[v,t]通过图模拟匹配,相应的匹配生成子图Gs;对于P中的所有节点v,所述Gs中v的匹配节点个数满足P中v上的容量要求,所述Gs是数据图G中的球G[v,t]中与P匹配的完美匹配子图,即查询图P与数据图G基于团队模拟图匹配的一个团队查询结果。
5.如权利要求3所述的方法,其特征在于,所述图匹配查询步骤采用增量处理内层球中的图匹配查询优化方法和基于密度的过滤优化方法进行优化,所述增量处理内层球中的图匹配查询优化方法为:构造和获取数据图G中|V|个以每个节点为球心半径为r的球中的匹配结果,即v∈V且半径为r的球G[v,r]中的匹配结果,基于球G[v,r]中的匹配结果增量的获取球G[v,t](t∈[1,r-1])中的匹配结果;所述基于密度的过滤优化方法:给定一个球G[v,r],计算密度上界den_up(Gs),其中Gs是G[v,r]中与P匹配的任意一个完美匹配子图,den_up(Gs)为球G[v,r]中所有可能的完美匹配子图Gs的密度的最大值,如果den_up(Gs)大于当前最优的第k个结果的密度,那么该球中有可能存在最终top-k个匹配结果中的一个结果;否则,该球被过滤掉,其中,V是数据图G的节点集合,|V|是数据图G中的节点总个数,v∈V表示v是属于V中的一个节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711435481.9A CN108197186B (zh) | 2017-12-26 | 2017-12-26 | 一种应用于社交网络中的动态图匹配查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711435481.9A CN108197186B (zh) | 2017-12-26 | 2017-12-26 | 一种应用于社交网络中的动态图匹配查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108197186A CN108197186A (zh) | 2018-06-22 |
CN108197186B true CN108197186B (zh) | 2021-11-12 |
Family
ID=62584302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711435481.9A Active CN108197186B (zh) | 2017-12-26 | 2017-12-26 | 一种应用于社交网络中的动态图匹配查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108197186B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382315B (zh) * | 2018-12-29 | 2024-04-05 | 阿里巴巴集团控股有限公司 | 子图同构匹配结果的合并方法、电子设备及存储介质 |
CN110046747B (zh) * | 2019-03-19 | 2021-07-27 | 华中科技大学 | 一种面向图流的社交网络用户间路径规划方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102693308A (zh) * | 2012-05-24 | 2012-09-26 | 北京迅奥科技有限公司 | 一种面向实时搜索的缓存方法 |
CN103077216A (zh) * | 2012-12-28 | 2013-05-01 | 中国科学院深圳先进技术研究院 | 子图匹配装置及子图匹配的方法 |
CN103678671A (zh) * | 2013-12-25 | 2014-03-26 | 福州大学 | 一种社交网络中的动态社区检测方法 |
CN105138600A (zh) * | 2015-08-06 | 2015-12-09 | 四川长虹电器股份有限公司 | 基于图结构匹配的社交网络分析方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150186427A1 (en) * | 2013-12-26 | 2015-07-02 | Telefonica Digital Espana, S.L.U. | Method and system of analyzing dynamic graphs |
-
2017
- 2017-12-26 CN CN201711435481.9A patent/CN108197186B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102693308A (zh) * | 2012-05-24 | 2012-09-26 | 北京迅奥科技有限公司 | 一种面向实时搜索的缓存方法 |
CN103077216A (zh) * | 2012-12-28 | 2013-05-01 | 中国科学院深圳先进技术研究院 | 子图匹配装置及子图匹配的方法 |
CN103678671A (zh) * | 2013-12-25 | 2014-03-26 | 福州大学 | 一种社交网络中的动态社区检测方法 |
CN105138600A (zh) * | 2015-08-06 | 2015-12-09 | 四川长虹电器股份有限公司 | 基于图结构匹配的社交网络分析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108197186A (zh) | 2018-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Jovanovic et al. | Ant colony optimization algorithm with pheromone correction strategy for the minimum connected dominating set problem | |
US8326825B2 (en) | Automated partitioning in parallel database systems | |
CN112013829A (zh) | 基于多目标优化的多uav/ugv协同长时作业路径规划方法 | |
CN101482876B (zh) | 基于权重的链接多属性的实体识别方法 | |
Larki et al. | Solving the multiple traveling salesman problem by a novel meta-heuristic algorithm | |
CN110059264A (zh) | 基于知识图谱的地点检索方法、设备及计算机存储介质 | |
CN112817312B (zh) | 一种基于双重搜索优化算法的路径规划方法 | |
Mu et al. | Multi-objective ant colony optimization algorithm based on decomposition for community detection in complex networks | |
CN102902772A (zh) | 一种基于多目标优化的Web社区发现方法 | |
CN111709560A (zh) | 一种基于改进蚁群算法的解决车辆路径问题方法 | |
CN104137095A (zh) | 用于演进分析的系统 | |
CN105654187A (zh) | 控制系统中点定位方法之网格二叉树法 | |
CN108197186B (zh) | 一种应用于社交网络中的动态图匹配查询方法 | |
CN103729694A (zh) | 基于多色集合层次结构的改进ga求解柔性车间调度的方法 | |
CN104978498A (zh) | 生物分子网络拓扑结构比对的自适应方法 | |
CN116050689B (zh) | 一种广域空间铁路线路智能搜索方法、系统、终端及介质 | |
CN105512755A (zh) | 一种基于分解的多目标分布估计优化方法 | |
CN106445913A (zh) | 基于MapReduce的语义推理方法及系统 | |
CN104657901A (zh) | 一种基于随机游走的标签传播社区发现方法 | |
CN108052743B (zh) | 一种阶梯接近中心度确定方法及系统 | |
CN117193988A (zh) | 一种晶圆级架构ai加速芯片的任务调度方法及介质 | |
Tan et al. | Genetic algorithms based on clustering for traveling salesman problems | |
Wu et al. | A dynamic multistage hybrid swarm intelligence optimization algorithm for function optimization | |
CN106330559B (zh) | 基于MapReduce的复杂网络拓扑特征参数计算方法和系统 | |
CN108804582A (zh) | 基于大数据间复杂关系的图数据库优化的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |