移动 Agent:智能化分布式计算新模型 (第一部分) 计算机智能化和网络化进程促成了 Agent 技术的迅速崛起和广泛应用,移动 Agent 技术是为解决复杂、动态、分布式智能应用而提出的一种全新的计算手段,是计算机软件技术的又一次深刻变革。 本系列文章分两个部分介绍移动 Agent 这一智能化的分布式计算新模型:第一部分对软件 Agent 和移动 Agent 的一些基本概念作了简要阐述,提出了基于移动 Agent 的分布式计算模型,并简明介绍了目前常用的移动 Agent 平台;第二部分以 Voyager 这一移动 Agent 开发平台为例,讲述如何用 Java 开发移动 Agent 应用程序。 随着人工智能和计算机网络的飞速发展,特别是近年来 Internet 及其相关技术的普遍应用,网络已经成为目前人们发布和获取信息的基本平台。在这样的背景下,计算已经不再像以前那样仅仅局限于网络中的几台服务器上,而是要求所有计算机都融入到分布式计算这一大环境中来,这就引发了分布式计算新一轮的研究热潮,这期间最引人注目的就是智能软件Agent。 一、软件 Agent 软件 Agent 技术的诞生和发展是人工智能和网络技术相结合的产物。从20 世纪60 年代起,传统的人工智能技术开始致力于对知识表达、智能推理、机器学习等领域的研究,这些研究成果在计算机软件中的应用使得软件有了一定程度上的主动性,并在自主判断和行为选择上有了一定的智能性。目前,人工智能围绕知识这一中心所进行的研究和应用正在促成知识工程这一新兴学科的生成,它涉及到知识的获取、存储和管理等一系列课题,对这些问题的深入研究必将促进软件智能化的进程。 在 Internet 这一目前最庞大的互联网络环境中,计算机软件体系结构和组织结构的复杂性不断增加,传统的软件设计方法已经无法满足实际需要,分布式、智能化才是今后软件发展的基本方向。软件分布式的目标是要将问题进行分解,由多个实现了知识共享的软件模块或网络节点来共同完成问题求解,而智能化的目标是要在智能主机之间实现智能行为的协调,两者的结合就产生了软件Agent 的概念。 软件 Agent 技术最早可以追溯到人工智能研究的初期阶段,1977 年 Hewitt 在研究Concurrent Actor Model时就首次提出了具有自组织性、反应机制和同步执行能力的软件模型,这就是最初的软件Agent思想。此后从70 年代末到90 年代初,科学家都将精力集中于对软件 Agent 理论的研究,并从系统的角度提出了一些基本概念。软...