




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于Boid模型的动物集群运动行为研究摘要本文通过对Boid模型进行研究并进行改进,运用MATLAB软件对群体在不同环境下的运动进行仿真,形象地展现了动物的集群运动行为。问题一:在Boid模型的向心性(靠近邻居中心)、同向性(与邻居方向一致)、排斥性(避免碰撞)三个原则的基础上,添加了内聚性(向群体中心聚合)、排列性(朝平均的方向运动)、可变速性三个原则,进行加权建立函数关系,运用MATLAB进行仿真,很好地模拟出了动物的集群运动。个体的位置变化公式为:/八/、direcl(t)(、pos(t+1)=pos(t)+r*v(t)iidirec1(t)i问题二:在问题一的基础上,增加了在两种不同情
2、况下个体躲避天敌的原则:当个体离天敌较近时,忽略群体的影响,选择最快方向逃逸;当个体离天敌较远时,主要考虑逃逸,但仍考虑群体的对个体的影响。当个体无法感受到天敌时,按第一问的原则进行运动。对不同环境下的个体建立了不同的函数关系式,使整体效果更加接近实际情况。个体处在危险区时,下一时刻的方向为:direc1(t+1)=0.5*direc5(t)+0.5*direc6(t)iii个体能感知到捕食者,但不在危险区时,下一时刻的方向:direc1(t+1)=0.1*direc2(t)+0.1*direc3(t)+0.1*direc4(t)+0.25iiii*direc5(t)+0.25*direc6(
3、t)+0.1*direc7(t)+0.1*direc8(t)iiii问题三:考虑了一部分个体是信息丰富者,设置了含有食物的场景,在第一问原则的基础上采用Lead-follower模型,确定了信息丰富者能第一时间发现食物并向其缓慢前进,对其他个体进行引导,达到群体向食物前进的效果,并且通过MATLAB进行仿真,得到了群体的运动情况。关键词:集群运动、Boid模型、Lead-follower模型、MATLAB仿真一、问题重述在动物世界,大量集结成群进行移动或者觅食的例子并不少见,这种现象在食草动物、鸟、鱼和昆虫中都存在。这些动物群在运动过程中具有明显的特征:群中的个体聚集性很强,运动方向、速度具有
4、一致性。通过数学模型来模拟动物群的集群运动行为以及探索动物群中信息传递机制一直是仿生学领域的一项重要内容。附件给出了鸟群在空中组图、几种鱼群运动以及躲避鲨鱼追捕的相关视频,根据所给资料并在网上搜索相关资料,思考动物集群运动的机理,建立数学模型刻画动物集群运动、躲避威胁等行为,例如,可以考虑以下问题的分析建模:1、建立数学模型模拟动物的集群运动。2、建立数学模型刻画鱼群躲避黑鳍礁鲨鱼的行为。3、假定动物群中有一部分个体是信息丰富者(如掌握食物源位置信息,掌握迁徙路线信息),请建模分析它们对于群运动行为的影响,解释群运动方向决策如何达成。二、模型假设2.1、群体所处环境不受天气、气候的影响;2.2
5、、群体中的个体之间没有竞争;2.3、群体的活动范围有限;2.4、个体的感知范围是一个圆形区域。三、符号说明3.1、direcl:个体的本来方向;3.2、dm2:指向邻居中心的方向;3.3、direc3:邻居的平均方向;3.4、direc4:避免碰撞的方向;3.5、|direc51:远离捕食者的方向;3.6、|direc6|:捕食者运动方向的反方向;3.7、|direc71:群体的平均位置;3.8、dnn8:群体的平均方向;3.9、臼:速度;3.10、food:食物的位置;3.11、|寸:捕食者的位置;3.12、石:第i个个体的位置;3.13、|cons|:一致性序数;3.14、凹:群体的个数;
6、3.15、叩:邻居的个数。四、模型的建立与求解4.1、问题一(1)、Boid模型在群体运动过程中,每个个体都要遵守三条原则(尽量靠近邻居的中心、尽量与邻居的方向一致、尽量避免碰撞)运动,这三条原则对改变个体下一时刻运动方向起作用。下面对三个原则进行描述:a、向心性(靠近)每个个体周围都会有邻居,个体的运动应根据邻居们的运动来确定自己的运动方向。以邻居们所在位置的平均值作为邻居中心,每个个体都应具有向邻居中心靠拢的特性。工(pos-pos)公式表示为:direc2二mb、同向性(对齐)当邻居们的运动方向一致时,个体会和它的邻居朝同一个方向游动。工direcl公式表示为:direc3二-imc、排
7、斥性(避免碰撞)当个体和它的邻居靠的太近时,可能会发生碰撞,个体应自动避开,以免影响群体的运动,出现混乱。公式表示为:Idirec4=-direc2则下一时刻的运动方向(囚为权重,可以根据偏好决定):(2)、改进模型在Boid模型基础上,增加内聚性(向群体中心聚合)、排列性(朝平均的方向运动)可变速性三个原则,共同来限制个体的运动。a、内聚性仅具向心性可能会导致鱼群分散为多个小群体,为了避免这种情况发生,各个体在运动过程中都应主动向群体中心靠拢,跟随群体的运动。工pos公式表示为:direc7=nb、排列性仅与邻居的运动方向保持一致,不能很好地模仿群体的运动,所以个体的运动方向也要与群体的平均
8、运动方向一致。公式表示为:工(pos-pos)direc8=nc、可变速性对个体而言,由于视野半径是有限的,它只能根据自己认为的最优方向进行运动,在邻居的运动方向十分混乱时,它虽然可以上按照策略得出平均运动方向,但这个方向不能很好地刻画出周围的同步方向。在这种情况下,个体应采取相对保守的策略,即虽然得出了平均运动方向并调整了运动方向,但由于对这个方向的不确定性,为了避免多次进行方向调整,可以采取降低自己的速度,仅当邻居们已经达到同步的情况下,在令其以较快的速度进行运动。为了描述局域个体的同步程度,我们引入cons,称为第山个个体的视野半径内所i-l有个体的同步序列数:艺direclijcons
9、=ij-1艺|direc1cons的取值在0到1之间,取值越大,表示该半径内个体方向一致性好,即局域i同步程度越高;取值越小,则表示该处个体局域同步程度越低。当cons=1时,该半i径内所有个体方向都一致。我们将个体的速率大小的变化范围定为0,0.1。根据上面的讨论,可变速率的运动协议应当满足:a当cons(t=1,即视野半径内所有个体达到同步时,该个体的速率为01。ib、当cons(t)=0,即视野半径内所有个体的运动状态完全混乱时,该个体的速i率接近0。v(t+1)=v*eBconSj(t)1imax这里=0.1,同为一可调参数,当莎刁时,速度为原速度,当市诃,个体max111111的运动
10、速度比原模型快,系统更易趋于同步。这样,速率不仅具有改变下一时刻的作用,而且是携带信息的载体。这种信息就是个体的一致性序数。为了是所有的个体尽快达到同步,下一时刻速度方向的计算中,我们就利用这一信息,以加快收敛速度。当个体超出活动范围时,它会向相反的方向运动,即:direcl(t+1)=一direcl(t)ii当在活动范围内时,对各个原则的影响设置权重,在此更多地考虑聚集性和排列性。下一时刻的方向:direc1(t+1)=0.1*direc1(t)+0.1*direc2(t)+0.1*direc3(t)iiii+0.1*direc4(t)+0.3*direc7(t)+0.3*direc8(t)
11、iii下一时刻的位置:pos(t+1)=pos(t)+iidirec1(t)(、ii*v(t)direc1(t)i运用MATLAB模拟,可得:4.2、问题二当个体和捕食者的距离较短时,该个体迅速逃逸,暂时不考虑对群体的影响。运动方向当捕食者在其感知范围内且处于危险区之外,主要考虑个体逃逸,虽然此时群体的影响存在,但可假设它比较小;当捕食者处于个体感知范围之外时,按照第一问的原则进行运动。direc5邻居平均的运动方向群体平均的运动方向_群体中心的运动方向小鱼个体邻居中心的运动方向direc6运动方向捕食者下一时刻的万向:direcprdt+1)=min(pos(t)一direcprdt)idi
12、recpre(t)direcpre(t)捕食者下一时刻的位置:pre(t+1)=pre(t)+1.1*v*当鱼处在危险区时:direc5=pos一preiidirec6=-direcprei下一时刻的方向:direcl(t+1)=0.5*direc5(t)+0.5*direc6(t)iii下一时刻的位置:pos(t+1)=pos(t)+iidirecl(t)i*vdirecl(t)i当鱼能感知到捕食者,但不在危险区时:下一时刻的方向:direc1(t+1)=0.1*direc2(t)+0.1*direc3(t)+0.1*direc4(t)+0.25iiii*direc5(t)+0.25*dir
13、ec6(t)+0.1*direc7(t)+0.1*direc8(t)iiiidirec1(t)idirec1(t)i下一时刻的位置:pos(t+1)=pos(t)+ii运用MATLAB模拟,可得:t=Ost=10st=20s4.3、问题三采用Lead-follower模型,假设鱼群中有一部分个体是信息丰富者,设置含有食物的环境,这一部分个体最先感知到食物的存在,并以一定速率接近食物建立在第一问的基础上,由于个体之间有运动的联系,靠近信息丰富者的个体会感知到邻居的运动,这部分个体会首先向信息丰富者靠拢,并使自身的运动方向向信息丰富者的运动方向转移,使得有更多的个体向食物运动。再有了多数个体向食物
14、运动后,剩下的少部分离信息丰富较远的个体,由于必须向整体的中心和平均方向靠拢的原则,所以这部分个体会先向整体靠近,然后感知到向食物运动的邻居,接着使自己的位置和速度方向向食物转移。对于信息丰富者,几乎不受群体的影响,只考虑排斥性,但是速度不能太快,否则,就不能达到带动群体的效果,以最大速度的1/8做为信息丰富者的速度。信息丰富者下一时刻的方向:direcl(t+1)=0.5*direc4(t)+0.5*(food-pos(t)iii信息丰富者下一时刻的位置:pos(t+1)=ipos(t)+0.125*v*idirecl(t)direc当其他鱼接近食物时,它们的速度也会发生变化:direc1(
15、t+1)=0.5*(0.1*direc1(t)+0.1*direc2(t)+0.1*direc3(t)+0.1*iiiidirec4(t)+0.3*direc7(t)+0.3*direc8(t)+0.5*(food-pos(t)iiii运用MATLAB模拟,可得:t=Ost=20s五、模型的优缺点5.1、模型的优点、模型中给出的原则较好地揭示了动物集群运动行为的本质。、用MATLAB进行仿真,结果贴近实际。5.2、模型的缺点(1)、表达式中的权重都是人为规定的,有一定偏差。(2)、第三问中的食物没有考虑实际情况,将其固化,现实中会有水流等因素的影响而改变食物的位置。六、参考文献赵建,曾建潮,鱼
16、群集群行为的建模与仿真,太原科技大学班晓娟,宁淑荣,涂序彦,人工鱼群高级自组织行为研究田宝美,汪秉宏,基于Vicsek模型的自驱动集群动力学研究,中国科学技术大学王小红,基于多Agent的人工鱼群自组织行为研究,北京大学5翟超,张海涛,生命群协调行为模型的改进及同步控制研究,华中科技大学七、附录8.1、问题一的程序代码:pos=cell(1,30);fori=l:30posi=rand(1,1)*10,rand(1,1)*10,rand(1,1)*10%定义30个个体endx=zeros(1,30);y=zeros(1,30);z=zeros(1,30);v=0.1;%最大速度direc1=c
17、ell(1,30);%定义各个方向向量direc2=cell(1,30);direc3=cell(1,30);direc4=cell(1,30);direc7=cell(1,30);direc8=cell(1,30);cons=zeros(1,30);fori=1:30direc1i=rand(1,1)*10,rand(1,1)*10,rand(1,1)*10-posi;direc2i=zeros(1,3);direc3i=zeros(1,3);direc4i=zeros(1,3);endfort=1:1000fori=1:30m=0;n=0;k=0;l=0,0,0;direc7i=zeros
18、(1,3);direc8i=zeros(1,3);forj=1:30ifj=icontinueelseforr=1:30direc7i=(direc7i+posr-posi)./r;%内聚性和排列性direc8i=(direc8i+direc1r)./r;endif(norm(posi-posj)=0.1)%向心性和同向性m=m+1;k=k+norm(direc1j);l=l+direc1j;direc2i=(direc2i+(posj-posi)./m;direc3i=(direc3i+direc1j)./m;cons(i)=norm(l)/k;elseifnorm(posi-posj)=1
19、0)|(posi(2)=10)|(posi(1)=0)|(posi(2)=10)|(posi(3)=0)%限定个体活动范围direc1i=direc1i*(-1);direc1i=0.1*direc1i+0.1*direc2i+0.1*direc3i+0.1*direc4i+0.3*direc7i+0.3*direc8i;endposi=posi+direc1i/norm(direc1i)*v*exp(5*(cons(i)-1);endfori=1:30 x(i)=posi(1);y(i)=posi(2);z(i)=posi(3);endplot3(x,y,z,.)axis(010010010
20、,square,manual)gridon;pause(0.01)end8.2、问题二的程序代码:pos=cell(1,100);fori=1:100posi=rand(1,1)*5,rand(1,1)*5,rand(1,1)*5;%缩小活动范围至5*5*5endpre=rand(1,1)*5,rand(1,1)*5,rand(1,1)*5;direcpre=pos1-pre;%增加个体数目至100fori=2:100ifnorm(posi-pre)norm(direcpre)direcpre=posi-pre;endendx=zeros(1,100);y=zeros(1,100);z=zer
21、os(1,100);v=0.1;direc1=cell(1,100);direc2=cell(1,100);direc3=cell(1,100);direc4=cell(1,100);direc5=cell(1,100);direc6=cell(1,100);direc7=cell(1,100);direc8=cell(1,100);cons=ones(1,100);for(i=1:100)direc1i=rand(1,1)*5,rand(1,1)*5,rand(1,1)*5-posi;direc2i=zeros(1,3);direc3i=zeros(1,3);direc4i=zeros(1,
22、3);direc7i=zeros(1,3);direc8i=zeros(1,3);endfort=1:2000pre=pre+direcpre/norm(direcpre)*1.1*v/10;fori=1:100m=0;n=0;k=0;l=0,0,0;direc5i=zeros(1,3);direc6i=zeros(1,3);forj=1:100ifj=icontinueelsedirec7i=(direc7i+posj-posi)./j;direc8i=(direc8i+direc1j)./j;if(norm(posi-posj)=0.01)m=m+1;k=k+norm(direc1j);l
23、=l+direc1j;direc2i=(direc2i+(posj-posi)./m;direc3i=(direc3i+direc1j)./m;cons(i)=norm(l)./k;elseifnorm(posi-posj)0.01n=n+1;direc4i=(direc4i+posi-posj)./n;endendendifnorm(posi-pre)=1%定义危险区域direc5i=posi-pre;direc6i=(-1)*direcpre;direc1i=direc5i+direc6i;posi=posi+(0.5*direc5i+0.5*direc6i)*v;ifnorm(posi-
24、pre)=0.1posi=-111,-11,-11;direcpre=rand(1,1)*10,rand(1,1)*10,rand(1,1)*10;endforr=1:30ifnorm(posr-pre)=5)|(posi(2)=5)|(posi(1)=0)|(posi(2)=5)|(posi(3)=0)direc1i=(-1)*direc1i;posi=posi+direc1i/norm(direc1i)*v;elseifnorm(posi-pre)=5)|(pre(2)=5)|(pre(1)=0)|(pre(2)=5)|(pre(3)=0)direcpre=(-1)*direcpre;en
25、dpre=pre+direcpre/norm(direcpre)*1.1*v/10;fori=1:100 x(i)=posi(1);y(i)=posi(2);z(i)=posi(3);endplot3(x,y,z,.,pre(1),pre(2),pre(3),o)axis(050505,square,manual);gridon;pause(0.1);end8.3、问题三的程序代码:pos=cell(1,30);%确定食物位置food=5,5,5;fori=1:30posi=rand(1,1)*10,rand(1,1)*10,rand(1,1)*10endx=zeros(1,30);y=zer
26、os(1,30);z=zeros(1,30);v=0.1;direc1=cell(1,30);direc2=cell(1,30);direc3=cell(1,30);direc4=cell(1,30);direc8=cell(1,30);direc9=cell(1,30);cons=zeros(1,30);fori=1:30direc1i=rand(1,1)*10,rand(1,1)*10,rand(1,1)*10-posi;direc2i=zeros(1,3);direc3i=zeros(1,3);direc4i=zeros(1,3);direc7i=zeros(1,3);direc8i=zeros(1,3);endfort=1:2000fori=1:10%信息丰富者行为n=0;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年环戊酮项目建设总纲及方案
- 2025年计算机系统配套用各种消耗品项目可行性建设方案
- 一年级数学(上)计算题专项练习汇编
- 我爱中国教育主题班会
- 2025年实验仪器装置合作协议书
- 陕西艺术职业学院《建筑设计初步(一)》2023-2024学年第二学期期末试卷
- 陕西财经职业技术学院《经济写作》2023-2024学年第二学期期末试卷
- 2025年数控组合机床合作协议书
- 随州职业技术学院《食品工艺学实验》2023-2024学年第二学期期末试卷
- 集美大学诚毅学院《室内模型设计》2023-2024学年第二学期期末试卷
- 英语-安徽省安庆市2024-2025学年高三下学期第二次模拟考试试卷(安庆二模)试题和答案
- 2025届江苏省七市高三第二次调研测试物理+答案
- 阳光心理 健康人生-2025年春季学期初中生心理健康教育主题班会课件
- 人教部编版小学语文一年级下册第一次月考达标检测卷第一、二单元试卷含答案
- 2025年国家发展和改革委员会国家节能中心面向应届毕业生招聘工作人员3人历年自考难、易点模拟试卷(共500题附带答案详解)
- 衍纸简介课件
- 2025年全国国家版图知识测试竞赛题库(附答案)
- 2025年衢州职业技术学院单招职业倾向性测试题库完美版
- 2025年上海青浦新城发展(集团)限公司自主招聘9名自考难、易点模拟试卷(共500题附带答案详解)
- 来访人员安全入场教育
- 《动漫亮相》基于标准的教学课件
评论
0/150
提交评论