第11卷第1期 智能系统学报 Vol.11 No.1 2016年2月 CAAI Transactions on Intelligent Systems Feh.2016 D0I:10.11992/is.201506029 网络出版地址:htp:/www.cmki.net/kcms/detail/23.1538.TP.20151229.0837.020.html 基于知识粒度的不完备决策表的属性约简算法 乔丽娟,2,徐章艳2,谢小军12,朱金虎,2,陈晓飞2,李娟 (1.广西师范大学广西多源信息挖掘与安全重点实验室,广西桂林541004:2.广西师范大学计算机科学与信息工 程学院,广西桂林541004) 摘要:知识粒度是属性约简的有效方法,但对于大型的决策表,计算知识粒度过于费时,算法效率不高。在引入粒 度差别矩阵后,设计了一个计算粒度差别矩阵中条件属性出现频率的函数,有效地降低粒度差别矩阵的存储空间, 根据此函数设计了一个高效属性约简算法。新算法使得时间复杂度与空间复杂度都降为O(K1C1IU1)(其中 K=max{ITc(x)I,xeU}和O(IU1)。最后通过实例仿真说明了此算法的高效性和可行性。 关键词:属性约简:知识粒度:不完全决策表:条件属性频率:差别矩阵:启发信息 中图分类号:TP18文献标志码:A文章编号:1673-4785(2016)01-0129-07 中文引用格式:乔丽娟,徐章艳,谢小军,等.基于知识粒度的不完备决策表的属性约简算法[J].智能系统学报,2016,11(1):129 135. 英文引用格式:QIAO Lijuan,XU Zhangyan,XIE Xiaojun,etal.Efficient attribute reduction algorithm for an incomplete decision table based on knowledge granulation[J].CAAI Transactions on Intelligent Systems,2016,11(1):129-135. Efficient attribute reduction algorithm for an incomplete decision table based on knowledge granulation QIAO Lijuan'.2,XU Zhangyan'.2,XIE Xiaojun'.2,ZHU Jinhu'.2,CHEN Xiaofei2,LI Juan 2 (1.Guangxi Key Laboratory of Multi-source Information Mining Security,Guangxi Normal University,Guilin 541004,China; 2.College of Computer Science and Information Technology,Guangxi Normal University,Guilin 541004,China) Abstract:The use of knowledge granularity is an effective attribute reduction approach.But for a large decision ta- ble,computing knowledge granularity is so time-consuming that the algorithm is not efficient for practical use.After the introduction of the discernibility matrix of granularity,a function was designed for calculating the occurrence frequency of condition attributes in the matrix.In this paper,we design an efficient attribute reduction algorithm based on the granularity discernibility matrix.The new algorithm reduces the time and space complexities to 0(KI CIIUI)(K=maxTe(x)1,U)and 0(IUI),respectively.The results from our simulation example verify that the proposed algorithm is feasible and highly efficient. Keywords:attribute reduction;knowledge granularity;incomplete decision table;condition attribute frequency; discernibility matrix;heuristic information 波兰的数学家Pawlak在20世纪80年代提出 粗糙集理论的重要研究内容,已被广大学者所研究, 的粗糙集是一种新型的用来处理不完全、不精确与 提出了围绕完备决策表的属性约简算法,但是现实 不相容的数学工具和理论2]。经过了30多年的研 生活中的数据往往存在误差,缺失及多源等特征。 究和发展,粗糙集理论已在知识发现、数据挖掘、模 如何对不完备决策表进行直接处理,已成为粗糙集 式识别等领域得到了大量应用34。属性约简作为 理论的一个研究热点[4。近年来针对不完备决策 表的研究也取得了显著的进步,已有学者提出很多 收稿日期:2015-06-16.网络出版日期:2015-12-29. 基金项目:国家自然科学基金资助项目(61262004,61363034,60963008): 有效的不完备决策表属性约简算法[s。知识粒 广西自然科学基金资助项目(2011 GXNSFA018163):大学生 创新资助项目(201410602099). 度[2]作为粗糙集理论中度量属性约简的重要方 通信作者:乔丽娟.E-mail:347671379@qg-com. 法之一,被广泛运用于不完备属性约简算法。文献
第 11 卷第 1 期 智 能 系 统 学 报 Vol.11 №.1 2016 年 2 月 CAAI Transactions on Intelligent Systems Feb. 2016 DOI:10.11992 / tis.201506029 网络出版地址:http: / / www.cnki.net / kcms/ detail / 23.1538.TP.20151229.0837.020.html 基于知识粒度的不完备决策表的属性约简算法 乔丽娟1, 2 ,徐章艳1, 2 ,谢小军1, 2 ,朱金虎1, 2 ,陈晓飞2 ,李娟2 (1.广西师范大学 广西多源信息挖掘与安全重点实验室,广西 桂林 541004; 2.广西师范大学 计算机科学与信息工 程学院,广西 桂林 541004) 摘 要:知识粒度是属性约简的有效方法,但对于大型的决策表,计算知识粒度过于费时,算法效率不高。 在引入粒 度差别矩阵后,设计了一个计算粒度差别矩阵中条件属性出现频率的函数,有效地降低粒度差别矩阵的存储空间, 根据此函数设计了一个高效属性约简算法。 新算法使得时间复杂度与空间复杂度都降为 O(K | C | | U | ) (其中 K=max{ | Tc(xi) | , xi∈U}和 O( |U| )。 最后通过实例仿真说明了此算法的高效性和可行性。 关键词:属性约简;知识粒度;不完全决策表;条件属性频率;差别矩阵;启发信息 中图分类号:TP18 文献标志码:A 文章编号:1673⁃4785(2016)01⁃0129⁃07 中文引用格式:乔丽娟,徐章艳,谢小军,等.基于知识粒度的不完备决策表的属性约简算法[ J]. 智能系统学报, 2016, 11(1): 129⁃ 135. 英文引用格式:QIAO Lijuan, XU Zhangyan, XIE Xiaojun,et al. Efficient attribute reduction algorithm for an incomplete decision table based on knowledge granulation[J]. CAAI Transactions on Intelligent Systems, 2016, 11(1): 129⁃135. Efficient attribute reduction algorithm for an incomplete decision table based on knowledge granulation QIAO Lijuan 1, 2 , XU Zhangyan 1, 2 , XIE Xiaojun 1, 2 , ZHU Jinhu 1, 2 , CHEN Xiaofei 2 , LI Juan 2 (1.Guangxi Key Laboratory of Multi⁃source Information Mining & Security, Guangxi Normal University, Guilin 541004, China; 2. College of Computer Science and Information Technology, Guangxi Normal University, Guilin 541004, China) Abstract:The use of knowledge granularity is an effective attribute reduction approach. But for a large decision ta⁃ ble, computing knowledge granularity is so time⁃consuming that the algorithm is not efficient for practical use.After the introduction of the discernibility matrix of granularity, a function was designed for calculating the occurrence frequency of condition attributes in the matrix. In this paper, we design an efficient attribute reduction algorithm based on the granularity discernibility matrix. The new algorithm reduces the time and space complexities to O(K | C | |U| ) (K =max{ | Tc(xi) | , xi∈U}) and O( |U| ), respectively. The results from our simulation example verify that the proposed algorithm is feasible and highly efficient. Keywords:attribute reduction; knowledge granularity; incomplete decision table; condition attribute frequency; discernibility matrix; heuristic information 收稿日期:2015⁃06⁃16. 网络出版日期:2015⁃12⁃29. 基金项目:国家自然科学基金资助项目(61262004,61363034,60963008); 广西自然科学基金资助项目( 2011GXNSFA018163);大学生 创新资助项目(201410602099). 通信作者:乔丽娟. E⁃mail:347671379@ qq.com. 波兰的数学家 Pawlak 在 20 世纪 80 年代提出 的粗糙集是一种新型的用来处理不完全、不精确与 不相容的数学工具和理论[1⁃2] 。 经过了 30 多年的研 究和发展,粗糙集理论已在知识发现、数据挖掘、模 式识别等领域得到了大量应用[3⁃4] 。 属性约简作为 粗糙集理论的重要研究内容,已被广大学者所研究, 提出了围绕完备决策表的属性约简算法,但是现实 生活中的数据往往存在误差,缺失及多源等特征。 如何对不完备决策表进行直接处理,已成为粗糙集 理论的一个研究热点[4] 。 近年来针对不完备决策 表的研究也取得了显著的进步,已有学者提出很多 有效的不完备决策表属性约简算法[5⁃11] 。 知识粒 度[12⁃13]作为粗糙集理论中度量属性约简的重要方 法之一,被广泛运用于不完备属性约简算法。 文献
·130· 智能系统学报 第11卷 [5]以属性重要性为启发信息,设计了一个基于知 定义316在不完备决策表S=(U,C,D,V,f) 识粒度的属性约简算法[):文献[6]通过不断向核 中,知识BCC的知识粒度定义为GD(B)= 属性集中添加属性的方法,设计出一种基于相对知 识粒度的不完备决策表属性约简算法[6]:文献[7] ∑1T(x)1.其中U={x1,x…,x,1KI表 定义了一个粒度差别矩阵,进而设计了基于知识粒 示集合X的基数.显然有CD(☑)=0。 度的不完备决策表的属性约简算法[),其时间复杂 性质16]设S=(U,C,D,V,)是一个不完备 度为max{O(1C121U11UI),0(1K11C1U1)},其 信息系统,知识BCC的知识粒度定义为GD(B),则 中K=max{ITc(x:)1,x:∈U},其空间复杂度为 1/IU川≤GD(B)≤1。 max{O(1C11U11UI),O(1U1)};文献[8]给出了 性质21]设S=(U,C,D,V,)是一个不完备 一个计算条件属性频率的公式,设计一个基于知识 信息系统,其中P,QCC,如果Hi∈{1,2,…,IU1} 粒度的属性约简算法[8);文献[9]设计了一种基于 有T(x:)CT(x),则GD(P)≤GD(Q)。 对象矩阵的属性约简算法[9]:文献[11]提出简化差 知识粒度可以描述知识的区分能力,知识粒度 别矩阵定义,设计了一种快速的属性约简算法[川: 越小,其区分能力越强,反之区分能力越弱) 文献[12]中根据区分对象对集的思想,设计了基于 定义4)在不完备决策表S=(U,C,D,V,f) 正区域的属性约简算法[四:文献[13]根据粒计算的 中,知识B(BCC)是C关于D的一个知识粒度的 思想构建了粒矩阵,在此基础上,设计了属性约简算 属性约简,当且仅当B满足条件: 法。文献[14]在粒计算属性约简算法的基础上进 1)GD(B)=GD(C); 行了改进,得到一个新的算法。上述算法大多因为 2)Hb∈B→GD((B-{b}))≠GD(C). 要多次计算知识粒度,导致计算效率都不太理想,为 定义51在不完备决策表S=(U,C,D,V,f) 此设计出基于知识粒度的高效属性约简算法具有非 中,HBCC,U/D={D1,D2,…,Dx}表示由决策属性 常重要的现实意义[]。 集D对论域U的划分,称POSc(D)=UC_(D:) D:EU/D 差别矩阵作为粗糙集理论的重要技术之一,被 为C关于D的正区域,设条件属性对论域的划分为 广泛应用,但是求解差别矩阵费时,本文引入了基于 U/C=I[xa]e,[x2],,[x],U=xI[x]. 粒度的差别矩阵,利用条件属性在区分对象时出现 POSc(D),U=U- 频率的属性约简思想,设计一个基于粒度差别矩阵 计算属性频率的启发函数。 2粒度差别矩阵相关概念 1粗糙集基本概念 定义6 设在一个不完备决策表 S=(U,C,D,V)中,U=UUUes,定义粒度差别矩 定义1)五元组S=(U,C,D,V,)是一个不 阵M=(m(i,),其元素定义如下: 完备决策表,其中U={x1,x2,…,xn}表示对象的非 [{cIc}eC,fx,c)≠*Af八x,c)≠*A 空有限集合,称为论域;C={c1,C2,…,cm}表示条件 f(x:,c)≠fx,c)fx,D)≠f八x,D) 属性的非空有限集合:D表示决策属性的非空有限 集合,且CnD=O;V=UV.,V.是属性a的值域; 且x:和x一个在U,一个在U中; m(i,j)= acCUD f:UXCUD-→V是一个信息函数,它对一个对象的每 f(x,c)≠*Afx,c)≠*A 一个属性赋予一个信息值,即VaeCUD,xeU,有 f(x,c)≠f八,ce)且x:,x在U中} fx,a)∈Vao 0:其他 在五元组中,如果至少有一个属性a∈C,使得 式中:k=1,2,…,ro V。包含空值(用*表示),即至少有一个属性a∈U, 定义7】设M=(m(i,j))为不完备决策表 存在一个a∈U,使得f(x,a)=*,称之为不完备决 S=(U,C,D,V,f)的粒度差别矩阵,HBCC,若B满 策表。 足: 定义2)在不完备决策表s=(U,C,D,V,) 1)H☑≠m(i,j)∈M,有Bnm(i,j)≠0: 中,令BCC,定义U上的容差关系T(B)为 2)Ha∈B,B'=B-a均不满足(1)。 T(B)=(x,y)EUXUIYbEBI ,f(x,b)=f(y,b)V 则称B是C关于D的一个属性约简,此约简记 f(x,b)=*Vf八y,b)=*}。用T(x)表示在B中与 为基于粒度差别矩阵的属性约简。 x具有容差关系的全体对象集{y∈UI(x,y)∈ 定理1在不完备决策表S=(U,C,D,V,f)中, T(B)}。 有Rc=UR1alo
[5]以属性重要性为启发信息,设计了一个基于知 识粒度的属性约简算法[5] ;文献[6]通过不断向核 属性集中添加属性的方法,设计出一种基于相对知 识粒度的不完备决策表属性约简算法[6] ;文献[7] 定义了一个粒度差别矩阵,进而设计了基于知识粒 度的不完备决策表的属性约简算法[7] ,其时间复杂 度为 max{O( | C | 2 | U | | Upos | ),O( | K | | C | U | )},其 中 K = max { | TC ( xi ) | , xi ∈U},其空间复杂度为 max{O( | C | |U| |Upos | ),O( | U| )};文献[8]给出了 一个计算条件属性频率的公式,设计一个基于知识 粒度的属性约简算法[8] ;文献[9] 设计了一种基于 对象矩阵的属性约简算法[9] ;文献[11]提出简化差 别矩阵定义,设计了一种快速的属性约简算法[11] ; 文献[12]中根据区分对象对集的思想,设计了基于 正区域的属性约简算法[12] ;文献[13]根据粒计算的 思想构建了粒矩阵,在此基础上,设计了属性约简算 法。 文献[14]在粒计算属性约简算法的基础上进 行了改进,得到一个新的算法。 上述算法大多因为 要多次计算知识粒度,导致计算效率都不太理想,为 此设计出基于知识粒度的高效属性约简算法具有非 常重要的现实意义[5] 。 差别矩阵作为粗糙集理论的重要技术之一,被 广泛应用,但是求解差别矩阵费时,本文引入了基于 粒度的差别矩阵,利用条件属性在区分对象时出现 频率的属性约简思想,设计一个基于粒度差别矩阵 计算属性频率的启发函数。 1 粗糙集基本概念 定义 1 [3] 五元组 S = (U,C,D,V,f)是一个不 完备决策表,其中 U = { x1 ,x2 ,…,xn }表示对象的非 空有限集合,称为论域;C = {c1 ,c2 ,…,cm }表示条件 属性的非空有限集合;D 表示决策属性的非空有限 集合,且 C∩D=⌀;V = ∪a∈C∪D Va ,Va 是属性 a 的值域; f:U×C∪D→V 是一个信息函数,它对一个对象的每 一个属性赋予一个信息值,即∀a∈C∪D,x∈U,有 f(x,a)∈Va 。 在五元组中,如果至少有一个属性 a∈C,使得 Va 包含空值(用∗表示),即至少有一个属性 a∈U, 存在一个 a∈U,使得 f( x,a) = ∗,称之为不完备决 策表。 定义 2 [3] 在不完备决策表 s = (U,C,D,V,f) 中, 令 B ⊆ C, 定 义 U 上 的 容 差 关 系 T ( B) 为 T(B)= {(x,y)∈U×U| ∀b∈B},f(x,b)= f(y,b)∨ f(x,b)= ∗∨f(y,b)= ∗}。 用 TB(x)表示在 B 中与 x 具有容差关系的全体对象集 { y ∈ U | ( x, y) ∈ T(B)}。 定义 3 [16] 在不完备决策表 S = (U,C,D,V,f) 中 , 知 识 B ⊆ C 的 知 识 粒 度 定 义 为 GD(B) = 1 | U | 2∑ n i = 1 | TB(xi) | . 其中 U= {x1 ,x2 ,…,xn }, | X |表 示集合 X 的基数. 显然有 CD(⌀)= 0。 性质 1 [16] 设 S = (U,C,D,V,f)是一个不完备 信息系统,知识 B⊆C 的知识粒度定义为 GD(B),则 1 / |U|≤GD(B)≤1。 性质 2 [16] 设 S = (U,C,D,V,f)是一个不完备 信息系统,其中 P,Q⊆C,如果∀i∈{1,2,…, |U| } 有 TP(xi)⊆TQ(xi),则 GD(P)≤GD(Q)。 知识粒度可以描述知识的区分能力,知识粒度 越小,其区分能力越强,反之区分能力越弱[5] 。 定义 4 [5] 在不完备决策表 S = (U,C,D,V,f) 中 , 知识 B(B⊆C) 是 C 关于 D 的一个知识粒度的 属性约简,当且仅当 B 满足条件: 1)GD(B)= GD(C); 2)∀b∈B⇒GD((B-{b}))≠GD(C)。 定义 5 [7] 在不完备决策表 S = (U,C,D,V,f) 中,∀B⊆C,U/ D= {D1 ,D2 ,…,DK }表示由决策属性 集 D 对论域 U 的划分, 称 POSC(D) = ∪Di∈U/ D C_(Di) 为 C 关于 D 的正区域,设条件属性对论域的划分为 U/ C = {[xi1 ]c,[xi2 ]c,…,[xik]c},Upos = {xij | [xij]c⊆ POSC(D)},Uneg =U-Upos。 2 粒度差别矩阵相关概念 定 义 6 [11] 设 在 一 个 不 完 备 决 策 表 S = (U,C,D,V,f)中,U=Upos∪Uneg,定义粒度差别矩 阵 M= (m(i,j)),其元素定义如下: m(i,j) = {ck | ck}∈ C, f(xi,ck) ≠ ∗∧ f(xj,ck) ≠∗∧ f(xi,ck) ≠ f(xj,ck),f(xi,D) ≠ f(xj,D) 且 xi 和 xj 一个在 Upos,一个在 Uneg 中; f(xi,ck) ≠ ∗ ∧ f(xj,ck) ≠ ∗ ∧ f(xi,ck) ≠ f(xj,ck) 且 xi,xj 在 Upos 中} ⌀;其他 ì î í ï ï ï ï ï ï ï ï 式中:k = 1,2,…,r。 定义 7 [7] 设 M = (m( i,j)) 为不完备决策表 S = (U,C,D,V,f)的粒度差别矩阵,∀B⊆C,若 B 满 足: 1)∀⌀≠m(i,j)∈M,有 B∩m(i,j)≠⌀; 2)∀a∈B,B′=B-{a}均不满足(1)。 则称 B 是 C 关于 D 的一个属性约简,此约简记 为基于粒度差别矩阵的属性约简。 定理 1 在不完备决策表S = (U,C,D,V,f)中, 有 RC = ∪a∈C R{a} 。 ·130· 智 能 系 统 学 报 第 11 卷
第1期 乔丽娟,等:基于知识粒度的不完备决策表的属性约简算法 ·131· 证明由定义1知:命题显然成立。 证明由粒度差别矩阵的定义知,计算A,/a} 定理2】基于知识粒度的属性约简定义与基 ={A1,A2,…,At}产生的条件属性频率,可分两部 于粒度差别矩阵的属性约简定义是等价的。 分计算,一种是对象都在U中;另一种是一个在 定理2说明基于知识粒度的属性约简可以转化 U中,而另一个在U中的。 到粒度差别矩阵上进行。 1)若两个对象都在U中,由划分的定义知,在 针对不完备决策表,文献[7]中给出了一个基 同一个划分集合里的两个对象值相等,即只有不同 于粒度差别矩阵的属性约简算法,其时间复杂度为 划分集合里才有可能产生有效区分对象的条件属 max{O(IC121UIIU1),O(K1U1ICI)}。算法对 性。则只有不同划分集合的U之间才能产生条件 粒度差别矩阵进行遍历,若只包含一个条件属性就 属性频率;若两个对象都在U中,产生的条件属性 将其放入属性约简中,并去掉差别矩阵中任何含有 该条件属性的差别元素,直至差别矩阵为空。该算 频率为N,二,品,Pos,Po,任意两个划分集合都可 产生,因为在正域之间产生的差别矩阵的元素是对 法虽然有效降低了时间复杂度,但是构造粒度差别 称的,故条件属性频率为2N1。 矩阵仍然需要占用大量的空间,对于处理大型数据 2)若一个对象在U中,另一个对象在U中, 集仍然具有一定的难度。 由划分的定义知,同属一个集合里的两个对象值相 经分析,算法中在粒度差别矩阵中出现的条件 等,即只有不同划分集合里才有可能产生条件属性 属性才是能区分对象的条件属性,由于构造粒度差 别矩阵耗费空间,参考文献[16]的方法,设计一种 频率,且U和U之间要求决策值不同,故需要对 计算粒度差别矩阵中含有的条件属性频率的函数, 每个划分集合里属于U的集合对D划分,同时属 于U的集合也对D划分。所以,Neg/D划分集合 然后给出计算该函数的快速算法,无须构造粒度差 别矩阵就可以将其中能有效区分对象的条件属性找 里每个集合与pos,/D划分集合里对于决策属性在 不同划分集合里就能产生条件属性频率。 出,以降低算法的时间和空间复杂度。 为了方便叙述,假设将A:{b}所有集合中属于 3计算属性频率的启发函数 正域的所有集合对D划分pos,/D存放在一个矩阵 中,矩阵的行表示每一个非空集合对D的划分,矩 定理3在决策表S=(U,C,D,V,)中,BCC, 阵的列表示决策值相同的集合,生成的矩阵为 U/B={A1,A2,…,A},A/{a}={Aa,A2,…,A法}, Ag=pos,UNeg,U=UUU,其中pos,=AgnU Du Du DiDm Neg=Ag∩pos,/D={Da,Da,…,Dn},Neg/D= D2 …Dg…Dm 1D,D,,D。令=lps/D1=是m1D,1 D= Da (4) Ipos,I,则所有集合中属于正域的集合对D划分 D Dap pos/D总和为S=,三S=,名1posl,所有集合中属 于正域的所有集合对D划分pos,/D中决策值相同 Da Da DADA 集合总数为T=,品D。 同理,将A:{b}所有集合中属于负域的所有集 合对D划分Neg/D存放在另一个矩阵中,生成的 根据定义6,粒度差别矩阵中包含的条件属性 可由两部分产生,设对象都在U里产生的条件属 矩阵为 性的个数为N,则 D DD N,=∑pos;pos9 (1) 1i<j运k Da D2D 两个对象一个在U中,另一个在U中,产生 D= (5) 的条件属性频率为N2,则 D … D Da V2= D(S-S:-T;+Di) (2) 1写i≤k,1写0 计算条件属性的频率函数1F(U,a)1如下: D… Dy … Fa(U,a)=£(2N+W) 从这两个矩阵中可以看出,D:只能与式(4)矩 即Fs(U,a)=-∑(2∑Pos,Pos,+ 阵中与其不同行不同列的集合产生条件属性频率, 为了求得所有条件属性频率且不重复计算,在式 ∑D,(s-S-T,+Dg) (3) (4)矩阵中,定义任一行的和,即S=Ipos,/D1=
证明 由定义 1 知:命题显然成立。 定理 2 [7] 基于知识粒度的属性约简定义与基 于粒度差别矩阵的属性约简定义是等价的。 定理 2 说明基于知识粒度的属性约简可以转化 到粒度差别矩阵上进行。 针对不完备决策表,文献[7] 中给出了一个基 于粒度差别矩阵的属性约简算法,其时间复杂度为 max{O( | C | 2 | Upos | | U | ),O(K | U | | C | )}。 算法对 粒度差别矩阵进行遍历,若只包含一个条件属性就 将其放入属性约简中,并去掉差别矩阵中任何含有 该条件属性的差别元素,直至差别矩阵为空。 该算 法虽然有效降低了时间复杂度,但是构造粒度差别 矩阵仍然需要占用大量的空间,对于处理大型数据 集仍然具有一定的难度。 经分析,算法中在粒度差别矩阵中出现的条件 属性才是能区分对象的条件属性,由于构造粒度差 别矩阵耗费空间,参考文献[16] 的方法,设计一种 计算粒度差别矩阵中含有的条件属性频率的函数, 然后给出计算该函数的快速算法,无须构造粒度差 别矩阵就可以将其中能有效区分对象的条件属性找 出,以降低算法的时间和空间复杂度。 3 计算属性频率的启发函数 定理 3 在决策表 S = (U,C,D,V,f)中,B⊆C, U/ B = { A1 ,A2 ,…,Al },Ai / { a} = { Ai1 ,Ai2 ,…,Aik }, Aij = posi∪Negj,U = Upos∪Uneg,其中 posi = Aij∩Upos, Negj = Aij∩Uneg,posi / D= {Di1 ,Di2 ,…,DiD },Negj / D= {D - j1 ,D - j2 ,…,D - jD }。 令 si = | posi / D| = ∑1≤j≤| D| | Dij | = | posi | ,则所有集合中属于正域的集合对 D 划分 posi / D 总和为 S = ∑1≤i≤k S = ∑1≤i≤k | posi | ,所有集合中属 于正域的所有集合对 D 划分 posi / D 中决策值相同 集合总数为 Tj = ∑1≤i≤k Dij。 根据定义 6,粒度差别矩阵中包含的条件属性 可由两部分产生,设对象都在 Upos里产生的条件属 性的个数为 N1 ,则 N1 = 1≤∑i < j≤k posiposj (1) 两个对象一个在 Upos中,另一个在 Uneg中,产生 的条件属性频率为 N2 ,则 N2 = 1≤i≤∑k,1≤j≤| D| D - ij(S - Si - Tj + Dij) (2) 计算条件属性的频率函数| FB(U,a) |如下: FB(U,a)= ∑1≤i≤l (2N1 +N2 ), 即 FB(U,a) = 1∑≤i≤l (2 1≤∑i≤j≤k PosiPosj + 1≤i≤∑k,1≤j≤| D| D - ij(S - Si - Tj + Dij)) (3) 证明 由粒度差别矩阵的定义知,计算 Ai / {a} = {Ai1 ,Ai2 ,…,Aik }产生的条件属性频率,可分两部 分计算,一种是对象都在 Upos 中;另一种是一个在 Upos中,而另一个在 Uneg中的。 1)若两个对象都在 Upos中,由划分的定义知,在 同一个划分集合里的两个对象值相等,即只有不同 划分集合里才有可能产生有效区分对象的条件属 性。 则只有不同划分集合的 Upos之间才能产生条件 属性频率;若两个对象都在 Upos中,产生的条件属性 频率为 N1 = ∑1≤i<j≤k posiposj,任意两个划分集合都可 产生,因为在正域之间产生的差别矩阵的元素是对 称的,故条件属性频率为 2N1 。 2)若一个对象在 Upos中,另一个对象在 Uneg中, 由划分的定义知,同属一个集合里的两个对象值相 等,即只有不同划分集合里才有可能产生条件属性 频率,且 Upos和 Uneg之间要求决策值不同,故需要对 每个划分集合里属于 Upos的集合对 D 划分,同时属 于 Uneg的集合也对 D 划分。 所以,Negj / D 划分集合 里每个集合与 posi / D 划分集合里对于决策属性在 不同划分集合里就能产生条件属性频率。 为了方便叙述,假设将 Ai { b}所有集合中属于 正域的所有集合对 D 划分 posi / D 存放在一个矩阵 中,矩阵的行表示每一个非空集合对 D 的划分,矩 阵的列表示决策值相同的集合,生成的矩阵为 D = D11 … D1j … D1| D| D21 … D2j … D2| D| ︙ ︙ Di1 … Dij … Di| D| ︙ ︙ Dk1 … Dkj … Dk| D| é ë ê ê ê ê ê ê ê êê ù û ú ú ú ú ú ú ú úú (4) 同理,将 Ai { b}所有集合中属于负域的所有集 合对 D 划分 Negj / D 存放在另一个矩阵中,生成的 矩阵为 D = D - 11 … D - 1j … D - 1| D| D - 21 … D - 2j … D - 2| D| ︙ ︙ D - i1 … D - ij … D - i| D| ︙ ︙ D - k1 … D - kj … D - k| D| é ë ê ê ê ê ê ê ê ê ê ê ù û ú ú ú ú ú ú ú ú ú ú (5) 从这两个矩阵中可以看出,D - ij只能与式(4)矩 阵中与其不同行不同列的集合产生条件属性频率, 为了求得所有条件属性频率且不重复计算,在式 (4) 矩阵中,定义任一行的和,即 Si = | posi / D | = 第 1 期 乔丽娟,等:基于知识粒度的不完备决策表的属性约简算法 ·131·
.132. 智能系统学报 第11卷 1名D,=osl,则所有行的总和S=品S。 Neg(i=1,2,…,k)中。并计算两个对象都在U中 定义任一列的和:T=,∑D 写k 产生的条件属性频率X,则N,,品Pos,Po。 则若两个对象一个在U中,另一个在U中, b)计算每个非空队列中pos/D={D1,D2,…, 产生的条件属性颜率=1ee品D(S-S,-了+ Dn},Neg/D={D,D2,…,D},则在正域矩阵 D,)。故F。(U,a)=,三,(2N+W,)表示简化决策表 中S=pos/D1=1名mD,l,S=AS,所有集合中 110川 属于正域的所有集合对D划分pOs/D中决策值相 中所有对象相对于条件属性集B产生的条件属性 频率的总个数,证明完毕。 同集合总数为T=,品D。一个对象在U中,一个 根据定义6可知,只有属性值不同且不为缺省 在U,中,产生的条件属性总率为N16e品 值的才能包含条件属性,所以在本文的所有算法中, D(S-S:-T+D,),产生的条件属性总频率为 对象U对属性a的划分,将含有缺省值的放在划分 IF (U,b)I=2N+N2; 的最后一个集合里,不予处理。 3)输出U/(AU{b}),条件属性总频率数 4属性约简算法 1F,(U.b)I。 算法时间空间复杂度分析:算法2中1)的时间 首先,对不完备决策系统中的对象进行划分。 复杂度忽略不计,2)①的时间复杂度为O(1A:I),设 算法1论域U对属性a的划分 pos:/1b}={A,A2,…,Ak},则2)②a时间复杂度 输入不完备决策表S=(U,C,D,V,f),C= 为0(A)(j=1,2,…,k),2)②b时间复杂度为0 {a1,a2,…,am},U={x1,x2,…,x1u} (A:),即2)②时间复杂度为0(1A,I),2)时间复杂 输出U/a={A1,A2,…,A,} 度0(1AI)+0(1A21)+…+0(1A:I)≤0(1U1)。故 1)t=1;A,={x:}; 算法2的最坏时间复杂度为O(1U1),同理可得最坏 2)for(j=2:j<lU1+1:j++)。 空间复杂度为O(1U1)。 若任一条件属性a∈C(i=1,2,…,1C1)均有 算法3以条件属性的频率为启发信息的属性 f(x:,a:)=f(,a:)≠*,则A,=A,U{x};否则t= 约简算法 t+1;A,={x};(其中在此求划分时*单独放到 输入不完备决策表S=(U,C,D,V,f),C= 一块)。 (c1,C2,…,cm),U={x1,x2,…,xn}; 3)输出U/a={A1,A2,…,A,}。 输出属性约简Red(C)。 算法1中,1)、3)时间复杂度忽略不计,2)的时 1)由文献[11]求出容差类T.(x:)(x:∈U), 间复杂度为O(1U1),则算法2的时间复杂度是0 (1U1),空间复杂度为O(1U川) U,U计算知识粒度1GD(c)1=店1T.(x)1/ 算法2求条件属性频率的函数 1U12,令IKI=GD(c:): 输入U/A={A1,A2,…,A,},条件属性的最大 2)将K按从小到大运用快速排序方法得到 值和最小值分别标记为M。,m6; 1Kal≤1K2l≤…≤IKmI,它们对应的属性为c, 输出U/(AU{b}),条件属性频率函数IF ca,…,cm令Red(C)={ca}; (U,b)1; 3)for(k=2,k<m+1;k++) 1)IF(U,b)I=0,U/(AU{b})=O: 由算法3计算;lF(U,c-))川 2)对VA:={x1,x2,…,x}∈U/A,以静态链表为 i(IFa(U,c-n)I≠0) 存储空间,依次放入对象x1,x2,…,x;令表头指针 Red(C)=Red(C)UCi(-1); 指向x; 4)输出属性约简Red(C)。 ①建立M。-m,+2空队列,令front[k]和end[k] 算法正确性分析:若1Fa(U,c-)1=0,即当 (k=0,1,2,…,M。-m6+1)分别为第k个队列的头指 前属性不能将两个对象区分开,则RRdu1e4=RRd, 针和尾指针,将链表中的对象x∈A,按链表中的次 则由算法3知,当输出约简Red(C)时,有Rc=Rdo 序分配到第f(x,b)-m,个队列中去,将链表中的对 由定理2知,算法3求出的属性约简就是基于知识 象值为*的对象分配到*队列中。 粒度的属性约简。 ②对除*队列的每个非空队列作如下处理: 算法时间复杂度分析:算法3的1)由文献[11] a)将非空队列中属于U的对象放入 知时间复杂度为O(K1CI1U1)(其中K= pos,(i=0,1,2,…,k)中,属于U的对象放入 max{1T.(x:)1,x:∈U}),空间复杂度为0(101)
∑1≤j≤| D| |Dij | = | posi | ,则所有行的总和 S = ∑1≤i≤k Si。 定义任一列的和:Tj = ∑1≤i≤k Dij。 则若两个对象一个在 Upos中,另一个在 Uneg中, 产生的条件属性频率 N2 = ∑ 1≤i≤| D| ,1≤j≤k D - ( S-Si -Tj + Dij)。 故 FB(U,a)= ∑1≤i≤l (2N1 +N2 )表示简化决策表 中所有对象相对于条件属性集 B 产生的条件属性 频率的总个数,证明完毕。 根据定义 6 可知,只有属性值不同且不为缺省 值的才能包含条件属性,所以在本文的所有算法中, 对象 U 对属性 a 的划分,将含有缺省值的放在划分 的最后一个集合里,不予处理。 4 属性约简算法 首先,对不完备决策系统中的对象进行划分。 算法 1 论域 U 对属性 a 的划分 输入 不完备决策表 S = (U,C,D,V,f),C = {a1 ,a2 ,…,am },U= {x1 ,x2 ,…,x | U| } 输出 U/ a = {A1 ,A2 ,…,At} 1)t = 1;At = {xi}; 2)for(j = 2;j< |U| +1;j++)。 若任一条件属性 ai∈C( i = 1,2,…, | C | ) 均有 f(xi,ai)= f ( xj, ai ) ≠ ∗,则 At = At∪{xj};否则 t = t+1;At = { xj }; ( 其中在此求划分时 ∗ 单独放到 一块)。 3)输出 U/ a = {A1 ,A2 ,…,At}。 算法 1 中,1)、3)时间复杂度忽略不计,2)的时 间复杂度为 O( | U | ),则算法 2 的时间复杂度是 O ( |U| ),空间复杂度为 O( |U| )。 算法 2 求条件属性频率的函数 输入 U/ A = {A1 ,A2 ,…,At},条件属性的最大 值和最小值分别标记为 Mb,mb; 输出 U/ ( A∪{ b}),条件属性频率函数 | Fa (U,b) | ; 1) | FA(U,b) | = 0,U/ (A∪{b})= ⌀; 2)对∀Ai = {x1 ,x2 ,…,xj}∈U/ A,以静态链表为 存储空间,依次放入对象 x1 ,x2 ,…,xj;令表头指针 指向 xi; ①建立 Mb -mb +2 空队列,令 front[k]和 end[k] (k = 0,1,2,…,Mb -mb +1)分别为第 k 个队列的头指 针和尾指针,将链表中的对象 x∈Ai 按链表中的次 序分配到第 f(x,b) -mb 个队列中去,将链表中的对 象值为∗的对象分配到∗队列中。 ②对除∗队列的每个非空队列作如下处理: a) 将 非 空 队 列 中 属 于 Upos 的 对 象 放 入 posi(i = 0,1,2,…,k) 中, 属 于 Uneg 的 对 象 放 入 Negi(i = 1,2,…,k)中。 并计算两个对象都在 Upos中 产生的条件属性频率 N1 ,则 N1 = ∑1≤i<j≤k posiposj。 b)计算每个非空队列中 posj / D = {Dj1 ,Dj2 ,…, Dj | D| },Negj / D = {Dj1 ,Dj2 ,…,Dj | D| },则在正域矩阵 中 Si = | posi / D| = ∑1≤j≤| D| | Dij | ,S = ∑1≤i≤k Si 所有集合中 属于正域的所有集合对 D 划分 posj / D 中决策值相 同集合总数为 Tj = ∑1≤i≤k Dij。 一个对象在 Upos中,一个 在 Uneg中,产生的条件属性总频率为 N2 = ∑ 1≤i≤| D| ,1≤j≤k D - ij ( S - Si - Tj + Dij ), 产 生 的 条 件 属 性 总 频 率 为 | FA (U,b) | = 2N1 +N2 ; 3) 输 出 U/ ( A ∪ { b}), 条 件 属 性 总 频 率 数 | FA(U,b) | 。 算法时间空间复杂度分析:算法 2 中 1)的时间 复杂度忽略不计,2)①的时间复杂度为 O( | Ai | ),设 posi / {b} = { Ai1 ,Ai2 ,…,Aik },则 2) ②a 时间复杂度 为O(Aij) ( j = 1,2,…,k),2) ②b 时间复杂度为 O (Aij),即 2)②时间复杂度为 O( | Ai | ),2)时间复杂 度 O( | Ai | )+O( | A2 | ) +…+O( | Ai | )≤O( | U| )。 故 算法 2 的最坏时间复杂度为O( |U| ),同理可得最坏 空间复杂度为 O( |U| )。 算法 3 以条件属性的频率为启发信息的属性 约简算法 输入 不完备决策表 S = (U,C,D,V,f),C = (c1 ,c2 ,…,cm ),U= {x1 ,x2 ,…,xn }; 输出 属性约简 Red(C)。 1)由文献[11] 求出容差类 Tci ( xi ) ( xi ∈U), Upos,Uneg计算知识粒度 | GD( ci ) | = ∑ n i = 1 | Tci ( xi ) | / |U| 2 ,令| Ki | =GD(ci); 2)将 Ki 按从小到大运用快速排序方法得到 | Ki1 |≤| Ki2 | ≤…≤ | Kim | ,它们对应的属性为 ci1 , ci2 ,…,cim令 Red(C)= {ci1 }; 3)for(k = 2,k<m+1;k++) 由算法 3 计算; | Fred(U,ci(k-1) ) | if(| FRed(U,ci(k-1) )) | ≠ 0) Red(C) = Red(C) ∪ {ci(k-1) }; 4)输出属性约简 Red(C)。 算法正确性分析:若 | FRed(U,ci(k-1) ) | = 0,即当 前属性不能将两个对象区分开,则 RRed∪{cik } = RRed , 则由算法 3 知,当输出约简 Red(C)时,有 RC = RRed 。 由定理 2 知,算法 3 求出的属性约简就是基于知识 粒度的属性约简。 算法时间复杂度分析:算法 3 的 1)由文献[11] 知时 间 复 杂 度 为 O ( K | C | | U | ) ( 其 中 K = max{ | Tc(xi) | ,xi ∈U}),空间复杂度为 O( | U | )。 ·132· 智 能 系 统 学 报 第 11 卷
第1期 乔丽娟,等:基于知识粒度的不完备决策表的属性约简算法 ·133· 2)的时间复杂度为0(1C1)+0(1U1),空间复杂度 S,=lpos1/D1=∑1DI=2+0+0=2 为O(1U1)(由算法1的复杂度分析可得)。3)的时 16i≤3 间复杂度为0(1C11U1),空间复杂度为0(1U1)。 S2=pos,/D1=∑1D11=0+1+0=1 1i3 故算法3的时间复杂度为O(KIC1IU1)(其中K= S=∑S,=S,+S2=2+1=3 max{ITc(x:)1,x:∈U},空间复杂度为O(1U1)。 1运k T,=∑Dg=2+0=2 5实例分析 1i3,1j2 T2=∑D,=0+1=1 为了证明算法的可行性,以文献[16]中的不完 1≤i3,1对j≤2 备决策表1为例子进行相应说明。 T3=∑D=0+0=0 1i3,1对j2 表1不完备决策表 每个非空队列中的Neg,/D: Table 1 The table of incomplete decision D1=0,D2=0,Dg=0, car price mileage size max-speed conclusion D={x4},D2=0,Da={xs} high high full low 800d 「200 D=010 「000 X2 low full low good 米 D-山0 1 compact high poor high full high good N=1e盖sD,(S-S,-T)+D,)=0*(3-2-2+2)+0* (3-2-1+1)+0*(3-2-0+0)+1*(3-1-2+0)+0* full high excel low full (3-1-1+1)+1*(3-1-0+0)=1*2=2 X6 high good 对A,={x6},因A.不能区分对象,故无需 为方便计算,将属性值从左至右简记为P、M、 计算。 S、X,则该表的条件属性为C={P,M,S,X}。 故1Fa(U,X)1=2N1+N2=2*2+2=6, 由算法31)求得各属性的知识粒度分别是: 求IFx(U,S)I。 1K1=GD(P)=(4+4+6+4+6+4)/36=28/36: 输入U/(X)={{x1,x2},{x3,x4,x5}} 1K2I=GD(M)=(6+6+6+6+6+6)/36=36/36: 由算法22)的①对A1={x1,x2}求得front[1] 1K,1=GD(S)=(5+5+5+5+5+1)/36=26/36: →x,→x2→end[1]; 1K3I=GD(X)=(3+3+4+4+4+6)/36=24/36: 对其划分有pos1={x1,x2},Neg1=: Um={x1,x2,x3},U={x4,5,x6} 易知,IFx(U,S)l1=0, 由2)排序1K,I≤|K,I≤IKI≤IK21,他们对应 对A2={x3,x4,x}求得 的属性为X、S、P、M,则有Red(C)={X},Rc=O。 front[1]→x3→+end[1]; 由3)计算1Fa(U,X)1=6,计算的1Fx(U,S)I front[2]→x,→x,→end[2]; =6,计算的1Fx.(U,P)1=1,计算的1Fxsm{U,M1= 对第1个非空队列有pos,={x3},Neg1=☑; 0,算法结束,输出约简Red(C)={X,S,P}。 对第2个非空队列pos2=☑,Neg2={x4,xs} 由算法2求IF(X)I。 输入U/☑={x1,x2,3,x4,x5,x6} 则N,∑pOs,pog,=1*0=0,对决策属性划分后得 1i<j 由算法2,2)的2)①对A1={x1,x2,x3,x4,x5 D=[011D= 000 x6}求得: 0001 101 front[1]→x,→x2→end[1]; 易知N2=0+0+0+1*3+0+1*3=6 front[2]→xg→x4→xs→end[2]; 1Fx(U,S)12=2N1+N2=0+6=6 front[*]x6→end[*]: IFx(U,S)I=IFx(U,S)I+IFx(U,S)12=6 对第1个非空队列有pos,={x1,x2},Ng1=☑; 输入U/(XU({S})={{x1,x2},{x3},{x4, 对第2个非空队列pos2={x3},Ng2={x4,x5}, x5}由算法2的2)①对A1={x1,x2}求得 则N=1名,os,Po=lp0s,1*lpo,1=2*1=2。 front[1]→x,→end[1]; front[2]→x2→end[2]; 由算法2,2)的②计算每个非空队列中的 对第1个非空队列有pos,={x,},Ng1=: Pos,/D。 对第2个非空队列pos2={x2},Ng2=☑。 D1={x1,x2},D12=,D3=0, D21=0,D2={x3},D3=☑,则 则N,=∑p0s,po9,=1*1=1易知N2=0
2)的时间复杂度为 O( | C | ) +O( | U | ),空间复杂度 为 O( |U| )(由算法 1 的复杂度分析可得)。 3)的时 间复杂度为 O( | C | | U | ),空间复杂度为 O( | U | )。 故算法 3 的时间复杂度为 O(K | C | | U | ) (其中 K = max{ | TC(xi) | ,xi∈U},空间复杂度为O( |U| )。 5 实例分析 为了证明算法的可行性,以文献[16]中的不完 备决策表 1 为例子进行相应说明。 表 1 不完备决策表 Table 1 The table of incomplete decision car price mileage size max⁃speed conclusion x1 high high full low good x2 low ∗ full low good x3 ∗ ∗ compact high poor x4 high ∗ full high good x5 ∗ ∗ full high excel x6 low high full ∗ good 为方便计算,将属性值从左至右简记为 P、M、 S、X,则该表的条件属性为 C = {P,M,S,X}。 由算法 3 1)求得各属性的知识粒度分别是: | K1 | =GD(P)= (4+4+6+4+6+4) / 36 = 28 / 36; | K2 | =GD(M)= (6+6+6+6+6+6) / 36 = 36 / 36; | K3 | =GD(S)= (5+5+5+5+5+1) / 36 = 26 / 36; | K3 | =GD(X)= (3+3+4+4+4+6) / 36 = 24 / 36; Upos = {x1 ,x2 ,x3 },Uneg = {x4 ,x5 ,x6 } 由 2)排序| K4 |≤| K3 |≤| K1 |≤| K2 | ,他们对应 的属性为 X、S、P、M,则有 Red(C)= {X},RC =⌀。 由 3)计算 | F⌀(U,X) | = 6,计算的 | FX(U,S) | = 6,计算的|F{X,S} (U,P) | = 1,计算的|F{X,S,P} {U,M} | = 0,算法结束,输出约简 Red(C)= {X,S,P}。 由算法 2 求| FRed(X) | 。 输入 U/ ⌀= {x1 ,x2 ,x3 ,x4 ,x5 ,x6 } 由算法 2,2) 的 2) ①对 A1 = { x1 ,x2 ,x3 ,x4 ,x5 , x6 }求得: front[1]→x1→x2→end[1]; front[2]→x3→x4→x5→end[2]; front[∗]→x6→end[∗]; 对第 1 个非空队列有 pos1 = {x1 ,x2 },Neg1 =⌀; 对第 2 个非空队列 pos2 = {x3 },Neg2 = {x4 ,x5 }, 则 N1 = ∑1≤i≤j≤2 posiposj = | pos1 |∗| pos2 | = 2∗1 = 2。 由算法 2, 2 ) 的 ② 计 算 每 个 非 空 队 列 中 的 posi / D。 D11 = {x1 ,x2 },D12 = ⌀,D13 = ⌀, D21 = ⌀,D22 = {x3 },D23 = ⌀,则 S1 =| pos1 / D | = 1∑≤i≤3 | Di1 | = 2 + 0 + 0 = 2 S2 =| pos2 / D | = 1∑≤i≤3 | Di1 | = 0 + 1 + 0 = 1 S = 1∑≤i≤k Si = S1 + S2 = 2 + 1 = 3 T1 = 1≤i≤∑3,1≤j≤2 Dij = 2 + 0 = 2 T2 = 1≤i≤∑3,1≤j≤2 Dij = 0 + 1 = 1 T3 = 1≤i≤∑3,1≤j≤2 Dij = 0 + 0 = 0 每个非空队列中的 Negi / D: D - 11 = ⌀,D - 12 = ⌀,D - 13 = ⌀, D - 21 = {x4 },D - 22 = ⌀,D - 23 = {x5 } D = 2 0 0 0 1 0 é ë ê ê ù û ú ú ,D - = 0 0 0 1 0 1 é ë ê ê ù û ú ú N2 = ∑ 1≤i≤3,1≤j≤2 D - ij(S-Si -Tj +Dij)= 0∗(3-2-2+2)+0∗ (3-2-1+1) +0∗(3-2-0+0) +1∗(3-1-2+0) +0∗ (3-1-1+1)+1∗(3-1-0+0)= 1∗2= 2 对 A∗ = { x6 }, 因 A∗ 不能区分对象, 故无需 计算。 故| F⌀(U,X) | = 2N1 +N2 = 2∗2+2 = 6, 求| FX(U,S) | 。 输入 U/ (X)= {{x1 ,x2 },{x3 ,x4 ,x5 }} 由算法 2 2)的①对 A1 = { x1 ,x2 }求得 front[1] →x1→x2→end[1]; 对其划分有 pos1 = {x1 ,x2 },Neg1 =⌀; 易知, | FX(U,S) | 1 = 0, 对 A2 = {x3 ,x4 ,x5 }求得 front[1]→x3→end[1]; front[2]→x4→x5→end[2]; 对第 1 个非空队列有 pos1 = {x3 },Neg1 =⌀; 对第 2 个非空队列 pos2 =⌀,Neg2 = {x4 ,x5 }, 则 N1 1≤∑i < j≤2 posiposj = 1∗0 = 0,对决策属性划分后得 D = 0 1 0 0 0 0 é ë ê ê ù û ú ú ,D - = 0 0 0 1 0 1 é ë ê ê ù û ú ú 易知 N2 = 0+0+0+1∗3+0+1∗3 = 6 | FX(U,S) | 2 = 2N1 +N2 = 0+6 = 6 |FX(U,S) | = |FX(U,S) | 1 +|FX(U,S) | 2 =6 输入 U/ (X∪({ S}) = {{ x1 ,x2 },{ x3 },{ x4 , x5 }由算法 2 的 2)①对 A1 = {x1 ,x2 }求得 front[1]→x1→end[1]; front[2]→x2→end[2]; 对第 1 个非空队列有 pos1 = {x1 },Neg1 =⌀; 对第 2 个非空队列 pos2 = {x2 },Neg2 =⌀。 则 N1 = 1≤∑i≤j≤2 posiposj = 1∗1 = 1 易知 N2 = 0, 第 1 期 乔丽娟,等:基于知识粒度的不完备决策表的属性约简算法 ·133·