论文部分内容阅读
软件可靠性模型是软件可靠性研究的核心与关键。合理的软件可靠性模型,能支撑软件可靠性定量分析技术,指导软件开发过程。目前已有的软件可靠性模型己不下百种,但模型应用一般只能局限在一定范围内,通用性较差。研究一种通用性好且预测精度较高的软件可靠性模型具有重要的意义。以GP模型、BP模型为代表的,基于计算智能方法的软件可靠性模型是目前的研究重点,但是这两类方法存在的固有缺陷,一定程度上影响了软件可靠性的预测精度。基因表达式编程(Gene Expression Programming, GEP)是一种高效的进化算法,有着全新的、不同于传统的信息表达和处理方式,适用于高度非线性系统的处理。它克服了GA难以应付复杂问题和GP效率低下的缺点,而与人工神经网络相比,它不需划分层次和进行多样本训练,更容易应用,已成为计算智能的前沿研究热点。本文详细介绍了GEP的基本技术,并通过分析GA与GP技术特点,揭示了GEP具有较高效率的根本原因。鉴于GEP本身存在未成熟收敛的局限,从种群多样性角度出发,提出了一种基于分组策略的改进GEP算法(Gene Expression Programming based on Block Strategy, BS-GEP),动态调整遗传算子,避免算法陷入局部收敛;为充分证明改进策略有效性,采用Shannon信息熵作为多样性度量,研究分析了算法中个体基因位变异熵性质及种群进化多样性特征;同时,为证明BS-GEP在保证种群多样性情况下其收敛性并不亚于标准GEP的依概率强收敛性,将鞅理论引入到Markov链收敛特性研究中,通过分析BS-GEP (?)中群下鞅性,在理论上证明了BS-GEP算法几乎处处强收敛,从而补充了改进算法的部分收敛性理论。以软件失效序列数据为样本,采用GEP及其改进算法研究影响软件失效各因素的综合作用力,进化寻优得到软件失效特性函数,建立软件可靠性模型。实验仿真结果表明,基于这两种算法的软件可靠性建模方法,既可以对失效间隔序列建模也可以对失效累积时间序列建模,降低了对软件失效数据收集的要求,而改进GEP算法能更加高效地找到具有优良拟合度和预测能力的软件可靠性模型,从而在软件可靠性建模理论研究方面取得了有意义的进展。