能力建模工具-Protege插件ICCTab

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了能力建模工具-Protege插件ICCTab相关的知识,希望对你有一定的参考价值。

一、系统功能概述

1系统功能概述

本软件针对本体建模工具Protege设计出了一种基于语义的能力建模平台,并将其以Protege插件的形式应用到本体建模工具Protege中。该能力建模平台使用Java Swing进行界面设计,并利用Jena技术,在Java开发平台对能力元模型进行添加和修改,建立目标能力模型;根据建好的能力模型,利用Jena技术进行语义查询,形成一个从初始状态到目标状态的规划,并利用Graphviz生成规划图。首先,通过Protege建立能力元模型,然后通过该能力建模平台扩展和完善能力元模型,例如添加Agent、给Agent添加能力等,生成目标能力模型;给定初始状态和目标状态,通过对能力模型进行语义查询,利用规划算法,寻找一个规划过程,并显示规划图。本文提出的基于语义的能力建模平台应用到Protege中使得该工具能被对OWL语言并不熟悉的人用来操作OWL,并能很方便的使用语义查询来生成规划图,使之为Agent能力协作做有效铺垫。

1.2.系统功能结构

能力建模平台的结构图如图1.1所示,界面主要分为三个模块:对能力模型添加或删除Agent和Capability实例;对Agent添加能力属性和对Capability添加或删除InConstraint和OutConstraint属性;根据给定的初始状态和目标状态,生成规划图。

技术分享

 

 

 

 

 

 

 

 

 

 

 

 

 

1、对能力模型添加或删除Agent和Capability实例:

界面中对owl文件内容是以树的形式呈现,最底层的节点都代表的是实例。可以对每一类Agent添加或者删除实例,也可以对Capability类添加或者删除实例。

2、对实例添加属性:

Agent实例有hasCapability属性,因此可以给Agent实例添加或删除capability。Capability实例有hasInConstraints和hasOutConstraints两个属性,因此可以给Capability属性添加或删除InConstraints和OutConstraints。InConstraints和OutConstraints都是由一些ContextState组成,而ContextState则是由类似“a_b_c”字符串形式构成,从语义的角度来说,a和c都代表argument,b代表predicate。                                                                                                                                                           

3、生成规划图:

规划图显示的规划过程,需要先输入初始状态和目标状态。在点击按钮触发后,系统会根据所输入的初始状态和目标状态来运行后台的规划算法,若存在一个从初始状态到目标状态的规划,系统就会以弹出框的形式显示规划图。通过规划图,可以对规划过程一目了然。

二、系统要求

2.1.开发和运行环境

1、硬件环境

本系统的硬件开发环境比较低,CPU为AMD A6-3670.2.70GHZ以上,内存为4GB。

2、软件环境

软件环境主要包括计算机系统Windows 7旗舰版,程序编写软件Eclipse 4.5,本体开发工具Protégé 3.4.8 Windows 64位,还有绘图工具Graphviz 2.28,这个是以dot作为脚本语言来绘制图形的软件,以及JDK1.8。

3、开发语言

本系统的开发语言主要涉及到Java,OWL和Dot三种语言。OWL是一种处理WEB信息的语言,Dot是Graphviz中编写绘图脚本的语言。

4、运行环境

由于是Protege插件,所以需先安装Windows 64位的Protege3.4.8,在Protege工具中运行。生成规划图利用了Graphviz软件,因此也需要安装Graphviz 2.28。电脑离线或者在线都可运行。

2.2.软件配置

软件开发平台为:eclipse4.5  JDK1.8  Protege 3.4.8  Graphviz 2.28。

说明:搭建环境时首先确认JDK的版本要换成1.8;安装Graphviz 2.28时,要安装在C:ProgramFiles(x86)下;在特定位置存放owl文件(E:/AGVsModel/AGV1.owl),并在E盘新建文件夹temp,用于存放生成的规划图。此外,Protege3.4.8需要安装64位的,安装好后,需将能力建模插件包RP-Plugin.jar放到Protege安装路径下的plugins\\edu.stanford.smi.protegex.owl中。

三、软件操作说明

3.1对能力模型OWL文件进行修改

3.1.1打开能力建模平台主界面

在对软件操作前,需用Protege建立一个能力元模型的owl文件,并将其放在E:/AGVsModel/目录下。

运行该Protege插件,如图3.1所示:

技术分享

图3.1  运行界面

选择“Open Other”,出现选择owl文件路径的对话框,如图3.2所示:

技术分享

图3.2 选择owl文件界面

选择好owl文件后,就会出现Protege主界面,如图3.3所示:

