李雅南 倪红梅 方盛泉 杨旭明
摘要:目的 研究一种能预防埃博拉病毒疫情的智能决策支持系统,在埃博拉疫情发生时及时获取防控方案,以预其进一步蔓延。方法 ①通过决策支持系统的人机交互接口,由用户根据自己的"判断"选取一个合适方案;②智能决策支持系统是从将专家系统引入DSS开始的,它的问题求解是在决策者的直接参与和指导下进行的,而将机器学习引入的目的是使智能决策支持系统获取与决策过程相关的知识,可使它能在不断的使用过程中积累经验而改善自身的性能(具有演进能力);③基于CASE(案例)的系统就是通过对已有的案例进行分类、从案例中提取知识的,实现对埃博拉疫情的预防措施的辅助决策。结论 埃博拉疫情是"可防,可控的"。
关键词:埃博拉疫情;互联网;智能决策支持系统
埃博拉出血热是由埃博拉病毒(Ebola virus,EBV)引起的一种急性出血性传染病[1],是人类目前已知最烈性的传染病之一,该病病死率最高可达90%[2],随着大量人员频繁来往于中非之间,埃博拉疫情对于我国也构成了公共卫生意义上的威胁[3],据WHO的报告[4],截止到2014年8月19日,报告的病例数2240例,死亡1229例,且仍有继续蔓延之势。
1 研究目的
在信息技术突飞猛进的今天,为了更好地防控EBV的疫情,我们研究一种能预防埃博拉病毒疫情的智能决策支持系统。应运用智能决策支持系统(Intelligent Decision Support System,IDSS),将先进的人工智能计算机技术与DSS技术结合起来,应用一个实际的Horn逻辑系统-PROLOG系统,建立具有智能知识获取功能的EBOV知识库,使其具有元推理、演绎能力和语义完整性维护功能,消除冗余、检查相容性,以便在知识消化和调节中达到自动知识获取之目的。而基于案例推理的研究,也包含人工智能的理论和技术,它可以确定新问题到底与哪些经验相似或应将以前的经验做什么调整,最后得出结论。这些工作将有利于推动EBOV疫情防御工作更好、更完善地实现决策和支持。
2 基本思路与方法
自1976年在非洲中部扎伊尔(现刚果民主共和国)和苏丹暴发流行后,已在非洲中部形成地方流行,主要包括乌干达、刚果、加蓬、苏丹、科特迪瓦、利比里亚、南非等国家于20世纪70年代在非洲首次发现,每每有类似的报道都会给人们带来恐慌,为此,本研究开发的智能决策支持系统将解决这一问题。见图1。
3 技术关键和主要技术指标
本系统采用了B/S架构,采用了MVC的设计模式,将数据层,逻辑层,表现层三层进行了分离。
3.1数据层-收集信息,建立MySQL 5.5知识库。运用MySQL是开源的成熟的关系型数据库软件。最大可以容纳百万级的数据量存储。根据埃博拉的几次大流行,人们总结出埃博拉病毒的临床症状[1],收集信息数据,建立知识库。
3.2逻辑层-采用了JAVA语言和PROLOG语言相结合的方式消除冗余的算法和完整性约束实现。采用了JAVA语言和PROLOG语言相结合的方式,各取所长。利用了JAVA的一次编写,到处运行的特点,使系统能够运行在Windows,Linux甚至MacOS等多种平台上,利用PROLOG在人工智能方面的优势,通过turoProlog框架在Java环境中实现PROLOG。
3.3表现层-埃博拉病毒知识库中的案例推理 通过SpringMVC实现Ajax和HTML展现。由于采用B/S架构,所以,对客户端只需要通过浏览器便可以访问系统,不需要安装额外的客户端软件。在实际问题求解时,知识处理需要对非精确的数据和知识进行"非精确"处理。基于案例的推理(Case Base Reasing CBR)的工作原理就是人们的认知心理过程-假定人们总是利用已有的经验和知识来解决具有相似的新问题。它把知识工程的任务减少到特征的描述、术语定义、案例的收集与分类,并将增添新知识简化为案例库中增加新案例,从而获得埃博拉病毒知识库中的案例推理流程,见图2。
3.4埃博拉病毒知识库在知识消化中消除冗余的算法和完整性约束的实现。采用了JAVA语言和PROLOG语言相结合的方式以及知识消化的基本概念。 JavaEE的核心是EJB3.0,其提供了更兼便捷的企业级的应用框架。
总之,知识消化的作用就是假定已存在的知识库中的知识是正确的,不能被外部知识所修改,将适合用户意图的知识存贮到知识库中,而用户意图则由完整性约束来定义。
3.5基于JAVAEE的B/S架构在智能知识调节在埃博拉病毒知识库中的实现。如何从浩如烟海的信息中自动获取信息,从而更完善地构建具有智能化的埃博拉病毒知识库是人们要想解决的问题之一。这里介绍一种基于基于AVAEE的B/S架构学习框架,JavaEE的核心是EJB3.0,其提供了更加便捷的企业级的应用框架。在埃博拉病毒知识库中,此算法只要输入有限的事实就可得到一种理论输出。
3.5.1知识获取的概念知识获取就是在知识库中通过消化和调节收集知识。其中,归纳机制被看作是利用PROLOG在人工智能方面的优势,通过tuProlog框架在Java环境中实现PROLOG,它在知识获取中的作用是:生成适合用户意图的知识;修改已存在的知识(主要是规则和事实);知识的自我组织。
3.5.2知识调节知识调节是知识获取的方法之一。知识调节前题是假定新的知识(规则)和事实是正确的,用新的知识去检验、修改知识库中已存在的知识。其作用是更新和修改知识库中已经存在的知识;消除冗余(取决于用户意图);由于发现矛盾而恢复知识库。
EBV(K,[K/T]):-true.
EBV(K,[K1/T]):-EBV(K,T).
谓词是EBV,它有两个变量,第一个变量是非表形式K,而第二个变量是表的形式L且其取数值范围为U,即L U,L是U的一个子集。可见,只要前一个变量是后一个变量中的成员,则前一个变量所表示的病症就是"埃博拉病毒病症"。
由图3可见,此智能知识获取系统正确地归纳出EBV谓词的规则描述。所以说此系统具有"归纳学习"的机器学习功能。另外,在子句生成测试系统的工作完成后,可删除原来用于帮助模型推理的一些事实和辅助信息,从而恢复知识库。
3.5.3基于案例推理(CBR)它是基于人们的认知心理过程-假定人们总是利用已有的经验和知识来解决具有相似的新问题。
一般来讲,一个典型案例包括的信息有:问题的描述P;问题环境的描述E;问题的求解描述O;问题解决方案S;专家评价V。所以案例是5元组C=(P,E,O,S,V)。在实践中,构造覆盖整个问题域的案例是不现实的,但要尽可能多地覆盖问题空间,如果CBR方法不能覆盖的部分要结合其他方法如基于规则(RBR)的方法来弥补。
综上所述,本系统利用人工智能的技术,简便快捷的让用户在短时间内,得到精准的"结果"。基于互联网的埃博拉疫情防御控制系统能对EBV疫情达到预演的目的,尽快了解其相关特性,从而制订出针对性的防御措施显得尤为重要。
参考文献:
[1]XU Li-li,QIN Chuan.Progress on Animal Models of Ebola Hemorrhagic Fever[J].CHINESE JOURNAL OF COMPARATIVE MEDICINE,2010,20(9):67-71.
[2]Zhang Yawei.Ebola Hemorrhagic Fever an Animal Infectious disease[J].modern journal of animal husbandry and veterinary medicine,2014,10:37-40.
[3]江华,潘海霞,孙明伟,等.基于计算流行病学的埃博拉出血热的传播与爆发仿真研究[J].13-17.
[4]胡运法.数据与知识工程导论[M].北京:清华大学出版社,2006.
[5]徐彤,李松,等.Visual Prolog在IDSS开发中的应用技术研究[J].中国科技信息,2005,19:23,28.
编辑/周芸霏