第4卷第2期 智能系统学报 Vol 4 Ng 2 2009年4月 CAA I Transactions on Intelligent Systems Apr 2009 基于Web的可拓专家系统研究 张海涛,董春游 (黑龙江科技学院计算机与信息工程学院,黑龙江哈尔滨150027) 摘要:传统的专家系统的局限性使得构造基于W©b的专家系统具有重要意义.可拓学的发展为之提供了新的方法 与手段.首先明确提出可拓专家系统的概念,然后结合当今流行的Wb应用技术,构建基于B/S程序架构、Wb的可 拓专家系统,使之具有高移植性、高扩展性,且可以发挥可拓规则的扩展性和动态性的特点,对实现系统的关键技术 进行了说明,系统运行良好,证明了所阐述理论之可行性 关键词:专家系统;可拓学;动态Wcb,Java可拓规则 中图分类号:TP31文献标识码:A文章编号:1673-4785(2009)02017505 An extendable expert system based on the W eb ZHANG Hai-tao,DONG Chun-you (College of Computer and Engineering,Heilongjiang Institute of Science and Technology,Harbin 150027,China) Abstract:The lm itations of traditional expert systems insp ired us to study expert systems based on the W EB.The devebpment of Extenics provides new methods and tools for this Our concepts for the extendasle expert system are presented in this paper Using the latest W eb application methodobgy,we constructed an extendable expert system based on the B/S program framework and the Web It has high transp lantability and extendability The key techno- logical requirements for system mp lementation were presented The sooth operation of the system proved the feasi- bility of the proposed method Keywords:expert system;Extenics dynam ic Web system;Java;extendable rules 近年来可拓学的发展产生了很多研究成果,将法).应用可拓学的研究成果来解决Web专家系统 这些研究成果应用于专家系统中,是专家系统发展 中的实际问题是一个非常有应用价值的领域. 的一个方向.但如何将专家系统进一步与可拓学结 可拓知识中的变换蕴含式是典型的变化知识, 合,并移植到网上,却是一个庞大而复杂的问题.本 它是目前可拓学发展过程中最适合将之应用于专家 文在此背景下依托前人的一些研究成果,研究基于 系统研究的一个创新点,从而将专家系统研究向前 网络的可拓专家系统,可以使数据库、知识库得到无 推进了一步.在专家系统的核心部分,如知识库和推 限的扩展,从而解决了传统专家系统知识库难以扩 理机中运用可拓学相关理论研究成果的专家系统称 展且不能解决变化知识的问题 为可拓专家系统.近年来,有不少学者尝试将可拓学 与专家系统相结合,取得了初步的成果,但基于 1可拓专家系统概念及研究现状 Web的可拓专家系统还少有人研究 可拓学用可拓模型来描述客观世界的物和事, 既简洁统一、使用方便,又为拓展、变换、收敛创造 2基于Web可拓ES的结构框架 了有利条件,以此为基础的研究形成了以解决不相 21Web技术应用 容问题为己任的定性、定量相结合的可拓工程方 对于开发一个基于Wb的专家系统,合适的动 态Web开发技术的选择关系到整个系统的开发、管 收稿日期:200805-19 理、与专家系统开发工具的集成以及可扩展性.本文 通信作者:张海涛.Email okhaitao@126cam 1994-2009 China Academie Journal Electronie Publishing House.All rights reserved.http://www.cnki.net
第 4卷第 2期 智 能 系 统 学 报 Vol. 4 №. 2 2009年 4月 CAA I Transactions on Intelligent System s Ap r. 2009 基于 Web的可拓专家系统研究 张海涛 , 董春游 (黑龙江科技学院 计算机与信息工程学院 ,黑龙江 哈尔滨 150027) 摘 要 :传统的专家系统的局限性使得构造基于 W eb的专家系统具有重要意义. 可拓学的发展为之提供了新的方法 与手段. 首先明确提出可拓专家系统的概念 ,然后结合当今流行的 W eb应用技术 ,构建基于 B /S程序架构、W eb的可 拓专家系统 ,使之具有高移植性、高扩展性 ,且可以发挥可拓规则的扩展性和动态性的特点 ,对实现系统的关键技术 进行了说明 ,系统运行良好 ,证明了所阐述理论之可行性. 关键词 :专家系统 ;可拓学 ;动态 W eb; Java;可拓规则 中图分类号 : TP31 文献标识码 : A 文章编号 : 167324785 (2009) 0220175205 An extendable expert system based on the Web ZHANG Hai2tao, DONG Chun2you (College of Computer and Engineering, Heilongjiang Institute of Science and Technology, Harbin 150027, China) Abstract: The lim itations of traditional expert system s insp ired us to study expert system s based on the WEB. The development of Extenics p rovides new methods and tools for this. Our concep ts for the extendasle expert system are p resented in this paper. U sing the latestW eb app lication methodology, we constructed an extendable expert system based on the B /S p rogram framework and theW eb. It has high transp lantability and extendability. The key techno2 logical requirements for system imp lementation were p resented. The smooth operation of the system p roved the feasi2 bility of the p roposed method. Keywords: expert system; Extenics; dynam ic Web system; Java; extendable rules 收稿日期 : 2008205219. 通信作者 :张海涛. E2mail: okhaitao@126. com. 近年来可拓学的发展产生了很多研究成果 ,将 这些研究成果应用于专家系统中 ,是专家系统发展 的一个方向. 但如何将专家系统进一步与可拓学结 合 ,并移植到网上 ,却是一个庞大而复杂的问题. 本 文在此背景下依托前人的一些研究成果 ,研究基于 网络的可拓专家系统 ,可以使数据库、知识库得到无 限的扩展 ,从而解决了传统专家系统知识库难以扩 展且不能解决变化知识的问题. 1 可拓专家系统概念及研究现状 可拓学用可拓模型来描述客观世界的物和事 , 既简洁、统一、使用方便 ,又为拓展、变换、收敛创造 了有利条件 ,以此为基础的研究形成了以解决不相 容问题为己任的定性、定量相结合的可拓工程方 法 [ 1 ] . 应用可拓学的研究成果来解决 W eb专家系统 中的实际问题是一个非常有应用价值的领域. 可拓知识中的变换蕴含式是典型的变化知识 , 它是目前可拓学发展过程中最适合将之应用于专家 系统研究的一个创新点 ,从而将专家系统研究向前 推进了一步. 在专家系统的核心部分 ,如知识库和推 理机中运用可拓学相关理论研究成果的专家系统称 为可拓专家系统. 近年来 ,有不少学者尝试将可拓学 与专家系统相结合 ,取得了初步的成果 ,但基于 W eb的可拓专家系统还少有人研究. 2 基于 Web可拓 ES的结构框架 2. 1 W eb技术应用 对于开发一个基于 W eb的专家系统 ,合适的动 态 W eb开发技术的选择关系到整个系统的开发、管 理、与专家系统开发工具的集成以及可扩展性. 本文
·176· 智能系统学报 第4卷 研究的是一种使用Java开发的基于Web的专家系 ∧细菌,生长结构,链状)=>(细菌,类别,链球 统,那么就规定了Web开发工具必须与Java具有良 菌).就是这样一个产生式,这一产生式很容易用基 好的集成并使Web应用具有Servlet的一切优点.而 元表示:R1=细菌,染色斑,革兰氏阳性),R2= 用户界面的开发则可以采用JSP技术,使整个Web 细菌,形态,球状),R=细菌,生长结构,链状), 应用具有跨平台的特点,可以方便地移植.并使用 R=细菌,类别,链球菌).则这个产生式规则可表 Struts来构建Web应用,可以方便地管理业务逻辑 示为:ifR,AR人Rs then R 的流程,便于系统的更新与扩展) 利用可拓推理的拓展性推理(包括发散推理规 使用JSP/Servlet/JavaBean等Web开发技术的 则、蕴含推理规则、相关推理规则和可扩推理规 可拓专家系统的框架如图1所示 则)、传导性推理、共轭推理等多种推理规则,使可 拓规则在求解问题时功能更为强大,使知识规则体 拓推理机 知 加户 现可拓思维方式 Weh Weh 识 浏 服 对于基元的产生式,可以利用基元的拓展性而 务 家 装 识 与事实 开拓出新的基元,从而利用基元变换,产生动态变化 的知识.对基元的变换会产生传导变换,传导变换 取 的过程也可用推理规则来描述,即传导推理规则.传 导推理是指前件为可拓变换,后件为它所引起的传 图1基于Wcb可拓专家系统框架 导变换的推理).如:对于两类规则A=> Fig 1 Framework of expert system with extension based on PB=>N一般情况A=八a,B=∧b若存在 the Web 条件的可拓变换T。T(B)=A,并存在结论的可拓 22知识库设计 变换T,它为T的传导变换),TW)=P,则成立可 221知识的可拓表示形式 拓变换规则知识变化知识): 可拓学的基元理论提供了定性与定量相结合的 (T.(B)=A)=>(T,(N)=P)if T.(B) 完整的表述信息的一种有效途径.专家知识可用基 A then T,(N)=P. 元来表示1.例如,有2条知识:)计算器是用来计 对于2条同类规则A=>P,C八B=>P若 算的”,2)雪是白的”可以用物元来表示:R1= 存在可拓变换T(B)=A,则成立可拓变换规则知 计算器,功能,计算;2=雪,颜色,白,这样的 识(T.(B)=A)=>P即ifT。(B)=4 then P. 知识称为可拓知识 类似地,根据物的共轭性质,也可以得到一系列 产生式规则作为一种推理机制广泛地应用于控 的推理规则,称为共轭推理.在一定条件下,物的某 制和决策领域,它是计算机专家系统和决策支持系 一共轭部的变化,会导致其相应的共轭部发生传导 统中形成控制规则和决策规则的有效工具.产生式 变换61 规则具有“ifhen的形式,产生式 222可拓知识库的建立 规则包括左边(A)和右边B)2部分,分别称为产 对于不同的知识表示方法,知识库的构建也具 生式规则的前件和后件.前件决定规则的可用条件; 有不同的方法和形式.在大多数的专家系统尤其是 后件表示条件成立时应采取的行动,或条件成立时 诊断专家系统中,知识往往最容易通过产生式规则 产生的结果,它是产生式被调用以后所做的事情.如 来表示.通常一条产生式规则由规则号、规则前提和 果把产生式规则中前件的结点和后件的结点换成基 规则结果组成,前提和结果之间是f-Then的关 元,就得到可拓规则.也就是说,在可拓规则中,知识 系1.可以在关系数据库中将3部分分别用3个字 结点是用基元来表示的.用基元来表示专家知识,形 段来表示可拓规则,或者前提组成事实数据库,结果 成可拓知识元,用可拓知识元来表示规则的前件和 组成结果数据库,另外的一个可拓规则库则将两者 后件,这是可拓规则的基本特征 之间的关系对应.在关系数据库中,存在3种关系: 在当前盛行的专家系统中,经常以(对象,属 一对一、一对多和多对多.一对一是最简单的一种关 性,值)三元组的形式作为产生式系统的规则,例如 系,如果可拓知识可以表示成一对一的关系,那么只 细菌,染色斑,革兰氏阳性)∧(细菌,形态,球状) 需一个表就可以表示可拓知识.如果可拓知识比较 1994-2009 China Academie Journal Electronic Publishing House.All rights reserved.http://www.cnki.net
研究的是一种使用 Java开发的基于 W eb的专家系 统 ,那么就规定了 W eb开发工具必须与 Java具有良 好的集成并使 Web应用具有 Servlet的一切优点. 而 用户界面的开发则可以采用 JSP技术 ,使整个 W eb 应用具有跨平台的特点 ,可以方便地移植. 并使用 Struts来构建 W eb应用 ,可以方便地管理业务逻辑 的流程 ,便于系统的更新与扩展 [ 2 ] . 使用 JSP/Servlet/JavaBean等 W eb开发技术的 可拓专家系统的框架如图 1所示. 图 1 基于 W eb可拓专家系统框架 Fig. 1 Framework of expert system with extension based on the W eb 2. 2 知识库设计 2. 2. 1 知识的可拓表示形式 可拓学的基元理论提供了定性与定量相结合的 完整的表述信息的一种有效途径. 专家知识可用基 元来表示 [ 3 ] . 例如 ,有 2条知识 : l)“计算器是用来计 算的 ”; 2)“雪是白的 ”. 可以用物元来表示 : R1 = (计算器 ,功能 ,计算 ) ; R2 = (雪 ,颜色 ,白 ) ,这样的 知识称为可拓知识. 产生式规则作为一种推理机制广泛地应用于控 制和决策领域 ,它是计算机专家系统和决策支持系 统中形成控制规则和决策规则的有效工具. 产生式 规则具有“if then ”的形式 ,产生式 规则包括左边 ( A ) 和右边 (B ) 2部分 ,分别称为产 生式规则的前件和后件. 前件决定规则的可用条件 ; 后件表示条件成立时应采取的行动 ,或条件成立时 产生的结果 ,它是产生式被调用以后所做的事情. 如 果把产生式规则中前件的结点和后件的结点换成基 元 ,就得到可拓规则. 也就是说 ,在可拓规则中 ,知识 结点是用基元来表示的. 用基元来表示专家知识 ,形 成可拓知识元 ,用可拓知识元来表示规则的前件和 后件 ,这是可拓规则的基本特征. 在当前盛行的专家系统中 ,经常以 (对象 ,属 性 ,值 )三元组的形式作为产生式系统的规则 ,例如 (细菌 ,染色斑 ,革兰氏阳性 ) ∧ (细菌 ,形态 ,球状 ) ∧(细菌 ,生长结构 ,链状 ) = > (细菌 ,类别 ,链球 菌 ). 就是这样一个产生式 ,这一产生式很容易用基 元表示 : R1 = (细菌 , 染色斑 , 革兰氏阳性 ) , R2 = (细菌 ,形态 ,球状 ) , R3 = (细菌 ,生长结构 ,链状 ) , R4 = (细菌 ,类别 ,链球菌 ). 则这个产生式规则可表 示为 : if R1 ∧ R2 ∧ R3 then R4 [ 4 ] . 利用可拓推理的拓展性推理 (包括发散推理规 则、蕴含推理规则、相关推理规则和可扩推理规 则 )、传导性推理、共轭推理等多种推理规则 ,使可 拓规则在求解问题时功能更为强大 ,使知识规则体 现可拓思维方式. 对于基元的产生式 ,可以利用基元的拓展性而 开拓出新的基元 ,从而利用基元变换 ,产生动态变化 的知识. 对基元的变换会产生传导变换 ,传导变换 的过程也可用推理规则来描述 ,即传导推理规则. 传 导推理是指前件为可拓变换 ,后件为它所引起的传 导 变 换 的 推 理 [ 5 ] . 如 : 对 于 两 类 规 则 A = > P, B = > N. 一般情况 A =∧ ai , B =∧ bj . 若存在 条件的可拓变换 Tc . Tc (B ) = A,并存在结论的可拓 变换 Tr (它为 Tc的传导变换 ) , Tr (N ) = P,则成立可 拓变换规则知识 (变化知识 ) : (Tc (B ) = A) = > (Tr (N ) = P) .即 if Tc (B ) = A then Tr (N ) = P. 对于 2条同类规则 A = > P, C ∧B = > P. 若 存在可拓变换 Tc (B ) = A,则成立可拓变换规则知 识 ( Tc (B ) = A ) = > P. 即 if Tc ( B ) = A then P. 类似地 ,根据物的共轭性质 ,也可以得到一系列 的推理规则 ,称为共轭推理. 在一定条件下 ,物的某 一共轭部的变化 ,会导致其相应的共轭部发生传导 变换 [ 6 ] . 2. 2. 2 可拓知识库的建立 对于不同的知识表示方法 ,知识库的构建也具 有不同的方法和形式. 在大多数的专家系统尤其是 诊断专家系统中 ,知识往往最容易通过产生式规则 来表示. 通常一条产生式规则由规则号、规则前提和 规则结果组成 , 前提和结果之间是 if2Then 的关 系 [ 7 ] . 可以在关系数据库中将 3部分分别用 3个字 段来表示可拓规则 ,或者前提组成事实数据库 ,结果 组成结果数据库 ,另外的一个可拓规则库则将两者 之间的关系对应. 在关系数据库中 ,存在 3种关系 : 一对一、一对多和多对多. 一对一是最简单的一种关 系 ,如果可拓知识可以表示成一对一的关系 ,那么只 需一个表就可以表示可拓知识. 如果可拓知识比较 ·176· 智 能 系 统 学 报 第 4卷
第2期 张海涛,等:基于wb的可拓专家系统研究 ·177 复杂,只能表示成一对多和多对多的关系,那么事实 证据为 与结果独立存储,另外由规则库来表达两者联系的 R c1,1, 方式,这无疑更适合可拓知识的表示以及维护,在构 c2,V2 建可拓知识库以及日后的知识维护过程中,知识的 … 冗余与冲突是值得关注的,可拓知识的冗余可以通 ca.V 过关键字的设置来缓解,而适当的冲突消解策略如 则匹配度: 基于可信度排序则可以适当地缓解冲突 23数据库连接 p=N%-V2+%2-V2+…+。-V Java数据库连接(Java data base connectivity,. JDBC)是一种用于执行SQL语句的Java API它由 而对于基元属性取特定区间值的规则,要求证 一组用Java编程语言编写的类和接口组成.DBC 据的属性值落在特定区间内,因此采用可拓学中的 为工具数据库开发人员提供了一个标准的APL使 距函数来计算匹配度.用Java语言设计实现可拓推 他们能够用纯Java AP来编写数据库应用程序.JD- 理机,使推理机可以在任何平台上使用 BC扩展了Java语言的功能.使用JDBC,向各种关 可拓学中的距匹配方法:设x为实域 系数据库发送SQL语句成为很容易的一件事.将 (.∞,+∞)上的任一点,X=为实域上 Java和JDBC结合起来,将会使程序经过一次编译 的任一区间,称p(x,)=|x·(a+)/2|-(a- 即可在其他任何平台上运行.DBC API用于连接 b)2为点x与区间X。之间的距 Java应用程序与各种关系数据库.这使得人们建立 [R. G,, 客户服务器应用程序时,通常把Java作为编程语 言,把任何一种浏览器作为应用程序的友好界面,把 若有多维物元 G,2 证据为 。中。e。 Intemet或Intranet作为网络主干,把有关的数据库 作为数据库后端 G,Vi R 24Web程序与可拓ES事实库及知识库的交互 ci,Vi 在基于web的专家系统中,Web页面的表单首 c2,V2 则匹配度:P=1/n(p(v1,)+ 先要从事实库中读取事实.供用户选择后提交到可 中。年中。 拓推理机,可拓推理机需要访问可拓知识库,将用户 ca.V 表单提交的事实与可拓知识库的规则前提进行匹 配,进而进行可拓推理,最后将推理结果返回给 p,)+…+p..)=1mPwW. Web页面 如果P0,证据与 25.1可拓规则的匹配 条件不匹配.对于其他特殊情况,如出现不同特征的 可拓规则的匹配根据基元的特性,对可拓规则 距相互抵消,则不能说明匹配,应试具体情况分析」 的匹配方法有欧式距离匹配方法和可拓距匹配方 25.2可拓推理机算法及实现 法.对于基元属性取精确数量值的规则,要求证据与 1)可拓推理机算法的推理思想是:首先,建立 规则前件绝对相符,否则认为不匹配,因此采用欧式 专家给定的可拓规则集和用户给出的证据集;其次, 计算证据和规则前件是否匹配成功并激活规则;然 距离匹配方法.判断证据与规则前件的最简单的精 确匹配办法是计算证据与条件之间的欧式距离,如 后,将得到的推理结论加入证据集结论;最后,循环 执行匹配,直到整个系统不再产生新的推理结论为 果距离为0,则认为精确匹配,如果距离大于0,则认 止,退出推理 为不匹配.若有多维物元: 算法步骤 R,G,'1 ①初值:设有N条可拓推理规则,M条证据.令 G,2 r =l ②判断:如果1M,转@ 1994-2009 China Academic Journal Electronie Publishing House.All rights reserved.http://www.cnki.net
复杂 ,只能表示成一对多和多对多的关系 ,那么事实 与结果独立存储 ,另外由规则库来表达两者联系的 方式 ,这无疑更适合可拓知识的表示以及维护. 在构 建可拓知识库以及日后的知识维护过程中 ,知识的 冗余与冲突是值得关注的 ,可拓知识的冗余可以通 过关键字的设置来缓解 ,而适当的冲突消解策略如 基于可信度排序则可以适当地缓解冲突. 2. 3 数据库连接 Java数据库连接 (Java data base connectivity, JDBC)是一种用于执行 SQL语句的 Java API. 它由 一组用 Java编程语言编写的类和接口组成. JDBC 为工具 /数据库开发人员提供了一个标准的 API,使 他们能够用纯 Java API来编写数据库应用程序. JD2 BC扩展了 Java语言的功能. 使用 JDBC,向各种关 系数据库发送 SQL 语句成为很容易的一件事. 将 Java和 JDBC结合起来 ,将会使程序经过一次编译 即可在其他任何平台上运行. JDBC API用于连接 Java应用程序与各种关系数据库. 这使得人们建立 客户服务器应用程序时 ,通常把 Java作为编程语 言 ,把任何一种浏览器作为应用程序的友好界面 ,把 Internet或 Intranet作为网络主干 ,把有关的数据库 作为数据库后端. 2. 4 Web程序与可拓 ES事实库及知识库的交互 在基于 W eb的专家系统中 ,Web页面的表单首 先要从事实库中读取事实. 供用户选择后提交到可 拓推理机 ,可拓推理机需要访问可拓知识库 ,将用户 表单提交的事实与可拓知识库的规则前提进行匹 配 ,进而进行可拓推理 ,最后将推理结果返回给 Web页面. 2. 5 可拓推理机设计 2. 5. 1 可拓规则的匹配 可拓规则的匹配根据基元的特性 ,对可拓规则 的匹配方法有欧式距离匹配方法和可拓距匹配方 法. 对于基元属性取精确数量值的规则 ,要求证据与 规则前件绝对相符 ,否则认为不匹配 ,因此采用欧式 距离匹配方法. 判断证据与规则前件的最简单的精 确匹配办法是计算证据与条件之间的欧式距离 ,如 果距离为 0,则认为精确匹配 ,如果距离大于 0,则认 为不匹配. 若有多维物元 : R, c1 , V1 , c2 , V2 … cn , Vn 证据为 R′, c′1 , V′1 , c′2 , V′2 … c′n , V′n , 则匹配度 : p = (V1 - V′1 ) 2 + (V2 - V′2 ) 2 +… + (Vn - V′n ) 2 = ∑ n i =1 (Vi - V′i ) 2 . 而对于基元属性取特定区间值的规则 ,要求证 据的属性值落在特定区间内 ,因此采用可拓学中的 距函数来计算匹配度. 用 Java语言设计实现可拓推 理机 ,使推理机可以在任何平台上使用. 可拓 学 中 的 距 匹 配 方 法 : 设 x 为 实 域 ( - ∞, + ∞) 上的任一点 , X0 = 为实域上 的任一区间 ,称 ρ( x, x0 ) =| x - ( a + b) /2 | - ( a - b) /2为点 x与区间 X0 之间的距. 若 有 多 维 物 元 R, c1 , V1 , c2 , V2 …… cn , Vn 证 据 为 R′, c′1 , V′1 , c′2 , V′2 …… c′n , V′n , 则匹配度 : P = 1 / n (ρ( v′1 , V1 ) + ρ( v′2 , V2 ) + … +ρ( v′n , Vn ) ) = 1 / n∑ n i =1 ρ( v′i , Vi ) . 如果 P 0, 证据与 条件不匹配. 对于其他特殊情况 ,如出现不同特征的 距相互抵消 ,则不能说明匹配 ,应试具体情况分析. 2. 5. 2 可拓推理机算法及实现 1)可拓推理机算法的推理思想是 :首先 ,建立 专家给定的可拓规则集和用户给出的证据集 ;其次 , 计算证据和规则前件是否匹配成功并激活规则 ;然 后 ,将得到的推理结论加入证据集结论 ;最后 ,循环 执行匹配 ,直到整个系统不再产生新的推理结论为 止 ,退出推理. 算法步骤 : ①初值 :设有 N 条可拓推理规则 , M 条证据. 令 r =1. ②判断 :如果 1 M , 转 ⑩. 第 2期 张海涛 ,等 :基于 W eb的可拓专家系统研究 ·177·
·178· 智能系统学报 第4卷 ③令i=1 维护,数据库及知识库使用SQL Server集中管理,真 ④如果1N,转⑨, ⑤此对证据名和规则前件名,若相同,则转⑥ 4应用实例:基于可拓学的口腔疾病 否则转⑧ 诊断网络专家系统 ⑥计算匹配度:根据规则前件的不同.用不同的 本系统是基于可拓方法对口腔溃疡疾病信息进 公式计算匹配度 行描述,制定可拓规则,建立可拓知识库和事实库 ⑦所有规则前件的子前提都比对后,则得到推 利用可拓推理和可拓变换去解决问题,相比常规专 理结论或新的证据.若得出新的证据,则将证据添加 家系统能体现出知识的动态变化性的特点。 到证据集中,M++.若得出结论,则将结论添加到 41系统开发环境及结构 结论集中 由于整个系统使用的JSP、Servlet.JDBC都基于 ⑧i++,转④ Java语言,因此基于Web的(网络故障诊断)专家系 ⑨r++,转② 统实例分析具有良好的移植性与平台无关性.因此 @输出推理结论集. 在开发环境的选择上基本不受任何限制 2)可拓推理机的设计实现 实例选择的系统平台W indows XP Home Edi 考虑到专家系统的跨平台应用,可拓推理机用 tion,数据库选择的是Micosoft SQL Server2000,应 Java语言开发,在W indows平台上测试通过,打包成 用服务器选择的是Tomcat 一个ExJ.jar文件.可拓推理机主要有如下几个类: 42可拓知识表示与可拓知识库设计 ExEngine(引擎类)、ExRuleSet(可拓规则集类)、Ex 从口腔学专家那里,得到以下规则及传导推理 EvidenceSet(可拓证据集类)、ExConclusionSet(结论 规则: 集类)、ExRule(何拓规则类)、ExEvidence(何拓证据 1)粘膜,状态,充血)个粘膜,状态,水肿)=> 类)、ExConc lusion(结论类)、ExRuleIF(可拓规则前 (溃疡,程度,初期): 件类)、ExRule THEN(可拓规则后件类)、ExVariable 2)(溃疡面,形态,规则)∧(溃疡,愈合时间,数 基元类) 天至数周)=>(溃疡,类型,良性): 基元类是推理机的最小运算单元,它可以是一 3)溃疡面,形态,不规则)八溃疡,愈合时间, 个物元、关系元或事元的表示,它是构成可拓规则前 数月至数年)=>(馈疡,类型,恶性): 件、结论的基本元素.可拓规则类由可拓规则前件类 4)(溃疡面,底部,平滑)∧(溃疡,病程规律,反 和可拓规则后件类组成.可拓规则前件类由若干个 复发生)八(溃疡,全身症状,淋巴结正常)=>(溃 基元类组成,这些基元类之间可以是任何逻辑关系, 疡,类型,良性) 可拓规则后件类由可拓证据类或结论类组成.若干 5)(溃疡面,药物的敏感程度,差)∧(溃疡面 个可拓规则类构成可拓规则集类,若干个可拓证据 底部,不平)八(溃疡,全身症状,淋巴结肿大)=> 类构成可拓证据集,若干个结论构成结论集,整个引 (馈疡,类型,恶性) 擎类由可拓规则集、可拓证据集、结论集构成.引擎 6)粘膜,表面状况,齐平)∧粘膜,状态,充血 类是可拓推理机的核心类,它为专家系统的实现提 和糜烂)个(上皮,连续性,不中断)=>(口腔,疾 供了一个运行平台.引擎类的add()方法是一个多 病类型,糜烂) 态方法,可以用来向推理引擎添加用来推理的规则 7)(馈疡,病程规律,无复发史)∧(上皮,连续 集和证据集.引擎类的un()方法用来实现可拓推 性,中断)∧(溃疡面,底部,坚韧)=>(溃疡,类 理算法,即根据规则集和证据集推出结论集,并输出 型,恶性) 最后的推理结论 确定可拓变换规则知识:T:馈疡面,形态,规 则)=馈疡面,形态,不规则;:馈疡,愈合时 3人机接口 间,数天至数周)=溃疡,愈合时间,数月至数 系统的实现主要是引入了目前主流设计技术: 年:也存在可拓变换:T:(溃疡,类型,良性)= 基于Web的B/S结构程序框架.即人机接口处以网 (馈疡,类型,恶性.则有:f{I:(溃疡面,形 络浏览器为实现依托,用户只要安装有Web浏览 态,规则)八(溃疡,愈合时间,数天至数周)=(溃疡 器,通过网络联接即可使用本系统,能做到客户端零 面,形态,不规则)八(溃疡,愈合时间,数月至数 1994-2009 China Academic Journal Electronic Publishing House.All rights reserved.http://www.cnki.net
③令 i = 1. ④如果 1 N ,转 ⑨; ⑤比对证据名和规则前件名 ,若相同 ,则转 ⑥, 否则转 ⑧. ⑥计算匹配度 :根据规则前件的不同 ,用不同的 公式计算匹配度. ⑦所有规则前件的子前提都比对后 ,则得到推 理结论或新的证据. 若得出新的证据 ,则将证据添加 到证据集中 , M ++. 若得出结论 ,则将结论添加到 结论集中. ⑧ i ++,转 ④. ⑨ r ++ ,转 ②. ⑩输出推理结论集. 2)可拓推理机的设计实现. 考虑到专家系统的跨平台应用 ,可拓推理机用 Java语言开发 ,在 W indows平台上测试通过 ,打包成 一个 ExJ. jar文件. 可拓推理机主要有如下几个类 : ExEngine (引擎类 )、ExRuleSet(可拓规则集类 )、Ex2 EvidenceSet(可拓证据集类 )、ExConclusionSet(结论 集类 )、ExRule (可拓规则类 )、ExEvidence (可拓证据 类 )、ExConclusion (结论类 )、ExRule IF (可拓规则前 件类 )、ExRuleTHEN (可拓规则后件类 )、ExVariable (基元类 ). 基元类是推理机的最小运算单元 ,它可以是一 个物元、关系元或事元的表示 ,它是构成可拓规则前 件、结论的基本元素. 可拓规则类由可拓规则前件类 和可拓规则后件类组成. 可拓规则前件类由若干个 基元类组成 ,这些基元类之间可以是任何逻辑关系 , 可拓规则后件类由可拓证据类或结论类组成. 若干 个可拓规则类构成可拓规则集类 ,若干个可拓证据 类构成可拓证据集 ,若干个结论构成结论集. 整个引 擎类由可拓规则集、可拓证据集、结论集构成. 引擎 类是可拓推理机的核心类 ,它为专家系统的实现提 供了一个运行平台. 引擎类的 add ( )方法是一个多 态方法 ,可以用来向推理引擎添加用来推理的规则 集和证据集. 引擎类的 run ( )方法用来实现可拓推 理算法 ,即根据规则集和证据集推出结论集 ,并输出 最后的推理结论. 3 人机接口 系统的实现主要是引入了目前主流设计技术 : 基于 Web的 B /S结构程序框架. 即人机接口处以网 络浏览器为实现依托 ,用户只要安装有 W eb浏览 器 ,通过网络联接即可使用本系统 ,能做到客户端零 维护 ,数据库及知识库使用 SQL Server集中管理 ,真 正意义上实现数据库及知识库的“无限 ”扩充. 4 应用实例 :基于可拓学的口腔疾病 诊断网络专家系统 本系统是基于可拓方法对口腔溃疡疾病信息进 行描述 ,制定可拓规则 ,建立可拓知识库和事实库. 利用可拓推理和可拓变换去解决问题 ,相比常规专 家系统能体现出知识的动态变化性的特点. 4. 1 系统开发环境及结构 由于整个系统使用的 JSP、Servlet、JDBC都基于 Java语言 ,因此基于 W eb的 (网络故障诊断 )专家系 统实例分析具有良好的移植性与平台无关性. 因此 在开发环境的选择上基本不受任何限制. 实例选择的系统平台 W indows XP Home Edi2 tion,数据库选择的是 M icrosoft SQL Server 2000,应 用服务器选择的是 Tomcat. 4. 2 可拓知识表示与可拓知识库设计 从口腔学专家那里 ,得到以下规则及传导推理 规则 : 1) (粘膜 ,状态 ,充血 ) ∧ (粘膜 ,状态 ,水肿 ) = > (溃疡 ,程度 ,初期 ) ; 2) (溃疡面 ,形态 ,规则 ) ∧(溃疡 ,愈合时间 ,数 天至数周 ) = > (溃疡 ,类型 ,良性 ) ; 3) (溃疡面 ,形态 ,不规则 ) ∧(溃疡 ,愈合时间 , 数月至数年 ) = > (溃疡 ,类型 ,恶性 ) ; 4) (溃疡面 ,底部 ,平滑 ) ∧(溃疡 ,病程规律 ,反 复发生 ) ∧(溃疡 ,全身症状 ,淋巴结正常 ) = > (溃 疡 ,类型 ,良性 ) ; 5) (溃疡面 ,药物的敏感程度 ,差 ) ∧ (溃疡面 , 底部 ,不平 ) ∧ (溃疡 ,全身症状 ,淋巴结肿大 ) = > (溃疡 ,类型 ,恶性 ) ; 6) (粘膜 ,表面状况 ,齐平 ) ∧(粘膜 ,状态 ,充血 和糜烂 ) ∧ (上皮 ,连续性 ,不中断 ) = > (口腔 ,疾 病类型 ,糜烂 ) ; 7) (溃疡 ,病程规律 ,无复发史 ) ∧ (上皮 ,连续 性 ,中断 ) ∧ (溃疡面 ,底部 ,坚韧 ) = > (溃疡 ,类 型 ,恶性 ). 确定可拓变换规则知识 : T1 : (溃疡面 ,形态 ,规 则 ) = (溃疡面 , 形态 ,不规则 ) ; T2 : (溃疡 , 愈合时 间 ,数天至数周 ) = (溃疡 , 愈合时间 , 数月至数 年 ) ; 也存在可拓变换 : T3 : (溃疡 ,类型 ,良性 ) = (溃疡 ,类型 ,恶性 ). 则有 : if { T1 T2 : (溃疡面 ,形 态 ,规则 ) ∧(溃疡 ,愈合时间 ,数天至数周 ) = (溃疡 面 ,形态 ,不规则 ) ∧ (溃疡 ,愈合时间 ,数月至数 ·178· 智 能 系 统 学 报 第 4卷
第2期 张海涛,等:基于wb的可拓专家系统研究 ·179· 年)}hen{T3:(馈疡,类型,良性)=(溃疡,类型, 将用户表单提交的事实与可拓知识库的规则前提进 恶性) 行匹配,进而进行推理,最后将推理结果返回给 在数据库中基元表示见表1(部分) Web页面,将结果展示给用户 表1基元知识表(部分) 本例中,当患者提交的症状中当溃疡面由规则 Table 1 Basic-element knowledge part) 变得不规则,愈合时间由原来的数天到后来的数月 0 甚至数年时,专家系统可利用可拓推理规则得出患 1 粘膜 状态 充血 者己经由良性溃疡转变为恶性溃疡了 粘膜 状态 水肿 3 溃疡 程度 初期 5结束语 溃疡 形态 规则 可拓学用可拓模型来研究事物的拓展性,可拓 J 溃疡 愈合时间 数天至数周 6 溃疡 类型 良性 推理规则是解决矛盾问题的推理形式.而动态Wb 7 溃疡面 形态 不规则 技术是一种开发网络专家系统的适宜环境,本文探 可拓规则存储关系表内容见表2(部分): 讨了将可拓学初步应用于网络专家系统中,取得了 表2可拓规则表部分) 异于常规专家系统的论断效果.随着可拓学研究的 Table 2 Extension rules part) 不断深入,应用可拓学的研究成果来解决基于Web 规则号 病症 病因 的专家系统问题将有着令人鼓舞的应用前景 1001 R1∧R2 R 参考文献: 1002 R4∧Rs R 1003 R,∧Rg Rg [1杨春燕,蔡文.可拓工程M1北京:科学出版社,2007: 1004 R1o A Ru R12 3-5 1005 1Λ3 [2飞思科技.JSP应用开发详解[M北京:电子工业出版 T 社.2004:45-48 43Web系统设计 [3 JOHNSON R,SONS J W.Professonal Java development 基于Web的专家系统是一个以数据库操作为 with the spring framework [M ][S I ]W iley Publishing. 2005:301-305 主、相对逻辑复杂的系统,而且推理过程都具有一定 [4]CA IW en Extension management engineering and applica- 的相似性,适合组件重用,因此非常适用于使用 tions[J ]Intemational Joumal of Operations and Quantita- MVC设计模式.本文的实例便采用了基于Struts框 tive Management 1999(1)50-87. [5李立希,杨春燕.可拓策略生成系统M]北京:科学出 架的MVC模式来开发Web系统.根据上文系统流 版社,2006:76-79 程分析的步骤,整个系统的主要页面由首页、登录、 [6杨春燕,蔡文.可拓信息一知识智能形式化体系研 究[J]智能系统学报,2007,2(3):8-11. 最新消息、口腔病症介绍、口腔溃疡诊断专家系统组 YANG Chunyan,CAIWen A omalized system of exten- 成.图2是专家系统首页(粘膜部分): sion infomation-knowledge-intelligence J ]CAAI Transactons on Intelligent Systems,2007,2(3):8-11. ☐腔清高谈斯专家系统 [7礤文,杨春燕,何斌.可拓逻辑初步M].北京:科学 出版社,2003:56-59 作者简介: 张海涛,男,1982年生,硕士研究 生,主要研究方向为专家系统」 水 ·刻技千 康统速长卡泉线 ●表生和装上 意和顶表国倍其平变角无独南度 图2口腔溃疡诊断专家系统首页部分) 董春游,男,1962年生,教授,硕士生 Fig 2 Home page of oral ulcer diagnosis expert system 导师,主要研究方向为人工智能、决策支 (part) 持系统.曾获得煤炭科学技术三等奖和 专家系统的诊断过程是整个系统的核心部分 黑龙江省科技进步三等奖.,发表学术论 它包含了专家知识获取以及推理过程.JavaBean首 文20余篇,出版专著1部 先获取病人症状的列表,将症状申明成事实,推理机 1994-2009 China Academic Journal Electronic Publishing House.All rights reserved.http://www.cnki.net
年 ) } then { T3 : (溃疡 ,类型 ,良性 ) = (溃疡 ,类型 , 恶性 ) }. 在数据库中基元表示见表 1 (部分 ). 表 1 基元知识表 (部分 ) Table 1 Ba sic2elem en t knowledge ( part) Ri N C V 1 粘膜 状态 充血 2 粘膜 状态 水肿 3 溃疡 程度 初期 4 溃疡 形态 规则 5 溃疡 愈合时间 数天至数周 6 溃疡 类型 良性 7 溃疡面 形态 不规则 可拓规则存储关系表内容见表 2 (部分 ) : 表 2 可拓规则表 (部分 ) Table 2 Exten sion rules ( part) 规则号 病 症 病 因 1001 R1 ∧ R2 R3 1002 R4 ∧ R5 R6 1003 R7 ∧ R8 R9 1004 R10 ∧ R11 R12 1005 T1 ∧ T2 T3 4. 3 W eb系统设计 基于 W eb的专家系统是一个以数据库操作为 主、相对逻辑复杂的系统 ,而且推理过程都具有一定 的相似性 ,适合组件重用 ,因此非常适用于使用 MVC设计模式. 本文的实例便采用了基于 Struts框 架的 MVC模式来开发 Web系统. 根据上文系统流 程分析的步骤 ,整个系统的主要页面由首页、登录、 最新消息、口腔病症介绍、口腔溃疡诊断专家系统组 成. 图 2是专家系统首页 (粘膜部分 ) : 图 2 口腔溃疡诊断专家系统首页 (部分 ) Fig. 2 Home page of oral ulcer diagnosis expert system (part) 专家系统的诊断过程是整个系统的核心部分 , 它包含了专家知识获取以及推理过程. JavaBean首 先获取病人症状的列表 ,将症状申明成事实. 推理机 将用户表单提交的事实与可拓知识库的规则前提进 行匹配 ,进而进行推理 ,最后将推理结果返回给 W eb页面 ,将结果展示给用户. 本例中 ,当患者提交的症状中当溃疡面由规则 变得不规则 ,愈合时间由原来的数天到后来的数月 甚至数年时 ,专家系统可利用可拓推理规则得出患 者已经由良性溃疡转变为恶性溃疡了. 5 结束语 可拓学用可拓模型来研究事物的拓展性 ,可拓 推理规则是解决矛盾问题的推理形式. 而动态 W eb 技术是一种开发网络专家系统的适宜环境 ,本文探 讨了将可拓学初步应用于网络专家系统中 ,取得了 异于常规专家系统的论断效果. 随着可拓学研究的 不断深入 ,应用可拓学的研究成果来解决基于 W eb 的专家系统问题将有着令人鼓舞的应用前景. 参考文献 : [ 1 ]杨春燕 ,蔡 文. 可拓工程 [M ]. 北京 :科学出版社 , 2007: 325. [ 2 ]飞思科技. JSP应用开发详解 [M ]. 北京 :电子工业出版 社 , 2004: 45248 . [ 3 ] JOHNSON R, SONS J W. Professional Java development with the sp ring framework [M ]. [ S. l. ]W iley Publishing, 2005: 3012305. [ 4 ]CA IW en. Extension management engineering and app lica2 tions[J ]. International Journal of Operations and Quantita2 tive Management, 1999 (1) : 50287. [ 5 ]李立希 ,杨春燕. 可拓策略生成系统 [M ]. 北京 :科学出 版社 , 2006: 76279. [ 6 ]杨春燕 ,蔡 文. 可拓信息 —知识 —智能形式化体系研 究 [J ]. 智能系统学报 , 2007, 2 (3) : 8211. YANG Chunyan, CA IW en. A formalized system of exten2 sion information—knowledge—intelligence [ J ]. CAA I Transactions on Intelligent System s, 2007, 2 (3) : 8211. [ 7 ]蔡 文 ,杨春燕 ,何 斌. 可拓逻辑初步 [M ]. 北京 :科学 出版社 , 2003: 56259. 作者简介 : 张海涛 ,男 , 1982 年生 ,硕士研究 生 ,主要研究方向为专家系统. 董春游 ,男 , 1962年生 ,教授 ,硕士生 导师 ,主要研究方向为人工智能、决策支 持系统. 曾获得煤炭科学技术三等奖和 黑龙江省科技进步三等奖. ,发表学术论 文 20余篇 ,出版专著 1部. 第 2期 张海涛 ,等 :基于 W eb的可拓专家系统研究 ·179·