鱼群运动行为模型.doc

上传人:文库蛋蛋多 文档编号:2397015 上传时间:2023-02-17 格式:DOC 页数:20 大小:1.37MB
返回 下载 相关 举报
鱼群运动行为模型.doc_第1页
第1页 / 共20页
鱼群运动行为模型.doc_第2页
第2页 / 共20页
鱼群运动行为模型.doc_第3页
第3页 / 共20页
鱼群运动行为模型.doc_第4页
第4页 / 共20页
鱼群运动行为模型.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《鱼群运动行为模型.doc》由会员分享,可在线阅读,更多相关《鱼群运动行为模型.doc(20页珍藏版)》请在三一办公上搜索。

1、鱼群运动行为模型摘要本文研究了鱼群运动时受环境及邻近同族的影响而改变速度方向的机制,并以此为基础分析了鱼群在躲避捕食者和觅食时的信息传递和转移路线。对于问题一,本文考虑平衡状态时,即没有捕食者威胁也无觅食和迁移的需求时,个体鱼的游动规律。本文假设个体鱼在二维平面内游动时能够感知到一定范围(R)内的同族的位置和游动方向,并遵循四个规则:惯性规则、靠近规则、对齐规则、规避规则,个体鱼的运动方向由这四个规则对鱼的影响大小决定,。由此可对每一条鱼的运动状态进行迭代更新。对于问题二,本文考虑在二维平面中引入捕食者,并假设捕食者将游向其感知范围(R0)内距离其最近的个体鱼,同时受其自身游动惯性的影响,则其

2、游动方向。由此可对捕食者的游动状态进行迭代更新。当捕食者靠近个体鱼,出现在个体鱼的感知范围内时,小鱼将产生避险意识,避险方向为捕食者到个体鱼的方向,同时向其感知范围内的个体鱼发送告警信号,接受到告警信号的个体鱼将产生离散意识,离散方向为其感知到的避险个体鱼游动方向的平均方向。则此时小鱼的游动方向。由此可对捕食者和个体鱼的运动状态进行迭代更新。对于问题三,本文仅考虑掌握食物源位置信息的信息丰富者,它们在遵循问题一中提出的游动规则条件下,将主动靠近食物源,并且把它向食物源游去的信息告知邻居,召集其它个体鱼共同觅食。对于非信息丰富者来说,它能受到其感知范围内信息丰富者的召集信息,并趋向这些信息丰富者

3、的实际游动方向的平均方向,追随它们共同觅食。此时个体鱼的游动方向:。对于信息丰富者,受到召集作用的权重。对于非信息丰富者,游向食物源的权重。由此可得鱼群觅食的集群运动情况。关键词:个体运动 集群运动 运动规则 一、 问题重述1.1问题背景 在动物界,大量集结成群进行移动或者觅食的例子并不少见,这种现象在食草动物、鸟、鱼和昆虫中都存在。这些动物群在运动过程中具有很明显的特征:群中的个体聚集性很强,运动方向、速度具有一致性。在生态系统中,动物个体的行为相对简单,集群后却能表现出复杂的群体行为。个体行为是构成群体行为的基础,个体之间的组织结构、个体行为之间的关系和群体行为的涌现机制是研究群体行为的关

4、键要素。通过数学模型来模拟动物群的集群运动行为以及探索动物群中的信息传递机制一直是仿生学领域的一项重要内容。目前主要研究有仿生的群体优化算法,群体组织内部的通信机制及其应用方面 ,如微粒群算法、 蚁群算法、 群体机器人等。1.2 目标任务 题目要求查阅相关资料,思考动物集群运动的机理,建立数学模型刻画动物集群运动、躲避威胁等行为,主要针对以下问题分析建模:1. 建立数学模型模拟动物的集群运动。 2. 建立数学模型刻画鱼群躲避黑鳍礁鲨鱼的运动行为。3. 假定动物群中有一部分个体是信息丰富者(如掌握食物源位置信息,掌握迁徙路线信息),请建模分析它们对于群运动行为的影响,解释群运动方向决策如何达成。

