为实现阀门产品的快速设计,构建与产品设计相关的知识库,为阀门产品的计算机辅助设计提供知识支持。本文根据阀门产品设计知识的特点,提出了分模块存储的知识组织策略,并给出了相应的知识表示方法,重点探讨了阀门产品实例的面向对象与框架相结合的知识表示。结合相应的知识表示方法,以关系型数据库为支撑平台进行了知识库设计,将相关知识映射.为对应的数据表,并通过关系建立了各知识实体间的联系。
关键词:知识表示;阀门产品设计;知识库设计
阀门作为一类通用机械产品,其产品设计除应遵循相关的设计标准和设计准则外,还有大量的经验性、事实性知识,属于典型的强经验、弱理论领域,运用成熟的数据库技术,将阀门设计相关的知识和经验进行总结,建立阀门产品设计知识库,可实现阀门设计经验的规范化存储,并为阀门产品的计算机辅助设计提供所需要的知识和数据,实现阀门产品的快速设计,提高设计效率和设计质量。
阀门产品应用广泛,种类繁多,不同种类的阀门产品在结构特点、设计流程中存在较大差异,因此,在阀门产品设计中,既有共性知识,如产品设计一般应遵循国家标准的公称通径和公称压力系列,设计时必须考虑设计温度和工作介质的要求等。同时,不同种类的阀门的具体结构、设计流程、产品系列化程度、设计计算项目及针对某类阀门的特定设计经验等均有所不同。对于这些大量、复杂的知识,如何能够将其转换为计算机易于接受和处理的形式,是构建阀门产品设计知识库的关键问题。
采用什么形式表示知识,使计算机能对之进行处理,是知识库系统首先要解决的关键。所谓知识表示是为描述物体或现象所作的一组约定,是将知识转换为能为计算机接受和易于处理的一种表现形式。这种表现形式可以看作是一种描述知识的数据结构。对知识进行表示就是把知识表示成易于计算机存储和利用的某种数据结构。能否合理地表示和组织知识是关系到知识库构建是否合理及其运行效率的关键。
目前与机械设计相关的人工智能系统经常使用的知识表示方法有产生式规则表示、框架表示、语义网络表示、谓词逻辑表示、面向对象的知识表示和基于本体的知识表示等。在进行知识库的构建时,采用哪种或哪些知识表示方法,应取决于知识本身的结构特点和知识组织的策略。
3.1 知识的组织策略
针对阀门产品设计知识的特点,在知识库中对知识进行模块划分。将标准化参数系列、阀门常用材料等各类阀门设计中均会涉及的知识划归通用设计知识模块;将典型结构等针对特定种类阀门产品的设计知识划归专用设计知识模块,并分类存储。产品实例知识结构层次复杂,知识表现形式多样,因此专门建立产品实例知识模块对其进行存储。阀门产品设计知识库中知识的模块划分和具体构成如图 1 所示。
图 1 阀门产品设计知识库的模块划分
3.2 知识表示方法
针对不同模块知识结构的特点,可分别采用与其相适应的知识表示方法。
(1)基于规则的知识表示通用设计知识模块和专用设计知识模块的知识结构较简单,一般可采用基于规则的知识表示方法。如,蝶阀密封结构的设计:if 偏心结构为双偏心 & 公称通径小于等于 600,then 选择 Ⅱ 类硬密封;盲板阀支耳设计:if 公称通径小于等于 600,then 选择组合结构。
(2)面向对象与框架相结合的知识表示
面向对象技术被认为是 20 世纪 9O 年代计算机科学领域的导向技术之一。从认识论的观点出发,面向对象的思想比较符合人们的一般思维过程,因而很快就渗透到了计算机的多个领域,其中一个很有发展前景的分支就是面向对象的知识表示和方法。它能在不同层次表达知识,在高层次对象能封装复杂的行为,而具体细节对该层知识又是透明的,还可以构造相关信息并把它们保持在一起,灵活性好,优越性十分显著。
由于阀门产品本身所具有的类层次结构,因此在对阀门产品实例的知识表示中,采用面向对象的知识表示方法非常恰当。首先建立阀门产品超类,其属性包含各类阀门产品所共同拥有的属性,如公称通径、公称压力、工作温度、适用介质、连接形式、驱动方式等,向下可泛化为蝶阀、盲板阀等不同的阀门产品子类,每个子类均继承超类的相关属性,并具有自己特有的某些属性。阀门产品超类/子类层次结构如图 2 所示。
图 2 阀门产品的超类/子类层次
对某一个具体的阀门产品实例而言,其产品由主体结构和驱动装置两大部分组成,主体结构又由若干个设计组件组成,每个设计组件又可能由不同的零件构成。产品实例的这种层次结构非常适合采用框架式知识表示,阀门产品实例的框架式知识结构如图 3 所示。
图 3 产品实例的框架式知识结构
因此,对阀门产品实例知识的表示,采用面向对象与框架表示相结合的知识表示方法。
无论采用何种知识表示方法,知识库的知识一般应最终转化为能被所选用的数据库管理系统所支持的数据模型。关系型数据库结构简单、易于维护,是目前应用最为广泛的数据库管理系统。阀门产品设计知识库以关系型数据库管理系统为平台,因此需将相应的知识表示转化为关系模型,方可实现对知识的存储和管理。
在关系型数据库中,表是数据的基本存储单位,无论采取何种知识表示方法,关系型数据库中的知识最终都要存储在一张张表中,表之间的关系通过键来定义。在阀门产品设计知识库中,通用设计知识模块和专用设计知识模块的知识基本都属于规则性知识,表之间的关联简单,因此,可将每个知识点转化为为一张表,条件子句和结论子句为相应的数据项.以条件子句作为主键,供查询调用。
对采用面向对象与框架相结合方法表示的产品实例知识,首先建立阀门产品超类表,并建立各类阀门子类表,各子类表继承超类的属性项,并添加其特有属性项;在超类表中,以鉴别器——阀门种类项来标识阀门的具体种类,子类表依据阀门型号(主键)继承超类各属性项的值。
对阀门实例信息的记录,通过建立产品级信息表、阀门主体结构信息表、驱动装置信息表、各设计组件信息表和各零件信息表,利用主、外键建立关系的定义,实现对产品实例信息的全面、无冗余存储。
通过对阀门产品设计知识的分析,提出了分模块存储的知识组织策略。结合不同模块知识的结构特点,给出了相适应的知识表示方法,重点探讨了阀门产品实例的面向对象与框架相结合的知识表示方法。结合相应的知识表示方法,以关系型数据库为支撑平台构建知识库,将相关知识映射为对应的数据表,并通过关系建立了各知识实体间的联系。