技术分享

图3.3 Protege主界面

接下来,需要打开能力建模插件ICCTab了。点击窗口左上角的“Projcet”,选择“Configure”后出现配置选择框,如图3.4所示。然后勾选ICCTab,就会出现RP-Tool选项卡,点击该选项卡就会出现能力建模平台的主界面,如图3.5所示。

技术分享

图3.4 配置选择框

技术分享

图3.5 主界面

3.1.2对能力模型进行修改

对能力模型进行修改的操作包括添加和删除Agent实例,添加和删除Capability实例,给Agent实例添加Capability,给Capability实例添加InConstraints和OutConstraints。

(1)添加和删除Agent实例:选择“Agent”下的某一个类(AGV),点击“+Agent”按钮,出现一个输入节点名称对话框,如图3.6所示。点击OK后,新节点“ab”就添加到AGV下,作为AGV的一个实例,如图3.7所示。当选中一个Agent实例“agv”,点击“Delete”,则该实例就会从模型中删除。

技术分享

(2)添加和删除Capability实例,跟添加和删除Agent实例类似,选中“Capability”类,点击“+Capability”按钮,出现输入名称对话框,如图3.8所示,当输入“acd”,点击OK时,该实例就添加到模型里面了,如图3.9所示。当选中一个Capability实例“acd”,点击“Delete”,则该实例就会从模型中删除。

技术分享

(3)给Agent实例添加和删除能力:选中一个Agent实例“ab”,点击中间“+Ca...”按钮,出现“Select a capability”弹出框,当选择一个能力“movetoElevator”后,点击OK按钮,则该能力就会显示在列表中,如图3.10所示。

技术分享

(4)给Capability实例添加或删除InConstraints:选择一个Capability实例“TransportCart”,点击中间模块的“+Inc”按钮,则出现InConstraints编辑框,如图3.12所示。有两种方式,可以从已有的ContextStates下拉列表中选择一个,如图3.13所示,或者自己创建一个新的ContextState。当自己创建一个新的ContextState时,一般按P(C,I)形式创建,即先点击“P”按钮,出现“Choose Predicate”选择框,如图3.14所示,选择一个Predicate,然后点击“(”,再点击“C”按钮,出现“Choose OntClass”选择框,如图3.15所示,选择其中一个节点,点击OK,然后手动输入“,”,在点击“I”按钮,出现“Choose Individual”选择框,如图3.16所示,选择一个Individual,最后点击“)”按钮,那么一个新的ContextState就创建成功了,如图3.17所示,当点击OK后,该ContextState就会以C_P_I的形式添加到InConstraints列表中,如图3.18所示。选中某个InConstraint,点击“-InC”按钮,则该InConstraint便会从能力模型中删除。

(5)给Capability实例添加OutConstraintes:点击中间模块下方的“+OutC”按钮,出现的对话框及接下来的操作都跟添加InConstraints相同;选中某个OutConstraint,点击“-OutC”按钮,则该OutConstraint便会从能力模型中删除。

技术分享        技术分享           技术分享

图3.12  InConstraints editor                                                                                                         图3.13 Choose ContextState                                                                                                图3.14 Choose Predicate

                                                                   

技术分享        技术分享          技术分享          技术分享

图3.15 Choose OntClass                                                   图3.16 Choose Individual                                                                                     图3.17 Create new ContextState                                                                            图3.18 Create new ContextState效果图

 

3.2生成规划图

生成规划图模块界面如图3.19所示。其过程分为四步:第一步,在文本框输入Available Agent名称;第二部,选择输入Initial States和Goal States,具体操作为:点击Initial States上方的“+”出现“InitialStates editor”选择框,跟“InConstraints editor”相同,选择过程也相同,Goal States的选择输入也是如此,若想删除某个Initial States和Goal States,则只需选中它,然后点击“-”按钮;第三步,点击“Step 4:Run”按钮,运行规划算法;第四步,点击“Step 4:ShowGraph ”按钮,则出现规划图的弹出框,如图3.20所示。

技术分享                 技术分享

图3.19  生成规划图模块界面                                                                                                                             图3.20 生成规划图

 本文属作者原创,请尊重原创。

以上是关于能力建模工具-Protege插件ICCTab的主要内容,如果未能解决你的问题,请参考以下文章

数据建模软件工具都有哪些啊

UML建模工具的安装与使用

数据建模工具------EZMNL

数据库建模工具PowerDesigner总结(组图)

数学建模MATLAB工具箱是啥?怎么用

软工国标简介 |工具和方法:UML上层结构