5、二、模型假设(1) 假设所有个体鱼具有相同的物理特性;(2) 假设所有个体鱼具有有限感知能力以及遵循共同的行为规则 ; (3) 假设所有个体鱼之间的相互作用及信息的交互不受外界因素影响; (4) 假设捕食者和个体的运动速度相等并且保持不变;(5) 假设所有信息丰富者掌握的是同一食物源的信息。三、符号说明符号符号说明Ai鱼群中的个体鱼R个体鱼感知范围的半径 下一个时间步长周期个体鱼的运动方向 本周期t中A1的游动方向周期 t当前个体到邻居平均位置的方向邻居的平均方向 小于碰撞距离的邻居到当前个体方向的平均值个体鱼决策方向是的权重值个体鱼为了躲避威胁而以最快方式逃逸的方向该个体鱼受其它个体发出的告

6、警信号的平均方向r个体间避免碰撞的最小距离R0捕食者的威胁范围四、问题分析在自然界中,动物出于生存、避险、觅食、求偶、繁殖等原因往往选择采取群体行为的方式。某些动物个体的行为相对简单,集群后却能表现出复杂的群体行为。这些动物群在运动过程中具有聚集性很强,运动方向、速度保持一致性等明显的特征。在生态系统中,个体行为是构成群体行为的基础。本文认为由个体简单运动到群体复杂行为是存在一种映射关系的。个体之间的组织结构、个体行为之间的关系和群体行为的涌现机制是研究群体行为的关键要素。文章的总体思路是要从个体的行为、个体与个体的相互作用、个体在群体中的作用等角度出发,通过数学方法模拟动物的群体运动行为,并

7、利用Matlab软件编程实现模型的仿真,探索动物群的集群运动行为以及动物群中的信息传递机制。对问题一:题目要求建立合理的数学模型来模拟动物的集群运动。为了能够建立简洁易懂的模型,在本文中选取鱼群为研究对象,研究鱼群的形成和行为,希望通过研究个体鱼的运动机制科学阐释集群行为的内在变化原因。针对鱼群的形成、结构和行为,很多研究者从不同角度提出了一些理论和模型。本文通过研究个体鱼在群体中位置和速度随时间的不断变化的规律,采取从个体到局部,从局部到整体,自下向上的建模思想 ,对个体鱼进行建模 ,进而通过个体遵循一定的行为规则来研究个体之间以及个体和环境之间的相互作用,最终探讨出鱼群集群运动的形成机理,

8、并合理推广至对动物群的研究。对问题二:题目要求建立数学模型刻画鱼群躲避黑鳍礁鲨鱼的运动行为。针对这个问题,本文在问题一研究的基础上,考虑仍然沿用其个体鱼的运动模型。当有某些个体受到鲨鱼威胁时,它们一方面选择最快的逃逸方式躲避,一方面发出告警信号与其感知范围内的其它个体进行信息交互。这样,这些受威胁的个体鱼和得到告警信号的个体鱼在下一时刻的运动方向就较其它个体及其上一时刻有了较大不同。基于此,可以采用数学公式计算其不同范围内的个体鱼的运动方向和位置坐标的变化。对问题三:假设动物群中的部分信息丰富者是提前已知的,并且其不一定是集聚的。为了简化问题的研究,本文仍然以鱼群为例,探讨鱼群觅食的集群行为。

9、当有一部分个体掌握食物源位置信息,这部分个体直接向食物源运动,同时通过个体间的信息交互将信息传递给其它个体,引起其它个体运动状态和位置坐标的改变,从而形成集群的觅食行为。 五、模型的建立5.1问题一的模型5.1.1 模型的分析个体行为是构成群体行为的基础,在一个集群中所有个体行为的匹配结合就映射一种集群的运动行为。为了研究集群的运动行为就必须研究清楚集群中每一个个体的运动行为和由个体构成的局部的运动行为。对于研究的鱼群行为来说,本文采取自下而上的建模方法,根据对问题的分析,文章对这种模型分为三层:最下层分析个体鱼(设为)的运动模型,并且假定个体鱼的运动满足设定的游动规则5,模型具有普遍地适用性

