自治计算旨在通过赋予软件系统自我管理功能来应对日益恶化的网络环境,描绘出了软件工程发展的美好蓝图。机器学习是实现软件自治功能的重要手段,国内外对此研究十分重视。本项目针对软件系统的结构性和演化性本质,通过对软件系统的定量结构图进行机器学习来实现软件系统的自治功能。我们分析了软件系统的信息源,构造了软件信息采集方案,设计了软件信息统一规范的定量结构图数据结构,综合表达了软件系统的结构信息和演化状态信息,建立了自治功能机器学习方法研究的数据集;面向实现软件系统自治功能的目标,我们在定量结构图数据集上展开了多种机器学习方法的研究,获得了一批分析处理软件系统定量结构图的机器学习算法,为实现软件系统自治功能提供了方法学基础;构建了以机器学习为核心的软件系统自治功能的实现框架,实现了自治功能框架上的功能构件,并基于自治功能框架尝试建立起自治软件原型,显示出了自治软件系统的应用前景。本项目的实施推动了复杂结构数据的机器学习方法的研究,并且促进了机器学习方法在实现软件系统自治功能中的应用。
英文主题词Autonomic computing; Machine learning; Quantitative structure