基于多Agent的协同制造平台的研究与设计

2012-10-17 03:07张晓燕
网络安全技术与应用 2012年12期
关键词:知识库本体代理

张晓燕

商洛学院计算机科学系 陕西 726000

0 引言

随着计算机、互联网技术和跨国经营的快速发展,企业间的协作越来越紧密,集成与协同已经成为当今制造业信息化发展的主旋律。这种集成与协作不仅包含企业内各部门的继承与协同,还包含了企业与企业之间的集成与协同,这个协同过程不仅包括了来自许多公司和信息资源异构的大量、复杂的合作伙伴,而且还包括了交换不同格式、不同来源的制造业数据的的协同。此外,制造业的发展不仅是协作,而且知识高度密集。不同学科、不同技术水平的参与者都需要与他人分享显性和隐性知识,获取相关的见解和经验,人与人协作以获取知识。

因此,必须要达到两个方面的要求:1)如何在合作的基础上,组织一个基于知识发展的多学科参与和异构工具。2)如何有效的支持制造业知识的表示、获取、检索和重利用,包括规范、设计规则、约束和理由,这可能延长整个生产的生命周期以及跨企业的边界。研究表明,多代理和本体技术在处理上述问题上具有明显的优势。本文提出了基于 Agent的可伸缩的多智能体系协作框架,并提出了代理合作进程通信和基于本体的协作与交流。

1 协同开发平台的体系结构

本文提出的基于 Agent的可伸缩的多智能体系协作框架,其中的包装代理提供包装服务,能使Agent通过API或标准的用户界面来访问商业软件的技术资料,参与者在基于转换机制的基础上能通过包装代理或用户代理共享数据信息,为系统提供了一个高效的方法来集成异构应用。

图1 协同开发平台的体系结构

如图1所示,该体系架构分为三个不同层次:第一层次是“环境水平”:与外部软件进行数据交换,包括四种类型:几何模型的应用(如 CAD系统)、知识管理应用(如知识型经济体系)、工程计算应用程序(如SYS)和信息管理和应用程序(如PDM系统)。涵盖整个制造业的生命周期,这些应用程序与不同的设计阶段有关。

第二个层次是“代理协作”:启用由MAS体系分配用户在虚拟环境下协同完成任务。选择智能物理代理基金会(FIPA)参考模型,它作为系统的技术基础提供了系统的异构互动代理和基于代理的系统标准,并指定本体和谈判协议。

(1) 用户代理:与用户、消费者互动,构成了用户进入系统的智能网关。它使用该系统的领域模型知识本体,以协助制定查询和显示代理计算结果。

(2) 包装代理:可以由软件说明书中所描述的软件系统进行动态的接口。它提供了一种在原有的包装系统中使用的包装机制,可以把包含在 ACL中的命令操作转换为消息,通过API环境调用应用程序,并为应用程序捕获特定的数据,并翻译为ACL消息。

(3) 任务代理:用户处理请求的过程可以通过坐标确定,并请求路由到相应的资源代理或包装代理,并重组结果。通过任务代理跟踪这一过程,并执行处理。

(4) Facilitor代理:为所有Agent提供服务。每个代理必须说明它的描述信息(如位置、名称、语言)以及它向Facilitor代理提供的服务。在这些信息的基础上,Facilitor代理根据它的路由的具体要求来响应代理的查询。

(5) 资源代理:可以利用包含在信息资源中的信息和知识来进行检索和更新。它可以解答并将 ACL的查询表示翻译为与信息资源一致的语言,它也可以将查询结果翻译成其它代理能看懂的格式。

(6) 本体管理代理:执行本体操作。本体作为一个明确地说明和交换应用术语,能有效地支持对知识的共享、重用和一体化。本体管理代理提供了一个从普通的本体映射到数据库模式和母语的资源代理模式。

第三个层次是“信息资源”:是本体库的核心,包括各种应用领域的本体,如:规则库,案例库,资源库等,被称为“广义知识仓库”,用来存储临时数据、专家经验,以及所有与工程设计相关的信息和知识。每个资源连接到一个资源代理,并规定其规则和限制。

2 多Agent系统的协作框架

如图2所示,按照代理的功能,可分为多种类型,每个代理具有统一的逻辑结构,每个代理由六个部分组成:知识库、感知、操作、通信、决策和内部状态。知识库存储了协作解决问题所需的知识,依赖于代理商的组织角色知识。感知模块获取实例和外部环境的信息状况,并存储在知识库的实例库中。通信模块与FIPA-ACL语言的其它代理相互作用和协作。决策模块根据外部环境状况、代理商自身的内部状态(存储在内部状态模块)和其他的要求,通过知识模块,确定当前的操作和通信内容。操作模块由决策模块通过的操作命令来采取适当的行动。

