发布企业信息

软件开发技术的发展及Agent在锻压行业中的应用前景

作者:  信息来源:模具  2008-6-2

字体大小:  网友评论  进入论坛  

摘要回顾了软件开发技术的发展过程,简要分析了传统和现代面 向对象开发方法的优缺点,引出了最新的Agent技术,并且对其基本特征和体系结构作了说 明,并就这一新技术发展方向以及在锻压行业中的应用前景作了介绍。关键词OOPAgent协作 Development of Softw are Evolutio...
      摘要 回顾了软件开发技术的发展过程,简要分析了传统和现代面 向对象开发方法的优缺点,引出了最新的Agent技术,并且对其基本特征和体系结构作了说 明,并就这一新技术发展方向以及在锻压行业中的应用前景作了介绍。
  关键词 OOP Agent 协作

Development of Softw are Evolution & Application of Agent in Metalforming Industry

Wang Yun, Wang Le igang, Huang Yao, et al

  Abstract:Recalling the evolution of software developing thchnique by anal ysis of virtues and defects of conventional and Object Oriented Programming meth od hence new Agent technique of which structure and basic features as well as te ndency and application prospect in forging industry have been introduced.
  Keywords:OOP, Agent, Cooperation

1 引言

  从软件开发过程中所采用程序设计方法来看,常用的方法有自顶向下分析(TOP-down Analy sis),原型法(Prototyping)、结构化分析与设计(Structured Analysis and Design) ,最传统的是70年代初提出并且发展较成熟的结构化方法(Yourdon),其包括结构化分析 和结构化设计两部分,该方法体现了自顶向下、逐步求精、模块化、层次化等结构化思想, 是以后各新软件开发方法的基础。面向对象程序设计(OOP)作为程序设计的新方法被广泛采 用,在Windows操作系统推出后,Visual系列和Delphi等众多软件产品中都融入了该技术, 并已成为90年代软件开发的趋势。在新兴软件行业中,采用OOP方法的软件占有相当大的比 重。
  Yourdon及OOP技术的确在很多应用领域发挥了巨大的作用。但随着Internet/Intranet的发 展和普及,计算模式已从“台式机系统为中心”转化为“以网络为中心”,电子商务、网络 协作等许多崭新的应用正围绕着这进行展开;另外,信息社会中分工的细化,任务的庞大, 分布的离散促使人们需要在Internet和计算机硬件的支持下进行共同的合作。因此,产生了 计算机支持的协同工作CSCW(Computer-Supported-Cooperative-Work)、群件系统等概念 ,新的思想需要新的技术来支持,以往的技术不能完善地解决,所有这些都使得Agent技术 应运而生。下面首先分析各主流软件开发方法的利弊。然后简要介绍一下Agent的概念,并 且对Agent的体系结构模型和特征作出说明,最后指出Agent在锻压行业中的应用。

2 Agent方法与其他开发方法的分析

2.1 结构化方法分析
  Yourdon方法着重于功能,用系统的观点去看待问题,从整体上自顶向下地完成系统分析和 系统开发,采用顺序、选择、循环、过程和函数四种基本结构来进行程序设计。虽然Yourdon具有 系统性并得以广泛应用,但其核心仍然是面向过程的,通过一定的方法把给定的输入转换为 所希望的输出,如图1所示,均为单入口和单出口。面向过程及结构化的限制使Yourdon方法 缺乏清晰的数据流、编程的灵活性和简洁性、群组及个体之间良好的互通性。

图1 Yourdon方法的控制结构

2.2 OOP分析
  OOP作为一种认知方法学,也是一种对现实世界模型方法进行软件模拟和再现的程序设计技 术。就软件分析、设计和结构来说,它是一种新的思维方法,按照物体对象的存在方式模块 化,最后按需求用软件进行再现。具有认知科学一定的理论依据,结构清晰自然,通用性良 好,可移植性强,代码重用率高。运用类、封装、继承的OOP以数据和事务处理为核心,基 本达到了模块松散耦合和高内聚的要求。但是OOP是面向对象的技术,面向对象的局限性决 定了其相对静态被动性、无自主性,不能完全达到问题域与实现方法域的分离。主要表现在 没有统一的规范和语言;对象的相对静止性,即对象与对象之间只能通过消息传递、事件触 发来传递信息和改变对象状态,系统对消息队列进行检测以确定消息的发送者和接收者,对 象是被动地接受消息,没有自主性;在处理多线程异步任务时有一定的困难;对系统平台的 依赖性较大。
