论文部分内容阅读
软件是否可信主要是指软件产生的行为是否可信,而判断软件行为是否可信可以在软件运行时对其产生的行为信息和结果进行软件行为检测,并根据检测结果主动做出相应措施,积极防御可能出现的恶意行为。到目前为止,一些研究者针对软件行为异常检测展开研究,并提出了很多解决方法,但存在异常检测精度不高,适用范围窄等问题。隔离森林算法(Isolation Forest)作为一种异常检测算法,利用异常数据少且与众不同的特点,通过对数据对象进行划分并判断其路径长度,使得异常数据与正常数据快速分离,具有较好异常检测效果。论文在传统的生物地理学优化算法(BBO)基础上提出一种多环层次生物地理学优化算法(MRBBO),利用其较强的全局优化和探索能力对隔离森林算法的森林构建过程进行优化,并将优化后的隔离森林算法用于软件行为异常检测。论文主要做了以下研究:首先,针对传统的BBO算法收敛速度慢,易产生早熟,全局寻优能力差等问题,提出一种多环层次生物地理学优化算法。该算法将全局的拓扑结构改成局部的多环层次结构,避免早熟,并对其迁移算子进行改进,提高算法的收敛速度和种群的多样性。其次,针对现有的软件行为异常检测算法检测性能差的问题,提出一种基于MRBBO算法优化的隔离森林异常检测算法(MRBBO-iForest)。利用MRBBO算法较强的寻优性能对隔离森林进行优化,选择检测精确度高和具有差异性的隔离树组成隔离森林,避免了隔离树检测性能参差不齐的问题,从而提高利用隔离森林进行软件行为异常检测的准确性。最后,通过实验分别对比验证MRBBO及MRBBO-iForest算法的性能。对于MRBBO算法,主要通过与BBO和DE/BBO算法对比,从基准测试函数的多次运行平均优化结果、算法的鲁棒性及在迭代过程中的收敛性三个方面进行算法的性能验证,结果表明MRBBO相对于BBO和DE/BBO算法寻优效果好,收敛快,具有更好的鲁棒性。对于MRBBO-iForest异常检测算法,利用公开的软件运行数据集进行软件行为异常检测实验,通过与Isolation Forest、LOF、RF算法异常检测结果对比,MRBBO-iForest的异常检测的精确度更高。