动物集群运动模型问题
摘要
本文对于动物群体运动问题,建立了矢量方程模型。运用matlab编程对鱼群运动进行了仿真,得到了动物集群运动和躲避威胁等行为仿真结果。
问题一中,根据实际情况,制定了鱼运动的三条规则。然后将群体看做由粒子组成的集合,通过分析粒子受力,建立了矢量运动方程模型:
????vxii
?????mivi?Fi??vi?fi
接着算出加速度矢量,进而求解运动轨迹。根据所列方程,利用matlab编程,
对聚群运动进行了仿真,并绘制出鱼群环绕运动的稳定分析图。
对于问题二,根据鱼躲避捕食者的运动状态,建立了躲避运动的模型:
mi?dvi(t)dt?mi?e?vi(t)ei(t)?vi(t)Ti??dxivi(t)?dt??j?i?fij
然后将鲨鱼运动分为开始接近鱼群到在鱼群中运动,最后离开鱼群等三个过程,细致分析了三个过程中鱼群的变化情况。将运动方程与分析相结合,利用matlab编程,得到较为理想的仿真结果。
问题三中,在分析信息丰富者对个体运动的影响时,在第一问的基础上,引入信息丰富者对个体的影响力。将信息影响力与其他作用力力矢量相加,得到个体运动影响力,然后计算个体加速,进而求解出运动轨迹。根据分析方程,得出信息丰富者会通过信息的传递,使群体跟随信息丰富着运动。
关键词:矢量;仿真;鱼群运动
1
一、问题重述
在动物界,大量集结成群进行移动或者觅食的例子并不少见,这种现象在食草动物、鸟、鱼和昆虫中都存在。这些动物群在运动过程中具有很明显的特征:群中的个体聚集性很强,运动方向、速度具有一致性。通过数学模型来模拟动物群的集群运动行为以及探索动物群中的信息传递机制一直是仿生学领域的一项重要内容。
请观察下面附件中给出的图片和视频资料,或者在网上搜索相关资料观察,思考动物集群运动的机理,建立数学模型刻画动物集群运动、躲避威胁等行为,例如,可以考虑以下问题的分析建模:
1. 建立数学模型模拟动物的集群运动。
2. 建立数学模型刻画鱼群躲避黑鳍礁鲨鱼的运动行为。
3. 假定动物群中有一部分个体是信息丰富者(如掌握食物源位置信息,掌握迁徙路线信息),请建模分析它们对于群运动行为的影响,解释群运动方向决策如何达成。
二、模型假设
(1)假设所有的个体生理上不存在差异,并且遵循同样的准则。 (2)假设每个个体能够感知它在群体的位置(内部,或在群体的边沿)。 (3)假设不同相邻个体的相互作用力是累积的。
(4)假设一对个体间力的大小取决于两者间的距离和它们的相对速度。 (5)假设两个体间距离决定的力是一个平行于连接两者向量的向量,而速度决定力是一个平行于两者速度差向量的向量。
三、符号说明
符号 dij 含义 相邻粒子距离 r0 环绕半径 ?xi 粒子位置矢量 2
?vi 粒子速度矢量 ?Fi 主动力 阻尼系数 环绕角速度 斜率 相互作用力 ? ?0 s ?fi df 鱼最大感知距离 dw 鱼最大告警距离 四、模型建立于求解
4.1问题一 4.1.1问题分析
通过分析视频资料,可以看出鱼群是一种自组织群体,没有固定的领导,但是群体往往呈现出运动方向有序、运动协调及集聚性等特征。这种自组织群体的典型特征及其在进化和生存方面的意义。对鸟类、昆虫、鱼群等自组织群体的观察研究结果表明,群体中的每一个体在遵循简单的行为规则条件时,就有可能出现有序协调的运动状态。
个体鱼的运动行为都具有一定的特性,具体情况如下图1所示:
3
图1 行为分析图
(1)当0?dij?d1时,由于距离过近,鱼之间会产生排斥作用。 (2)当d1?dij?d2时,距离适中,鱼的运动状态会与它相邻鱼相协调。 (3)当d2?dij?d3时,距离较远,鱼之间会相互吸引。
(4)当dij?d3时,距离过远,超出了鱼的感知范围,鱼之间不产生影响。 4.1.2模型建立
根据上面的运动特点,将鱼群看做粒子集合,那么其中的个体一个粒子,粒子的运动影响分为主动因素和被动因素,据此建立鱼群运动的数学模型:
建立一个有n个粒子的群体,每个粒子编号为i=1,2,?,n。分别用xi表示位置,用vi表示速度。每个粒子有一个前端和后端,并且让粒子i的身体走向与运动方向(即速度vi的方向)相同。粒子i的运动遵循牛顿定律,可得到模型:
????vx (1) ii?????mivi?Fi??vi?fi (2)
?这里取粒子质量mi?1。Fi???代表主动力,由粒子自身产生,取决于环境影响
和粒子在群体中的位置。其中系数?保证了速度有界。式(2)?v(??0)是阻尼力,表示如果一个粒子停止推进,那么它的速度会以比率?减小到零。
4
??fi是指相邻的
粒子对它的作用力。对于t时刻有,
Ni(t)?[ai(t)?aj(t)]?[bi(t)?bj(t)]?[ci(t)?cj(t)]?d3
2222这里a,b,c代表三个坐标轴,将粒子i的相邻粒子j定义为此范围内的所有粒子。
?Fi通常是常向量,根据假设,相互作用力
???xvfi?fi?fi??fi由下式给出:
?j?x?ijg?(xij)??xij?j?v?ijh?(vij)? (3)
vij??????其中xij?xj?xi;vij?vj?vi。
??xvfi和fi分别是取决于位置和速度的力。j
代与
表所有影响粒子i运动的粒子。
??xvfi与粒子和相邻粒子位置的矢量差有关;fi粒子和相邻粒子速度的矢量差有关。
为产生一个非零的间隔距离,g?(x)通常对于较大的x为正值,较小的x值为负值,表示短程排斥和长程吸引。g?(x)?0(?0)指粒子j对粒子i产生一个吸引力(排斥力);而h?(x)?0(?0)指力
?vfi使粒子
i的速度趋向(偏离)于粒子j的
速度。需要注意的是,组成相互作用力的位置影响的力和速度影响力,会指向不同的方向,并且具有不同大小。
图2 模型向量二维示意图
4.1.3模型求解:
可将所建立的模型,应用于三维空间。建立三维坐标系,p,q,t分别代表三个坐标轴上的单位向量,那么可将向量用坐标表示,即(a,b,c),向量的运算就可转化为坐标的运算,本文就二维空间的运动进行分析求解。 (1)聚集的运动
??? 5