应用Agent结构的企业工艺流程管理系统

2015-02-27 07:49
宿州学院学报 2015年6期
关键词:工艺流程工序机器

程 玉

安徽水利水电职业技术学院机械工程系,安徽合肥,231603



应用Agent结构的企业工艺流程管理系统

程 玉

安徽水利水电职业技术学院机械工程系,安徽合肥,231603

在分析传统管理系统不足的基础上,提出多Agent的工艺流程管理系统。该系统由不同的结构功能单一的Agent组成。针对该系统结构,分析了多Agent的通信和交互模式,凸显了Agent的优越性。通过实例分析,阐述了多Agent结构在工艺流程中的可行性,为企业的生产管理提出了一条有效的途径。

多Agent系统;工艺流程管理;多Agent通信;交互协议

当前,很多企业仍然采用比较传统的信息化管理方式,管理效率较低,企业的不同管理平台和信息系统之间缺乏有效沟通,形成信息孤岛,企业高层很难直接获得一线的数据和信息,严重影响制度的执行效率和管理层的决策。

随着经济全球化的快速发展,市场竞争越来越激烈,人工成本也越来越高,受此影响,现代企业如何提高市场竞争能力,已成为必须面对的重要课题。其中不断创新和改进管理工艺流程,是一个非常重要的手段。通过现代化的管理工艺流程,不仅可以提高企业效率,降低企业运行成本,还能更好地为决策层提供决策数据和依据,使之能作出更好的商业决策。随着计算机网络、通信、互联网等技术的快速发展,人工智能的应用也越来越受到人们重视。由于Agent具有自主性、社会性、反应性和能动性等特点,因此,能有效地解决了传统工艺流程管理过程僵化的问题,在新型的管理系统中扮演着越来越重要的角色。

1 多Agent结构及其通信模型

20世纪80年代以来,Agent已广泛应用于人工智能领域。它代表了一种新的方式和途径,大到一个完整的操作系统,小到一个工艺流程,都有Agent的运用[1-2]。

1.1 多Agent系统结构

多Agent系统由不同的结构功能单一的Agent组成。这些Agent通过相互通信、合作、协调、调度与控制,共同完成某些特定的复杂的任务,从而表达系统的结构和功能。多Agent弥补了单一Agent信息不全、描述简单、分析片面、数据分散化等缺点,对于复杂系统有无可比拟的优势,为企业生产中的各种管理系统提供了一个通用的模型框架,这种由多个Agent组成的多Agent系统被称为MAS(Multi-agent System)[3-4]。

多Agent的体系结构按照内容划分可分为[5]:(1)慎思型体系结构,这种结构维持着Agent环境的显示表示和符号模型,使用一定形式的逻辑或伪逻辑推理修正Agent的精神状态。(2)反应型体系结构,这种结构的主要特点是不包括任何符号表示,不使用复杂的逻辑推理,各Agent只是动态的对外部的刺激进行反映。(3)混合型体系结构,它是将以上两种体系结构进行有机结合的结构。各Agent不仅包含用于规划和决策的符号模型,同时也可对紧急情况作出反应。混合型体系结构体现了Agent的长期性和实时性,是现今Agent研究中最为常见的模型。

1.2 多Agent通信

本质上说,Agent通信是一种分布式编码形式。它符合传统的分布式计算模型概念,由Agent成员和连接器构成。Agent成员包括发起者和参与者,他们通过连接器进行信息的交流和传递。如图1所示,Agent通信模型中一个Agent作为发起者,对其他Agent发出请求,参与者Agent对该请求进行反应,并决定拒绝或者接受。

当参与Agent同意发起Agent提出的请求时,可通过以下三种方式进行回复。

(1)失败:处理请求任务失败;

(2)成功(不含结果):处理完毕后只将成功信息反馈给发起Agent;

(3)成功(含结果):处理完毕后将成功信息和处理结果同时反馈给发起Agent。

图1 Agent通信模型

2 多Agent的企业工艺流程管理系统

本文采用多Agent结构设计企业的工艺流程管理系统。在该系统中,各个Agent履行不同的职责,不同的Agent之间相互协作,共同实现整个系统的正常运作。

2.1 多Agent工艺流程管理系统结构

工艺流程管理系统是企业生产中上层三维工艺模型系统和下层加工生产系统的中间层[6-7]。为了保证系统能够准确地读取模型信息并进行适当的加工分配,工艺流程管理系统应具有如下功能:

(1)管理员能够从三维工艺模型库中读取生产信息,并将其分解为以工序为单位的生产任务。

