当前位置:文档之家› 动物集群运动行为模型-19

动物集群运动行为模型-19

鱼群行为的建模与仿真摘要本文主要对人工鱼的集群行为,对天敌的有效躲避,和在集群中部分个体获得食物信息的情况下,整个鱼类集群的运动行为进行了研究。

并利用MATLAB 工具进行了模拟仿真。

针对问题一,我们对鱼类的集群运动主要提出了聚集、和邻居速度匹配、避免碰撞三个原则。

基于这三个原则建立了鱼类单个个体的自治模型,每个个体通过相互作用,使集群形成。

本文对三个原则的具体实现进行了分析和假设。

得到了计算机模拟仿真下的鱼类集群图形。

针对问题二,在模型一的基础上,我们增加了鱼群有效逃避天敌的规则。

并利用MATLAB进行在天敌存在的情况下,鱼类集群行为的运动特征,并且得出了较好的仿真结果。

针对问题三,我们建立了鱼群觅食过程中的信息交流机制,得出了在部分人工鱼知悉食物信息的情况下,整个鱼群的运动状态的仿真结果。

关键词:集群运动模拟仿真个体自治一、问题的提出在动物界,大量集结成群进行移动或者觅食的例子并不少见,这种现象在食草动物、鸟、鱼和昆虫中都存在。

这些动物群在运动过程中具有很明显的特征:群中的个体聚集性很强,运动方向、速度具有一致性。

通过数学模型来模拟动物群的集群运动行为以及探索动物群中的信息传递机制一直是仿生学领域的一项重要内容。

根据相关资料,建立数学模型刻画动物集群运动、躲避威胁等行为,解决如下问题:问题一:建立数学模型模拟动物的集群运动。

问题二:建立数学模型刻画鱼群躲避黑鳍礁鲨鱼的运动行为。

问题三:假定动物群中有一部分个体是信息丰富者(如掌握食物源位置信息,掌握迁徙路线信息),请建模分析它们对于群运动行为的影响,解释群运动方向决策如何达成。

二、基本假设1、假设除视觉外其他感官在第一问中的影响忽略,如嗅觉,听觉;2、假设每条鱼体型、感知能力相同;3、假设鱼群在集群运动中没有死亡;4、假设鱼的反应速度很快,改变速度所需时间非常短;5、假设鱼遇到边界,以反射的方向反弹。

三、定义符号说明四、问题的分析及模型的建立、求解4.1 对于问题一4.1.1 问题的分析关于集群行为的研究,大致可以分为三个阶段:第一阶段是生物学家做了大量研究,发现了许多生物群体特有的动态行为;第二阶段是实验物理学家和计算机专家做了许多实验和仿真,用模拟仿生的方法证明这种生物群体现象可以由个体的简单行为规律获得;第三阶段就是利用数学对群集行为进行严格建模及分析。

动物的群体行为是相当于个体行为而言的。

群体行为决定着个体行为的方向,个体行为是群体行为的体现。

群体是由个体构成的,因此,群体行为离不开个体行为但群体行为并不是个体行为的简单相加。

所以我们在研究鱼群集体行为的过程中,首先对群体中单个鱼的行为做出研究,然后再从内部影响和外部作用两方面入手,分析鱼群的群集行为。

对群集行为的研究主要有三种方法。

第一种是欧拉法,在欧拉法中,一个群体的模型中的每个个体成员不作为单个实体进行研究,而是通过密度概念将整个群体作为一个连续集描述,欧拉法有一个明显的缺点就是忽略了个体的特性。

第二种是拉格朗日法,拉格朗日法基本的描述就是每个个体各自的运动方程。

第三类方法就是基于仿真的建模方法,基于仿真的群集模型无需建立像描述群体分布的费克方程或描述各种吸引力/排斥力作用的牛顿运动方程,而是通过群体中的个体建立模拟实际生物个体动态行为的行为规则来研究群集行为。

4.1.2 基于个体自治的鱼类集群模型我们所进行的鱼群集群行为的仿真模型由三部分构成: (1)环境。

(2)个体。

(3)行为规则。

