一种基于本体语义推理的自动功能原理分解方法与流程

文档序号:16537902发布日期:2019-01-08 20:03阅读:194来源:国知局
一种基于本体语义推理的自动功能原理分解方法与流程

本发明涉及计算机辅助设计领域,特别涉及一种基于本体语义推理的自动功能原理分解方法。



背景技术:

概念设计是系统设计的重要阶段,产品总成本的70%左右在该阶段形成,而功能分解,是概念设计中获取产品的功能性和创新性的核心环节,存在于工业生产和日常生活中的大量机械系统,随着多域机电产品复杂性的日益增加,概念设计需要面向不同领域进行系统分析。

对于复杂多域机电系统的概念设计,使用分而治之的思想将系统总体功能层次化分解为清晰而具体的子功能任务,并为其寻找原理解决方案,是降低系统设计复杂度,构建系统功能结构的有效手段。功能分解一般分为两个阶段:(1)将系统总功能分拆为相互独立的子任务的任务分解;(2)当基本的功能任务自身无法细分时,依靠已知原理方案中的因果关系将功能分解为实现所需支持子功能的原理分解。将复杂的系统功能分拆为独立的任务,以及在广阔的学科领域中寻找功能的可行原理方案,并将原理知识重用于功能的细化分析为设计者带来巨大挑战。计算机辅助自动功能分解能够帮助设计者减轻工作量及扩大可行原理解的搜寻空间。

在己有的计算机辅助功能分解工具中,任务分解依然需要设计人工执行,对原理分解的支持也存在不足。自动功能分解的难点在于:(1)现有功能表示方法中缺乏输入输出流状态的结构化语义描述,难以为任务分解提供足够的信息。(2)使用功能基中粗糙分类的功能动词和流名词作为原理方案检索的依据,难以精确地搜索能够实现所需功能的可行解决原理。(3)大部分工具只支持基于物理原理的原理分解,且因果关系的组织往往是直接关联缺乏内在逻辑,易造成设计固化。

由于基本的功能任务通常被描述为名词+动词的形式,因此只能基于个关键词进行原理方案检索,难以精确地搜索能够实现所需功能的可行解决原理。同时,大部分工具只支持基于物理原理的原理分解,且因果关系的组织往往是直接关联缺乏内在逻辑,易造成设计固化。而存在于已注册的专利和已有产品设计中的设计方案,及实现过程知识难以被形式化编码表示,因此无法支持自动原理分解的进行。因此,单个功能的输入输出流及功能效应语义已知的条件下,如何高效快速地通过功能类比获取可行原理解并得到支持子功能是目前待解决的技术问题。

本体在信息科学领域是指“对概念化的显式说明”,通过提供形式化的语义表达和推理实现知识的共享和重用。原理分解是指将相似问题的解决方案中的原理知识运用于未知功能的求解,并利用方案中的实现过程知识为生成功能任务的实现所需要的子功能的策略。



技术实现要素:

本发明的目的在于提供一种基于本体语义推理的自动功能原理分解方法,可以高效快速地通过功能类比获取可行原理解决方案并得到支持子功能,可以有效消除基于动词+名词的基本功能任务表示的语义偏差和不确定性,提供灵活而精确度可行工作原理查询,基于对原理知识中实现过程知识的仿真,实现支持子功能的自动化生成。

一种基于本体语义推理的自动功能原理分解方法,包括以下步骤:

(1)基于sysml语言定义基本功能任务语义的形式化表示,所述基本功能任务语义包括基本输入流,基本输出流和功能效应;

(2)定义工作原理的本体语义表示,所述工作原理包括结构化原理的实现过程知识;

(3)通过功能效应语义检索查找可行原理解决方案;

(4)基于体现原理实现过程知识,为功能生成支持子功能。

在步骤(1)中,所述的功能效应包括四种类型:类型变化、值变化、形状变化和关系变化。

所述的四种类型的语义表示元模型的结构中:

对于类型变化,包括分别解释流对象在发生类型改变前流的类型及发生类型改变后流的类型;

对于值变化,包括发生改变的流对象的类型、发生值改变的属性类型、解释了属性值改变的趋势;

