基于Agent昀集成体系结构的研究与设计
 

2009-12-14 作者:王建飞 王丽芳 蒋泽军 来源:网络

 

摘要:提出基于Agent的集成体系结构AIA(Architecture of Agent-based Integration)实现中小型企业级应用集成,解决目前集成系统出现的被动、静态和无序状态。

关键词:Agent AIA企业级应用集成

随着分布式工智能(DAI)研究的深入,Agent以及MAS(Muhi Agent system)已经成为研究人员关注的热点。由于Agent具有自主能力、社交能力、反应能力和行为理性等特点.利用它能为建立企业应用集成平台提供一条崭新的途径。本文提出基于Agent的集成体系结构AIA,采用分层的思想,对企业级应用集成平台进行分层,每层均由Agent组成。由于该体系结构清晰的层次性以及Agent所具有的特点,不仅使该平台具有清晰的结构CONTROL ENGINEERING China版权所有,而且具有良好的开放性、集成性和灵活性,有利于解决目前集成系统出现的被动、静态和无序状态,实现中小型企业级应用集成。

1 基于Agont的集成体系结构AIA

充分利用Agent的特性和面向对象技术,提出了基于Agent的集成体系结构AIA,在AIA中,Agent与Ob-ject相比,它一种粗粒度
的、可重用的、可能包含心智状态(BDI),并能通过与外界通信进行感知或根据内部状态的变化独立地决定和控制自身行为的软硬件综合实体。企业级应用集成平台实际上是一个交互系统,因此能够抽象为三层:界面层、协调层和模型层。

(1)界面层:界面层由一组个人助理Agent(AssAgent)组成,用户AssAgent与系统中其他Agent进行通信和协同工作。AssAgent的外在表现形式和功能主要由用户的业务特征和工作习惯决定。本层的设计重点在于:用户业务特征和工作习惯的研究、AssAgent学习和训练方法以及知识来源的确定、人机相互激励环境的建立等。由于界面层的相对独立性,已抽象和定义好的界面框架和A8sAgent可以方便地运用于其他问题领域。

(2)协调层:协调层中每一个业务处理Agent-BuA对应于企业中的粗粒度的、具有稳定性和原子性的业务处理过程或企业组织结构中的一个部门。协调层是企业经营活动的反映,它位于模型层和界面层之间,用于连接界面层和模型层,负责解释执行界面层传来的消息www.cechina.cn,使模型层的Agent协调运作,完成用户所要求的动作。本层的设计重点在于:企业经营活动的模型化、BuA之间的层次结构厦协调关系、BuA连接的拓扑结构对企业组织结构的自适应调整算法等。其目标在于不仅满足企业现有业务流程,更适应企业流程再造的需要。

(3)模型层:模型层是企业固有数据模型的反映。模型层的建立是从用户需求分析人手,将显示问题空间映射到计算机空间。模型层包括如图1所示的两类Agent:DA、SA和LR的结合体。DA是新构筑的数据模型Agent,来实现企业级应用集成。LR是"遗产"信息资源,SA为语义描述Agent,SA是集成异质信息资源的重要桥梁。本层的设计重点在于:分析并获取问题域模型、SA的设计和抽象、如何将对象模型转换为Agent模型。其中,OpA为个人助理Agent,BuA为业务处理Agent,DA为数据模型Agent,SA为语义描述Agent,LR为遗产资源。

总之,采用上述的三层结构,不仅能够有效解决企业级应用集成平台的开放性问题,而且能够为支持企业进行业务流程再造提供一条新途径,提高了平台的灵活性。界面层是人与系统的结合点;协调层是企业业务的反映,业务流程处理的柔性、技术与组织的融合是本层的核心;模型层是企业级应用集成的基础,各种异质信息赞源在此层进行融合。

2 AlA中各层Agent的设计

2.1 AIA中Agent的一般定义

里首先给出在本系统中Agent的一般定义:

Agent=<Agent类型控制工程网版权所有,自身模型,社会模型>

Agent类型∈{界面Agent,协调Agent,过程管理Agent,模型Agent}

自身模型=<业务数据,专业能力,专业行为>

业务数据∈{数据l,数据2…}

专业能力∈{专业能力1,专业能力2…}

专业能力=<能力类型,表现形式www.cechina.cn,相关数据>//其表现形式常常是某种专业行为;

专业行为=<行为类型,行为目标,发生条件www.cechina.cn,反应>

行为目标∈{目标l,目标2…}

社会模型=<社会知识,社会能力,社会行为>

社会知识∈{社会知识l,社会知识2…}

社会能力∈{社会能力l,社会能力2…}

社会能力=<能力类型,表现形式www.cechina.cn,相关数据>//其表现形式常常是某种社会行为;

