热门关键词:

应用CLIPS推理机的桥式起重机起升机构设计专家系统

  • 该文件为pdf格式
  • 文件大小:283.97KB
  • 浏览次数
  • 发布时间:2014-09-30
文件介绍:

本资料包含pdf文件1个,下载需要1积分

Abstract:CLIPS is a kind of expert system language.Design of hoisting mechanism of overhead travelling crane is aprocess of frequent adjustment.The paper discusses the method to develop the design expert system for hoisting mechanismby integrating CHPS an d VC .selection of parts by combining the method of rule of expert system and decision theoryof fuzzy mathematics,and realization of the adjustment at will of the design parameters through the method of optimization。

Keywords:CLIPS expert system;overhead traveling crane;membership function;optimization;design1 CLIPS与 VC的比较及交互1.1 CL S简介专家系统开发工具 CLIPS(c Language Inte-grated Production System)是美国航空航天/约翰逊太空中心用 C语言设计的,设计 目的是可移植性《起重运输机械》 2013(5)高,成本低和易于与外部系统集成。它的源代码是公开且的,允许任何人修改和使用。

专家系统中描述知识的常用方法是 IFTHEN型的规则,IF(前件事实)THEN (后件)。如果在事实库中某规则的特定前件事实存在,即满足了该规则 的模式匹配条件,然后执行后 件命令。

- 59 - CLIPS基于规则的专家系统的基本组成有:1)事实库:包含推理所需的数据;2)知识库:包含所有规则;3)推理机:对运行进行总体控制。图 1为 CLIPS基于规则的专家系统的结构图。

事实库 H 推理机 H 知识库图 1 CLIPS基于规则的专家系统结构图1.2 对编程语言 CLIPS和 VC的比较产生式规则和 VC中IF语句有相似性,都是如果那么。区别在于专家系统 CLIPS中规则是被存放在-个单独的后缀名为 clp的文件中,可以记事本的方式打开、修改、添加规则和事实,由用户自由修改,而 VC中源程序和数据绑定在-起。

CLIPS基于 DOS操作系统,命令行的输入输出很不方便,无法满足工程计算软件以编辑框和对话框实现数值输入和输出要求。VC中 MFC界面比较适合工程应用。优化设计在机械领域应用非常广泛,尤其以 VC编写的优化程序更多,为了共享优化代码,需要 CLIPS和 VC能方便友好的交互。CLIPS擅长于符号推理,它本身不是专门为数据处理设计的,VC在数据处理上更具优势。VC和 CLIPS混合编程能更好解决工程问题。

1.3 CL口S动态链接库与 VC交互方法把 C语言编写的 CLIPS源代码做成动态链接库,链接到 VC,可实现 CLIPS和VC的交互。用户可从很多计算机程序 网站上CLIPS.dU和 CLIPS.1ib的动态链接库。

如图2所示,CLIPS推理机的推理步骤为:1)调用 CLIPS初始化函数:InitializeEnviron。

ment;2)调用载人事实库和知识库函数:Load();3)调用添加事实函数:AssertString(char:ltemp[100]);该函数参数是字符串指针类型;4)运行推理函数:Run;5)得到下-个事实地址,因为计算结果都要以存储在事实的槽 中,要得到槽值必需要得到指向该事实的指针,Void GetNextFact(newFact);6)根据指向事实的指针 newFact与槽名 x,取得槽名为 X的事实中的槽值,并把它存在结构体DATA OBJECT theValue中。实现这个功能的函数是:- 60 - int GetFactSlot(newFact,” x”,&theValue),然后用宏定义 DOToFloat(theValue)读取事实中的 Float类型的槽值。

l初始化推理机I载入事实库和规则库II重置cLIPs I;,I 从MFC添加事实回 Il从推理机中导出事实图2 CLIPS推理机的程序框图2 CLIPS对桥机起升机构设计的应用2.1 桥式起重机起升机构设计的特点在设计桥式起重机起升机构时,由于设计方案多样而复杂,设计人员常花费大量的精力凭借实际经验进行选型设计和参数调整,以确定较合理的设计方案。针对具体情况有些参数要被保留,有些参数需要进行再设计。匹配零部件时,存在多个评价指标,建立由若干评价指标组成的体系,最后给出方案的综合匹配程度。

