蚁群算法聚类设计_精品文档.pptx

上传人:b****2 文档编号:2572521 上传时间:2022-11-02 格式:PPTX 页数:24 大小:598.14KB
下载 相关 举报
蚁群算法聚类设计_精品文档.pptx_第1页
第1页 / 共24页
蚁群算法聚类设计_精品文档.pptx_第2页
第2页 / 共24页
蚁群算法聚类设计_精品文档.pptx_第3页
第3页 / 共24页
蚁群算法聚类设计_精品文档.pptx_第4页
第4页 / 共24页
蚁群算法聚类设计_精品文档.pptx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

蚁群算法聚类设计_精品文档.pptx

《蚁群算法聚类设计_精品文档.pptx》由会员分享,可在线阅读,更多相关《蚁群算法聚类设计_精品文档.pptx(24页珍藏版)》请在冰豆网上搜索。

蚁群算法聚类设计_精品文档.pptx

主讲:

周润景教授单位:

电子信息工程学院,蚁群算法聚类设计,目录,算法的提出算法的基本原理模型建立算法的实现算法改进结论,一.蚁群算法的提出,蚁群算法(antcolonyoptimization,ACO),又称蚂蚁算法,是一种用来寻找优化路径的机率型算法。

它由MarcoDorigo于1992年在他的博士论文中提出,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。

遗传算法在模式识别、神经网络、机器学习、工业优化控制、自适应控制、生物科学、社会科学等方面都得到应用。

MacroDorigo,二.算法的基本原理,图1蚂蚁正常行进,突然环境改变,增加了障碍物,二.算法的基本原理,图2蚂蚁以等同概率选择各条路径较短路径信息素浓度高,选择该路径的蚂蚁增多,二.算法的基本原理,图3蚂蚁选路过程示例,二.算法的基本原理,图4蚂蚁最终绕过障碍物找到最优路径,三.模型建立,基于蚂蚁构造墓地和分类幼体的聚类分析模型基于蚂蚁觅食行为和信息素的聚类分析模型,三.模型建立,1.基于蚂蚁构造墓地和分类幼体的聚类分析模型蚁群构造墓地行为和分类幼体行为统称之为蚁群聚类行为。

生物学家经过长期的观察发现,在蚂蚁群体中存在一种本能的聚集行为。

蚂蚁往往能在没有关于蚂蚁整体的任何指导性信息情况下,将其死去的同伴的尸体安放在一个固定的场所。

三.模型建立,真实蚁群的聚类行为,DeneubougJL等人也用pheidolepallidula蚂蚁做了实验。

发现蚁群会根据蚂蚁幼体的大小将其放置在不同的位置,分别把其堆放在蚁穴周围和中央的位置。

真实的蚁群聚类行为的实验结果右图,四张照片分别对应为实验初始状态、3小时、6小时和36小时的蚁群聚类情况。

三.模型建立,基本模型经过利用个体与个体和个体与环境之间的交互作用,实现了自组织聚类,并成功的应用于机器人的控制中(一群类似于蚂蚁的机器人在二维网格中随意移动并可以搬运基本物体,最终把它们聚集在一起)。

该模型成功的应用引起了各国学者的广泛关注和研究的热潮。

LumerE和FaietaB通过在Denurbourg的基本分类模型中引入数据对象之间相似度的概念,提出了LF聚类分析算法,并成功的将其应用到数据分析中。

三.模型建立,2.基于蚂蚁觅食行为和信息素的聚类分析模型蚂蚁在觅食的过程中,能够分为搜索食物和搬运食物两个环节。

每个蚂蚁在运动过程中都将会在其所经过的路径上留下信息素,而且能够感知到信息素的存在及其强度,比较倾向于向信息素强度高的方向移动,同样信息素自身也会随着时间的流逝而挥发,显然某一路径上经过的蚂蚁数目越多,那么其信息素就越强,以后的蚂蚁选择该路径的可能性就比较高,整个蚁群的行为表现出了信息正反馈现象。

四.算法的实现,由于蚁群优化算法是迭代求取最优值,所以事先无需训练数据,故取59组数据确定类别。

流程图如下:

四.算法的实现,重要程序代码介绍:

1.程序初始化X=load(data.txt);N,n=size(X);%N=测试样本数;n=测试样本的属性数;K=4;%K=组数;R=100;%R=蚂蚁数;t_max=1000;%t_max=最大迭代次数;best_solution_function_value=inf;%最佳路径度量值(初值为无穷大,该值越小聚类效果越好)2.信息素矩阵初始化信息素矩阵维数为N*K(样本数*聚类数)初始值为0.01。

c=10-2;tau=ones(N,K)*c;%信息素矩阵,初始值为0.01的N*K矩阵(样本数*聚类数),四.算法的实现,3.蚂蚁路径的选择及标识定义标识字符矩阵solution_string,维数为R*N+1,初始值都为0,以信息矩阵中信息素的值确定路径(即确定分到哪一组),具体方法如下:

如果该样本各信息素的值都小于信息素阈值q,则取信息素最大的为作为路径。

若最大值有多个,则从相同的最大值中随机取一个,作为路径。

若信息数大于阈值q,则求出各路径信息素占该样本总信息素的比例,以概率确定路径。

4.聚类中心选择聚类中心为该类所有样本的各属性值的平均值。

5.偏离误差计算偏离误差的计算,即各样本到其对应的聚类中心的欧式距离之和MIN。

MIN越小,聚类效果越好。

计算各只蚂蚁的MIN值,找到最小的MIN值,该值对应的路径为本次迭代的最佳路径。

四.算法的实现,6.信息素更新对信息素矩阵进行更新,更新方法为:

新值为原信息素值乘以(1-rho),rho为信息素蒸发率,在加上最小偏差值的倒数。

程序如下:

fori=1:

Ntau(i,best_solution(1,i)=(1-rho)*tau(i,best_solution(1,i)+1/tau_F;信息数更新之后,再根据新的信息数矩阵,判断路径。

进行迭代运算。

直到达到最大迭代次数,或偏离误差达到要求值。

四.算法的实现,程序运行完以后,聚类结果如图所示。

从图中可以看出基本蚁群聚类法的分类效果不太好。

四.算法的实现,程序运行结果:

t=1001time=23.4018cluster_center=1.0e+03*1.37102.61871.88721.39502.49972.11241.14382.61962.06131.60242.16732.0350best_solution_function_value=6.3409e+04,index1=34614192734374144484957index2=12791523244043455058index3=5812131718282932383946545556index4=1至15列10111620212225263031333536424716至19列525359,五.算法改进,基于遗传变异的算法改进,五.算法改进,改进代码:

pls=0.1;%局部寻优阈值pls(相当于变异率)solution_temp=zeros(L,N+1);k=1;while(k=L)solution_temp(k,:

)=solution_ascend(k,:

);rp=rand(1,N);%产生一个1*N(51)维的随机数组,fori=1:

Nifrp(i)=pls%某值小于pls则随机改变其对应的路径标识current_cluster_number=setdiff(1:

K,solution_temp(k,i);rrr=randint(1,1,1,K-1);change_cluster=current_cluster_number(rrr);solution_temp(k,i)=change_cluster;endend,五.算法改进,程序运行完后,仿真结果如图所示。

从图中可以看出MMAS聚类效果比基本蚁群聚类效果要好,但分类效果还不是太好,说明该三元色不适合使用该算法分类。

五.算法改进,程序运行结果:

t=1001time=84.9270cluster_center=1.0e+03*1.90952.34531.67050.47093.10522.26641.70532.02212.13051.62032.15572.0522best_solution_function_value=4.1595e+04index1=1至15列13814151922242633363941434516列47,五.算法改进,index2=1至15列2569101213232728293438444616至18列484955index3=111617182037404250525658index4=72125303132355153545759,六.结论,基于遗传算法的改进之后缩短了迭代次数,减少了计算量。

聚类的效果要好于基本的蚁群算法。

但是,从整体上来说两种算法的聚类效果都不太好,说明该算法不适合于酒的分类,体现了蚁群算法的局限性,但蚁群算法被成功应用到了旅行商问题上,所以以后在应用该算法时,我们应该根据具体问题而定。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1