环境是个体生存的空间,个体在环境中活动,利用环境中的资源来进行生存。

个体的综合构成了研究的群体对象。

个体的演化过程由其行为规则控制,行为规则则是决定了个体与个体之间、个体与环境之间相互作用的方式。

任意时刻个体在环境中都有一个确定的位置并且由其所占据的方位来确定。

(一)环境的描述首先对二维的鱼群世界进行仿真,环境应为一个二维的有限平面区域,使用反射型边界,当鱼游到边界以后按照镜子反射的方式反弹回来。

我们可以把环境描述成为一个宽为width ,长为length 的二维世界,如下图图1:个体及其所处环境因为计算机仅仅能处理离散的信息,所以环境也是一个离散的世界。

我们用计算机屏幕上一系列运动的点代替鱼个体,给它们设置坐标、速度等参数,就可以把现实中的鱼映射到虚拟环境中来。

所有个体在该环境中游动。

描述个体的位置和方向如下:cos ,sin x y v v v v θθ=⋅=⋅ (1)其中θ为速度方向和横轴方向的夹角。

','x y x x v dt y y v dt =+=+⎰⎰(2)其中,(,)x y 为鱼的初始坐标位置,(',')x y 为一段时间后,鱼的坐标位置。

(二)个体描述对个体鱼的建模是仿真的核心与关键。

把每条鱼看成一个人能够自主决策的Agent ,他们会根据自己的观察来感知周围的环境,并按照一定的规则决策。

鱼类个体之间的交互是由其视觉范围的大小决定的。

个体的视觉范围是半径为r 角度为300度的一个扇形。

图2:鱼类的视觉范围主体之间的交互作用是局部的,只能发生在所定义的邻域内。

个体具有以下属性:(1)位置:个体位置由一组坐标(x,y)表示;(2)感知范围:个体所能感知的范围。

个体的感知范围取决于所定义邻域半径的大小,感知范围越大,表明该个体与环境和其他个体的作用越强。

(3)碰撞距离:个体之间的最短距离。

当个体之间的距离小于该值时,个体将朝着远离的方向游动。

(4)初速度:仿真开始时,赋予每个个体的速度值,大小相等,方向相同。

(5)最大速度:鱼类在游动时所能达到的极限速度。

(6)加速度:个体受到外界干扰时,对个体行为的改变,表现为的速度的改变。

(7)反弹速度:个体到边界时反弹回来的速度。

(三)规则描述人工鱼的基本行为主要包括:(1)避开障碍物。

(2)游向目标。

(3)追逐目标。

(4)离开。

(5)闲逛。

(6)逃逸。

(7)集群。

个体的行为规则主要表现为群体游动时的游动规则,游动规则主要包括:[1]聚集规则(尽量靠近邻居)[2]速度匹配(尽量与邻居的运动方向一致)[3]避免碰撞(尽量避免与群体内部和群体外部的障碍发生碰撞)在这里我们定义邻居为如果两个个体之间的距离小于某个给定的值r,则它们互为邻居。

每条人工鱼下一刻游动的方向都要受这三个因素和当前鱼的游动方向的影响,将这四个方向的平均作为人工鱼下一刻游动的方向如下图。

图3:人工鱼下一刻的游动方向然而四个因素对鱼群的影响力的大小不同,根据它们对人工鱼下一刻运动方向影响的大小进行赋权,则人工鱼下一刻的运动方向(与二维区域横轴的夹角)111223344t t t t t θλθλθλθλθ+=+++ (3) 12341λλλλ+++= (4)下面分别对四条游动准则分别进行描述:(1)聚集性。

每个个体都有向邻居中心靠拢的特性,邻居中心为感知范围内所有个体所在位置的平均值。

()iQ Q i n n=∈∑ (5)当前状态下的人工鱼相对中心位置的方向为arctany yx xθ-=- (6) 其中,(,)Q x y =为鱼群靠拢的中心,(,)x y 为人工鱼当前所在位置。

(2)速度匹配人工鱼要与邻域内的鱼保持游动时速度大小和方向一致,速度和方向为邻域内的均值,则ivv n=∑ (7)2arctani ix x y y nθ--=∑ (8)(,)i i x y 为邻域内第i 条鱼的位置,i v 为邻域内第i 条鱼的速度。

