自适应和自组织是二个不同但相关联的复杂性特征,均具有环境开放性、变化敏感性、系统动态性等特点,如何为复杂自适应和自组织系统的开发提供基础理论和运行机制是目前软件工程面临的重要挑战。项目认为需将自适应与自组织这二种复杂特征融合在一起研究,以更好揭示二者间内在联系;通过借鉴社会学和组织学的思想对自适应和自组织系统及其复杂性特征进行抽象和分析,从而为这类系统及其软件工程技术研究提供新颖视点和统一、高层方法。项目将自适应和自组织系统中的实体抽象为自主Agent,将整个系统视为多Agent组织,把环境作为一阶抽象,从自适应和自组织系统的组织元模型及其形式系统、运行机制、性质规约与验证、核心算法与软件原型四个方面,建立自适应和自组织系统的基础理论和运行机制。该研究对于探究这二种复杂特征的内在联系,建立基于组织抽象的自适应和自组织系统基础理论,促进面向自适应和自组织的软件工程研究具有重要意义和价值。
self-adaptive;self-organized;multi-agent system;social organization;
自适应和自组织是二个不同但相关联的复杂性特征, 当前越来越多的软件系统对自适应和自组织提出了需求以提高系统的灵活性、健壮性并满足设计目标。本项目针对开放环境下复杂软件系统的自适应和自组织问题,将复杂自适应和自组织系统中的个体视为自主Agent,整个系统抽象为多Agent系统,借鉴社会学和组织学的思想,从系统模型、机制机理、程序语言、算法平台等四个方面系统开展了复杂自适应和自组织系统的基础理论和关键技术研究,取得了以下四个方面的研究成果。首先,提出了基于社会组织抽象的复杂自适应和自组织系统抽象模型,借鉴社会系统的自适应和自组织思想,设计了针对行为调整、角色绑定的自适应机制以及基于政策的自组织机制,建立了针对这些模型和机制的形式系统,并对复杂软件系统的自适应和自组织性质和特征进行了严格的规约和推理。其次,基于上述机制和机理,设计了支持自适应和自组织策略描述的语言SADL以及面向复杂软件系统构造的程序设计语言OragentL,给出了这些语言严格的语法和语义定义,提出了支持复杂软件系统自适应的体系结构BDIP。第三,针对开放环境下不确定的自适应需求,提出了基于学习的自适应决策算法;设计和实现了支撑上述机理和机理、软件体系结构和程序设计语言的支撑软件开发环境SADE以及Oragentburg,从而为复杂自适应和自组织系统的开发和运行提供支持,包括编辑器、编译器、开发包、维护和演化工具和运行平台等等。最后,课题将上述研究成果运用于一系列复杂系统的研究、分析和构造,包括复杂人工社会系统的突发事件管理、自适应电子商务等等。本研究成果借助社会组织学的思想建立起面向复杂软件系统的自适应和自组织基础理论,从多个不同的层次提出了相应的机制来支持自适应和自组织,着重解决了开发环境下的自适应问题,并为复杂自适应和自组织软件系统的开发和运行提供了系统的关键技术和支撑平台的支持,它对于推动复杂自适应和自组织系统的研究与实践具有重要的价值。