基于多智能体的可重构智能管理信息系统平台*
2012-12-25张荣生方建斌林祖伟
张荣生,方建斌,林祖伟
(1.安徽国防科技职业学院 管理工程系,安徽 六安237011;2.杭州优时软件有限公司,浙江 杭州 310007;3.宁波市鄞州区统计局,浙江 宁波 315199)
基于多智能体的可重构智能管理信息系统平台*
张荣生1,方建斌2,林祖伟3
(1.安徽国防科技职业学院 管理工程系,安徽 六安237011;2.杭州优时软件有限公司,浙江 杭州 310007;3.宁波市鄞州区统计局,浙江 宁波 315199)
提出了一种基于多智能体(MAS,Multi-agent system)管理信息系统层次的结构,定义了面向智能管理系统的10类智能体(Agent),给出了各Agent间的协作关系与实现方式,构建了一个可重构的智能管理系统软件平台,最后结合实际工程项目给出了上述可重构平台实现的一个应用信息系统实例.
管理信息系统;层次结构;智能体;可重构平台
传统的企业管理信息系统的设计过程中,由于企业业务流程频繁变动,软件开发周期往往很长,也给系统软件的设计和维护带来了很大的困难.本文结合MAS思想和面向对象编程技术构建一种可重构的智能管理系统平台[1,2],使管理信息系统的实现更加方便,并且提高了系统的可重构性,在此平台基础上实现了分销管理应用系统,同时在某大型服饰企业进行了实际的应用.
1 基于MAS的管理信息系统层次结构
基于MAS的服饰企业分销管理系统层次结构包括数据存储模型层、定义执行层和表现层[3,4],如图1所示.
1.1 数据存储与模型层
在模型层中主要包括数据模型层和智能体模型层,其中数据模型层主要提供企业管理信息系统的各类数据,这些数据包括如下几方面:
基本信息:企业管理和业务操作的基本信息.客户数据:客户的基本资料信息.
进销存信息:企业的采购、库存、销售等信息.生产信息:生产过程管理信息.
互联网上信息:提供竞争对手的相关等信息.
数据仓库:以上面这些数据为基础,建立管理信息数据仓库,它是建立企业管理信息系统的基础.
1.2 定义执行层
定义执行层主要由本文定义的10类Agent组成:单据Agent、查询Agent、统计Agent、功能Agent、打印Agent、菜单Agent、消息Agent、权限Agent、插件Agent以及工作流Agent.从这些Agent的命名可以看出,它们的分类和定义不是按照要完成的业务功能来定义的,而是按照各自完成的软件任务来定义的,这样通过综合应用Agent的自治性、交互性、适应性、学习性、移动性和协作性,就能够构建一个可重构的软件平台.
每一个应用系统都是由许多业务流程组成的,只要将一个具体的业务流程分解成一系列子流程,子流程分解成一系列能够用上述10类Agent定义和执行的软件功能,进而实现在可重构软件平台上的应用分系统实现.一些不能直接定义和执行的软件任务,如高级算法、外部接口等,通过增加插件的方式由插件Agent完成.
1.3 表现层
表现层主要由在可重构软件平台上实现的应用分系统组成,包括与财务、供应链、CAD等各种专用软件的集成接口.
2 Agent类别与功能
在建立基于MAS的管理信息系统层次结构的基础上,充分运用多智能体系统的特性,设计开发一个可重构的软件平台,然后在该软件平台上通过各类Agent的协作,实现面向各种不同应用目标的企业管理信息系统.
本文设计了10类完成特定软件功能的Agent,用于实现可重构软件平台,这些软件功能Agent的具体分类如下:
2.1 单据类Agent
单据类Agent(Bill Agent,BA)处理管理信息系统的数据录入业务.主要属性及功能如下:
处理数据:处理单据数据的增加、删除、修改等操作.
处理界面:定义并解析单据的操作界面.
辅助录入:定义并处理单据数据的各种辅助录入.
数据校验:定义并处理单据在不同操作时点的数据校验与修正.
单据记帐:定义并处理单据在不同操作时点对其它单据的数据记帐.
对象关联:定义并实现单据与其它对象之间的关联操作,主要是界面的关联.
2.2 查询类Agent
查询类Agent(Inquire Agent,IQA)处理管理信息系统的数据查询业务.主要属性及功能如下:
查询条件:定义并处理查询的输入条件.
查询内容:定义并处理查询的数据来源及具体内容.
查询界面:定义并解析查询的操作界面.
图形显示:定义并解析查询对应的图形显示界面.
对象关联:定义并实现查询与其它对象之间的关联操作,内容同单据关联.
2.3 统计类Agent
统计类Agent(Statistics Agent,STA)处理管理信息系统的数据查询、统计业务.主要属性及功能如下:
统计条件:定义并处理统计的输入条件.
统计内容:定义并处理统计的数据来源及具体内容.
统计界面:定义并解析统计的操作界面.
图形显示:定义并解析统计对应的图形显示界面.
对象关联:定义并实现统计与其它对象之间的关联操作,内容同单据关联.
2.4 功能类Agent
功能类Agent(Function Agent,FA)处理管理信息系统的批量数据运算业务.主要属性及功能如下:
启动条件:定义并处理功能的启动条件及相关参数.
来源数据:定义并处理批量运算的来源数据,通常是一个查询.
目标单据:定义并处理批量运算的目标,通常是一个单据.
记帐动作:定义并实现增加、删除、修改的动作以及具体的记帐内容.
2.5 打印Agent
打印Agent(Print Agent,PA)处理管理信息系统的数据打印业务.主要属性及功能如下:
数据来源:定义并得到打印的数据来源,有单据、查询、统计.
打印元素:定义并解析打印的具体元素,有表格、项目、标签、图像、图形、条码等.
打印样式:定义并解析每个打印元素的样式,如位置、大小、颜色、字体等.
打印设备:定义并自适应各种打印设备.
文件输出:定义并实现打印内容以各种文件方式输出和保存.
2.6 菜单Agent
菜单Agent(Menu Agent,Men A)处理管理信息系统的主菜单业务.主要属性及功能有:
菜单树:定义并生成主菜单树.
流程图:定义并生成非叶子节点菜单对应的流程图.
执行内容:定义并执行每个菜单对应的系统功能,如单据录入、数据查询、数据统计、报表打印、执行功能、特殊函数、外部插件等.
2.7 消息类Agent
消息类Agent(Message Agent,MesA)处理管理信息系统的各种消息业务.主要属性及功能如下:
消息来源:定义并处理消息的多种来源,有独立消息、单据消息、查询消息、预警消息、工作流消息等.
消息形式:定义并处理多种形式的消息,有即时消息、电子邮件、手机短信.
用户管理:定义并管理消息的用户.
对象关联:根据消息的来源直接关联打开来源对象.
2.8 权限Agent
权限Agent(Limits of Authority Agent,LAA)处理管理信息系统的权限业务.主要属性及功能如下:
角色及用户管理:定义并处理系统的角色和用户.
功能级权限:定义并解析功能级的权限分配,权限可分配到每个对象的每个方法.
行级权限:定义并解析数据行级权限.
2.9 插件类Agent
插件类Agent(Plug-In Agent,PIA)处理管理信息系统的外部插件业务.主要属性及功能如下:
接口管理:解析平台插件的接口协议,并实现相互通信.
自动搜索:自动搜索符合接口协议的插件,并自动装载.
高级算法:优化求解、计划生成等.
插件方式:插件方式支持菜单插入、关联插入、系统函数插入等多种方式.
2.10 工作流Agent
工作流Agent(Workflow Agent,WFA)处理管理信息系统的工作流业务.主要属性及功能如下:
启动条件:定义并实现工作流任务启动的时点和条件.
流程管理:定义并解析任务的工作流程,支持自动、交互活动类型,支持多种分支和汇聚流转.
任务指派:定义并解析流程中各个活动的任务指派.支持角色和用户指派,也支持临时授权指派.
方法调用:定义并执行活动对应的关联对象的方法,实现工作流与其它Agent的协同.
3 Agent的实现方法
每个Agent都是一个独立的程序包,以web services的方式被部署在web服务器上.客户端与服务器端(Agent)之间通过http协议建立连接,数据以XML的形式转递.利用ADO.NET技术实现Agent的数据持久层与数据库服务器的连接.Agent之间通过windows消息机制通信.首先在平台定义层定义应用时,平台客户端将定义信息打包成XML传递给相关Agent,相关Agent解析XML,并检测定义信息的规范性.检测通过的定义信息由持久层提交数据库存储.客户应用时,应用系统客户端发出应用请求,相关Agent接收到请求,根据请求指令,从数据库装载相关定义信息,并创建数据、行为等对象实体,根据需要,执行相关动作或返回XML数据.
对客户端简单的请求,单个Agent即可完成任务,而一些复杂的请求,必须通过Agent之间的协同来实现.客户端一般只需向主Agent发出请求,主Agent根据需求,向协作Agent发出内部协作请求指令.协作Agent随即被启动,根据请求,装载定义信息,执行动作或返回数据.与响应客户端请求所不同的是,Agent之间响应请求后返回的内部数据是以高效的二进制格式而非XML格式传输,速度非常快.
4 可重构管理信息系统软件平台的框架
基于上述10类软件功能Agent设计开发的可重构软件平台如图2所示.
可重构软件平台包括定义层和执行层,由这10类软件功能Agent组成的多智能体系统构成,通过多智能体之间的协作和并行工作实现软件平台的各种任务,如图3所示.
图3中存储层包括数据库和数据仓库及其存取控制系统.外挂插件是相对代理的软件功能模块,通过插件Agent在应用分系统中完成特定的任务,如一些优化算法、集成接口等.表现层则是具体的应用系统,包括库存管理、生产管理、客户管理等功能模块,如图4所示.
5 系统平台的应用
基于上述可重构软件平台,开发了一个服饰产品分销、物流配送与市场资源管理系统,如图5所示,包括服饰产品分销与物流配送管理系统、总经销(分公司、专卖店)管理系统、多级库存管理系统、销售信息采集与智能辅助决策系统、贵宾客户管理系统五个应用分系统[5],构建了一个应用系统实例,包括市场资源管理、预测决策支持、计划配送管理、定价政策管理、促销方案管理、销售订单管理、库存管理、零售管理、售后服务管理、销售分析、销售业绩评价、采购管理、应收管理、应付管理、客户关系管理等功能模块.该系统于2008年在浙江步森集团及其下属的15家分公司(专卖店)实际应用,实现了服饰产品有效配送,客户可以根据库存实际情况进行合理配货,极大提高了库存周转率,集团总部的库存资金由原来的8000多万元减少到5000多万元,各分公司(专卖店)的库存资金由原来的平均600多万元减少到300多万元,优化了库存结构.同时也使整个售后流程时间减短50%以上,使零售客户投诉率降低90%以上,零售客户不满率降低80%左右.该系统的成功实施产生了极大的经济效益和社会效益.
6 结束语
多智能体系统是一种分布式人工智能系统,已经成功应用于企业管理信息系统的设计和实现.本文从软件功能实现和软件结构可重构的角度,定义了10类新型的软件功能Agent,阐述了各类Agent的属性、功能、以及相互之间的协作关系,构建了一种可重构的智能管理信息系统软件平台,通过一个实际应用案例表明了该软件平台具有应用简单、重构便捷和效果显著的优点,有良好的推广应用前景.
[1]PARK S,SUGUMARAN V.Designing multi-agent systems:a framework and application[J].Expert Systems with Applications,2005,28(2):259~271.
[2]龚勇,姚莉,张维明,等.一种基于多智能体的企业供应链系统开发平台研究[J].计算机应用,2003,23(6):20~22.
[3]龚报钧,王树青.基于Agent技术的企业资源计划系统研究[J].系统工程理论与实践,2001,21(1):1~7.
[4]龚报钧,王树青.支持动态企业模型的 MAS模型及其获取方法[J].系统工程理论与实践,2001,21(5):44~49.
[5]林祖伟,方建斌,宋执环.基于 Multi-Agent的服饰企业分销与物流配送管理系统[J].纺织学报,2007,28(4):121~124.
Restructurable Intelligent Management Information Systems Based on Multi-agent
ZHANG Rong-sheng1,FANG Jian-bin2,LIN Zu-wei3
(1.Department of Management Engineering,Anhui Vocational College of Defense Technology,Liuan 237011,China;2.Hangzhou EOS Software Inc.,Hangzhou 310007,China;3.Yinzhou Bureau of Statistics,Ningbo 315199,China)
The paper proposes a new hierarchical structure of management information systems(MIS)based on multi-agent,defines the function and property of intelligent MIS-oriented agents,describes the cooperative relationship and implementation of these agents and develops the restructurable software platform of intelligent MIS.Finally,the paper presents a real application of the restructurable software platform for distributed sales of the large scale wear manufacture enterprise.
management information systems;hierarchical structure;agent;restructurable software platform
C931.6
A
1009-1734(2012)01-0057-06
2012-01-20
张荣生,讲师,从事区域经济学、企业管理信息系统研究.