APP下载

基于路径排序算法的STEP知识推理技术研究

2020-04-09

浙江工业大学学报 2020年2期
关键词:实例图谱语义

(浙江工业大学 计算机科学与技术学院,浙江 杭州 310023)

传统的产品信息交换与共享一直以来侧重于几何数据的交换与共享,由于几何数据中不包含设计者的设计历史、设计约束和特征等高层语义信息,无法实现高层语义信息的交换与共享,因此在参数化特征建模已经成为CAD标准建模方法的今天,无法对原设计进行设计意图的定位和重用[1-3]。STEP本体化方法[4-7]仍受限于传统的语法转换层次,语义推理依靠大量的本体规则定义,没有充分挖掘STEP信息中隐藏的语义知识。STEP AP242不仅仅是将原有的三维几何模型、产品制造信息PMI(Product manufacturing information)和自适应制造生产集成在一起,而且将这三部分有关特征设计语义知识描述具体应用到了该应用协议中,为基于特征的设计语义信息(包括特征、参数、约束和构造历史)的表达和交换打下基础[8-9]。当前主流的CAD系统主要通过特征、参数、约束和构造历史四个方面来推测表达产品设计语义信息。设计语义信息是产品信息交换与共享中一个重要的部分,但设计意图信息往往隐藏在STEP文件中,因此需要合适的技术从STEP文件中推理出设计意图信息。知识图谱是一种能表示实体之间关系的知识表示方式,它能够形式化地描述现实世界事物之间的相互关系。将知识图谱的形式化描述和众多的知识推理方法结合,可以挖掘出STEP文件中更多隐含的产品语义信息。

知识推理的方法主要包括基于逻辑规则的推理方法和基于图的关系推理方法。基于逻辑规则推理包含基于SWRL的规则推理、描述逻辑推理和一阶谓词逻辑推理等,该方法一般由逻辑规则集合和具体事实集合两部分组成,存在推理步骤繁琐且推理效率不高的问题[10-11]。基于图的实体关系推理包括张量分解和路径排序算法推理两个方面,张量分解用于知识图谱学习和推理过程中时,只考虑知识图谱中实体与实体间的直接关系,忽略知识图谱图形结构的特点[12],而路径排序算法通过图中两个实体间的多跳路径结合关系路径中蕴藏的信息,实现预测两个实体间的语义关系。笔者针对逻辑规则推理和张量分解算法的不足,以基于模型定义的STEP AP242应用协议为设计语义知识交换的研究对象,引入知识图谱[13-15]的理论基础,提出将规则推理和路径排序算法相结合的知识推理方法。首先,将STEP产品数据实例本体化为三元组语义元实例,构建产品三维几何信息与非几何信息语义关联的STEP知识图谱;其次,在知识图谱的基础上提出基于路径排序算法的STEP特征知识推理技术;最后,结合基于三维产品信息可视的知识图谱平台实例进行论证。

1 STEP知识图谱

STEP知识图谱结构分两大类关系:一类是应用协议层语义关系,另一类是STEP实例层关系。知识图谱的基本结构由应用协议层语义关系图GM和STEP实例层关系图GE组成,即KG=(GM,GE)。其中,应用协议层语义关系图表示应用协议概念层级结构;STEP实例层关系图表示STEP实例及其之间的关系。应用协议层语义关系图GM=(CM,RM),其中CM表示图中概念节点,RM表示由多条边连接的两个概念之间的关系边。STEP实例层关系图表GE=(EE,RE),其中EE表示图中实体节点,RE表示由多条边连接的两个实体之间的关系边。

STEP知识图谱是通过实体及其语义关系来表达产品几何信息和设计语义信息知识的图。图结构由语义元节点集合和边集合构成KG={,}。其中,语义元节点集合表示了产品信息中的各种概念以及实体,边代表概念、实体间的关联,用来连接两个概念或者实体。具体表述如下:

表示语义元节点集合,即SC∈(CM∪EE);表示边集合,即R={,,},R∈(RM∪RE),其中表示关系类型集合,表示关系方向集合,表示三元组集合,使用三元组(sc_A,relation,sc_B)表达语义关系,sc_A与sc_B表示节点(概念或实体),方向是由sc_A指向sc_B,relation表示语义关系每个三元组表示一个事实,大量的三元组事实组成知识库,作为知识图谱结构的基础。

STEP知识图谱体系结构如图1所示,主要由知识库、规则库和实例库三部分构成。实例库中存放了大量由STEP242实例文件转化的以语义元节点为基础的OWL文件,另外语义信息标注可以补充转化过程中丢失的语义信息;知识库中存放了大量的事实三元组,分为基本知识库和扩展知识库两部分,其中基本知识库由STEP AP242应用协议库生成,扩展知识库通过对实例库的知识抽取动态生成;规则库中包含了大量的规则信息用于设计意图信息的推理。知识图谱主要通过自顶而下和自底向上两种方式来构建:自顶向下指的是根据应用协议库定义好产品语义信息元结构和几何关系,再添加到基本知识库;自底向上指的是基于设计语义知识表述提出的设计语义实体信息的层次结构,构建STEP AP242应用协议库不包含的设计意图语义元及语义元间的连接关系,并加入到知识库从而实现知识库的动态扩展。通过两种构建方式的结合,可以更有效地构建知识图谱中的知识库。实例库、知识库和规则库三者互相关联,共同组成了面向设计语义的知识图谱的体系结构,实例库作为知识库的基础,提供了知识库的事实依据,而知识库中的大量事实提取出通用性的语义规则,结合外部添加的语义规则标注,这些语义规则反作用于实例库,推理出新导入实例的语义信息。

图1 知识图谱体系结构

2 基于路径排序算法的知识推理技术

作为知识图谱的基本单位,产品信息语义元及其之间的关系构成了知识图谱网络的节点和连线,这些节点和连线构成了大量的实体路径,从而通过计算不同实体路径的权重来对设计语义信息进行知识推理操作。路径排序算法提供了一种定量计算两者之间存在关系概率有多大的方法。算法的具体定义如下:

为了表述图结构,定义R为二元关系,R(e,e′)表示e和e′具有关系R,满足等式R(e)≡{e′,R(e,e′)},关系路径P由一系列的关系R1R2…Rn组成,且对任意的整数i(1

(1)

式(1)主要用于在算法初始化时,计算第一步连接出发点与第二个节点的概率。假定分析一个STEP零件的设计过程,具体问题可表示为图2,该零件的特征可能包括基于孔特征以及凸台特征,首先查询起点零件Part实体,考虑关系hasFeature,假设相关的Eq={Extrude,Rotate},对于任意的e∈Eq,此时会以相同的概率随机游走到路径a1,a2上来,对于零件组成面,则对应的为0,即不会游走到c1路径上来。

图2 零件通孔特征路径选择

若P=R1R2…Rn非空,则令P′=R1R2…Rn-1,则

(2)

假定R1为hasHoleFeature关系,R2为hasThrough

HoleFeature关系。假设上一步操作选择了a1路径,此时会进行第二步概率随机游走,引入新的查询实体range(R2)={ThroughHoleFeature},如果此时有ThroughHoleFeature,BlindHoleFeature两个新实体e′与P相连接,首先根据式(2)判定e′与e是否存在关系,即这样两个三元组(HoleFeature,hasThroughHoleFeature,ThroughHoleFeature)与(HoleFeature,hasBlindHole

HoleFeature的h值明显大于P1。

至此就可以根据所需的结果进行排序,整条关系路径的权重值和计算公式为

θ1hEq,P1(e)+θ2hEq,P2(e)+…+θnhEq,Pn(e)

(3)

式中θi(i=1,…,n)表示路径的模糊权重参数,其基本公式为

(4)

式中:μ为学习率参数,在迭代过程中保证权重参数值改变的速度;g(i)是外部改变函数,根据外部标注及规则来确定θi的值增加或减少的幅度;ε是一个固定的极小值,用以保证分母不为0。在每条路径中,θi和不同结点之间的权重值的变化使得整条关系路径的权重值和发生动态变化,随着外部标注及特征识别信息的不断补充,权重值和变化也越明显,使得路径推理中不同路径的权重值差距也越明显,结果也更趋向于准确。

为了弥补知识图谱实体路径繁杂、效率低等不足,引入了基于SWRL表达方法的STEP语义规则,在知识推理过程中,根据语义规则不断迭代改变实体路径的模糊权重参数,实现基于STEP语义规则的知识推理。本体是SWRL规则推理的操作对象,领域本体的构建支撑SWRL规则推理。产品信息语义元是知识层面操作的最基本单元,可以通过SWRL规则逻辑语句来表达产品数据语义元之间的关联关系。SWRL主要包括表1所列的限制式。其中:C是基于实体类概念描述;Q是实体对象的属性;P表示它们之间的联系关系;x和y是变量、实例对象或者数据值;Q(x,y),P(x,y),SameAs(x,y),C(x)∧D(x),Not(C(x))分别表示概念C之间的各种逻辑关系。

表1 SWRL主要的限制式

语义规则的建立依赖于知识提取技术,SWRL规则包含类似Horn规则的高级抽象语言可以表达用户自定义的OWL概念规则,由此提供较单独网络本体语言OWL更强的语义推理能力。一条SWRL规则包含一个前提条件和一个推理结果,如果前提条件中所有原子都成立,那么规则中的推理结果也必须成立,以判断圆柱凸台特征的语义规则为例,其推理前提由face_geometry_contains_advanced_face(?g,?f1);face_geometry_contains_advanece_face(?g,?f2);face_geometry_contains_advanced_face(?g,?f3);plane(?f1);plane(?f2);cylindrical_surface(?f3);advanced_face_has_DIcircle(?f2,?dc);advanced_face_has_vector(?f2,?n1);advanced_face_has_vector(?f3,?n2);vector_has_angle(?n1,?a);angle_has_more(?a,π/2)组成,当以上前提成立时,可推理出结果:face_geometry_has_convex_feature(?g,?cf)。

结果显示零件具有圆柱凸台特征。基于路径排序算法并结合SWRL语义规则的知识推理算法步骤为

Step1提取STEP AP242文件中相关知识存入OWL文件。

Step2依据OWL文件创建相应产品信息语义元并存入知识图谱中。

Step3对语义元间的连接权重进行初始化。

Step4依据推理目标的设计语义信息创建语义节点并设置其和实例节点连接权重为零。

Step5依据SWRL规则中的推理前提和实例库进行匹配。

Step6依据路径排序算法计算所有实例节点至语义节点权重。

Step7对路径权重进行排序,输出可能性最大的推理结果。

基于路径排序算法的知识推理技术,一方面结合SWRL规则解决了传统路径排序算法多跳路径的推理能力一般,且并未考虑路径的可靠性和语义组合问题;另一方面使用图推理方法,弥补传统逻辑推理效率低的问题,且相比得出确定结果的传统推理方法,路径排序算法能用定量的概率来描述可能的推理结果。基于路径排序算法的知识推理技术能有效地将SWRL规则推理和基于路径排序算法的图推理相结合,推理出STEP文件中隐藏的设计语义信息。

3 基于可视平台的知识推理实现

3.1 可视平台体系结构

图3为可视化平台的体系架构图,STEPAP242产品实例文件分别转化为由语义元描述的OWL文件和三角面片描述的XML文件。根据OWL文件构建二维的语义元网络,初始网络中的语义元节点为基础语义元节点,结合STEP的知识图谱,添加设计意图语义元节点并和基础语义元节点建立语义连接,最终形成完整的二维语义元网络。另外,利用转化的XML文件中的三角面片描述可以实现产品实例的三维模型展示。二维语义元网络和三维模型依据相应的ID编号相互关联,二维语义元网络的交互操作会使得产品实例三维模型发生相应的变化。通过可视化平台系统,Web环境中的不同用户可以随时随地通过Internet访问产品实例如图4所示,在添加适当标注的基础上,实现知识推理操作,并在二维语义元网络和三维模型中显示出推理结果。

图3 可视化平台总体结构

图4 三维可视平台主界面

3.2 产品实例的可视推理

针对产品零件复杂特征问题,笔者选取了车床机座三维简易模型,图5为其语义元节点组成的知识图谱的部分节点展示,其中实线表示从STEP文件中提取具有层次关系的语义元,并依据路径排序算法将其路径权重初始化为1,而需要推理的复杂特征语义元与其相关实例语义元之间的连线为虚线,且初始化权重为0,但使用基于路径排序算法的知识推理方法推理后,其路径权重发生变化,最终依据权重和规则推理出复杂特征。机座中包含了大量的单一特征和组合特征,包括台阶特征、槽特征以及由多台阶特征组成的阵列特征等。通过几何特征的知识提取技术可以识别出简单的几何特征,然而由多台阶特征组成的台阶阵列特征则需要结合PMI尺寸信息和知识推理技术推理出来。

图5 机座实例部分知识图谱展示

具体推理过程为

1)载入产品零件的Step文件,将其转化为以产品信息语义元为基本单位的OWL文件,图6(a)为车床机座三维模型,图6(b)为根据OWL文件生成的几何节点图,图7为生成的设计意图语义节点图。在知识抽取和知识推理前,基础语义元节点和设计意图语义元节点之间不存在连线关系,即表明初始状态下基础语义元和设计意图语义元之间互相独立。

图6 三维模型及其几何节点图

图7 语义节点图

2)结合基于几何特征的知识提取技术,提取出产品零件中基本几何特征信息,见表2。