10、。中间层通过分析个体鱼之间的相互作用,个体鱼的运动信息所能影响到的范围,形成局部(局部1局部n)的行为。在最上层分析局部行为扩大到集群就构成集群运动的行为模型。从个体到集群的行为关系略图如下图。图 1 个体到集群的行为关系图5.1.2 模型的建立5.1.2.1个体鱼运动模型1. 个体鱼运动的的简化本文描述的是个数为N的一群可视为质点的个体鱼在L*L的二维周期边界条件的平面运动的情况,并且每一时刻每个个体鱼运动的速度大小均相同。2. 对个体鱼的定义每一个个体鱼是一个自驱动的个体,形状大小相同,具有一定的感知能力。它能感知的范围是以其质心为圆点的半径为R的圆形区域,且它能感知这一区域内其他个体鱼的

11、所有动态信息(包括速度大小和方向,有没有发出告警信号等)。3. 运动规则描述(1)惯性规则,个体鱼在得到需要改变运动的信号时,鱼游动的方向不可能立刻改变 ,这时表现出一种惯性的作用。(2)靠近规则,为了不脱离鱼群,需要尽量靠近邻居的中心。如图a.(3)对齐规则,为了保持鱼群运动的连贯性,每个个体鱼尽量与邻居的方向一致。如图b.(4)规避规则,为了保持鱼群运动的一致性,个体鱼运动尽量避免碰撞。如图c. 图a 图b 图c图 2 运动规则描述示意图4. 运动模型的建立假设每一个体鱼在t时刻具有相同大小的速度,而运动速度的方向是任意的或随机的,并且位置坐标在给定的平面内是已知的。建立个体鱼的运动模型就

12、是要研究个体鱼在下一个时刻t+1(1表示一个时间步长)时刻运动的方向和在坐标平面内的位置。3中的四条规则对改变鱼下一时刻游动方向都起一定作用, 那么在本文中把这四个方向的平均方向作为鱼下一时刻游动的方向。取个体鱼A1研究其运动。由于方向就是与水平方向的夹角, 因此仅仅需要对上述四个方向与水平方向的夹角进行平均 ,即为下一时刻该鱼的游动方向。用公式表示为: (1)其中 为下一个时间步长周期个体鱼的运动方向, 为本周期t中A1的游动方向, 为周期 t当前个体到邻居平均位置的方向, 为邻居的平均方向, 为小于碰撞距离的邻居到当前个体方向的平均值 (见图 3)。图 3 运动方向的确定图考虑到各规则对鱼

13、的影响力不同, 个体鱼作为自主决策的自驱体在决策时考虑的先后级不同,所以还需要对各个方向加权, 取加权平均值 ,权重的大小文中可以根据偏好确定。则公式转化为: (2)其中。下面给出四个规则所代表的四个方向的具体实现方法:(1) 惯性规则的实现:为本周期t中A1的游动方向, 本周期内的运动方向由上一时刻的运动方向所确定,即。(2) 靠近规则的实现: 每个个体都有向邻居中心靠拢的特性, 邻居中心为观察范围内各个体所在位置的平均值。假设当前A1所处的位置为,为当前各个邻居的位置 , 则邻居平均位置,为周期 t当前个体到邻居平均位置的方向,则 (3)(3) 对齐规则的实现: 个体会和它的邻居朝同一个方

14、向游动。公式表示为 : (4)其中为各个邻居的方向, N 为邻居的个数, 为邻居的平均方向。(4)避免碰撞规则的实现:当个体和它的邻居靠的太近时 (距离小于碰撞距离 ) ,应自动避开。公式表示为: (5)其中为小于碰撞距离的邻居到当前个体方向的平均值,M 为邻居中小于碰撞距离的邻居个数。最后根据以上计算可得出个体 A1的位置迭代规则为: (6)5.1.2.2局部运动模型(1)个体间的感知感知问题前以述及,个体鱼在鱼群中相互感知,二维空间内,感知范围为半径为R的圆面,通过个体鱼之间的通信,传递位置和运动信息以及其他信号。(2)通信机制通信范围:与感知范围一致。通信对象:位于Ai的通信范围内的所有

