{$cfg_webname}
主页 > 计算机 > 其他 >

蚁群优化聚类算法在网络入侵检测中的应用(附仿真程序)☆

来源:wenku163.com  资料编号:WK1632546 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9AWK1632546
资料介绍

摘要
21世纪是信息时代,计算机网络作为信息的主要传输载体,网络的安全性已经越来越重要。网络入侵检测是一种动态的主动防御的安全技术,它可以比较有效地抵御网络入侵。聚类分析作为进行数据挖掘的重要方法,可以应用于网络入侵数据的分析。本文分析了基于聚类分析的网络入侵检测技术,并结合蚁群算法,阐述了蚁群优化聚类的入侵检测算法,详细描述了算法的原理和实现过程。利用实际网络中的数据,对算法进行了计算机仿真验证,实验的结果表明,算法能够比较有效地检测网络入侵,并有较好的网络入侵检测率。
关键词:入侵检测;聚类分析;蚁群算法;蚁群优化聚类

Abstract
The 21st century is the information age, as the computer network is the main vector of the information transmission, the network security has become increasingly important. Network Intrusion Detection is a dynamic and initiative defense and security technology. So it can be more effective to resist the network intrusion. The clustering analysis is one of the important methods for data mining, it also be used to analyses the date of network intrusion. After Analyzing the network intrusion detection technology and ant colony algorithm, study and find a ant colony optimization clustering intrusion detection algorithm. Expatiate theory of the new algorithm and the process to achieve the algorithm.  Through the use of data from the network, do a computer simulation experiment. The results of the experiment show that the new algorithm can be more effective to network intrusion detection and a better network intrusion detection rate. 
Key words: intrusion detection; clustering analysis; ant colony algorithm; ant colony optimization clustering

本文的主要研究方法是:通过对网络入侵检测问题进行分析和数学描述,把聚类分析方法应用于入侵检测,利用蚁群算法原理,将数据视为具有不同属性的蚂蚁,聚类中心作为蚂蚁所要寻找的“食物源”,那么数据聚类过程就可以看作是蚂蚁寻找食物源的过程,从而实现蚁群优化聚类算法,然后在Matlab下进行仿真测试分析。
 本论文写作按照如下结构安排:首先,介绍网络入侵检测和聚类分析的一些基本概念和方法,并对聚类分析进行数学描述,然后就聚类分析用于网络入侵检测进行阐述;其次,引入蚁群算法,介绍蚁群算法的基本原理,进一步阐述聚类分析的网络入侵检测的实现过程,同时对蚁群优化聚类的网络入侵检测算法进行描述说明。最后,就如何对算法进行仿真实现以及实现的全过程进行详细的描述,通过实验,得出一定的结果,对结果做一定的分析。

聚类分析与入侵检测的结合
聚类分析的方法就是将数据对象分组为多个类或簇,其操作对象是数据,采用以数据为中心的观点,把入侵检测看成是数据分析过程。由此,聚类方法与入侵检测很自然
的联系起来。入侵检测实质上是一个数据归类过程,即把入侵的数据记录归为正常的或异常的这两类,只要能把入侵数据记录按照一定的规则实现归类,就应该可以进行入侵检测。
基于聚类分析的入侵检测技术有两个要求:一是正常行为与异常行为是可辨识的;二是正常行为远大于异常行为。因此,聚类分析用于入侵检测是可行的[2]。
Portnoy最先提出基于聚类分析的入侵检测技术,该技术对数据实例进行正规化处理,然后采用欧氏距离,并用单链法进行聚类,经过标识,通过分类以检测入侵。但该方法存在自适应和可扩展性不强的问题,因此,还应该改进这一方法,以提高该技术的性能。

蚁群算法原理
蚂蚁在觅食途中会留下一种外激素。蚂蚁利用外激素与其他蚂蚁交流、合作,找到较短路径。经过某地的蚂蚁越多,外激素的强度越大。蚂蚁择路偏向选择外激素强度大的方向。这种跟随外激素强度前进的行为会随着经过蚂蚁的增多而加强,因为通过较短路径往返于食物和巢穴之间的蚂蚁能以更短的时间经过这条路径上的点,所以这些点上的外激素就会因蚂蚁经过的次数增多而增强。这样就会有更多的蚂蚁选择此路径,这条路径上的外激素就会越来越强,选择此路径的蚂蚁也越来越多。直到最后,几乎所有的蚂蚁都选择这条最短的路径。







目  录
摘要 I
Abstract II
1引言 1
2网络入侵检测与聚类分析 3
2.1网络入侵检测 3
2.2聚类与聚类分析 3
2.3聚类分析与入侵检测的结合 4
3蚁群优化聚类与网络入侵检测 5
3.1蚁群算法原理 5
3.2基于聚类分析的网络入侵检测过程 5
3.3蚁群优化聚类的网络入侵检测算法 7
(毕业设计)
4算法仿真实验及结果分析 9
4.1实验数据 9
4.2算法仿真实验的具体实现过程 9
4.3实验仿真的结果与分析 17
5结论 19
参考文献 20
致谢 21
附录A KDDCup1999数据的属性特征表 22
附录B Matlab源程序 24

附录B Matlab部分源程序

AntNum=110;               %蚂蚁数
CentreNum=2;               %初始聚类中心数
AttributeNum=30;            %数据属性数
Eo=0.6;
Pk=0.01;                    %加权因子
Po=0.004;                   %设定的归并聚类的概率下限
r=0.8;                      %设定的聚类半径
Alpha=1;
Beta=1;
load X.txt;                  %载入实例数据
load B.txt;                  %载入初始聚类中心的数据
C=B;
New=zeros(CentreNum,AntNum,AttributeNum);     %聚类后的聚类数据纪录集
Flag=1;
t=eps;
while Flag==1&t<500
    Flag=0;
    t=t+1; 
%%%%%%%%%%%%%%计算各实例数据到各初始聚类中心的距离D(i,j)%%%%%%%%%%%%%
    for i=1:AntNum
        for j=1:CentreNum
            for m=1:AttributeNum                        %计算距离
                d(i,j,m)=Pk*(X(i,m)-C(j,m))^2;         
            end
            for m=1:AttributeNum-1
                d(i,j,m+1)=d(i,j,m)+d(i,j,m+1);
                m=m+2;
            end
            D(i,j)=(d(i,j,AttributeNum))^0.5;

推荐资料