(2)根据不同机器的加工信息,将工序任务分配给不同的机器,并对工序进行实时监控。

(3)可根据需要,对账号进行新建和删除等管理操作。

结合系统功能的需求和Agent结构的特点,本文设计出如图2所示的多Agent结构的工艺流程管理系统。该系统用来实现工艺流程的触发和相关工序的定义、建模和分配。

管理Agent是系统的核心,集Agent意向和Agent技能于一身,进行任务的规划和执行[8]。意向是管理Agent执行的目的,如新建工艺流程以及对现有工序进行修改和删除等操作;技能则表明管理Agent控制的功能单元,如账号管理、任务监控等。作为系统的管理者和工艺流程的初始者,管理Agent从三维工艺模型库中读取新的生产任务,将这些任务分解成不同的工序,并分配给不同的任务Agent。任务Agent与资源Agent之间通过预设的协议确定不同的任务分配关系,接着资源Agent将信息传递给机器端,并驱动执行Agent在相应的机器上进行任务的加工。加工过程中,执行Agent可通过流程Agent将信息反馈给管理Agent。

图2 多Agent结构的工艺流程管理系统

应用多Agent实现工艺流程的管理,使得系统具有以下特点[9]:

(1)缩小了控制的规模,将系统的流程控制用若干个Agent来实现,各Agent根据自己的能力解决局部问题,并相互协调共同实现全局要求,对系统进行适当的解耦;

(2)具有很强的适应性和容错性,保证生产在出现异常变化和机器发生故障时仍能及时地进行处理;

(3)任务执行的高效性,不同的Agent不停地扫描生产信息,并根据自身资源和能力约束动态,选择和放弃任务,提高了系统任务分配的效率。

2.2 系统中Agent间的通信

传统的管理系统对规模问题的控制不敏感,机器分离导致管理复杂,难以控制。而采用多Agent结构实现流程控制,将管理流程用若干Agent来实现,局部问题容易解决,各Agent能够通过与周围Agent的合作,共同进行任务的加工和控制。要实现多Agent间的协作和交流,Agent通信(ACL)在管理流程中正扮演着越来越重要的角色。

图3为该工艺流程管理系统中管理Agent和机器Agent间的通信,从图中可以看出,该通信过程是一个“U”型系统,管理Agent发出纵向请求指令,经由输入过滤器和输出过滤器到达信息源;而横向通信则通过目标节点的传递,实现信息源库与信息源之间的交流,处理后的信息再通过纵向通信到达机器Agent,管理任务的下达指令得以完成。

图3 系统中Agent通信模型

当服务器接收到管理Agent发出的纵向请求并向机器Agent发出实际操作请求时,会在传输过程中扩散指令,其他机器Agent在拦截到该指令后就终止当前任务请求,并继续寻找其他的任务。

多Agent系统中,管理Agent通过与机器Agent之间的通信,可以协商新的规则和分配方法,也可就加工状态和机器信息进行交流。通过Agent间的通信,多Agent系统不仅可以提高每个Agent的工作能力,而且降低了任务下达的容错率,进一步了解系统的全局状态,提高了工艺流程管理的效率。

2.3 Agent之间的交互协议

为了保证各Agent之间通信的连贯性和准确性,FIFA预定义了一种消息交换模式[10]。本文借用该模式提出如图4所示的交互协议,该协议中管理Agent向机器Agent提出任务要求并择优选择任务处理的方式。这种交互协议是合同网模式的延伸[10-11],但相比较而言,它更能体现Agent交互的及时性和分配的合理性。

多Agent之间的交互过程为:管理Agent发出m个任务分配请求,消息中包含需要完成的工序任务、工艺模型参数以及计划加工的时间等信息。所有等待加工的机器Agent都可接收到该消息并作出回应,若消息的回复时间超过了等待回应的时限,则被自动拒绝。假设该时限内管理Agent收到n个回应信息,其中i(显示i2n)个通信动作为“拒绝”,另外j(j=n-i)个通信动作为“接受”,通讯信息中给出了任务加工的具体条件。超过等待时限之后,管理Agent对这j个接受加工的机器Agent进行综合分析和评估,从中选出一个或多个机器Agent进行任务的分配。假设这j个机器Agent中有k(显示k2j)个收到“建议拒绝”的消息表示拒绝分配,而另外l(l=j-k)个,则表示任务分配成功。

图4 多Agent交互协议

接受到任务分配命令的机器Agent在完成加工任务之后,还需要将加工信息反馈给管理Agent并结束该任务过程。如果机器Agent由于机器故障、资源故障等原因加工失败后,也需要发出失败信息。