形状变化,包括分别表示发生形态改变前固体物料流的形态类型及发生形态改变后固体物料流的形态类型;

对于关系变化,包括表示关系约束的起始端对象的类型、表示关系所约束的目标端对象的类型、发生关系改变的关系约束类型和解释了关系的改变趋势。

在步骤(2)中,所述的工作原理的本体语义结构包括:

适用流类型属性hasapplicableflowtype,描述了工作原理适用的需要被改变的流flownoun的类型;

提供功能类型属性hasprovidingfunctype,描述了工作原理能够提供的功能functionverb类型,在不同语义粒度和精确度上为功能提供了语义逻辑关联;

提供功能效应类型属性hasprovidingfe,描述了工作原理能够提供的功能效应functioneffect,在不同语义粒度和精确度上为工作原则提供了语义逻辑关联;

工作原理实例属性hastheoreticalbasis,用于将工作原理实例与解释其科学或技术原理的领域知识domainspecificeffect联系起来;

参与者属性haspartipants,表示参与工作原理实现的所有流对象flowobject,帮助在后续分解过程中区分和追踪这些参与者;

实现过程属性hasrealizationprocess,对工作原理的实现过程知识statechain和所有参与工作原理的执行的流的说明。

在步骤(2)中,与实现过程属性hasrealizationprocess关联的概念为描述作为参与者的流对象的状态变化链,表示工作原理的实现过程知识。

所述的状态变化链statechain的语义结构包括:

参与者属性hasparticipants,描述了当前步骤作为参与者的流对象flowobject集合;

约束状态属性hasrequiredstate,说明了当前步骤所约束的流对象flowobject及该对象需要达到的状态stateconstraint;

输出属性hasoutcome,说明这个步骤完成后获得的输出流对象flowobject;

下一状态链属性hasnextchain,告知了实现过程的下一状态变化链statechain。

在步骤(3)中,所述的通过功能效应语义检索查找可行原理解决方案,包括以下步骤:

(3-1)通过swrl语言定义功能效应实例间的语义兼容匹配规则;

(3-2)定义支持三种不同语义精度查找工作原理的sparql模板;

(3-3)将基本功能任务语义填充到sparql模板,并根据基本功能任务语义与工作原理的功能效应语义兼容性,为基本功能任务查找可实现的工作原理解决方案。

在步骤(3-1)中,所述的语义兼容推理规则为:令功能要求的作用效果为e1,工作原理能够提供的效应为e2,若满足则认为e1单向兼容于e2,即,如果功能所要求的功能效应的各属性值被隶属于工作原理所提供效应的各属性值,则认为该工作原理能够提供功能所需要的变化。

在步骤(3-2)中,所述的sparql模板包括:

功能与工作原理的完全匹配,工作机制为要求工作原理支持的流类型与功能需要改变的输入流类型完全相同,且提供的功能效应也与功能需要实现的作用效果完全相同;

功能与工作原理的语义兼容匹配,工作机制为基于功能效应语义的单向兼容swrl规则,能够推理出功能所需实现的功能效应在语义上是否从属于工作原理提供的功能效应;

功能与工作原理的模糊匹配,工作机制为使用功能动词作为关键字实现工作原理的查询。

在步骤(4)中,所述的基于体现原理实现过程知识,为功能生成支持子功能的方法为:从查询到的可行原理方案解中选取一个方案,根据该方案中所含的实现过程语义,将其应用在当前需要解决的功能上,再通过仿真过程得到所需子功能。

本发明提供的自动功能原理分解方法:通过提供面向多学科领域及来源的原理方案知识的本体结构化表示方法,因此计算机能够理解使用该工作原理实现所需功能任务时,参与功能实现的所有流需要满足的状态约束序列;提出基于原理实现过程仿真的功能分解算法,自动生成使用特定工作原理实现功能任务时所需要的支持子功能;同时,对于基本功能任务,及所分解出的子功能都提供了基于sysml的模型化表示。

与现有技术相比,本发明的有益效果体现在:

