EDA/专用CAD软件 |
|
| 按行业筛选 |
|
|
| 按产品筛选 |
|
|
| |
查看本类全部文章 |
| |
|
|
|
基于多Agent的冲模CAD体系结构研究 |
|
作者:王正肖 潘晓弘 程耀东 吴晓东 |
|
引言
随着市场竞争的日趋激烈,在机械制造领域逐渐形成了智能化、集成化、并行化和网络化的发展趋势。在这个大趋势下,研究和开发计算机网络环境下集成化和并行化的模具智能CAD/CAM系统受到了高度重视。由于冲模设计过程中涉及到许多不同类型的数据和知识,同时又要考虑制造、装配、成本、质量等因素,故冲模CAD系统中不仅要同时运用多种不同的设计方法、技术和工具,而且需要与企业CIMS的其它子系统进行协作,共同完成冲模设计任务。
传统的冲模CAD体系结构通常采用串行模式,不能很好地支持协作设计,因此需要对传统的冲模CAD体系结构进行改进,以符合制造业发展的方向。
1冲模CAD体系结构的要求
新一代的冲模CAD系统是基于网络环境的集成化和并行化的冲模智能CAD系统。它以计算机网络为基础,实现冲模设计的智能化、设计与制造的并行化、冲模CAD系统与企业CIMS的其它子系统的集成化。
1.1智能化要求
冲模设计的智能化要求有以下三个方面:
a.多种知识、方法和工具的综合运用:冲模设计是一个复杂的涉及多种不同类型信息的过程,不能简单地应用某一种方法来解决,必须通过对多种知识、方法和工具的协同运用才能完成。因此冲模CAD体系结构必须提供一个合理、有效的机制以利于多种知识、方法和工具在任务求解过程中的协同运用。
b.设计支持的全面性:典型的设计过程可分为任务分析、方案设计、结构设计和详细设计四个大的阶段,支持的全面性是指对这四个阶段均提供计算机辅助。目前的冲模CAD系统在绘图和数值计算两个方面有较好的辅助功能,而对结构设计和详细设计的辅助功能较弱。
c.系统的开放性:任何领域的设计系统都是在目前已有领域知识基础上,运用现有技术开发的,冲模CAD系统也一样。随着人们对冲模设计理论研究的不断深入,以及计算机技术和人工智能技术的迅速发展,新理论、新技术和新方法将层出不穷,这必将引起对冲模CAD系统的进一步完善和改进,因此系统应具有开放的体系结构。
1.2集成要求
冲模CAD系统作为企业CIMS系统中的一个子系统,需要与其它子系统进行通讯和协作;同时,作为一个可单独运行的设计系统,各个设计子任务之间存着密切的联系,需要将这些子任务集成起来,共同完成冲模设计任务。因此冲模CAD系统本身是一个集成化的系统,另一方面它又要与其它系统进行更高层次的集成。
1.3并行化要求
冲模的并行设计包括两个方面的含义:一是冲模设计过程本身的并行,指的是冲模设计各子任务之间的并行;二是指冲模设计与制造之间的并行,指的是在冲模设计进行到某一阶段,就开始进行工装准备,包括采购材料和标准件、零件加工所需刀具、夹具和量具的准备等。
2基于多Agent的冲模CAD体系结构及其组成
2.1基于多Agent的冲模CAD体系结构
可见,新一代的冲模CAD系统是一个协作设计系统,包括不同类型知识、方法和工具的协同运用,冲模设计过程中各个子任务之间的协作,冲模设计系统与企业其它系统之间的协作。为此,本文认为,冲模CAD系统应采用基于多Agent协作的体系结构,如图1所示。
图1基于多Agent协作的冲模CAD体系结构 在这个体系结构中,冲模设计系统、图形CAD系统、MIS系统以及企业其它子系统均作为CIMS大系统中的Agent,在计算机网络的环境下,通过系统服务器实现各个子系统之间的通讯、协调和信息交换,从而实现整个系统协同运行,达到整体最优的目标。由于企业的其它子系统是已经开发或将要开发的软件,这些系统不一定具有协作机制,而且运行环境和数据格式很可能是不同的,因此需要开发一个系统服务器Agent作为通讯和数据交换的中介。
另一方面,冲模CAD系统本身又是一个多Agent设计系统,由服务器Agent和多个设计子任务Agent组成。各个子任务Agent运用各自的知识、方法和工具来完成规定的任务,并通过服务器Agent实现与其它子任务Agent以及外部Agent的通讯与协作,通过共享数据实现子任务之间的集成。
2.2系统组成
冲模设计任务可以分解成多个子任务,不同子任务的求解知识、采用方法和工具是不同的,因此每个子任务需作为一独立的Agent。冲模CAD系统中的Agent如图2所示:
图2多Agent冲模CAD系统的组成 2.3系统结构
多Agent冲模CAD系统的具体结构如图3所示:
图3多Agent冲模CAD系统结构 服务器Agent和子任务Agent是系统的两种不同类型的Agent。服务器Agent负责消息的接收、检测、处理以及管理各个Agent的进程。它接收来自子任务Agent、外部Agent以及设计师通过交互界面发出的消息。
子任务Agent完成具体任务的执行,接收来自服务器Agent的消息,并给服务器Agent发送请求消息。
3关键技术研究
3.1Agent工作过程
3.1.1服务器Agent
服务器Agent是多Agent设计系统的核心,服务器Agent从功能上可划分为消息管理器和消息处理器两大模块。消息管理器将其它Agent发送的消息以及内部产生的消息插入消息队列;消息处理器从消息队列中取出消息,经分析决定需要做的工作。其工作过程如图4所示。
图4服务器Agent工作过程 服务器对各种消息的处理描述如下:
(1) 数据区改变消息:根据Agent激活条件表检测未激活Agent是否满足激活条件,若满足,则产生一个激活消息,插入到消息队列中;
(2) 激活Agent消息:将该Agent激活;
(3) 终止Agent消息:将该活动Agent撤消;
(4) 其它消息:根据消息的内容确定需要响应该消息的Agent,如果是外部Agent,那么向系统服务器Agent转发该消息;如果是内部Agent,对于已激活的Agent,则直接将该消息发送给该Agent,对于未激活的Agent,则首先激活该Agent,再将消息传递给该Agent。
3.1.2设计子任务Agent
设计子任务Agent接收来自服务器Agent的消息,并进行相应的处理,将处理结果发送到公共数据区中,再向服务器Agent发送处理结果消息。
当设计子任务Agent接收到服务器Agent的消息后,首先根据响应任务表,决定应如何处理,即确定哪个执行模块;当明确如何处理后,从公共数据区中取得处理该消息所需的数据,并存入黑板中;然后利用知识执行当前任务;执行成功后,将执行结果发送给公共数据区,并向服务器Agent发送一个执行成功以及公共数据区改变的消息,否则向服务器Agent发送一个执行失败的消息(消息中包含失败原因)。其工作过程如图5所示:
图5设计子任务Agent的工作过程 表1多Agent设计系统中的主要消息
类型 | 发送者 | 接收者 | 消息名称 | 消息内容 | 含义 | 内部消息 | 服务器 | 服务器 | Activate Destroy | Agent标识 | 激活Agent 撤消Agent | 外部消息 | 源Agent | 服务器 | Success Fail Updated Serve DFX | 失败原因 目标Agent标识 | 任务成功完成 任务执行失败 公共数据区改变 请求与内部Agent协作 请求进行DFX分析 | 内部消息 | 服务器 | 目标 Agent | Modify Reply DFX Stop Continue Change Activate Destroy | 修改内容 返回内容 分析数据
| 要求Agent对设计进行修改 对请求Agent的响应 请求进行DFX分析
(转发消息,与下面相同)
| 外部消息 | 人机 交互 | 服务器 | Stop Continue Change Activate Abort | 目标Agent | 暂停Agent的执行 继续Agent的执行 修改Agent的处理数据 激活Agent的执行 撤消Agent的执行 | 外部 服务器 | 服务器 | | Reply Serve | 返回内容 协作内容 | 外部Agent返回的数据 外部请求协作 | 3.2消息协议
根据消息发送与处理的Agent的不同,消息可以分为两类:一类是由冲模CAD系统内部Agent发送和处理的消息,称为内部消息;另一类是系统内部Agent发送到系统外部或者由系统外部Agent发送到系统内部的消息,称为外部消息。
多Agent冲模CAD系统中的主要消息及其内容如表1所示:
3.3Agent协作过程
Agent间的协作可分为内部协作和外部协作,内部协作是指冲模CAD系统中内部Agent之间的协作;外部协作是冲模CAD系统中的Agent与外部Agent之间的协作。下面主要讨论外部协作的处理过程。
设冲模CAD系统内部Agent与外部Agent需要进行协作,如零件设计Agent与DFM Agent之间的协作,协作过程可描述为:零件设计Agent向服务器Agent发出请求DFM分析的消息,服务器Agent识别这是一个由其它系统处理的消息,然后生成一个向外部的系统服务器发送的消息和数据,系统服务器再进行分析,向能提供DFM分析的Agent发送消息和数据;DFM Agent分析完成后,将分析结果返回系统服务器,系统服务器再将结果返回冲模CAD系统内部的服务器,最后返回给零件设计Agent(图6)。
图6外部协作过程示意图 4结束语
为适应21世纪机械制造智能化、集成化、并行化和网络化的发展趋势,本文提出了基于多Agent协作的冲模CAD体系结构,并详细研究了系统具体结构及其处理机制、消息传递协作过程。(end)
|
|
文章内容仅供参考
(投稿)
(如果您是本文作者,请点击此处)
(9/11/2006) |
对 EDA/专用CAD软件 有何见解?请到 EDA/专用CAD软件论坛 畅所欲言吧!
|