15、个体鱼。通信过程:当Ai的位置坐标发生变化后,Ai立即更新其通信范围内的通信对象;能及时将所有通信对象;所有通信对象能将它们的位置、运动等信息传递给Ai。通过Ai与通信对象之间的通信,实现个体鱼在群体中的局部交互。(3)鱼群的局部交互鱼在群体中排列十分紧密,但有时拥挤会造成身体遮挡了部分感知范围,但是离散的鱼却能组合成连贯的鱼群结构,实现全局的统一。但是,如果假设每条鱼能够与其他所有个体进行交互,获取全局信息,那么所有鱼都将集聚在鱼群的质心,而不是一种均匀的分布。因而可以推断在鱼群中只存在局部交互。局部的交互,经过反复协调,最终达成全局的和谐结构。鱼群运动是一个和谐的整体,而局部与局部是在整体

16、中相交互联的。而且个体之间的交互和局部之间的交互都是在不断地更新中,所以鱼群的整体运动建立在局部交互的基础之上。5.1.2.3鱼群运动模型根据前面两点分析,求解出在给定初始状态情况下,每个个体鱼在下一时刻的运动方向能够根据个体鱼运动模型求得,其所有的位置也能通过迭代给出。按照上述的方法,所有鱼群中的个体趋于同步运动,最后形成鱼群的一种集群运动。图 4 个体、局部与集群之间的关系图5.2问题二的模型5.2.1 模型的建立根据对资料的分析,认为鲨鱼在攻击时有它的威胁范围R0,假定所有在它攻击范围内的个体鱼均能感受到威胁的存在,并立即在它的感知范围内向其它个体发出告警交互信号。此时对于集群里的个体鱼

17、来说可以分成三类:第一类是在鲨鱼的攻击范围之内,它要躲避威胁,并且在感知范围内发出告警交互信息同时它能收到威胁范围内其它个体发出的告警交互信号。第二类是不在威胁范围之内但是在第一类鱼的感知范围内。第三类鱼既不在威胁范围内又不在第一类鱼的感知范围内,具体用图形表示如下: 图 5 危险信号的传递考虑鲨鱼的运动:鲨鱼的运动受其运动惯性的影响,并游向其感知范围内与其距离最近的小鱼。则其运动方向,其中,。其位置。由此可得鲨鱼的位置更替。在问题一模型的基础上,考虑对于第一类鱼,它在下一时刻的运动方向将受到六个因素的影响,如下图:图 6 第一类鱼的方向确定用公式可以表示为: (7)其中的含义同问题一,表示个

18、体鱼为了躲避威胁而以最快方式逃逸的方向,表示该个体鱼受其它个体发出的告警信号的平均方向;表示鱼在决策时对它们的偏好权重,对于第二类鱼来说,它在下一时刻的运动方向受五个因素的影响,如下图:图 7 第二类鱼的方向确定用公式可以表示为: (8)各符号含义同上,其中。对于第三类鱼来说,它在下一时刻的运动方向仍然受问题一中的四个因素影响。5.2.2 参数解算算法个体鱼在下一时刻的运动方向确定: (9)其中为鲨鱼当前的位置坐标。 (10)其中表示感知范围内第k条个体鱼的位置坐标,K 为该个体鱼受其它个体发出的告警信号的个数。个体鱼在下一时刻的位置坐标确定: (11)5.3 问题三的模型5.3.1 模型的建

19、立假设鱼群中有一部分个体是信息丰富者,本文仅考虑掌握食物源位置信息的个体鱼,它们在遵循问题一中提出的游动规则条件下,将主动靠近食物源,并且把它向食物源游去的信息告知邻居,召集其它个体鱼共同觅食。在问题一个体鱼运动的模型中把向食物源游动的趋势加入其实际游动方向的方程模型中,用公式表示: (12)其中的含义同问题一,表示个体鱼向食物源游动的方向,表示鱼在决策时对它们的偏好权重,。图 8 掌握食物源信息的个体的方向确定对于其它没有食物源位置信息的个体鱼来说,它能受到其感知范围内信息丰富者的召集信息,并趋向这些信息丰富者的实际游动方向的平均方向,追随它们共同觅食。则它在下一时刻的运动方向受五个因素的影

