摘要:面向Agent 程序设计(agent-oriented programming,简称AOP)基于多Agent 系统的抽象和思想、借助于Agent 理论和技术来支持软件系统的构造与实现,其程序设计思想、软件模型、基础理论和语言设施有别于现有主流程序设计技术,如OOP,代表了一种新颖的程序设计范型.由于多Agent 系统被视为支持开放环境下复杂软件系统开发的一种新颖、有效的技术手段,因而近年来AOP 受到人工智能、软件工程和分布计算等领域研究学者和工程实践人员的高度关注,并在过去20 年取得了重要进展.但是,无论在应对复杂多Agent 系统开发方面,还是在大规模工业化应用等方面,AOP 的研究与实践都面临着严峻的挑战.作为一种程序设计范型,AOP 研究需要在交叉其他学科知识(如人工智能)的基础上,充分借鉴软件工程以及已有程序设计范型的原理、原则和成功实践,从而推动技术走向成熟并为广大工程实践人员所接受.通过对AOP 研究历程的系统介绍,从软件工程的视点考虑MAS 程序设计的不同层次,综述AOP 在程序设计抽象与模型、机制与理论、语言与设施和支撑平台这4 个方面的研究成果,展示不同时期AOP 研究关注点的变化以及发展趋势,分析当前AOP 研究与实践存在的问题和面临的挑战,并展望进一步的研究.