图2 多Agent系统的协作框架

3 多Agent系统的案例图

当包装代理收到任务请求时,它会从资源代理获取必要的信息和知识(例如,以前的设计案例),然后,计算参数值,并嵌入到底层软件系统的操作命令中,结果将通过用户代理返回到用户。由于代理之间相互谈判和协作,用户请求程序自动进行处理。这意味着重复、常规但耗时的工程任务处理,可以代替设计人员自动完成,其主要任务是输入参数,并作出重要的设计决策。

图3 多Agent系统用户请求处理案例图

图3表示多Agent系统用户请求处理的案例图。在初始化时,每个代理都要说明自己的Facilitor代理信息,并获得本体库中本体管理代理的本体论模型。它要求每个 ACL消息必须包含代理中所使用的本体,它可以帮助其它代理商以未知信息的形式映射到它熟悉的形式,以了解信息的正确含义。典型的情况如下:

(1) 用户向系统输入一个任务请求,以及它在使用 CUI的用户代理中所使用的本体。

(2) 用户代理把任务请求翻译成 ACL信息条款(含本体信息),并处理任务代理请求。

(3) 任务代理把任务请求分解成一组有序的子请求,并根据实现子请求(3.1)的代理名称查询 Facilitor代理。然后Facilitor代理检查注册在包装代理初始化基础上的会议要求,并分别把正确的结果返回到通过子请求的任务代理(3.2)。

(4) 包装代理可以从为完成子代理而提供信息和知识的Facilitor代理处获取相关的资源代理,并以ACL信息格式向它传送查询。

(5) 资源代理由SQL查询或其它不同类型的查询构造基于 ACL消息内容的广义知识库,查找与所需的信息和知识有关的资源。获取查找结果后,返回到包装代理。

(6) 包装代理构成获取的信息和知识,计算参数值,并通过一个API(应用程序接口)(6.1)调用底层软件,获取应用程序指定的数据,并把结果封装成内部格式,传递到用户代理。

(7) 用户代理转换成与包装代理结果适合在一起的结果,将结果转换为用户可以理解的信息,向用户提交结果以供检查。

4 基于本体的广义知识库的通信基础

传统的制造业发展过程太多的依靠设计师的经验,结果导致知识的低效率利用、重新利用、共享和继承。随着制造业的发展越来越多的在异构、协作的环境下的进行,系统中的代理必须通过各个应用领域来交流信息和知识。语义上的冲突是不可避免的,对于不同的概念,不同的术语表述相同或不同的观点。我们提出了广义的信息知识库,各种与工程设计相关的信息资源和知识资源,由本体库整合为一体,不仅有利于在一个共同的句法中进行数据交换,而且有利于在一个共享语义中进行数据交换(图4)。

代理之间通过ACL信息中所包含的本体模型来交换信息和知识。该ACL只为编码信息提供语法,而不指定编码在邮件内容中指定条款的语义信息。本体论提供了共同的词汇或词汇表,以及术语间的知识,可以使代理分享共同商定的关系。图4显示了制造业领域的Agent2可以把设计领域的Agent1发送的信息通过不同的本体转换为它熟悉的格式,使代理获得真正的、有意义的信息交换内容,以避免谈判过程中的语义冲突。

图4 基于本体的广义知识库的通信

5 结论

制造业的协同发展已经成为重要的商业战略。在本文中提出了一种自主开发的协同制造开发平台的体系架构,其中的多Agent代理处理程序与基于本体的任务相互作用,并提供了代理之间的通信,使参与者通过代理共享分布式异构数据信息。

[1]隐性知识的显性化和组织方法[J].科技情报开发与经济.2006.

[2]基于本体和多代理的考试系统模型研究[J].河北工业科技.2010.

[3]王春枝,彭敏,魏斐蜚.基于多 agent的远程协同教育平台研究[J].通讯学报.2007.

[4]基于本体和多代理的知识检索模型研究[J],计算机工程与设计.2009.

猜你喜欢
知识库本体代理
眼睛是“本体”
基于TRIZ与知识库的创新模型构建及在注塑机设计中的应用
代理圣诞老人
代理手金宝 生意特别好
基于本体的机械产品工艺知识表示
高速公路信息系统维护知识库的建立和应用
基于Drupal发布学者知识库关联数据的研究
胜似妈妈的代理家长
专题
Care about the virtue moral education