论文部分内容阅读
基于Agent的计算作为一种新的软件工程的范式,在构造复杂的、面向开放网络的、分布式系统中逐渐受到重视。但是现有方法不易掌握,影响了多Agent系统(Multi-Agent System)在实际软件开发中的普及应用。本文基于JADE平台,以黑板Agent和白板Agent以及相应的动作组件库为基础,提供了一个MAS企业信息系统底层结构快速开发框架。首先,在Java Agent DEvelopment framework(JADE)平台上实现了黑板Agent和白板Agent两种Agent结构。黑板Agent模拟企业底层的调度部门,记录和维护企业信息系统底层部分模块运行时所涉及的全局信息,包括白板Agent执行状况和各个白板Agent感兴趣的公共资源标志,并负责全局调度;白板Agent模拟企业最底层的职能部门,加载动作组件实例进行单步执行,完成职能部门内部的工作流程。各个Agent运行同时利用JADE平台对于Agent交互的支持,实现黑板Agent的消息处理部件,使得黑板Agent能够与其他Agent进行通信,同时利用Agent之间的往来消息更新黑板上的内容,使黑板Agent上记录的全局信息能够及时反映出信息系统底层模块运行状况。其次,改进了目标结构的执行方式,将原有的黑板Agent单步轮转执行目标结构的模式改为各个白板Agent同时并行执行各自的目标结构,使得企业信息系统执行效率得到提升。各个白板Agent执行的目标结构信息以流程图的方式进行描述,记录在白板Agent所加载的配置文件中,由解析部件对配置文件进行解析,将配置文件中的流程内容映射为动作实例和执行规则集合,在白板Agent内部完成动作实例单步执行过程。最后,本文通过一个制造业企业场景实例说明了利用黑板Agent和白板Agent以及相应的动作组件库进行信息系统底层模块开发过程:系统设计人员对企业进行部门模块划分,在配置文件中以动作实例和执行规则的形式对各个模块工作流程进行描述,之后由白板Agent加载配置文件并解析其内容得到JADE平台上可执行的代码,模拟执行企业信息系统实际流程,在流程执行过程中,白板Agent不断与负责调度的黑板Agent进行通信,完成检查流程单步执行的前提条件和更新全局信息等工作。