社会行为=<行为类型,发生条件,反应>

社会行为类型∈{接受、拒绝、协作、谈判、请求}

2.2 界面层Agent结构设计

界面层Agent作为用户与系统的中介,也是实现人机高度融合的关键。界面层Agent主要负责和用户交互www.cechina.cn,记录交互过程并写入用户模型,同时将交互信息传递给协调层Agent。它的主要组成部分包括:学习方式、用户操作模型、熟人模型,其结构如图2所示。

2.3 协调层Agent结构设计

业务bent群是由协调Agent和多个业务处理Agent组成的一个微社会系统。每个业务Agent具有独立解决问题所需要的业务数据,负责具体的业务,如增删改业务数据,进行问题解决,根据用户的要求提供相应功能,为用户提出建议或帮助用户完成部分工作,如图3所示。

当遇到超出其本身能力范围的问题时,通过协调Agent,由其他业务Agent完成任务。首先,根据协调Agent传来的指令信息www.cechina.cn,一个Agent试图解决一个问题.当它能够独立解决时(符合其能力范围和业务数据范围条件),它则独立解决,否则它向协调Agent发出求助信息,协调Agent
的数据库中存有关于每个Agent能力和数据的数据,通过推理它会选择一个或多个能够解决任务的Agent。在业务的过程中CONTROL ENGINEERING China版权所有,协调Agent还能根据业务过程管理Agent发送的对业务过程的监视数据以及业务策略数据,调整业务过程中的微策略,例如:调整业务信息顺序、改变数据呈现方式等。

协调层中Agent网络的拓扑结构、关联关系构成企业业务处理模型如图4所示。

本文设计时受到人类分工合作的启发,业务Agent群众的协调Agent就相当于项目经理,业务Agent相当于每一个成员。由协调Agent负责调度和协调工作。业务A-gent属于混合Agent的结构形式,它支持两类反应:一是不需推理的立即反应,当业务Agent检测到环境负荷某种行为条件时控制工程网版权所有,行为就被激活。二是需要规划、预测、分析能力的控制反应,这由协调Agent和业务Agent合作完成,协调Agent会对各种信息进行分析、判断和推理。

2.4 模型层Agent结构设计

模型层包括两类Agent:DA、SA和LR的结合体。

模型层中的DA可抽象为两层,上层为变换器www.cechina.cn,它由统一格式的本地数据描述、方法、知识组成;下层是传统意义上的数据库系统中的表(Table)。若干表构成数据库(DB),直观而言,它是数据库系统的一种扩展,如图5所示。

2.5 AIA系统的定义

根据以上的分析,本文最后给出AIA系统的简略定义:

3 AlA体系结构的应用

本文将以某个企业的销售审批流程来说明AIA企业集成结构如何实现动态作业流程。如图6所示传统的销售发货流程存在部分不增值活动。

在图6中,为了保证往来单据的正确性,销售部门和会计部门需要花大量的人力核对许多冗余单据的往来,因此导致对客户响应速度迟缓。假如企业一方面需要保证来往单据的正确性(保留原流程),另一方面对于信用度好的客户、重要客户、紧急合同等情况需要提高交货速度。从而将财务部门的审核置于发货之后。这样,企业销售发货流程就需要动态地改变。设图6中每一个业务处理点对应协调层中的一个BuA。为了支持业务动态调整,每个BuA的知识库和事务处理描述器中应加入相关的动态业务处理知识和业务描述。如在发货Agent知识库和事务处理流程中分别对动态业务处理知识以及快捷、普通发货流程进行描述,便能实现对销售发货业务的动态支持。以下为发货Agent的知识库中发货流程选择规则,发货流程选择:

if合同数据Agent优先级(合同ID)>xx then按快捷流程发货;

if合同数据Agent优先级(合同ID)<=xx then按普通流程发货;

由于每个Agent既有关于它自身信息的统一描述,又有相关联Agent的接口信息,所以能非常自然、方便地实现Agent之间的方法动态调用。因此能够较好地支持企业动态业务。

企业级应用集成实际上是一个交互系统,将Agent技术与成熟的对象技术相结合,提出了一个企业应用集成体系结构AIA。不仅具备良好的协调能力,而且具备良好的集成扩展能力。合理的分层设计和清晰的三层结构使得各层的功能和分工非常明确,易于设计实现,提高了平台的重用性。


火龙果软件/UML软件工程组织致力于提高您的软件工程实践能力,我们不断地吸取业界的宝贵经验,向您提供经过数百家企业验证的有效的工程技术实践经验,同时关注最新的理论进展,帮助您“领跑您所在行业的软件世界”。
资源网站: UML软件工程组织