软件老化是一种软件系统在长时间的运行中,由于老化相关的错误逐渐累积而导致的资源逐渐消耗、系统性能逐渐下降或者系统错误数逐渐增加,并最终导致系统发生崩溃的现象。
安卓操作系统与人们的生活密切相关,而安卓系统在长时间运行中经常产生应用启动时间增长和系统卡顿等问题。
引发这些问题的一个重要原因便是安卓系统存在的软件老化,但目前国内外对于安卓系统软件老化的研究尚有不足。
为了有效提升系统的稳定性和用户体验,本文提出一种新的预测软件系统老化状态的模型,
该模型基于已被广泛认可的老化指标(如应用启动时间,系统崩溃剩余时间)以及在实验中发现的新指标(如锁竞争相关指标等等),
通过多个机器学习模型得到多个预测结果,最终经过决策整合之后得到最终的老化预测结果。
具体工作如下:
1. 在数据收集和标记阶段,通过多次对训练样本的随机采样(有放回的随机采样),可以得到多个训练集。
再依次选取不同类别的老化指标,通过不同的标记方法对训练集中的每组数据进行标记,从而得到训练集以及老化指标相异的多组数据。
2在老化模型训练和预测阶段,
将工作1中得到的多组数据,运用多种机器学习算法,分别对每组数据进行训练,在确保预测准确率优秀的情况下,保留对应的机器学习模型。
最终得到多个预测结果,并共同决策出系统当前的老化状态。
实验表明,(预期)基于该多维度机器学习模型,最终的预测准确率与单一的机器学习方法有明显的提升。
关键词:软件老化;安卓系统;机器学习;多维度