本发明提供的自动功能原理分解方法可以为无法直接分解的基本功能任务基于精确语义查找可行的工作原理,并自动生成所需的支持子功能;提出的基于sysml的基本功能任务形式化建模表示使用功能效应体现功能的本质目的语义及基于本体结构化语义的工作原理知识表示方法挖掘了功能效应实例间隐含的语义兼容性,可以有效消除基于动词+名词的基本功能任务表示的语义偏差和不确定性。

本发明提供的自动功能原理分解方法基于本体结构化的工作原理知识,使用定义了挖掘了功能效应实例间隐含的语义兼容性的swrl兼容匹配规则,并定义三种不同语义精确度的sparql查询模板,实现基于功能语义的原理方案查找,提供灵活而精确度可行工作原理查询。基于兼容性语义的查询能够获在保证方案可行的前提下获得更多的工作原理,而基于功能效应的完全匹配则能获得更准确的查询结果。

本发明提供的自动功能原理分解方法通过提供面向多学科领域及来源的原理方案知识的结构化表示方法,以及基于流状态变化过程仿真的原理分解,实现工作原理知识的重用,并帮助设计者确定基于特定原理实现功能任务时所需要的支持子功能,从而提出基于原理解实现过程知识仿真的功能分解。

附图说明

图1为实施例中功能效应的语义表示元模型定义图;

图2为实施例中基于sysml基本功能任务表示示例;

图3为实施例中workingprinciple的本体语义定义;

图4为实施例中工作原理实现的流状态变化过程语义定义;

图5为实施例中基于swrl的功能效应语义兼容性匹配规则;

图6为实施例中基于sparql的工作原理语义查询模板;

图7为实施例中基于实现过程知识仿真的原理分解算法;

图8为实施例中工作原理知识实例的语义表示示例;

图9为实施例中原理分解结果实例;

图10为实施例中功能结构模型示例图;

图11为本发明提供的自动功能原理分解法的流程图。

具体实施方式

如图11所示,本发明提供的基于本体语义推理的自动功能原理分解方法包括以下步骤:

首先对基本功能任务的语义进行基于sysml的模型表示,并定义工作原理的本体概念定义及实现过程知识的结构化语义表示。基于所定义的本体表示,创建工作原理知识的本体实例。

其次,为实现功能任务的可行工作原理的语义查找,制定了基于功能效应语义兼容性的推理的swrl规则,并提出三种sparql模板,实现基于功能效应语义的工作原理查询。

最后,使用仿真过程实现了基于功能的原理分解以获取所需的支持功能。即通过对hasrealizeprocess属性中储存的工作原理实现过程所要求的每一个流状态改变的仿真,分解出基于该原理的基本功能任务实现需要的子功能。

在本实施例中,具体的步骤如下:

步骤一:定义功能任务语义的形式化表示。

基于sysml语言定义基本功能任务语义的形式化表示,所述基本功能的语义包含:基本输入流,基本输出流和功能效应语义。其中,基本输入流和基本输出流拥有确定的流类型(“functionalbasis”中的信息流,物料流,能量流及其子类)。功能效应存在四种类型:类型变化(typechange),值变化(valuechange),形状变化(shapechange)及关系变化(relationchange),每种类型的语义表示元模型如图1所示。

●对于类型变化,inputtype和outputtype分别解释流对象在发生类型改变前流的类型及发生类型改变后流的类型。

●对于值变化,objecttype是发生改变的流对象的类型,property表示发生值改变的属性类型,changedtrend解释了属性值改变的趋势。

●形状变化,inshape和outshape分别表示发生形态改变前固体物料流的形态类型及发生形态改变后固体物料流的形态类型。

●对于关系变化,sourccetype表示关系约束的起始端对象的类型,targettype表示关系所约束的目标端对象的类型,relationtype是发生关系改变的关系约束类型,changedtrend解释了关系的改变趋势。

同时,基本功能的实例需要由描述其功能类型(“functionalbasis”中的功能动词)的版型修饰。

如图2展示了一个基本功能任务形式化定义的sysml模型实例。这个功能任务的主输入流是dirtyrice(带有杂质的米),主输出流是分离后的rice(米)和dirt(杂质),其功能效应是接触两种颗粒状物质之间的混合关系。

步骤二:定义原理解决方案的结构化本体语义表示。

定义工作原理“workingprinciple”概念,描述来自于不同学科领域的已知原理解决方案,其本体语义结构如图3所示。

