当前位置:文档之家› 动物集群行为的建模与仿真_ 精品

动物集群行为的建模与仿真_ 精品

动物集群行为的建模与仿真摘要生态系统中,动物个体的行为相对简单,集群后却能表现出复杂的群体行为。

个体行为是构成群体行为的基础,个体之间的组织结构、个体行为之间的关系和群体行为的涌现机制是研究群体行为的关键要素。

本文首先基于boid模型的三原则,从个体出发,对动物个体进行建模,分析个体之间的行为规则及相互影响,从而仿真出动物的集群行为。

仿真结果在一定程度上反映了动物集群行为的实际情况,但该模型对各个参数的设置非常敏感,动物群体的速度不会趋于稳定一致,而且此模型假设各动物的速率相等且保持不变是不合理的,所以对模型进行了改进。

改进模型引入了势场函数,将个体之间的相互作用抽象成吸引力和排斥力,利用牛顿运动定理描述个体运动规律。

通过仿真结果发现,动物个体会先调整各自的间距,使其相互靠近以免落单,但又不至于相互碰撞;当动物个体之间的距离接近平衡距离时,动物个体会保持相对位置基本不变,调整各自的速度方向使趋近一致并平稳;另外,个体数目越多,出现落单的可能性就越小。

上述结论都是符合实际情况的,说明改进后的模型更合理。

鱼群躲避鲨鱼的行为,可以认为是由鲨鱼对鱼群的排斥力引起的,所以在原有合力的基础上再加上由鲨鱼引起的斥力即得到小鱼发现鲨鱼后的合力。

仿真得到的结果反映,当有鲨鱼出没时,鱼群会迅速改变运动状态,逃离鲨鱼的攻击。

动物群中的信息丰富者可以理解成Leader-Follower模型中的Leader,其他个体都是Follower。

结合问题一中改进的模型和Leader-Follower模型,通过matlab编程仿真得到的结果反映了Leader对整个群体的作用和影响。

关键词:集群行为 boid模型势函数 leader-follower模型 matlab仿真1 问题重述在动物界,通常有一些动物会成群地行动,它们在运动过程中具有很明显的特征:群中的个体聚集性很强,运动方向、速度具有一致性。

近几十年来,智能群体(flock /swarm)的协调控制问题引起了研究人员的极大关注。

最近在通信,计算技术,以及相关问题在生物学,社会行为学,统计物理,计算机图形学方面的进展,大大推动了此领域 的研究。

研究动物集群运动的机理,建立数学模型刻画动物集群运动、躲避威胁等行为,对智能群体(flock /swarm)的协调控制问题有重要地作用。

从以下几个方面分析建模:1. 建立数学模型模拟动物的集群运动。

2. 建立数学模型刻画鱼群躲避黑鳍礁鲨鱼的运动行为。

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

2 模型假设1. 假设所有动物个体都可以看成质点;2. 假设动物群体中的决策者会通过一种特殊信息(气味,动作等)通知其他个体。

3 符号说明i P 动物i 的位置向量;ij P 动物i 与动物j 的相对位置向量;i V 动物i 的瞬时速度;i a 动物i 的加速度;max v 动物个体的最大速率;b d 动物个体之间的平衡距离;s R 动物个体的感知半径;ij V 动物i 与动物j 之间的势场函数;ij F 动物j 对动物i 的作用力;i N 动物i 的邻居个数;4模型建立与模型求解4.1 动物集群运动的建模与仿真动物集群行为由三部分因素构成:环境、个体、行为规则。

环境是个体的生存空间,个体在环境中活动,收集环境中的各种信息(食物,障碍,敌人等等);个体的特性(感知范围,速度,加速度等)制约了个体的运动,而个体的总和构成了研究的群体对象;群体的演化过程由其行为规则集来控制,行为规则决定了个体与个体之间、个体与环境之间相互作用的方式。

由于该问不考虑动物觅食、避险等行为,只研究动物的集群行为,所以在这里忽略环境对动物行为的影响,假设动物的活动范围无穷大。

4.1.1 个体的描述把每个动物个体看成是一个能够自主决策的智能体,它们会根据自己的观察来感知周围的环境,并按照一定的规则决策。

个体之间的交互作用是局部的,只能发生在所定义的邻域内。

个体应当具有以下属性:(1)感知范围s R :个体所能感知的范围。

个体的感知范围取决于所定义邻域半径的大小和个体与领域之间的夹角(本文中angle 150 ),感知范围越大,表明该个体与其它个体的作用越强,如下图所示:图一 感知范围示意图(2)位置P :个体位置向量由一组坐标(x, y ,z)表示。

(3)速度V :每个个体在运动时都具有一定的速度,它是瞬时的,具有大小和方向,用向量(x ,y ,z )表示。

(4)加速度a :个体改变速度大小的能力。

(5)最大速度max V :每个个体的速度不可能无限增长,具有一个最大值。

(6)平衡距离b d :个体之间的平衡距离。

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

当个体之间的距离大于该值时,个体将朝着接近的方向运动。

4.1.2 行为规则的描述1987年,Reynolds[2]提出了一个模仿动物集群的计算机仿真模型,叫做Boid 模型,Boid 模型基于如下3条启发式规则:1)分离(separation):避免与邻近的群成员发生碰撞。

2)调整(alignment):试图与邻近的群成员保持速度匹配。

3)聚合(cohesion):试图与邻近的群成员保持接近。

