论文部分内容阅读
目前,本体论(Ontology)和本体(ontology)是计算机领域研究的热点。这两个概念最早是哲学领域中的概念。本体论是研究客观事物存在的本质(being)及其内在关系的理论,在哲学中定义为“对世界上客观存在物的系统地描述,即存在论”。小写“o”开头的本体作为表述哲学理论的术语,是指形成现象的根本实体。在计算机领域,主要是在实际应用中引入本体论的思想,开发本体。对于本体的定义,目前还没有一个明确统一的定义,这里引用 Gruber的定义:“本体是概念化(conceptualization)的显式的规范说明”。本体目前在语义 WEB以及信息系统中都有很好的应用。 随着本体论和本体应用的发展,本体的描述语言和开发工具也越来越多。目前本体描述语言主要分为基于 AI的 KIF、Ontolingua、CycL等和基于 Web的 SHOE、RDF、OIL、DAML、OWL两类。本体开发工具比较有影响的有:Protégé、Ontolingua、Ontosaurus、ODE/WebODE、OntoEdit等,本文中都对这些做了简略的介绍。 本文主要关注根据本体论思想,指导在各个层面进行本体开发的本体开发方法。本体开发方法仍处于“百家争鸣”的状态,有很多本体开发方法,它们各不相同又各有特点。本体开发还不像软件开发一样有一套明确的体系结构。现在的本体开发方法大致可以分为基于阶段的开发方法(TOVE和 Skeletal Methodology)和基于原型的开发方法(METHONTOLOGY和 IDEF5)。本文选择了 Skeletal Methodology、TOVE和 METHONTOLOGY这三个比较有影响的本体开发方法进行详细的介绍和分析。 Skeletal Methodology方法主要是一种非形式化的方法,它将本体的开发分为四个主要阶段:1.确定目的,形式化水平和范围,2.开发本体,3.评价/修订循环,4.文档化。该方法提出了一些本体开发的标准,但是这些标准的覆盖面不全,不能完整的描述整个本体开发过程中的标准体系。 TOVE方法则是一个形式化的本体开发方法,它主要分为六个阶段:激发场景、非形式化的能力问题、形式化术语、形式化的能力问题、形式化公理和完备性定理。该方法更注重本体中公理体系的作用,希望通过它来评价本体以及进行本体的维护。 METHONTOLOGY方法提出了本体生命周期的概念,它基于原型法。它细分了本体的发展阶段:说明、概念化、形式化、集成和实现。最后本体进入维持状态。知识获取、评价和文档化是贯穿在整个生命周期的。 本文在分析和比较这些本体开发方法的基础上,提出了一种新的本体开发方法——进化法。进化法将本体开发看作为本体的不断进化的过程。在本体的一个进化周期中,有需求分析、元本体、集成、概念收集、形式化、实现、实际应用和进化这八个阶段。进化法和已有的本体开发方法相比有以下的特点: 1.阶段间的依赖性小。进化法希望用软件工程的思想来进行本体开发。希望本体开发的各个阶段能够像软件工程中各个功能模块一样,可以随着实际需要,进行自由的组合。各个阶段也有各自的特点,在实际应用中可以根据需要选择进行的阶段。 2.中间往外法。在本体开发中没有使用自项向下法,也没有使用自底向上法,而是采用了先定义出核心的元本体,然后在根据元本体,向上向下进行概念收集。 3.元本体的作用得到加强。元本体在其它本体开发方法中都是作为某个阶段内部的成果和元素,进化法为了更好的发挥中间往外方法的效用,将元本体的开发作为一个阶段,可以大大增加本体开发的效率。 4.适用性强。进化法是一个很宽松的开发方法,对于非形式化的本体和形式化的本体都能够满足需要,并不对形式化水平做过多的要求。可以用作顶级本体、领域本体、任务本体和应用本体的开发 5.方法中有评价和文档流循环。对于本体开发方法,文档是非常重要的。进化法中将开发周期中的文档作为文档流来进行管理和维护。每个阶段都有文档的输出,便于对文档进行规范化管理。有些开发方法将评价作为某个特定的阶段,但在进化法中,评价活动随时都存在,它是伴随着整个开发周期的,同时不断的生成评价报告,评价本体开发的各个阶段。 6.针对实际应用。进化法并不是单纯的研究方法,它的目的是能够大规模的进行实际应用。因此在进化法中加入了实际应用阶段。这个阶段表示本体的开发周期应该和具体的应用联系起来,在实际中去检验本体。 进化法借鉴了软件工程中原型法的思想,采用螺旋式的进化方式。但它与原型法还是有所不同: 对象不同。软件工程中的原型法是用于软件的开发,而进化法是用于本体的开发 成熟度不同。软件工程发展到现在,对于各种方法都有完整的规范和标准,而对于本体开发方法而言,还没有统一的标准。 自由度不同。对于软件工程中的原型法,是一个比较流程化的方法,各个阶段之间依赖性比较强。对于进化法而言,可以根据实际情况组织生命周期中的各个阶段。 本文最后采用进化法,对信息系统领域进行了本体开发的尝试。之前本体的开发主要是集中于信息系统的应用领域,对于信息系统本身还没有一个完整的本体出现,本文希望对信息系统领域的本体开发,充分发挥中国人民大学经济科学实验室在信息系统开发和研究方面的经验。实例中的本体描述语言采用 OWL,开发工具使用 Protégé。