表2 基本几何特征信息

3)结合基于产品尺寸的知识提取技术,提取出产品零件中的具体的尺寸信息,见表3。

表3 PMI尺寸信息

4)结合邻接图和提取的PMI尺寸信息得到的具体推理结果展示如图8所示。图8(a)中的二维节点图展示了具体的推理结果,可以看到产品模型的基础集合语义元节点和设计意图语义元节点形成了新的连线,基础语义元节点以特征语义元节点为中心扩散分布,从节点图中,可以清晰地看到基础语义元节点和设计意图语义元节点的关联关系,如图中面集合(#262,#263)构成了盲孔特征%blind_hole_feature。图8(b)中的三维模型同样展示了相关联的推理结果,组成各特征的面以白色分于其他面。通过Alt+左键点击左侧二维图中特征语义元节点%array_feature,右侧三维模型中展示了由面集合(#232,#233,#234,#245)和面集合(#229,#230,#231,#240)组成的三台阶阵列特征。结果表明了基于三维产品可视的知识图谱平台构建和可视推理的可行性。

图8 三维模型的推理结果图

4 结 论

以STEP AP242协议为基础,引入了知识图谱体系结构,构建了STEP产品信息知识图谱;然后在路径排序算法的基础上,嵌入STEP语义元规则,提出了基于STEP语义元规则的路径排序算法以实现隐藏的语义信息的知识推理;最后结合基于Web环境的三维产品可视平台实现STEP知识推理。

猜你喜欢

实例图谱语义
高清大脑皮层发育新图谱绘成
真实场景水下语义分割方法及数据集
基于图对比注意力网络的知识图谱补全
绘一张成长图谱
主动对接你思维的知识图谱
“吃+NP”的语义生成机制研究
情感形容词‘うっとうしい’、‘わずらわしい’、‘めんどうくさい’的语义分析
汉语依凭介词的语义范畴
完形填空Ⅱ
完形填空Ⅰ