Reynolds 最近的论文[3]对以上三条规则做了详细的解释,所以这三条规则是可信的。

1.分离原则的实现首先定义一个概念,当前动物能感知到的个体称为邻居。

当某动物和它的邻居靠的太近时,这些邻居的中心会排斥该动物,使其向相反方向离开,此时的排斥邻居中心为观察范围内且相对距离小于平衡距离的各个体所在位置的平均值。

图二 分离原则示意图排斥邻居中心的公式表示为: ()=ei e e eP P i N N ∈∑ (1) e P 表示为(),,e e e x y z ,为排斥邻居中心位置,(),,ei ei ei ei P x y z 为各排斥邻居的位置,e N 为排斥邻居的数目。

该动物由于分离原则所产生的运动方向用一个向量()()1111=,,D t αβγ 来表示,即为:111αβγ⎧⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎩ (2) 其中,()000,,x y z 表示当前动物的位置坐标。

2.聚合原则的实现每个个体都有向邻居中心靠拢的特性,邻居中心为感知范围内且相对距离大于平衡距离的各个体所在位置的平均值(如图三所示的绿色个体):图三 聚合原则示意图 中心位置的计算公式与排斥邻居中心位置的计算类似,用(),,a a a a P x y z 表示 某动物由于聚合原则所产生的运动方向用向量()()2222=,,D t αβγ 来表示,计算公式如下:222αβγ⎧⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎩(3) 3.调整原则的实现个体会不断调整自己的运动方向,尽量和它的邻居保持一致。

如下图所示:图四 调整原则示意图 某动物由于调整原则产生的运动方向向量为()()3333=,,D t αβγ ,公式表示为: ()()3unite i v D t i N N ⎛⎫=∈ ⎪⎝⎭∑ (4)unite 是将向量进行单位化,因为方向向量是用单位向量表示的。

i v 为各个邻居的速度,N 为邻居的个数。

假设每个动物个体都要遵守以上三条规则,这三条规则对改动物个体下一时刻运动方向起作用。

但动物个体的运动方向不可能立刻改变,还表现了某种惯性的作用。

这种惯性作用阻止运动方向的改变,设为:()()()44440,,unite D t v αβγ= (5)0v 为当前动物个体的速度。

设()()()()()+1=+1,+1,+1D t t t t αβγ 为下个周期动物个体的运动方向向量,计算公式如下:()()()()()112233441234+11D t D t D t D t D t λλλλλλλλ⎧=+++⎪⎨+++=⎪⎩(6) ()()()()1234 D t D t D t D t 、、、分别为分离原则,聚合原则,调整原则,惯性引起的方向向量。

1234 λλλλ、、、是权重,反映各规则对动物个体运动的影响程度,不同的动物取值有差异。

设个体运动速度速率为=n v v ,那么个体k 的位置迭代公式为:()()()()()()()()()=-1+-1=-1+-1=-1+-1k k n k k k n k kk n k x t x t v t y t y t y t z t x t v t αβγ⎧⎪⎨⎪⎩ (7) 4.1.3仿真结果假设动物的运动速率=5n v ,感知半径=3s R ,平衡距离=2b d ,各权重1234=0.15,=0.25,=0.35,=0.25λλλλ,取时间步长为0.1s ,根据以上三个原则以及惯性所确定的位置迭代方程,通过matlab 编程仿真,我们得到了动物个体集群行为的仿真动态图中箭头方向表示个体的速度方向,分析图五、六、七,初始状态各动物个体的速度方向是随机的,杂乱无章,而且位置相对分散。

而5s 时各动物个体的速度方向趋近一致,位置也相对集中了,但速度方向并未高度一致,根据聚合原则,它们还会朝着集合的趋势运动。

所以到了10s 时,动物个体高度集中,此时分离原则将会占主导地位,所以从图七可以看出它们的速度方向都是背离的。

从以上这些方面分析,此模型在一定程度上能够反映动物的集群行为。

但是,该模型对各个参数的设置非常敏感,我们试着将参数设置成不同的值,发现仿真的结果有较大的区别,这就导致很难找到一组参数使动物群体的运动速度和相对位置趋于平稳并收敛于某个值,这对很多动物群体是不适用的。

同时此模型假设各动物的速率相等且保持不变,而且动物的速度在一瞬间就可以到达期望的方向,这显然是不合理的,所以我们对模型进行了改进。

4.1.3基于势函数的模型修正根据牛顿运动定律,动物个体的运动都可以用位移i P 、速度i v 、加速度i a 来描述,用公式表示如下: ==i i i i d P v dt d v a dt ⎧⎪⎪⎨⎪⎪⎩ (8) 上式i 的变化范围从1到N ,N 为群体中动物的总数目,()=,,i i i i P x y z 表示i 动物的位置向量,那么两个动物个体的相对位置向量为=-ij j i P P P 。

由牛顿第二定理,=F a m∑ ,F ∑ 为合外力,m 为质量。

上述的分离原则和聚合原则,可以抽象成排斥力和吸引力,这样可以求出动物个体的加速度,避免了速率不变的假设。

动物个体之间有一个平衡距离b d ,当>i j b P d 时,两者之间表现为吸引力;当<ij b P d 时,两者之间表现为排斥力。

这一现象类似于分子之间的作用力,由物理知识可知,分子之间的作用力是由势场引起的,所以在这里引入了势函数来描述动物个体之间的吸引力和排斥力。

相关主题