2.2 CLIPS与桥式起重机设计的结合CLIPS在医学诊断和目标识别中应用广泛,在设计型专家系统方面应用较少,CLIPS在该桥式起重机设计专家系统中的应用也可以理解为是对零部件的模糊识别。CLIPS采用了 Rete模式匹配算法,将事实和规则中的模式相竞争,以确定哪些规则和事实满足条件。CLIPS的高效匹配算法为起重机的机构设计提供了-种 自动选择零部件的方法。事先可将电动机、吊钩组、减速器及联轴器等零部件以事实的形式存储在事实库中,事实库可以有多个槽,每个槽中存储零部件的不同属性,选择零部件的方法和经验则以规则的形式存储在知识库中。事实和规则是被存放在-个单独的后缀名为 clp的文件中,clp文件可以记事本的方式打开,由用户自由修改,添加规则和事实。

2.3 零部件选取时的决策方法应用模糊数学 中的综合评价法,通过权系数矩阵与评价矩阵的模糊变换得到模糊评判集。在模糊集合中,-个对象其隶属于模糊集合的程度《起重运输机械》 2013 (5)可用-个从 0到 1的数来度量,称为隶属度。当选取部件时,对该部件和对该部件参数要求的匹配程度 ,用-个隶属度值来衡量匹配程度。模糊命题 近似于 ”的隶属函数可表示为o8e㈤ 膏 如图3所示,该隶属函数可表达所有近似于某个特定值 y的数,卢参数对应着交叉点 0.5,较大的 意味着数值必须更接近于 才能有-个特别大的隶属值,在这种定义中,隶属函数在无穷远处才趋近于0。

当存在多个评价指标时,用权系数来描述各个方面重要程度。加权之后得到-个 0~1之间分数。例如减速器选择有 4个方面输入转速、许用扭矩、减速比、许用功率,每个存储的减速器型号都包含际需求的这 4个参数时,规则会 自动逐个计算各个减速器事实的加权隶属度,最大者即最符合要求的。减速器隶属度l ( ,Y, , ): 0.2×----- 0.2×----- ( ) ( )0.4×- 0.2×- - ( ) ( )式中: 、Y、z、W分别为各个减速器的额定输入转速、许用扭矩、减速 比、许用功率, 、Y 、 、W 分别为实际需要的输入转速、扭矩、减速比、功率。

将每个减速器的 4个参数带人以上式 中,均会得到-个 0-1之间的分数 ,可选用分数最高的减速器。

起重机零部件选取定义规则,有很多种类的部件保存在事实库中,将零部件应满足的条件作为规则的前件,为了加快输出事实速度,用规则取消那些不满足条件的事实。例如在选取电动机。/ 、mse /f0.9------ /:-//图3 隶属函数特性曲线《起重运输机械》 2013(5)时,凡是不满足过载要求和发热功率验算的事实全部取消,在推理机中保存的事实都是满足基本要求的事实。在这些满足基本要求的事实中,用给出隶属度的决策方法判定某个事实最优的。

2.4 用优化方法实现随意参数调整以往的起重机设计专家系统多以prolog语言实现,这些设计专家系统过对计算参数的输入顺序,对数量无限制,可正向计算,也可倒着计算。起重量、吊具质量、起升速度、稳态系数、电动机计算功率、电机转速、卷筒直径、吊钩组倍率、减速比及卷筒转速等参数可随意指定或不指定。

要实现这样-个要求,用反函数的方法勉强可以实现。-旦遇到复杂的函数,要表示成反函数就不是-件容易的事,要耗费很多时间。所以,不提倡这种方法,借助优化方法对变量的搜索相对容易实现。

优化问题的模型:求 /Z维设计变量 X [ ,,, ] ,使目标函数f( ) min,且满足-定的约束条件 口≤ ≤b。函数 ,Y),当给定, 时,要求解 Y可先表示成的反函数形式再求解。而当用优化方法求解时,求变量 ,Y, 使[厂( ,Y)- ] -4),等同于满足 厂( ,Y)的等式关系,避开求解反函数的复杂变形是该方法的优点。当给定变量关系矛盾时该方法失效,例如给定了 ,Y,Z-且 ≠,( ,Y),则 目标函数 [f( ,)- ] 的最小值就不可能为 0。通过观察 目标函数最小值是否接近于0来判断方法是否失效。

