protege3.1.x基础篇-推理

本篇将接着基础篇,在动物本体中,建立狮子类(Lion)和肉食动物类(Carnivore),通过推理得到狮子是肉食动物。通过这个实例来简单了解推理机Racer的用法。

基本操作方法在基础篇中有讲解,以下步骤中的操作不清楚的朋友请先看基础篇。点击这里下载到此处的项目,在protege中点击Open Project打开项目。

步骤1 在Animal中建立狮子类和肉食动物类。定义这两个类在同一级中,即这两个类为兄弟关系,目的是推理后狮子变为肉食动物的子类。

步骤2 编辑狮子类的属性。这里我们定义狮子只吃素食动物。

步骤3 编辑肉食动物的属性。这里我们需要建立一个eat的子属性maineat(主要吃的是),因为肉食性动物可以吃植物,所以我们无法单纯的靠eat来推理出Lion是不是肉食性动物。这里我们定义肉食性动物maineat的值域是所有的动物。如下图

步骤4 将肉食动物的maineat属性变为充分必要条件。因为在现在的逻辑模型中我们的标准是开放世界假说,也就是说在没有成功证明某个陈述之前,我们将这个陈述定义为未知的事实而不是假的。因为我们没有明确指出肉食动物不能主要吃植物,所以肉食动物主要吃植物这个陈述是未知的,而不是假的。这样就给我们的推理造成了影响,所以我们需要明确指出肉食动物主要吃动物。也就是充分必要条件。做法是双击NECESSARY(必要条件)中的 将其拖拽到上方的NECECSSARY & SUFFICIENT(充分必要条件)中。同样的方法将Animal也拖拽到充分必要条件中。状态如下图

步骤5 启动RacerPro推理机进行推论。如果没有的朋友请到RacerPro官方网站下载。需要注册一下,然后在发给你邮件中,点击链接就可以下载。安装选默认路径即可,不然还需要设置路径。

步骤6 运用推理机进行推理。选择菜单中OWL–>Classify taxonomy..(也可以点击标签上方的Classify taxonomy..图标)的。这时protege会连接RacerPro,然后推理机将做出推理。这时将推理机弹出的信息关闭,protege中间会出现新的类阶层图,这里狮子类已经变为肉食动物的子类。并在信息对话框中的Lion Moved from Animal to Carnivore。

步骤7 确认关系图。在OWLViz中Asserted Model是推理前的关系图,Inferred Model是推理后的关系图。可以看到狮子类已经成为肉食动物的子类。

步骤8 保存项目。点击下载该项目。

你可能感兴趣的:(protege3.1.x基础篇-推理)