本篇將接著基礎篇,在動物本體中,建立獅子類(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 保存項目。點擊下載該項目。