多Agent系统体系结构及建模方法研究
【摘要】:随着技术的发展以及实际应用的深入,Agent远远超出了人工智能研究的范畴,多Agent系统(MAS)正成为一种全新的软件开发的模式,越来越受到人们的广泛重视。作为一种新的软件开发模式,不仅要研究Agent或多Agent的内部结构与实现框架,还要研究系统的整体体系结构以及建模方法,以便为有关人员提供系统多侧面视图,从而提高系统开发效率,保证系统质量。
目前,多Agent系统研究者将大部分精力和热情投入到多Agent系统的基础架构研究中,而对基于多Agent系统基础架构的应用系统开发问题——需求获取、需求分析、系统设计、系统实现、系统测试、交付使用等涉及到整个软件生命周期的所有问题缺乏足够的关注,可以说基于多Agent系统的应用系统需求获取与体系结构分析是目前多Agent系统研究中最为薄弱的环节。
本文所进行的工作是在研究多Agent系统基础架构的基础上研究基于多Agent系统基础架构的应用系统需求与体系结构建模方法,通过实例研究来验证所提出的建模方法的可行性和有效性。关于多Agent系统体系结构的研究,本文分析了几种典型的多Agent系统基础架构,重点研究了FIPA多Agent系统平台,提出了一个改进的FIPA多Agent系统体系结构——代议制多Agent系统体系结构。在分析现有多Agent系统建模方法的基础上,本文提出了扩展UML进行多Agent系统建模的方法。以代议制多Agent系统为样本,详细阐述了所提出的多Agent系统建模方法所采用的视图以及建模步骤。最后,通过一个全国性大型企业集团供应链管理系统,验证了这种建模方法的有效性。
本文结合社会学、组织行为学理论,提出了代议制多Agent系统体系结构。代议制多Agent系统体系结构的基本思想是,将多Agent系统看作一个社会,在这个社会的组织结构中存在众多的社区,这些社区由具有相同利益的个体所构成。在整个社会中,需要有管理者、公共资源;同样,在每个社区内也有管理者和这个社区所拥有的资源。本文将这些管理者或为公众提供服务的实体叫做公仆。与人类社会相同,公仆只是一个社会角色,在某个社区里的每一个具有担当公仆能力的个体都可以通过某种合法的方式取得担当这个角色的资格,同时,他也获得了这个社区所拥有的资源的支配权。
本文所提出的代议制多Agent系统体系结构是建立在FIPA体系结构之上的,它解决了FIPA体系结构结构中存在的几个明显问题:1)单一关键点问题。在FIPA体系结构中,单一关键点成为系统运行的主要问题。在FIPA构架中,完成管理任务的管理Agent、提供目录服务的DF等都是唯一的。一旦这些Agent实体在运行中出现问题,系统就无法恢复,直至整个系统垮台。2)系统自组织问题。FIPA体系结构,基本上沿袭了OO思想。每个计算实体(Agent)所担当的任务是由系统设计者指定的,Agent在系统中所扮演的角色也是一成不变的。如果系统中某些实体出现故障时如何使系统重组,FIPA体系结构没有任何解决的办法。3)遗留系统的利用问题。随着多Agent系统逐渐成为一种主流软件模式,新老系统的整合是一个非常重要的问题。作为一种系统架构,必须考虑是否能够容纳异构的系统。如果不能,很显然那是一个有缺陷的架构。如果能,将遗留系统纳入到新系统中的代价又是多少?FIPA对此并没有考虑。
本文将多Ageni系统的基础架构研究与基于多Agent基础架构的应用系统研
究区别开来,明确提出加强多Ageni应用系统的开发方法研究,并提出了多Agent
应用系统的基于社会角色及其社会关系的需求获取方法、基于Agent及其交互关
系的系统体系结构建模方法。
多Agent系统基础架构(hifrastructure)是指为多Agent系统搭建的一个运
行平台,它为驻留在其上的Ageni提供了通信、生命周期管理、目录服务、通信
语言与通信机制、全局Ontology等基础设施。由于驻留在其上的Agent存在异
构可能性,因此,我们不将Ageni本身作为基础架构的一部分。理想情况下,
系统的基础架构为驻留在上面的所有Agent,无论其内部构造如何,都提供相同
的服务。
相对于多Ageni系统的基础架构,就是多Ageni应用系统(ApPlication System
Based on Multi一ageni system)。多Ageni应用系统可以看作是各种内部结构不尽
相同的Agent,为了自己或公众的利益,驻留在多Agent系统基础架构上,相互
协作或竞争,共同构成一个实际问题的解。
本文认为,目前学界并没有清晰地将基础架构和多Agent应用分别开来,研
究的重点在多Agent系统的基础架构研究之上,基于基础架构应用系统的开发所
给予的关注很少。但随着FI队这样的多Agent系统标准渐渐成熟,基于多Agent
系统的开发逐渐成为软件开发的主流模式,多Agent系统应用问题,包括基于多
Agent系统的应用系统的需求获取、系统分析、系统建模等方法学的研究将成为
多Agent系统研究者的重要课题。
本文对基于多Ageni系统的应用系统开发过程的需求获取与体系结构建模方
法做了深入研究,提出了基于多Agent基础架构的应用系统的建模方法,扩展
uML,系统地定义了两种UML图,即描述多Ageni应用系统需求的社会结构关
系图(social RelatinnshiP Diagram)及其建模元素、描述多Ageni应用系统的Agent
系统结构图(