毕业论文:蚁群算法的研究应用(定稿)-精品

发布时间 : 星期二 文章毕业论文:蚁群算法的研究应用(定稿)-精品更新完毕开始阅读

//debug

if(Capability<-delimiter){ int t=0; } }else{

local.Pheromone_grid[kind][x][y]=0; local.phe.removeElement(this); //把信息素从屏幕上抹去

g.setColor(local.BACK_COLOR); g.fillOval(x,y,1,1); } }

public void Draw(Graphics g){ //画信息素 Color color; int

cap=(int)(255*(double)(200*Capability)/(double)(local.Max_Pheromone));

if(cap>=255)cap=255; if(cap<=2){

color=local.BACK_COLOR; }else{

if(kind==0){

color=new Color(cap,(int)(cap/2),0); }else{

color=new Color(0,(int)(cap/2),cap); } }

g.setColor(color); g.fillOval(x,y,1,1); } }

4.3 仿真实现

仿真开始时的界面如图4.1所示,按“开始”用来控制界面的运行和停止,“重来”用来清空画面。“设置”用来设置环境的属性及蚂蚁的个体属性,“编辑地图”用来设置环境,包括障碍物,食物点还有窝点的位置及个数并且在地图库中加载地图。“画食物信息素”在其下拉框中可以选择不画信息素,画窝的信息素,画食物的信息素,还有画食物和窝的信息素。

图 4.1 仿真界面

第五章 模型的仿真

第三章已经建立了鱼群的仿真模型,本章对模型进行了仿真。通过逐步加入各类主体以及相关属性,并改变某些参数,观察仿真运行情况,分析结果。这样就尽可能的仿真出鱼类的各种行为。模型开始运行时,环境中任意分布一定数量的个体,每个个体具有自己的状态属性。模型运行中个体不断产生位置移动并按照相应规则与环境以及其它个体发生交互作用。

以JAVA为编译平台, 通过编写程序对蚂蚁的觅食过程进行了多Agent仿真, 具体仿真过程如下: 在一个自由环境下, 若有Agent发现了食物则该Agent会在行进中沿途留下信息素(该信息素会随时间进行减少), 其他觅食Agent能根据这种信息素浓度的大小选择路径前进, 并且沿途又留下这种信息素, 使这种信息素浓度加强, 于是又吸引更多的觅食Agent沿此路前进。在一段时间后, 在较短路径上信息素越来越多, 从而移动到这条路上的蚂蚁Agent数量就会逐渐增多, 这种反馈效应又使信息素浓度远远超过其他较长路径上的信息素。但是在此过程中, 有个别Agent发生判断失误的现象, 即此Agent脱离了信息素最多的那一条路径。这个Agent的行为将产生两种结果: 一是找到了比当前路径更短的路径, 于是便会有更多的蚂蚁沿着此路径来觅食。二是找到一条比当前路径更长的路径, 虽然也会有别的蚂蚁沿此路径来觅食, 但是继续下去此路径最终会消失。此过程持续进行, 直到所有蚂蚁都选择最短路径为止。如果在有障碍物存在的情况下, 基本过程是一致的。图中的黄色代表蚂蚁窝, 蓝色圆圈代表食物源, 红色代表障碍物,白色代表蚂蚁,其中找食物留下的信息素蓝色的,蓝色越多食物信息素的浓度越大。找我留下的信息素是黄色的,黄色越多窝的信息素的浓度就越大。

5.1 仿真一

在初始环境下,蚂蚁的觅食行为,其中只画出了食物的信息素。仿真如图5.1所示。

1)模型中环境及蚂蚁个体属性的设置如下: 1. 蚂蚁的数量AntCount=50

2. 最大信息素Max_pheromone=500000 3. 食物释放信息的半径FoodR=10 4. 信息素衰减速度Delimiter=5

5. 蚂蚁的数量Ch_id=0 6. 错误概率Mistake_ch=0.0010 7. 速度半径VR_ch=3 8. 记忆能力Memory_ch=50 9. 蚂蚁颜色Color_ch=white 2) 仿真结果

如图5.1(a)所示,表示在仿真环境下,初始时刻的所有个体的分布情况。图5.1(b)是鱼的群集过程。随着仿真的进行,个体遵守游动规则游动,最后形成一个庞大的群体。图中只画了食物的信息素。图5.1(c)只画了窝的信息素。图5.1(d)同时画出了食物的信息素和窝的信息素。 3) 结果分析

由结果可以看出,初始状态个体是随机分布在环境中,具有任意性。经过若干个仿真周期,由于个体遵守游动规则游动,就有了个体的集群结果。其中图中只有一个食物点和一个窝点,仿真结果有不画信息素的仿真界面,画窝的信息素的仿真界面,画食物的信息素的仿真界面,还有同时画出食物和窝的信息素的仿真界面。

联系合同范文客服:xxxxx#qq.com(#替换为@)