20、响,如下图:图 9未掌握食物源信息的个体的方向确定用公式可以表示为: (8)各符号含义同上,表示个体鱼受召集信息而跟随信息丰富者的偏好。其中。5.3.2 参数解算算法信息丰富者向食物源游去的方向: (9)其中为食物源当前的位置坐标。为信息丰富者的位置坐标。 没有掌握食物源信息的个体鱼受召集信息影响的游向: (10)其中表示感知范围内第i个信息丰富者的位置坐标,k为所研究的非信息丰富者感知到的信息丰富者的个数。个体鱼在下一时刻的位置坐标确定: (11)六、模型的求解及分析6.1 问题一模型的求解6.1.1 模型结果预测首先本文根据模型的分析对结果进行预测: a 鱼群的初始状态 b 运行t s后鱼

21、群的集群效果c 运行t+n s后鱼群的集群效果图 10 鱼群运动效果6.1.2 模型的结果仿真本文利用Matlab软件对模型进行结果仿真。模型开始运行时 ,平面环境中任意分布一定数量的个体 ,每个个体具有自己的状态属性,即其初始状态是随机的。模型运行中个体不断产生位置移动并与环境以及其它个体发生交互作用。在中,对参数设定为;以及对对象属性设定:鱼的数量 100 , 速度0.5,感知范围为5个单位,碰撞的最小距离5/5=1个单位。仿真结果如图所示:(1)鱼群的初始状态 (2)运行20 s后鱼群的集群效果(3)运行45 s后鱼群的集群效果图 11 鱼群运动的仿真效果6.1.3 模型的结果分析(1)

22、鱼群中个体的初始状态即运动方向和位置坐标是随机给定的,在图中可以看出鱼群没有规律性的集群运动行为。(2)运动一段时间后,根据个体鱼的运动模型,每个个体鱼遵从同样的游动规则,在状态参数的不断更迭下,鱼群开始慢慢集聚,并趋向于一致的运动状态。(3)当模型运行长时间后,鱼群的集群运动行为涌现出来。鱼群个体在各自运动模型的基础上通过个体间的相互作用,实现局部到整体的不断匹配,不断协调,最后形成一个统一的同步的运行结构。6.2问题二模型的求解6.2.1 模型结果预测首先本文根据模型的分析对结果进行预测: a 鲨鱼靠近鱼群的初始状态 b 部分个体鱼受威胁时的反应c 运行t s后鱼群的集群效果图 12 受威

23、胁时鱼群运动的效果6.2.2模型的结果仿真利用Matlab软件对模型进行仿真,结果如下图:(1)鲨鱼靠近鱼群的初始状态(2)部分个体鱼受威胁时的反应(3)运行t s后鱼群的集群效果图 13 受威胁时鱼群运动的仿真效果6.2.3模型的结果分析(1)当鲨鱼入侵鱼群时,一部分个体鱼首先出现在鲨鱼的威胁范围并立刻感受危险存在。它们会选择最快的方式逃逸并在感知范围内发出告警信号与其它所有在其感知范围内的个体鱼进行信息交互。(2)随着部分个体的快速逃逸和个体间的不断信息交互,得知危险的鱼群数量不断扩大,选择逃逸的个体鱼越来越多,但是它们逃逸时仍然受游动规则的影响。(3)虽然鱼群在不断地逃逸,但要受到游动规

24、则的约束,在保证安全时仍然表现出集群运动行为,结果与事实吻合。七、模型的评价7.1 模型的优点:1、本文将复杂的动物集群运动行为巧妙地转化为在一个二维坐标系内质点的运动方向和坐标位置不断变化的数学问题,使得问题简单明了,易于解决。2、文章在建立问题二、三的模型时充分借鉴了问题一的模型,充分研究了三个问题之间的关联性。3、文章对于模型的结果作了合理的预测,结果能够反映模型的真实情况,与实际比较接近。7.2 模型的不足:1、本文在模型建立之初,为了简化问题,假设鱼群运动的周围环境是一个二维平面,这与现实是不相吻合的。动物群体的运动实际上是在空间和时间上的不断变化的复杂的量。文中没有考虑模型在三维立