(3)避免碰撞为了避免鱼群之间的碰撞。

在人工鱼进入危险距离后,若即将与一条鱼碰撞,设为1f ,那么人工鱼就以与1f 运动的方向垂直的方向进行规避。

若是即将与两条鱼碰撞,分别设为12,f f 。

则人工鱼就以与12,f f 运动的合成方向相垂直的方向进行规避。

当有n 条时,同样以与n 条鱼运动合成方向的垂直方向进行规避。

如下图:图4:避免碰撞的规避图在三维状态下,我们采取相同的准则,进行模拟仿真。

环境应为一块有限的三维区域,我们选定(x,y,z)作为人工鱼的位置,用它游动方向和x 轴,y 轴和z 轴的夹角αβγ(,,)作为人工鱼游动的方向。

聚集性的方向为人工鱼和鱼群中心的方向向量。

速度匹配的方向为邻居所有鱼的夹角αβγ(,,)的均值。

避免碰撞仍然采用合成的方法。

4.1.3 模型的求解通过MATLAB 仿真模拟,得到在二维条件下,初始状态的鱼群,如下图:图5:鱼群初始状态在模型一的规则下,鱼群的聚群行为-1000-800-600-400-2002004006008001000图6:二维鱼群集群应用二维的规则,同样可以得到在三维状态下的模拟成果图7:鱼群三维初始状态三维集群之后的状态,如下图图8:三维鱼群的集群4.2 对于问题二4.2.1 问题的分析在问题一的分析和模型的建立求解过程中,我们并没有考虑人工鱼群在食物链中受到天敌威胁的情况。

鱼类在海洋中有效的躲避天敌也是鱼类运动中的一项规则。

所以我们在第一问的基础之上建立鱼类的躲避规则,重新仿真鱼类集群运动。

4.2.2 模型的建立在游动规则的基础上加入躲避天敌这项规则,进一步完善模型。

人工鱼下一刻的运动状态和方向也要受到天敌的影响。

[4] 躲避天敌人工鱼在遭遇黑鳍礁鲨鱼时,迅速以与相对黑鳍礁鲨鱼相反的方向逃离。

131arctanx x y y α-=- (9) 其中,(,)x y 为人工鱼所在的位置,11(,)x y 为天敌所在的位置,3α为人工鱼遭遇天敌时逃离的方向与横轴的夹角。

在三维的状态中,人工鱼相对黑鳍礁鲨鱼的向量111(,,)x x y y z z τ=---。

求出τ和x 轴,y 轴,z 轴的夹角()111,,αβγ,从而确定人工鱼的逃离方向。

4.2.3 模型的求解利用MATLAB 编程模拟仿真在二维状态下人工鱼在黑鳍礁鲨鱼进入的初始状态下的运动情况,如下图:-1000-800-600-400-20002004006008001000图9:黑鳍礁鲨鱼进入的初始状态 (注:·表示人工鱼,o 表示黑鳍礁鲨鱼)黑鳍礁鲨鱼游动T 时刻,人工鱼对它的躲避行为,如下图:图10:鱼群对黑鳍礁鲨鱼的躲避行为(注:·表示人工鱼,o 表示黑鳍礁鲨鱼)利用MATLAB 编程模拟仿真在三维状态下人工鱼在黑鳍礁鲨鱼进入的初始状态下的运动情况,如下图:4图11:加入黑鳍礁鲨鱼的初始状态 (注:·表示人工鱼,o 表示黑鳍礁鲨鱼)黑鳍礁鲨鱼游动T时刻,人工鱼对它的躲避行为,如下图:4图12:鱼群对黑鳍礁鲨鱼的躲避行为(注:·表示人工鱼,o表示黑鳍礁鲨鱼)4.3 对于问题三4.3.1 问题的分析在问题一和问题二的解决过程中,我们并未考虑人工鱼的能量系统,都是在假设人工鱼不会在能量消耗下自然死亡的情况下进行模拟仿真的。

相关主题