工作原理的语义表示作为方案无关(solution-independent的功能语义表示,功能效应为工作原理解的查找提供了语义接口,即通过功能效应语义的匹配,为给定的功能寻找来自广泛领域的工作原理作为解决方案。

hasapplicableflowtype属性描述了这个工作原理适用的需要被改变的流flownoun的类型,;hasprovidingfunctype和hasprovidingfe属性分别描述了工作原理能够提供的功能类型functionverb和功能效应functioneffect,因此它们分别在不同语义粒度和精确度上为功能和工作原则提供了语义逻辑关联;hastheoreticalbasis属性用于将工作原理实例与解释其科学或技术原理的领域知识domainspecificeffect联系起来;haspartipants属性表示参与工作原理实现的所有流对象flowobject,帮助在后续分解过程中区分和追踪这些参与者;hasrealizationprocess属性即是对工作原理的实现过程知识和所有参与工作原理的执行的流的说明。工作原理的实现过程由描述作为参与者的流对象的状态变化链statechain表示。

statechain概念用于表示所需要的单个状态改变,hasrealizationprocess指向第一个状态改变,当statechain实例前后关联起来,就组织起了原理执行的整个实现过程知识语义,它将成为原理分解推理的依据。使用“workingprinciple”概念结构化基于不同领域和来源的原理方案知识。为了便于基本科学原理和已有设计方案的知识重用,并为功能分解提供支持,将原理方案的实施过程抽象为对所有参与功能实现的流对象的有序状态变化过程。即认为原理方案的实现过程是一个状态链(statechain),状态链上的每个步骤都是一个状态约束。该状态约束体现了原理相关(solution-dependent)的功能实现过程中参与功能执行的流对象需要达到的中间状态。

其中关于方案的实现过程,即“hasrealizationprocess”属性的值,由图4所示的语义结构描述。

其中,hasparticipants属性描述了当前步骤作为参与者的流对象flowobject集合;hasrequiredstate说明了当前步骤所约束的流对象及该对象需要达到的状态stateconstraint;hasoutcome说明这个步骤完成后获得的输出流对象flowobject,而hasnextchain则告知了实现过程的下一状态变化链statechain。

这种形式化的知识组织机制,结构化了原理方案实现过程的每个步骤,包括所有需要参与到原理作用中的流对象,当前步骤中流需要达到的状态,以及在这个步骤产生的输出;同时还体现了实现过程的时序信息,每个步骤按顺序环环关联,显示了状态约束的因果逻辑;因此,hasrealizeprocess属性将工作原理与功能实现的因果过程关联起来,能够为方案无关的功能补充原理实现相关知识,以便执行原理分解得到支持子功能。

步骤三:通过功能效应语义检索查找可行原理解决方案。

(3-1)通过swrl语言定义功能效应实例间的语义兼容匹配规则。

为了使用功能效应语义实现功能与原理解决方案的匹配,在功能语义本体中通过swrl语言定义功能效应的语义兼容性匹配规则。

因此针对每种功能效应类型,定义其实例的语义兼容性匹配规则,如图5所示。

将功能效应作为语义查询的条件,在知识库中为功能的实现寻找可行的工作原理。

在语义兼容性匹配规则中:令功能要求的作用效果为e1,工作原理能够提供的效应为e2,若满足则认为e1单向兼容于e2。即如果功能所要求的功能效应的各属性值被隶属于工作原理所提供效应的各属性值,则认为该工作原理能够提供功能所需要的变化。因此,定义iscompatiblewith属性描述效应实例间的单向兼容关系。这种关系是偏序关系,即“functioneffect1iscompatiblewithfunctioneffect2”表达了functioneffect1的语义与functioneffect2兼容(即functioneffect2包含了functioneffect1的内容),反之则不一定成立。

issubtypeof属性是具有自反性和传递性的偏序关系,若aissubtypeofb,则a是b的子类型。

●对于typechange,若实例x处理的流的hasoriginalflowtype属性值是实例y对应属性的子类型,且x的haschangedflowtype属性值也是y对应属性的子类型,则认为xiscompatiblewithy。例如,solid→thermal效应单向兼容于material→energy效应,因为solid和thermal分别是material和energy的子类型。

●shapechange的推导与之类似,sphere→circular的形态变化单向兼容于body→flat(如工业中的压塑等物料形态降维变化)。

●对于valuechange的推断,要求两个效应实例所改变的属性类型是相同的。如liquid:temperatrue:increase单向兼容于material:temperatrue:change。在本体语义知识库中,我们预定义了increase和decrease是change的subtype。

●最后,对于relationchange的推断,也要求各属性满足issubtypeof关系。如{liquid:object:in:generate}单向兼容于{material:material:spatial:change},即“液体”在“对象”“里面”(如将水注入容器)的关系生成,隶属于物料间的空间关系变化。

(3-2)定义支持三种不同语义精度查找工作原理的sparql模板。

为实现基于语义的原理解查找,定义三种不同精确度的语义查找sparql模板,查询语句使用sparql语言定义,如图6所示。

sparql模板包括:

功能与工作原理的完全匹配,工作机制为要求工作原理支持的流类型与功能需要改变的输入流类型完全相同,且提供的功能效应也与功能需要实现的作用效果完全相同;

功能与工作原理的语义兼容匹配,工作机制为基于功能效应语义的单向兼容swrl规则,能够推理出功能所需实现的功能效应在语义上是否从属于工作原理提供的功能效应;

(3-2)将基本功能任务语义填充到sparql模板,并根据基本功能任务语义与工作原理的功能效应语义兼容性,为基本功能任务查找可实现的工作原理解决方案。

功能与工作原理的模糊匹配,工作机制为使用功能动词作为关键字实现工作原理的查询。

例如将图2中所示功能的输入流类型,表示功能自身语义的动词及功能效应等语义填充到这三种模板,则能在知识库中检索出功能的可行工作原理解决方案,如表1所示。首先,使用“branch”作为关键字的模糊匹配查询,找出了所有17种工作原理,但查询结果中存在不可行的原理解决方案,例如用于提取金属矿石的“hydrometallury”(湿法冶金原理)。其次,原理方案的完全匹配查询精确度最高,但只获得了4个可行解决方案。最后,根据功能和工作原理的功能效果和流类型语义间的兼容性,使用语义兼容查询找到了8个结果,在充分保证方案可行的同时,尽量扩大了可行解的空间。

表1三种sparql模板的查询结果

步骤四:基于体现原理实现过程知识,为功能生成支持子功能。

此时,从查询到的可行原理方案解中选取一个方案,根据该方案中所含的实现过程语义,将其应用在当前需要解决的功能上,则通过图7所示的仿真过程得到所需子功能。

注意,已知的原理解决方案需要预先定义为本体中的实例。

如图8所示,为从一个已有专利中获取的洗米机的解决方案,被实例化为本体语义结构。该工作原理能够实现的功能任务被抽象表示为两种功能效应:消除颗粒间的混合{particulate,particulate,mixedwith,remove},或者是去除固体混合物中的颗粒{particulate,solid-solid,in,remove}。这两种功能效应语义是通过对工作原理作用效果的不同理解和侧重而提取的。这也解释了为什么在完全匹配查询模式下可以找到这个工作原理。将自动定时洗米机专利的洗米功能的实现过程抽象为本文所定义的语义结构表示,作为原理参与者的流需要按照特定时序满足的状态约束是:①在第一个状态节点,保证参与者rice和water的position属性值是“container”(即保证位置在容器中);②在第二个状态节点,保证rice与water的关系约束(米需要在水中);③在第三个状态节点,保证clearrice与water的关系约束(洁净的米不在水中);④在第四个,即最后一个状态节点,保证water的position属性值为“environment”(将水排除到系统外部)。

如图9所示,为基于该解决方案对图2所示的功能进行分解所得出的子功能:import_water(导入水),import_dirtyrice(导入米),mix_dirtyrice_water(将米和水混合),extract_rice_from_water(将米从水中提取出来)以及export_water(排除水)。其中每个子功能都拥有具体的输入/输出流和功能效应语义。

如图10所示,是将分解所得的子功能关联起来所得的功能结构模型,功能结构视图追踪了流程对象在支持子功能作用下的变化过程。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1