25、体空间的建立过程,具有一定的缺陷。 2、模型的仿真结果比较粗糙,不是非常满意。八、模型的推广1、将二维平面环境变为三维的立体空间可使模型具有更加广泛的适用性。在向三维推广的过程中,建立三维坐标轴,模型中运动方向的改变和位置坐标的迭代均应在三维空间上的横、纵、竖坐标上进行。依此,模型在三维的仿真结果会更加逼真。图 13 模型一的三维仿真图2、集群运动行为模型的推广:本文研究的集群运动行为,不存在着集中控制或领导者,只是个体依据简单的行为规则相互交互促使整个群体突现出一种复杂的协调和适应能力。可见,这种群智能的涌现,正是由于群体内部存在着大量的正负反馈机制。将这种模型应用到控制领域,建立多样性控制

26、器,对于存在多种作动器的系统有很好的借鉴。参考文献1 姜启源、谢金星、叶俊,数学模型,北京:高等教育出版社,2003。2 周义仓、赫孝良,数学建模实验,西安:西安交通大学出版社,2007。3 韩中庚,数学建模方法及其应用,北京:高等教育出版社,2005。4 王晓红,基于多 Agent的人工鱼群自组织行为研究 D,北京:北京科技大学,2006。5 赵 健、曾建潮,鱼群集群行为的建模与仿真,太原:太原科技大学,2009。附录:1、n=100;x(1,:)=20*rand(1,n);y(1,:)=20*rand(1,n);drc(1,:)=(rand(1,n)-0.5)*2*pi;d=;for k=

27、1:50;%for i=1:n for j=1:n d(i,j)=sqrt(x(i)-x(j)2+(y(i)-y(j)2); endendfor i=1:n d(i,i)=inf;end%for i=1:n a=0,b=1,c=0,e=0,h=0,l=0; for j=1:n if d(i,j)5 a=a+1; c=c+x(j),e=e+y(j); m=atan(y(j)/x(j); l=l+m; end if d(i,j)80 x(k+1,i)=x(k+1,i)-80; elseif x(k+1,i)80 y(k+1,i)=y(k+1,i)-80; elseif y(k+1,i)40 xs(

28、k+1,1)=xs(k+1,1)-40; elseif xs(k+1,1)40 ys(k+1,1)=ys(k+1,1)-40; elseif ys(k+1,1)0 ys(k+1,1)=ys(k+1,1)+40; end for i=1:n ds(i)=sqrt(x(k,i)-xs(k,1)2+(y(k,i)-ys(k,1)2); for j=1:n d(i,j)=sqrt(x(k,i)-x(k,j)2+(y(k,i)-y(k,j)2); endendfor i=1:n d(i,i)=inf;end%for i=1:n p=0;l=0.1; for p=1:n if d(i,j)0.3 p=p-

29、draction(k,j)/d(i,j); l=l-1/d(i,j); if p=0 draction(k+1,i)=(1-t)*draction(k,i)-t*j/l; else draction(k+1,i)=draction(k,i); end elseif d(i,j)5 p=p-draction(k,j)/d(i,j); l=l-1/d(i,j); if p=0 draction(k+1,i)=(1-t)*draction(k,i)+t*j/l; else draction(k+1,i)=draction(k,i); end end end if ds(i)20 draction(k+1,i)=-atan(y(k,i)-ys(k,1)/(x(k,i)-xs(k,1); end v(k+1,i)=0.5; %end%for i=1:n if ds(i)40 x(k+1,i)=x(k+1,i)-40; elseif x(k+1,i)40 y(k+1,i)=y(k+1,i)-40; elseif y(k+1,i)0 y(k+1,i)=y(k+1,i)+40; endend end for i=1:kpause(0.2)plot(x(i,:),y(i,:),o,xs(i,:),ys(i,:),r*)axis(0 40 0 40)getframe;end

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号