第37卷 第18期 、,0l37 ・计算机工程 2011年9月 September 201 1 NO.18 Computer Engineering 软件技术与数据库・ 文章编号:1o00___3428(2o11)18—0o38—_03 文献标识码:A 中圈分类号:N945 基于空间布局约束的拓扑关联规则挖掘 方刚 (重庆三峡学院数学与计算机科学学院,重庆404000) 摘要:在空间拓扑关联挖掘中,为提取包含指定空间布局关系的拓扑关联规则,提出一种基于空间布局约束的拓扑关联规则挖掘算法, 该算法能够在多空间关系模式下,挖掘包含空间布局约束的拓扑关联规则,将空间关系事务转换成整数,通过空间布局约束重构非目标空 间对象类的权值向量,用重构权位值递减构建候选频繁项,并用布尔运算计算其支持数。实验结果表明,与传统挖掘算法相比,该算法的 挖掘速度更快、更有效。 关健词:拓扑关联;空间布局约束;向量重构;重构权位值;空间数据挖掘 Topology Association Rule Mining Based 0n Spatial Layout Constraint FANGGang (College of Mathematics and Computer Science,Chongqing Three Gorges University,Chongqing 404000,China) ]Abstract]In spatial topology association mining,in order to extract topology association rule with given spatial layout relation,this paper proposes an algorithm of topology association rule mining based on spatial layout constraint,which is able to extract topology association ulre with spatial layout constraint in multi—spatial relation patterns.The algorithm turns spatial relation transaction into integer,and refactors weight vector of non—target spatial object class via spatial layout constraint,and decreases refactoring weight value to generate candidate frequent item set,and computes its support via Boolean operation.When mining topology association ulre with given spatial layout relation,the algorithm is faster and more eficifent than traditional mining algorithm by these ways. ]Key words]topology association;spatial layout constraint;vector refactoring;refactoring weight;spatial data mining DOI:10.3969/j.issn.1000—3428.2011.18.013 1概述 在空间拓扑关联挖掘中,有时需要寻找包含指定空间布 局关系的拓扑关联规则,即挖掘带空间布局约束的拓扑关联 规则。目前空间关联规则挖掘方法主要有基于聚类的图层覆 盖方法、基于空间事务的挖掘方法和无事务的空间挖掘方法 等3种类型;基于空间事务的挖掘方法是在空间数据库中利 用空间叠加、缓冲区分析等方法发现空间目标和其他挖掘对 多层关联;故这里不考虑2个空间对象相等的情况,只研究 如表1所示的7种拓扑关系。 表1空间拓扑关系-=进倒数对应表 象之间组成的空间谓词,然后将空间谓词按照挖掘目标组成 空间事务数据库,进行布尔型关联规则挖掘,如文献[1】;这 类算法虽能在相同空间关系模式下挖掘单一空间关联,但却 2.1转换空间事务 根据基于空间事务的挖掘方法,在目标对象的缓冲区 内,要求其与非目标对象类之间存在唯一拓扑关系,即事务 中同类非目标对象与El标对象之间存在的多拓扑关系已分 不能有效地提取多空间关系模式下的多层关联,如典型的空 间拓扑关联 ;文献【4—5】提出的算法虽然能够有效地挖掘多 空间关系模式下的拓扑关联,但不能挖掘包含指定空间布局 关系的拓扑关联规则;Separate_o 、AFMCAR口 用于传统约束 离。转换空间事务的方法如下: 性关联规则挖掘,虽它们可以用于挖掘包含空间布局约束的 拓扑关联规则,但其却存在大量的重复候选项和冗余计算。 为此,本文提出一种基于空间布局约束的拓扑关联规则挖掘 算法TARMBSLC(Topology Association Rule Mining Based on 输入(1)一个目标对象O,,m种非目标对象类别(记为 ,={‘, ,…,f });(2)空间拓扑关系一二进制数对应表(见表1), 另用(000),表示非目标对象不在目标对象的缓冲区内;(3)一 个描述空间拓扑关系的事务 基金项目:重庆市万州区科技攻关计划基金资助项目(2010—23一O1); 重庆三峡学院科研基金资助项目(1lZD.18) Spatial Layout Constraint),该算法能够有效挖掘包含指定空 间布局关系的拓扑关联规则。 2基于空间布局约束的拓扑关联规则挖掘 空间拓扑关联是多空间关系模式下最复杂、最典型的空 作者简介:方[ ̄1J(1978--),男,副教授、硕士,主研方向:数据挖 E-mail:cqwzjsjfg@163.corn 间关联,本文将采用基于空间事务的挖掘方法,以空间拓扑 关联为例,介绍多空间关系模式下挖掘包含空间布局约束的 掘,数据库技术,地理信息系统 收稿刚啊:2011—04—11 第37卷第18期 方刚:基于空间布局约束的拓扑关联规则挖掘 39 输出一个整数 实现过程:先将非目标对象类按序排列;然后根据表1 将空间事务的拓扑关系转为二进制数;即若目标对象 与非 目标对象Ⅳ丁,(其类别为ik,即Ⅳ ∈ )之间存在表1中的某 种拓扑关系,就将其转为相应的二进制数;最后把所有的这 些二进制数按非目标对象类的顺序,排列构成二进制数,并 将其转为整数。 举例:设非目标对象类别的集合 =f i。,i2,i3,i4},确定 类别顺序为{4,3,2,1 J;设空间事务如图1所示,其中,实线 表示空间对象,虚线表示缓冲区:目标对象0,和非目标对象 Ⅳ (Ⅳ ∈i2)交叠,相接非目标对象Ⅳ (Ⅳ ∈i3),其包 含非目标对象Ⅳ (Ⅳ ∈i4),非目标对象Ⅳ (NL∈‘)不 在目标对象0r的缓冲区内。其对应的空间谓词为 {overlap( ,i,),touch( ,i3),contain(Dr,f4)},按类别顺序排 成二进制数(ooo,0l1,010,101)2=213。 Ot 图1 空问事务表示的空问拓扑关系 2.2相关定义及性质 设空间目标对象为 (t=l,2,…,n),即是 个用于研究的 空间对象;除去空间目标对象以外的其他挖掘对象称为非目 标对象,设其所属的空间对象类别为ik(k=l,2,…,m),即为空 问关联挖掘的对象。 定义1权值向量,记为w ,定义权值向量WV=(22,2 , 2。1。 定义2类权值向量,记为CWV,若非类别序号为k,则 CWV=2 一“.W1,。 定义3向量权位值,记为 ,是个整数,一个n维向 量 的权位值 ’,(’,)=2”一1。 定义4空间事务长度,记为STL,是个整数;其为目标 对象的缓冲区内包含非目标对象的类别个数。 举例:设空间事务ST={inside(Dl,‘),disjoint(Ol,i3), touch(Ol,i4),overlap(O1,i5)},其对应的二进制数p=(111,000, 001,010,011)2,其包含非目标的类别数为4,即{i ,i3,i4, }, 于是STL(ST)=STL(p)=4。 定义5空间事务对应整数的集合关系,空间事务 的 整数为 ,事务 的整数为 ,若 ,就记 , 且记 为 的子集,记 为t2"的超集。 举例:设非目标对象类的集合,_{‘,f’,f1,f4,f ), ={touch(O,i2),inside(O,i3),overlap(O,i5)),其得到二进制 数为(000,010,111,000,0l1),,对应的整数为1 475; ={inside (O,‘),overlap(O,‘)},其得到二进制数为(000,000,111,000, 0l1)2,对应的整数为45I;很明显 3 ,则451 31475。 定义6空间布局约束,记为SLC,是指定的空间布局条 件,其包含一个或多个空间关系,但空间关系中不能包含所 有空间类别。 定义7包含空间布局约束的拓扑关联规则,就是指从空 间数据库中挖掘包含空间布局约束的拓扑关联规则。其支持 度和置信度的定义与传统空间关联规则挖掘类似。 性质用于表示m个拓扑关系的二进制数P和q,P对应 的空间事务为 ,q对应的空间事务为 , sL的充 要条件是pAq=p且STL(qA( ))= 儿(q)一STL(p)。 推论1对m位二进制数P、q,P对应的整数为 ;q对 应的整数为 ,如果P八q=p,那么 ≤ 。 推论2空间事务 对应的整数为 ;空间事务 r,q对 应的整数为 ,如果 < ,那么 sL。 2.3产生空间拓扑候选频繁项的方法 如果用传统约束性关联规则算法Separate[61挖掘包含空 间布局约束的拓扑关联规则,其产生候选频繁项的原理是: 任何包含空间布局约束的某频繁( 1)一项目集,至少存在 2个具有相同(七一1)项的包含空间布局约束的频繁 一项子集。 用2种方式产生:一是主要利用连接函数产生,即任意2个 包含空问布局约束的具有( 一1)个共同项的 一项目集连接,生 成一个包含空间布局约束的候选( 1)一项目集;二是将包含 空间布局约束的(k一1)一项目集与频繁1一项目集进行一项扩展 产生。该算法产生的频繁项目集长度是递增的,但当频繁项 所含空间对象个数增多时,算法将会产生大量的重复候选项 和冗余计算,其效率会受到影响。 如果用算法AFMCAR 挖掘包含空间布局约束的拓扑 关联规则,其产生候选项的方法是从候选数字区问 的最大 值开始,用数值递减的方式产生候选;但在产生的候选数字 中有不包含空间布局约束的候选项,所以其存在冗余计算, 制约了算法效率的提高。 根据2.I节和2.2节可知,如果用AFMCAR算法挖掘多 空间模式下的拓扑关联,从候选数字区间产生的数字中不包 含空间布局约束的数目会增加,算法效率会更差;所以本算 法用空间布局约束重构非目标空间对象类的权值向量,用重 构权位值递减构建候选频繁项,克服其存在的不足。具体过 程如下: 设有m种非目标对象类,记为,={i ,i .-,‘},其排序 为{m,m一1,…,1};将空间布局约束转换成数值Int(SLC),非目 标对象中不包含空间布局约束类的类有s(1≤ < )种,则其类 别序号为{kl,k,,…,ks)。 (1)重构非目标对象中不包含空间布局约束类的类权值 向量,即删除空间布局约束的类,重新按原序排列类权值向 量,记为向量R=(23(k,-1)WV,23(k2-1)WV,…,23(k ̄-1)WV),则 vwv(R)=2 一1。 (2)确定产生候选频繁项的数字区间,即E=[1,VWV(R)]。 (3)设XE E,Xo=2 一1,记为向量 ( )=( l’b2,…,b3 )‘ ∈[0,1],其分量即为X的二进制形式;用递减X来产生候选 频繁项c ,即c =Int(SLC)十R・y( )。 举例:设空间非目标对象类有4种,-{A,B,C,D},其类 别序号为{4,3,2,1),若指定的空间布局约束SLC为 {overlap( ,B),touch(Dr,D)},其对应的二进制数为 (00o,011,000,010),,Int(SLC)=194,空间布局约束的对象类为 {曰,D),’则产生过程如下: (1)非目标对象中不包含空间布局约束类的类权值向量 有Cw =2 -wV和cw =2 WV,由定义1知道 WV=(2 ,2 ,2o),故重构排序得到R=(Cw ,cwv2)= (23×( ”.WV,23 ̄(2-”.WV)=(2”,2 ,2 ,2 ,2 ,23)。 (2)VWV(R)=2 一1=26_1=63,确定产生候选频繁项 计算机工程 2011年9月20日 的数字区间E=【1, w R)】,即【l,63]。 (3)候选频繁项的产生过程: XI=63,即V(xI)=(1,1,1,1,1,1) ,则有: C =lnt(SLC)+ ・ ( 1)= 194+2 +2 ‘ +2 +2 +2 +2 =3 834 X2=62,即V(xO=(L1,1,1,1,0) ,则有: C =lnt(SLC)+ ・y( ,)= 194+2“+2‘ ’+2 +2 +2 =3 826 X3=61,即V(x3)=(1,1,1,1,0,1) ,则有: C =Int(SLC)+R-V( )= 194+2”+2 。+2 +2 +2 =3 818 63=1,即V(x6 )=(0,0,0,0,0,1) ,则有: Int(SLC)+R・V(x63):194+2 =202 2.4计算支持效的方法 多数空间关联规则挖掘算法在计算支持数时,需要判断 空间事务是否支持候选频繁项。根据2.2节的性质,算法首 先用候选频繁项与空间事务对应的整数进行“与”运算,满 足条件后再判断长度条件,若2个条件都满足才能判断出事 l圣蓝靶心 务之间的支持关系;另外计算时只需扫描数据库中对应整数 4 2 O 8 6 4 2 大于或等于候选项整数的所有空间拓扑关系事务。∞0 ∞O ∞O ∞O ∞O ∞O O ∞ O 3算法的性能分析及实验比较 3.1算法的正确性和完备性分析 根据2.2节性质,证明了挖掘空间拓扑关联的正确性, 即空间事务之间的关系是可以正确判断的,保证了计算支持 数的正确性;另外,若空间非目标对象类别个数为m,空间 布局约束中的非目标对象类的个数为t(1≤t<m),则包含空间 布局约束的候选项个数最多有2 “一1个,而根据2.3节产 生候选频繁项的方法可以知道,产生候选频繁项的数字范围 E为 1 2 J_1】,所以不会遗漏频繁项,算法具有完备性。 3.2算法的性能分析 (1)时间复杂度分析 设数据库中不重复事务数为n(n≤2 ),空间非目标对 象类别个数为m,空间布局约束中的非目标对象类的个数为 23 ̄1 一I t(1≤f< ),则时间复杂度表示为:T:∑k+2 ’一1。 k=l (2)空问复杂度分析 算法将空间事务转换为整数进行压缩存储,其空间复杂 度可表示为O(s.nxM),M为最大项目集,S是一个与支持度 和空间布局约束类有关的参数。 3.3实验结果比较 用现有约束性关联规则挖掘算法Separate和AFMCAR, 与提出的TARMBSLC进行模拟实验比较。 测试数据:总数为7l 650,有4 095个不重复事务数, 其对应的整数为1~4 095,对事务的重复个数按“5”和“30” 交替出现,即4 095有5个,4 094有30个,4 093有5个, 4 092有30个,…,空间对象类别数为4。空间布局约束对 应的整数为3和9,其谓词分别表示为overlap(O,D)和 {disjoint(O,C),disjoint(O,D)J,O为目标对象类,C与D分 别为第3个和第4个非目标对象类别。 实验环境:Intel(R)Celeron(R)M CPU 420@1.60 GHz, 1.24 GB的内存,操作系统为Windows XP Professional,在 Visual C#2005.NET开发平台上实现Separate、AFMCAR和 TARMBSLC 3个算法。 在上述实验环境和挖掘数据库下,用Separate、AFMCAR 和TARMBSLC 3个算法挖掘频繁拓扑关联项目集,实现算 法效率的比较;在实验中通过2种空间布局约束条件,比较 算法随着支持度减少的运行时间;每种支持度下的运行时间 是多次测试结果的平均值。 在空间布局约束为overlap(O,D)下,算法运行时间随支 持度的变化比较情况如图2所示,在空间布局约束为 {disjoint(O,C),disjoint(O,D)}下,运行时间随支持度的变化 比较情况如图3所示。 0 4I9 0 279 0 14O 0 070 0 028 0 0l4 0 007 0 004 支持度H%) (a)Separate和TARMBSLC(约束整数为3) 虬n宣誓 i} 瑚 ㈨∞。 4 2 0 8 6 4 2 ∞∞∞∞∞∞∞ 0 0 O 0 0 O O 0 041 9 0 279 0 140 0070 0 028 0 0l4 0 007 0 004 支持度/(%) (b)AFMCAR和TARMBSLC(约束整数为3) 图2不同算法的运行时间比较1 0 419 0 279 0 140 0070 0 028 0 014 0007 0 004 支持度 %) (a)Separate和TARMBSLC(约束整数为9) 0 4I 9 0 279 0 140 0 070 0 028 0 014 0 007 0 004 支持度/(%) (b)AFMCAR和TARMBSLC(约束整数为9) 图3不同算法的运行时间比较2 从实验结果可知,在挖掘空间布局约束的拓扑关联规则 时,虽然Separate算法适合挖掘支持度较大的情况,此时频 繁拓扑关联项目集的平均长度较短,但其还是没有TARMB SLC算法快速;虽AFMCAR算法适合挖掘支持度较小的情 况,此时频繁拓扑关联项目集的平均长度较长,但其还是没 有T-ARMBSLC算法高效。 (下转第43页) 姗第37卷第18期 骆挺,钟才明,陈辉:基于完全子图的社区发现算法 43 Zarchary Karate网络是美国一所大学中空手道俱乐部成员间 的相互社会关系网络。在调查过程中,该俱乐部的主管和校 长产生了矛盾,结果该俱乐部分裂成2个分别以主管和校长 为核心的小俱乐部。本文算法执行该网络能自动发现 2个 社区,并且结果跟实际一致,准确率达到100%,如图7所示。 2s',A .V 二 : 事 图8本文算法对Dolphin网络的聚类结果 4结束语 \ 本文提出一种基于完全子图的社区发现算法,利用节点 社区归属度来决定个别节点的归属。该算法不需要任何参数 的设置,可以自动识别社区数目。实验结果证明,该算法能 I6够准确识别网络中的社区,具有一定的使用价值。今后的工 图7本文算法对Zachary网络的聚类结果 作将研究社区与社区边界的问题,因为很多实际网络中的某 Kernighan—Lin算法得到的结果也跟实际结果一样,但是 些节点不仅属于一个社区。 该算法必须提前知道2个社区的大小分别是16和18。该算 参考文献 法很难应用于实际网络。GN算法,谱二分方法的结果为节 [1]Santo E Community Detection in Graphs[EB/OL].(2010一叭一25). 点3被误分。此实验证明本算法相比其他算法可以更有效发 http://arxiv.org/abs/0906.0612. 现网络社区内在结构,并且不用设定任何的参数。 [2]Kernighan B W.An Efficient Heuristic Procedure for Partitioning 海豚关系网也是社会网分析中常用的一个真实网络,每 Graphs[J].Bell System Technical Journal,1970,49(1):291—308. 个节点代表一个海豚,边表示2个海豚之间接触频繁。该网 [3】Girvan M,Newman M E J.Community Structure in Social and 络共有62个节点,159条边。实际的网络有41个较大的海 Biological Networks[EB/OL].(2002—04—06).http://www.pnas.org/ 豚家族,21个较小的海豚家族。 content/99/12/7821.fu1I_ 本文算法把该网络分成4个社区,其中一个社区 [4]Newman M E J,Girvan M.Finding and Evalu ̄ing Community (Diamond节点)跟实际21个海豚的社区完全一样。而另外 Structure in Networks[EB/OL].(2004—08-111.http://arxiv.org/abs/ 3个社区预示着将来41个较大海豚家族有可能分裂成3个家 cond.maff0308217. 族。对于Kernighan—Lin和GN算法,总有一个节点被误分。 [5] 王 林,戴冠中.一种新的评价社区结构的模块度研究[Jl _实验再次证明本算法的正确性,并且该算法还具有一定的预 计算机工程,2010,36(16):227—229. 测性,如图8所示。 编辑陈文 (上接第40页) 4结束语 [3] 汤小斌,方 刚.一种用于空间横向挖掘的拓扑关联规则算 现有空间挖掘算法不能够有效地提取包含空间布局约束 法[J】.计算机工程与应用,2010,46(1):109—111. 的拓扑关联规则,如果用传统约束关联规则算法进行挖掘, [4] 罗爱萍.空间跨层关联规则挖掘算法研究Ⅲ.西南师范大学学 会出现重复候选项和冗余计算的问题,因此,本文提出一种 报:自然科学版,2009,34(4):1-5. 基于空间布局约束的拓扑关联规则挖掘算法,实验结果验证 [5】 方 刚,魏祖宽,刘雨露,等.一种挖掘空间拓扑关联的有效 了该算法的有效性。 算法[J1_计算机工程与设计,2010,31(6):1267—1270. 参考文献 [6]邵峰晶,于忠清,王金龙,等.数据挖掘原理与算法【M].北京: [1] 刘雨露.基于序号索引的空间关联规则挖掘算法[J1.计算机工 科学出版社,2009. 程,2010,36(16):54—56. [7]方 刚.一种快速挖掘约束性关联规则的算法【JJ.计算机应用 [2] 熊 江,方 刚,刘雨露,等.空问拓扑关联的双向挖掘研 与软件,2009,26(8):268—270. 究[J]_计算机工程与应用,2009,45(22):126—128. 编辑陈文