3知iJJ,_l;程及其在桥式起重.t';IDI。I的应}口定性属性相似度的计算:s砌G,少)=l—1.厂G)一.rO)l式『=I可为转换函数。(3.2)采用加权平均法求C0与踹糊相似度:s,(Co,q)=其中,Co为设计实例;G为集体实例中的某个实例:w,为实例属性。(3.3)实例的修改需采用参数化设计方法,对获取的桥架实例设计参数进行局部的修改,并使用有限元分析软件对主梁进行刚度和强度的分析,确保新桥架实例的正确性。作为知识系统的核心,知识库的质量的高低,影响着整个基于知识工程的系统的效率的高低和性能的好坏。知识库包括知识的组织与管理,主要用来组织和管理知识库中存储的知识。知识库的结构是由知识的组织方式决定的,而知识库的建立、修改(如重组、删除等)与维护,还有知识库中知识的加入、添加、查阅、参数优化等方面,以及所收录知识的一致性、完整性和安全保护等各个管理方面的工作则由知识管理负责【281。知识库管理系统负责知识管理的内容。而知识库管理系统的设计,应包括知识管理和知识库管理的各种管理功能模块的设计。对于知识操作功能的设计,应该包括知识的增、删、改、查和统计等功能。这些功能设计的实现有两种方法。可以通过人机对话的方式来实现知识的添加、删除、修改、查询等功能设计,即利用屏幕窗口来实现功能设计;此外,还可以通过用全屏幕编辑的方式,即让用户按知识描述语言的语法格式通过直接使用键盘编辑知识。对于大多数基于知识的系统,尤其是咨询类基于知识工程的系统,人机界面起着非常重要的作用。一般情况下,一个基于知识工程的系统包含面向系统开发与维护者的界面和面向最终用户的界面这两个人机界面。前一个界面由开发者利用开发工具来提供;而后一个则属于系统自身的一部分。目前,基于对图形用户界面的广泛使用,可以肯定的是人机界面的开发技术己相当成熟然而,由于使用界面通常要涉及到“人机对话”,如人与系统之间的询问处理以及分析应答等交互功能还不完善,故此,基于知识工程的系统的使用界面还有待进一步发展和完善。3知识工程及其在桥式起重机中的应用现如今,人们对系统开发所使用的工具的要求也由于基于知识的系统技术的普及与发展而越来越高。一个好的系统开发工具,应该能够向用户提供更多更好的支持,应该包括从系统需求分析与设计、知识的获取和利用、编码运行到系统测试与维护的全方位的服务。所以,这就产生了基于知识工程的系统开发环境。即通过基于知识工程的系统开发工具包的集成化,获得的就是基于知识工程的系统开发环境,它可提供了多方位的功能【29】。(1)提供多种知识表示形式:各种知识表示形式,如对象、过程、框架、逻辑等至少提供三种以上。(2)拥有多种模糊的推理模型:即提供多种模糊的推理模型,通过用户接口以供用户选用。(3)包含多种知识获取方法:如知识编辑工具、自动知识获取和知识求精等途径。(4)拥有多种辅助工具:包括DataBase、Excel、作图等辅助设施。(5)具有友好的UI:包括系统开发界面和最终用户界面,并且有用户通信接口。(6)具有较强的适应性:通用性很好,能够满足多种不同领域的各种特殊应用需求。目前,在国外已有的基于知识的系统开发环境有:KEE、AGE、EST。现已有多种基于知识的系统的实例技术,如网上多媒体系统。(1)网上基于知识工程的系统就属于是在因特网的基础上建立起来的系统,它以浏览器为用户与系统的交互接口,其它如解释模块、知识库和推理机等被安装在服务器上。(2)多媒体基于知识工程的系统则是通过把多媒体应用技术引入到人机界面,并大大改善人机交互方式,使系统既具有多媒体信息处理的功能,又能够进一步增强其系统的拟人性效果。另外,系统开发人员还应该解决知识的表示方法和知识描述语言的设计等问题。要解决知识的表示方法和知识描述语言设计等问题,就要根据所获得的知识的特点,进行初步的分类,利用某种知识表示形式来表示,并设计出相对应的知识描述语言。而知识的具体语法结构形式即为所谓的知识描述语言【30】。因此,知识描述语言既要面向系统开发人员和最终用户,又要面向知识表示和机器,从这个角度上看,就要求知识描述语言既能方便、易懂,又能通过外部表示形式转换成内部表示形式,方便存储、管理和运用【3l】。3知识上程及其祚桥式起巫机lI}的成J113.4本章小结本章述了知识工程在桥式起重机设计中应用,对知识工程技术的含义以及应用领域进行了深究,其中对知识工程三要素:知识获取、知识表示与知识运用进行了深入的剖析与应用:并重点阐述了基于实例的推理设计方法在桥架设计中的应用。4参数化设计技术在起重机桥架中的应用4参数化设计技术在起重机桥架中的应用SolidWorks是基于Windows的集成设计、分析与数据管理的桌面系统。可以很方便地实现零部件装配、静力学分析与运动学分析。SolidWorks包含上百个API(ApplicationProgramInterface)程序接CI,大大方便了用户对其进行二次开发,这些API作为接口,SolidWorks的开发工具可以是任何支持OLE或COM的编程语言。采用三维设计与分析软件指导生产,可实现缩短产品开发的周期,降低设计的成本,同时在二维平面设计软件不容易表达的曲线、曲面造型在三维设计软件上变得简单,且容易操作,大大减少了设计人员与客户之间的沟通障碍。应用程序采用多文档(MDI)形式,利用VB提供的各种控件技术,如:Button,Group,ListBox,ADOData,OLE,Image等,可直接制作简单直观、操作方便的界面。一般地,对象的连接和嵌入也就是说OLE,它通过数据嵌入或链接的方式来使应用程序之间达到数据共享。容器程序就是文档数据被嵌入或链接的一种应用程序,而服务器程序则是提供对文档数据的编辑功能的另一种应用程序【321。我们主要在VisualBasic6.0的基础上对SolidWorks进行二次开发,其中BasicSolidWorks就属于服务器程序的一种,而Visual4.1.1SolidWorks的二次开发形式6.0则属于容器程序的一种。目前,关于SolidWorks有两种开发方式:(1)进程内程序组件的开发每一进程都拥有独立的内存地址空间与特定的系统分配资源,进程内的大部分程序组件,都以成插件的形式,借助DLL动态链接库内嵌在SolidWorks程序中。当程序启动并需要调用相关插件时,插件调入到进程的相应的内存地址空间中,执行相对应的功能模块;当不再此服务时,程序会自动将通过DLL动态链接库从内存卸载,释放被占用内存空间,节省系统资源。由于插件和程序在相同的内存地址中运行,同时占有系统资源,因此这种方式可充分的运用SolidWorks的系统资源,大大提高程序的运行效率【331。但是,需要说明的是若进程内的插件出现了故障,可直接致使系统崩溃,导致客户端程序运行的不稳定性,如非正常关闭等现象。(2)进程外程序组件的开发借助其他二次开发平台,进行外程序组件被做成独立的可执行程序,与≈4