人们通过对人类智能行为的研究发现,绝大多数的人类活动一般都是由多人的社会群体来构成的,尤其是在处理一些大型的复杂问题的时候,就要求很多的专业人员来进行有效的组织和协作来共同完成.那么,在遇到这样的问题的时候,研究并建立多智能体系统就显得非常重要,它可以把多个智能体有效的结合起来,并通过合适的通讯方式,来协调共同的行为,便于它们进行一起协作,完成更多复杂的任务.
所谓智能体系统,是存在于分布式人工智能领域中的一个基本术语,我们通常认为智能体是一个抽象的实体,这个实体可以在一定的环境条件下运行,同时它也可以作用于本身的程序和外界环境,也能对外界的刺激作出相应的回应.
1 以智能体系统为导向的软件工程的开发背景.
软件的开发方法是软件工程当中的一个核心的内容,也一直都是所有的从事计算机研究者最为重视的一个问题,尤其是自从上个世纪的 60 年代出现了软件危机之后,人们首次提出了“软件工程”这样一个概念,自此以后大家也就更加的重视对于软件开发方法的研究,从而就出现了很多非常好的研究方法,而这些方法也对软件开发的工程化起到了非常重要的作用,在很大程度上缓解了软件开发的危机.
那么,软件工程的发展主要经历了这样几个过程:首先是面向“过程”开发方法的软件工程,然后就出现了面向“模块”开发的软件工程,在逐渐的发展过程中又出现了面向“对象”开发方法的软件工程,直至到现在出现的面向“智能体系统的软件开发方法的软件工程.
随着现代信息技术的不断发展,而且发展的速度也有加快的趋势,网络平台正在进行着无限的扩展,这些都迫使软件的开发具有越来越大型化、复杂化和智能化的趋势,但是现有的软件开发技术很难迅速的满足这一的要求,这些方法都或多或少的存在着一些缺陷和不足,这也直接导致了在软件开发系统当中存在的一些问题不能够得到很好的解决.人们为了解决好这样的问题,从上个世纪90年代开始,着重的对以智能体系统为导向的软件开发方法进行了研究,这种方法在很大程度上突破了传统的软件开发方法的一些局限性,可以更好的、更快的来满足需求越来越高的软件开发工作.
2 以智能体系统为导向的软件工程开发的特点和发展现状.
以智能体系统为导向的软件工程之所以在近年来受到人们的重视,是因为它具有着很多其他系统所不具有的一些特性,当然了,具有智能性的特点是它区别于其他系统的最大特点,这样的特点使它有着更加快速的反应、更好的协作性、更智能的自我学习特性以及更符合实际的社会性等,智能体系统可以更好的来感知它所处的周围环境,并对这样的环境作出一个非常及时的反应,然后通过各个软件之间的协商和合作来共同的完成一项任务.
智能体系统还具有很好的驻留性,也就是说它不仅可以很好的感知环境,同时也能在一定程度上影响环境;同时它还具有非常高的自主性,在很多方面,它的思维模式基本上是和人类的思维所一致的,并且可以快速的根据自身的状态和人类想要的意愿来决定是否执行一项任务;另外,这样的系统也具有很强的可靠性,而这种可靠性往往是系统的整体目标能够更好的实现的有力保障;智能体系统同时也有着非常高的可维护性和可重用性.
虽然以智能体系统为导向的软件开发方法具有其他系统软件所不具有的一些有利的特性,但是在研究的过程当中也发现了很多问题,主要有以下几个方面:如何能够使智能体系统软件工程的应用领域更加丰富;如何解决智能体系统软件开发的开放性、动态性和生长性等;如何把该系统和当前一些主流的软件工程系统的研究成果进行有效的结合,使其发挥更加重要的作用等.
3 以智能体系统为导向的软件工程的开发方法介绍.
我们在研究以智能体(agent)系统为导向的软件工程开发方法时,首先要搞清楚的一个问题就是智能体元的概念模型,这个概念模型恰恰就是该系统的关键所在,概念模型是给软件的开发带来新的思维观念的,这个新的思维观念认为:任何的一个以智能体为导向的软件应用系统,它们都是由智能体构成的,而这其中的每一个智能体其实都是作为一个自主的行为实体的,这些行为实体之间存在着各种各样的复杂的关系,这种关系使得它们之间存在着很强的联系,由于各个智能体间的结构的复杂化,也使得各个智能体之间的相互作用比较明显,这种相互作用主要是通过高层的一些交互作用来完成的,而这个系统所具有的驻留性的特点则使得它们可以在特定的环境下自主、灵活地执行各自应该执行的动作,从而可以实现整个系统的功能和目标.
那么,以智能体系统为导向的软件工程开发方法有它本身的一些优势,主要是它可以利用智能体所具有的可以对复杂软件系统当中的活动实体进行高层抽象的能力 , 来同时的把现实世界当中的多个问题用智能化的思想对其进行分解和抽象 , 从而就可以把一个很复杂的问题分解成一些单个的、具体的、智能体比较好解决的问题.这其中现在应用比较广泛的诸如过程控制、电讯电力、交通管理、等复杂的系统基本上都是采取这项技术进行开发的.
4 结束语.
虽然说现在的软件开发相对以前传统的开发方式来说已经有了很大的进步,但相对于人们的高标准来说,还远远达不到要求.我们必须对以智能体系统为导向的软件工程开发方法进行进一步的研究,逐步的对其中不完善和不成熟的地方进行改进,使其对软件工程的发展发挥更大的作用.
参考文献:
[1]何炎祥,张戈.Agent系统的软件工程过程[J].计算机工程与应用,2002,(09):95-98.