用优化中的坐标轮换法实现这种功能,目标函数定义为[ -P] ( -0 2( - )式中:Q为起升载荷,G为吊具载荷,m为吊具倍率,13为起升速度,P。为稳态平均功率系数,P为计算功率,n。为电机功率,/'t为卷筒转速,为减速比,D为卷筒直径。

以上参数作为优化变量,当目标函数最小值接近于0时,可认为3个等式分别等于 0。为改变目标函数的性状,使其每-项在数值上不会相差很大,从而在搜索时不会陷入局部收敛,要在 目标函数的每-项前面乘以-个系数10× -P1。100×f - 1L m77 J /Ⅲo×( -n)- 61 - 这些系数用来调节函数性状,使函数等值线更接近于圆形,方便搜索。

3 具体实现CLIPS专家系统用规则的方法匹配事实,选取和存储零部件时具有 比数据库更强的功能。图 4为该专家系统的结构框图。

用户输入参数可指定或不指定其中的部分参数。识别是否指定了其中的某-个方法是通过检测该编辑框是否为0。如果编辑框为 0,使用-个结构体数组,向坐标轮换法所在的函数 中传递信息。当对话框中的编辑框为 0时,执行进退法搜索区间,该区间作为黄金分割法的区间;当对话框中的编辑框不为 0时,不执行进退法,将搜索区间上下限同时指定为要指定的值,在坐标轮换过程中该值也不会改变。在执行了优化算法后,起重量、吊具质量、起升速度、稳态系数、电动机计算功率、电动机转速、卷筒直径、吊钩组倍率、减速比及卷筒转速等量均可计算出来。

然后,将这些参数均 以事实 的形式添加到CLIPS中。CLIPS中存放 了各种各样的零部件事实,并定义出选取规则。这些规则分成 2类:第- 类是取消不满足条件的零部件,给这类规则较高的优先级,以便最先执行,例如选取电动机时,凡是不满足过载要求和发热功率验算的事实全部取消;第二类规则是从满足条件的事实中选择最合适的事实,用给出隶属度的决策方法判定某个事实最优的。

用这样的方法选取吊钩组、钢丝绳、电动机、减速器、联轴器及制动器等。

输入指定参数编辑框非0判定来识别变量设定坐标轮换法中的变量优化搜索出没被指定的参数参数输入CLIPS中用规则选择零部件图4 CLIPS专家系统的结构框图选择卷筒直径时,通过对编辑框是否为 0来- 62 - 判定用户是否设定了卷简直径。当编辑框为 0时,用户可以调用 CLIPS推理机,通过规则借鉴以往的实例,从 《起重机设计手册》 中现有的卷筒组部件来选择,选择的方法是综合起重量、起升高度及钢丝绳直径等方面,用隶属度值评定最合适的卷筒直径。卷筒长度要根据实际情况设计。吊钩组的选择也是-样,如果用户在吊具质量编辑框中输入了非0值,则按该值往下计算,如果吊具质量编辑框为0,程序调用 CLIPS推理得出吊钩组。

当选择减速器时,因为减速器是标准件,所需的减速比和实际减速器的减速比有差距,会导致实际运行速度和要求得运行速度有-定差别,可调整其他设计参数来调整。专家系统对计算参数的输入顺序,个数都无限制,既可正向计算也可倒着计算。在现有减速器的条件下,保证运行速度不变~选出来的减速器实际减速比拷贝到所需减速比的编辑框中,清零其他参数编辑框,通过调整其他参数使所需减速比正好等于现有的减速比。同样,电动机带载转速和空载转速也有- 定差距,也可以在完成第-次计算后,根据选定的电机计算出实际带载转速,精确计算减速比。

4 结束语以往的起重机专家系统多以prolog语言等人工智能语言实现,文中利用完全由C语言编写的专家系统工具 CLIPS,来实现由VC编写起重机专家系统,更有效的利用已有的VC各种程序。

正在加载...请等待或刷新页面...
发表评论
验证码 验证码加载失败