2.3 Agent的概念
  Agent思想最先来源于分布式人工智能(DAI)的研究,一般是指为实现一定目标,适应一定 环境并在此环境下自主地执行任务的行为主体。Agent实体之间进行交互、动作和协作,同 时与环境也进行着能动的行为,如自学习等(图2)。Agent不同于其他 软件开发方法,它不是面对现实世界中静态实体或功能,而是面向有意识、有思维的行为实 体,也就是说Agent把行为实体作为系统的基本成分,是按照行为实体的存在方式进行划分 的。Agent技术的发展产生了AOP(Agent-Oriented Programming)。Agent的这种认知世界的模式从理论上可以解决以上软件开发方法的弊端。

图2 Agent的行为图

3 Agent主要特征及体系结构简介

3.1 Agent体系结构
  基于BDI的Agent体系结构[7](图3),表示Agent由信念,愿望,意图和规划四部分组成的意识系统。其形式如下:
   A∷=<B,D,I,L>
式中:B,D,I,L--信念、愿望、意图和规划。

图3 基于BDI的Agent结构

  该结构模型不同于原来专家系统中常用的知识框架和推理机制,B,D,I,L分别对应于 Agent的信息性,选择性,决策性和过程性。模型中的信念反映了Agent自身、环境和相关Ag ent的状态以及对为完成委托任务而采取的活动的估计。愿望是关于在主客观条件下Agent希 望达到的某种状况以及对所采取手段的个人爱好。意图对应于Agent已决定的目标和任务。 规划表示Agent在执行相应意图必须遵循的知识库和程序,知识库和程序的结构框架,组成 方式等服从共同的协议,以达到Agent之间跨平台相互联系的平稳性。这四者在Agent结构中 的位置及发生情况见图3。
3.2 Agent主要特征
  
虽然Agent模型、定义、协议等都还没有一个统一的规范,但是作为一种分析系统的有力工 具,Agent主要特征可以进行定性描述。从对Agent的特性研究表明一个Agent的主要特征包 括如下几点:
  (1)自主性:具有周期性的动作,对自身的行为和活动拥有控制权,并且能够采取有利于完 成委派任务的行为,完成用户请求并反馈所需的服务信息。
  (2)反应性:能感知Agent所处环境的变化并作出反应,反作用于环境。
  (3)目标驱动性:Agent所有的行为都围绕着该Agent的既定目标。
  (4)社会性:各Agent之间可以相互进行通讯传递和交互。
  (5)可移动性: Agent能够完成异地持续处理任务,提高通信效率。
  (6)自学习性:通过从自身经历和交流进行自我行为模式的调整来建立特有的活动规则,以 适应需求和新环境。
  (7)智能性:具有求解、推理、决策等人为意识。
  Agent还具有自利性,自适应性等非主要特性。但是Agent元最基本特性主要是自主性,反应 性,智能性,目标驱动性。了解Agent特性对分析、构造复杂而庞大的Agent系统有重要意义。

4 Agent在锻压行业中的应用

4.1 用于行业产品的协同设计
  目前,国内企业正在进行产业结构调整。锻压行业也在逐渐由发展潜力、管理模式和经济效 益良好的大中型企业作为骨干,合并其他小型企业,在地区上形成合理的离散式分布。在此 基础上,为了发展生产,应以科技进步为龙头,充分利用网络建立自己行业的Internet/Int ranet网。有了上述两个条件,Agent技术就能充分应用到该行业的各领域。
  众所周知,锻压行业中复杂锻件的设计不是单靠个人力量能够完成的,需要考虑成本、工艺模具设计与加工、锻后及锻前热处理等方面,其中将涉及到许多部门。利用多Agent进行 协调工作可很方便地处理好该类问题。处理过程见图4。

