注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

和申的个人主页

专注于java开发,1985wanggang

 
 
 

日志

 
 

OPS5  

2012-04-16 17:16:17|  分类: 名词解释 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

OPS5(the 5th Generation of Official Production System)

OPS5开发于70年代后期,属表示语言型专家系统开发工具,其能提供比骨架型工具更为通用的推理控制机制和知识表示语言去适应于较宽范围的应用领域,尤其是专家系统开发者可以通过OPS5的表示语言去设计特别的控制要求。
  Xps较好地模仿了OPS5的实现,主要差别在以下三个方面:
  1)对象表示,Xps用一组相互独立的事实元素来描述一个对象,而OPS5则用对象子句集中描述一个对象,形如:
   (<对象> { ^ <属性> <值> }+)
  其中符号"^"指示属性名。例如Xps用一组事实元素来描述某个人PENELOPE:
   (Parents Penelope Jessica Jeremy)
   (Age Penelope 20)
   (Sex Penelope Female)
  而在OPS5中则紧凑地表示为:
   (Person ^Name Penelope ^Age 20 ^Sex Female ^Parents Jessica Jeremy)
   2) 对象的存储形式--Xps以树状层次索引网存储事实元素,OPS5则为每类对象(例如上述Person)定义一个类(Class)结构,使类的每个实例(即对象)具有固定数量的属性和固定的属性名。OPS5以LITERAL1ZE格式定义类,例如类Person定义为:
   (LITERALIZE Person Name Age Sex Parents)
  类定义允许最后一个属性取多值,这种属性称为向量属性,上述中Penelope的父母亲属性就是由二个值(Jessica和Jeremy)组成的向量。正由于这种类定义,类实例(对象)在内存中只需存放遵从类定义的值向量,不存放属性名。OPS5用散列(Hash)表索引值向量,以提高检索效率`。
 3)规则条件--规则条件部分匹配模式中的模式变量常会受到一些值束缚限制,例如要求模式变量?X非空。Xps以插入规则条件部分的(NOT (EQUAL ?X NIL))来表示;OPS5中规则前提部分的模式则以带变量的类实例(对象)来实现更为方便和紧凑的表示。就以前述家族树最后一条规则的条件部分为例,OPS5将其表示为:
 (Request ^Type Ancestors ^Target {<Name> <> NIL})
   -( Request ^Type Ancestors ^Target {<> <Name> <> NIL})
  其中,Type和Target均是属性名,符号"-"的作用相当于逻辑符"NOT",花括弧指示模式变量及其值束缚限制。第一个匹配模式中的模式变量<Name>(变量名用尖括号括起,而不是用"?"作为前缀),由于其初次出现,能与相应事实元素中对应属性的任意取值匹配,并以该值作为变量的束缚值。变量<Name>后面的"<>"指示对于该变量束缚值的附加约束:不等于NIL(即非空)。第二个条件模式中的模式变量<Name>,由于是第二次重复出现,已经有束缚值。该变量前、后的"<>"分别指示相应事实元素中对应属性的值不能与变量束缚值相同,也不能为空。 稍加分析,可以得知OPS5关于规则条件部分的表示完全等价于Xps,但更为简洁。前者只须二个匹配模式,后者则需五个匹配模式。
  OPS5(和Xps)的一个不同于骨架型工具的重要特点是允许专家系统开发者定制特别的控制要求。定制建立在二个重要概念的基础上:目标模式和控制元素。产生式规则条件部分的第一个匹配模式称为目标模式,而与其匹配的综合数据库中的事实元素称为控制元素。显然,只有与控制元素匹配的规则才可能激活,这意味着同目标模式的规则构成一个规则组,可用来服务于解决某个子问题。所以,通过设计目标模式和相应的控制元素,就可定制适当的控制策略,进而让子问题(子目标)按预先确定的次序逐个解决。一个附加的收益是提高了问题求解的效率,因为通过设置适当的索引,可以限制规则的匹配检查工作到新插入综合数据库的控制元素所对应的一组规则。
  OPS5提供的这种推理控制的定制能力既是优点也是缺点。优点体现在能够定制控制要求以适应于问题特征和更有效地求解问题,也有利于知识库维护;缺点体现在要求专家系统开发者具有一定的技术水平,无经验的开发者会感觉到难以使用。作为对照,骨架型工具完全固定了推理控制流程(如EMYCIN的逆向推理链和深度优先的控制策略),尽管不灵活,但若适合于解决手头问题,则使用起来十分便利,开发者只需用工具提供的表示语言表示知识,就可快速建立起专家系统。


                                                                                                                                                                                                

                                                                                                                                                                                               


Jump to: navigation, search

OPS5 is a rule-based or production system computer language, notable as the first such language to be used in a successful expert system, the R1/XCON system used to configure VAX computers.

The OPS (said to be short for "Official Production System") family was developed in the late 1970s by Charles Forgy while at Carnegie Mellon University. Allen Newell's research group in artificial intelligence had been working on production systems for some time, but Forgy's implementation, based on his Rete algorithm, was especially efficient, sufficiently so that it was possible to scale up to larger problems involving hundreds or thousands of rules.

OPS5 uses a forward chaining inference engine; programs execute by scanning "working memory elements" (which are vaguely object-like, with classes and attributes) looking for matches with the rules in "production memory". Rules have actions that may modify or remove the matched element, create new ones, perform side effects such as output, and so forth. Execution continues until no more matches can be found.

OPS4 was an early version, while OPS83 came later.

The first implementation of OPS5 was written in Lisp, and later rewritten in BLISS for speed.

DEC OPS5 is an extended implementation of the OPS5 language definition, developed for use with the VMS, RISC ULTRIX, and DEC OSF/1 operating systems.



 

  评论这张
 
阅读(1169)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016