该交互模式的优点在于,整个工艺流程中有一个发起者管理Agent,管理Agent可通过对资源的消耗、时间的分配等信息综合评估进行任务分配,机器Agent也可根据自身机器的特点和运行状态选择加工与否。管理Agent和机器Agent的这种交互协作,使得任务分配更加合理和高效。

3 系统平台的实现

在上述研究的基础上,笔者用JADE平台作为开发工具,采用SSH框架和Oracle数据系统,开发了如图5所示的基于Agent的工艺流程管理系统。该系统主要有三方面的功能:任务分配、任务执行和任务监控。

随着企业生产的复杂化与精细化,任务管理已由传统的两端通信上升到三端通信,即管理Agent、机组Agent与机器Agent。为了满足现在工艺流程管理的基本要求,系统在开发过程中,将管理端、机组端与机器端进行了分离。管理Agent只需要将工序分配给具有相同加工功能的一组机器(称之为机组Agent),而无需具体到单个机器;此后机组则进一步对加工信息进行阅读和细化,从而分配给最合适的机器。这样,减少了每个Agent的工作压力,任务的分配也更加准确和有针对性。

图5 多Agent工艺流程管理实例

为了方便企业生产中工作人员、工作机器和工序流程的管理,该系统还提供了账号管理、登陆信息、工序信息监控、设备列表等辅助信息(图6)。不仅方便了使用人员的阅读,也增加了工艺流程管理的直观性和合理性。

图6 管理系统的部分页面

4 结束语

利用多Agent技术实现的工艺流程管理具有独立性、自主性、智能性的特点,可以使企业管理具有自主能动性,且能协同工作。集分布性和协调性于一体,比一般性分布式系统具有资源共享、可靠性高、灵活性强等特点,能够适应企业工作流程的快速重构,可以快速地对企业工作流程变化作出响应,为企业在激烈的市场竞争中赢得宝贵的时间。

本文在研究多Agent结构和Agent通信的基础上,建立了多Agent结构系统,并提出了多Agent在系统中的通信模式和交互协议。在此基础上构建了企业生产中基于多Agent的工艺流程管理系统,该系统有效地提高了组织人员的协作能力,大大提高了任务分配的效率,并减少了任务成本,能有效提高企业的生产管理水平。

[1]崔雪彬,陆云波.基于Agent消费者行为仿真计算模型构建[J].工业工程与管理,2011,12(6):84-88

[2]朱一凡,梅珊,郑涛,等.基于Agent建模的重大疾病传染仿真系统分析[J].系统仿真学报,2011,23(11):2505-2517

[3]Kadar B,Monnstori L,Szelke E.An object-oriented framework for developing distributed manufacturing architecture[J].Journal of Intelligent Manufacturing,1998,9(2):173-179

[4]高仲慧,林筑英,魏高起,等.基于多Agent自适应远程教学系统模型[J].贵州师范大学学报,2009(8):96-99

[5]Wooldridge M,Jennings N R.Agent theories, architectures,and languages:Asurvey in agents[R]//Lecture Notes in Artificial Intelligence.Amsterdam:SpringerVerlay,1994:1-32

[6]方剑.基于agent的工作流管理系统开发研究[D].武汉:武汉理工大学计算机科学与技术学院,2006:42-55

[7]王丽娜,肖明,赵晶.基于Agent的工作流管理系统研究[J].价值工程,2010(2):73-74

[8]程奕,王申康.多Agent系统模型的结构研究[J].浙江理工大学学报,2009,26(1):98-103

[9]韦文斌,杨建军,曾波,等.基于多代理的分布式车间控制系统的研究[J].机械设计与制造工程,2001,30(1):28-33

[10]张德同,周明全,耿国华,等.FIPA Agent通讯规范分析[J].计算机科学,2004,31(7):166-168

[11]高飞燕.基于扩展合同网的多Agent任务分配机制的研究[D].大连:大连海事大学计算机科学与技术学院,2009:25-38

(责任编辑:汪材印)

10.3969/j.issn.1673-2006.2015.06.023

2015-02-10

程玉(1980-),女,山东烟台人,硕士,讲师,主要研究方向:机械设计及制造。

N945.22

A

1673-2006(2015)06-0086-04

猜你喜欢
工艺流程工序机器
机器狗
120t转炉降低工序能耗生产实践
化工工艺流程题中常涉及的考点
机器狗
大理石大板生产修补工序详解(二)
“四步”解答中学化学工艺流程题
土建工程中关键工序的技术质量控制
未来机器城
人机工程仿真技术在车门装焊工序中的应用
现代合成氨工艺流程及特点