图4 Ag ent的处理过程简图

  首先用KQML(Knowledge Query and Manipulation Language)规定的协议表达出任务内容 并进行打包,形成任务Agent。任务Agent进行自身智能判断属于以下何种情况,针对具体情 况作出不同的反应:
  ①如果任务Agent可以按照任务所涉及部门清晰划分为相应的小任务Agent,则可以通过协调 器Agent分配给对应的线性组成的部门。线性链按部门性质划分,链上结点为部门结点,结 点编码中的第一位表示各部门代号(如1表示工艺科),第二位表示地域代号(如b表示上海 地区某分公司,该代号有数据库来保证与网络地址的联系),第三位表示该公司该部门中项 目负责人的资格评估值。协调器Agent也是管理器(形象的说如同资源分配协调者),它还 对同一线性链表上结点处理委托任务的处理顺序作出调配。调配方法主要由第三位的资格评 估值决定,值高则优先。如果该部门不能完成任务,则可以继续细分任务进行打包,通过协 调器Agent来分配给同级部门协同工作,最后递交给协同任务集成器。这其中就体现了智能 性和自主性。其他部门同样如此,最终达到总任务集成。
  ②如果任务Agent所涉及的内容交叉性很大,不能按部门细分任务,这时可以通过协调器Age nt进行Agent复制任务Agent给各线性链。这相当于Agent移民,各线性链上的部门各司其职完成Agent中 所属部分,最后也由协同任务集成器集成递交给总项目负责部门。其中各线性链上的部门仍 能按照同级部门之间的协作对任务进行分解,自身也能再次进行任务打包成子任务Agent分 配到其下级子部门。图解如下:

图5

  以上仅简要叙述了Agent技术在锻压行业中进行协同设计的处理过程。
4.2 应用展望
  Agent技术作为一种新的编程思路,各方面还有待完善,但是这不妨碍它的先进性。在远程 教学、制造业、医疗、政府机构、商业、信息行业等领域内都已经应用Agent,许多Agent软 件也已开发出来。随着Internet及WWW技术的继续推广和深入,产品设计Agent、产品销售Ag ent、会议Agent、决策Agent等等都将会在锻压行业中得到广泛应用。

王匀(230009 合肥工业大学)
王雷刚(230009 合肥工业大学)
黄瑶(230009 合肥工业大学)
朱捷(230009 合肥工业大学)
刘全坤(230009 合肥工业大学)

参考文献

1,Tim Finin, Rich Fritzson, Don Mckay. A Language and Protocol to Support Intelligent Agent Interoperability, April 1992, http://www.cs.umbc.edu/kqml/pape rs
2,Tim Finin, James Mayfield, Yannis Labrou Desiderata for Agent Communi cation Languages 1999, http://www.cs.umbc.edu/kqml/papers
3,Russell S,Norvig P. Artificial Intelligence: A Modern Approach. Prenti ce-Hall, 1995.
4,Maes P.Designing Autonomous Agents. Cambridge, MA: MIT Press. 1990.
5,Agent Communication with Multiple Ontologies Hideaki Takeda, Kenji Ii no, and Toyoaki Nishida http://ai-ww.aist-nara.ac.jp/~takeda/doc/html/icot-pape r-v2
6,汤 庸,石纯一.软件工程方法学及应用.宜昌:中国三峡出版社,1998.
7,马光伟,徐晋晖.软件学报.Agent思维状态模型.1999,10(4)

分页:
Google


推荐图文

广告

机械热点图文

  • 数控车床加工编程典型实例分析2
  • 内螺纹车削加工——数控车床编程实例42
  • 子程序编程方法-数控车床编程实例36
  • 塑料模具动画演示

机械风云人物

Copyright © 2004 51base.com Inc. All rights reserved.

无忧基地 版权所有│粤ICP备06098418号│XHTML | CSS

客服:+86-755-2212 2202 工作时间:周1~5 10点~16点

感谢中国网络提供带宽支持

《网络营销技巧》