专家系统开发支撑系统及专家系统技术方案

技术编号:2892605 阅读:143 留言:0更新日期:2012-04-11 18:40
一种在帧系统中有大量知识描述层的专家系统。每个描述层由多个帧组成;所提供的最低的知识描述层的帧与一个知识处理目标系统相关联。当参考下层的帧进行推理时,则确定了上面的知识描述层的帧的内容。这种确定是通过更新帧的槽的内容来启动和执行的。(*该技术在2012年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种专家系统,更具体地涉及用于处理与大型人工系统相关的知识的一种专家系统。对于在一个知识库中存储人类专家的知识并作出与人类专家所作的相似的判断的专家系统已经提出过多种多样的方法。当前,最流行的推理方法是一种所谓的生成系统(productionsystem)。而另一方面则通常采用帧来表示知识。在某些这种生成系统中,所用的方法是实行正向推理。在其它生成系统中,所用的方法则是实行反向推理。用于实行正向推理的生成系统是一种模拟人的认识与动作周期的系统。即,这种生成系统识别当前的状态然后确定下一步动作的内容。附图中的图2的示出这种生成系统的一般结构。如图2所示,该生成系统一般包括一个知识库201和一台推理机202。在知识库201中包括多条规则203,多个知识表示,多个帧204,以及一个工作区205。规则203包含一个条件项,它包括用于识别存储在帧204或工作区205中的状态的条件指令,以及一个说明所要执行的动作的指令项。使用这些规则,推理机重复三个步骤,即匹配过程206,不相容判别207与动作208,以执行一次推理。推理机202中的匹配过程206是检索具有与存储在工作区205或帧204中的当前状态相匹配的条件指令以及将匹配规则与状态值汇集成一个集合作为一个矛盾集合209的步骤。矛盾判定207是从所得到的矛盾集合209中选择一条要执行的规则的步骤。动作208是根据所选择的规则的指令项的说明执行诸如更新工作区或帧的内容的步骤。表示知识的帧是用于系统地与层次地表示与一个知识处理目标相关的信息的帧。图3示出了其中的与一个电路的元件相关的知识是层次地以帧表示的一个例子。在图3中,具有最高级的帧301定义了级的属性为电器元件。在示出的例子中,电器元件的帧定义该电器元件级有两个槽,即制造公司名302及生产日期。此外,在这一帧301前面的较低级帧304,305,306定义更具体类别项目的级,诸如电阻器304,线圈305及电容器306。电阻器304的帧定义寄存器的级即具有作为存储电阻器类型的槽的电阻器307的类型且具有作为存储电阻器的电阻值的槽的电组值槽308。从而实际地表示有关个别元件的实例帧309,310如下所述实例帧309的元件R1以电阻器作为级,从而具有电阻器的类型与电阻值,这些是在电阻器级中定义的槽。在实例帧309中的元件R1的电阻器级304是隶属于电器元件301的较低的级,从而也继承具有两个槽(即定义在电器元件级中的制造公司302与生产日期303)的电器元件301的属性。然后将一个公司的实际名字及其它信息存储在各自的槽中以表示有关一个个别电器元件的信息。这些帧是存储在系统地存储上述数据的一个数据库中并且能够存储一个专用于这些帧的过程进程。图4示出了由一个称作demon(特征)的函数与一个称作method(方法)的函数存储的专用于该帧的一个过程进程的例子。在图4中,在帧fr1中定义3槽S11与S12并各自以值10和5存储。在槽S11中,具有字符“when-changed”(“变化时”)的过程func1定义为一个demon,而在槽S12中,具有字符“when-asked”(提问时”)的过程Func2定义为一个demon。字符“when-asked”表示当存储在该槽中的槽值从外部引用时被启动,而字符“when-changed”表示槽值被更新启动。所以,当槽S11的值被更新时,过程func1以槽S11的值作为一个变量被启动。也在图4中,func3是一个称作method(方法)的过程,它是一个只在帧fr1中有效的过程。方法func3是通过给出作为一个外部源向该帧fr1传送信息的方法“func3”的名字来启动的。执行过所定义的过程之后,方法func3返回执行结果的值作为对发送信息的帧或规则的一个答复。如上所述,一个生成系统是一个简单但非常一般的技术。由于帧能够系统地表示知识,当前在专家系统中是广为采用的。然而传统的生成系统与帧是假定为应用于一个实际上大型的工厂或者一个人工的大型系统,诸如一个电力网,通信网络或者传输网中的,所以达不到实用的推理速度。这些问题现在将一个一个地更详细地说明。(1)称作匹配过程的条件判断所需的时间增加生成系统的一个推理周期是简单的且能用于通的目的。假定这一推理周期是渐进地在一台计算机上实现时,用于判断条件的计算量随帧的数目的增加而成指数地增加。相应地,迄今已提出了用于提高生成系统的条件判断率的各种算法。一种典型的算法便是RETE算法。最近,例如,公布了一种改进RETE算法的TRFAT算法。在Forgy,c.lRETE,一种用于多槽式/匹配问题多目标模式的快速算法,人工知识,卷19,17-37页中讨论了RETE看法在Mrianker,D.PTREAT,用于人工知能生成系统中的一种更好的匹配算法,AAAI-87,42-47页中讨论了TREAT算法。此外,这些算法在日本推理处理学会学报上一篇文章中进行了说明(第29卷第5号467页)。简言之,条件判断算法,包括RETE算法,的一个特点是通过事先对规则进行分析以提供具有共同条件从句的一组规则,构成一个称作“RETE网络”或“规则网络”的一个数据流图并共同地使用该流图用于计算个别的条件从句,来减少条件判断的次数。这种条件判断算法的另一个特性是在计算条件判断的中间结果时采用只重新计算受到前面的执行步骤影响的部分并且将该部分与前面的推理周期以前所保单的中间结果中未改变的中间结果相结合。这一RETE算法的推进观在将结合图5中所示的一条简单规则进行描述。在图5中,在前面附加?的一个项表示一个变量,而在前面附加@的一个项表示指定的槽中的一个值。一个箭头指示一个要代替的值。在规则中的条件码中的?FR1与?FR2为分别表示帧的名字的变量,而?V是要被槽“valve”(“值”)的值所代替的一个变量。所以,规则1表示规则如果存在一帧?FR1而其中的级为C1,槽“1imit”(槽类型标识号)的值为10,且如果存在一个其中的级为C2的帧?FR2,槽‘limit’的值为20,且槽‘value’的值大于?V(即,大于?FR1的@value),则执行指令部分。规则2表示下述规则如果存在一个其中的级为C1的帧?FR1,槽“limit”(槽类型标识号)的值为10,并且如果存在一个其中的级为C2的帧?FR2,槽“limit”的值为20,且槽“value”的值小于?V(即小于?FR1的@value),则执行指令部分。且,存在帧{f11,f12,f13,f14,f21,f22,f23,f24,}。如图5中所示,{f11,f12,f13,f14}属于级C1,而{f21,f22,f23,f24}属于级C2。图6如作为一个规则网络示出了图5中的规则的条件部分。现在将结合图6对RETE算法进行描述。在规则网络中,其中要进行判断的独立的条件的从句的部分用一个节点表示。在图6中,601指定为一个作为入口的路由节点,一个要被判断的帧由这一节点流入该规则网络602是一个判断帧的级是否为C1的节点。以及603是一个判断帧的级是否为C2的节点。604指定为一个判断槽“limit”的值是否为10的节点,以及605指定为一个判断槽“limit”的值是否为20的节点。606指定为一个判断是否?本文档来自技高网...

【技术保护点】
用于支持一个专家系统的开发的一种专家系统开发支持系统,所述的专家系统处理由多个元素构成的目标系统的知识,该专家系统开发支持系统包括:用于提供一个知识库的装置,该装置包括:(a)一个含有单元知识元素的集合的单元知识元素描述层,在每个单元知识元素中描述了目标系统的一个元素的知识;以及(b)一个或多个设置在所述单元知识元素描述层之上作为一个或多个上层的综合知识元素描述层,每一层包括了综合知识元素的集合并以摘要或综合的方式重新组织各低层的每个元素知识。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:福井千寻渡部悌工藤博元天野雅彦原田泰志
申请(专利权)人:株式会社日立制作所
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1