第7章 鱼群算法基本理论.ppt_第1页
第7章 鱼群算法基本理论.ppt_第2页
第7章 鱼群算法基本理论.ppt_第3页
第7章 鱼群算法基本理论.ppt_第4页
第7章 鱼群算法基本理论.ppt_第5页
免费预览已结束,剩余18页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

7.1.1.2鱼群算法概述7 . 1 . 1 . 2鱼群算法的开发7.1.3鱼群算法的特性7.1.4鱼群算法的分类7.2.1鱼群算法的基本原理7.2【主】:指生物体在不同的瞬间和不同的环境下可以独立选择任何行动,没有任何控制或指导。鱼群算法的基本思想:在一片水域中,鱼往往能自己或与其他鱼一起找到营养丰富的地方,因此鱼最多的地方通常是这片水域中营养最多的地方。人工鱼群算法根据这些特性构建人工鱼,通过模仿鱼群的食物、群体和追尾行为,可以实现整体优化。7.1鱼群算法概述、7.1.2鱼群算法的开发鱼群算法首次在浙江大学系统工程研究所李小磊博士等系统工程理论与实践 2002年11号发表的基于动物自治的优化模型:鱼群算法中提出。之后,引起了广泛的关注,提出了多种改进算法。7.1鱼群算法概述,7.1.3鱼群算法的特征,博士论文在“基于动物自治的优化模型:鱼群算法”文章中说明,鱼群算法的特征主要是“5性:并行性:多个人工鱼群并行搜索;简便性:算法仅使用目标问题的函数值。全局性:算法具有从局部极值中突出的能力。快速:算法有一定的随机因素,但总体上正在走向最佳搜索阶段。可追溯性:随着工作状态或其他因素的变化而发生的极值点的漂移,该算法具有快速跟踪变化的能力。7.1鱼群算法概述,特征复习只比较目标函数值,对目标函数特性的要求不高。对初始值的要求不高,可以任意生成或设置固定值。参数设置的要求不高,允许范围大。并行处理能力强,优化速度快。具有全局优化功能,能在区域极值点快速跳下。具有快速收敛速度,可用于解决有实时要求的问题。对准确性要求不高的情况,可以很快获得解决方法。不需要问题的严格机制模型。7.1鱼群算法概述、7.1.4鱼群算法分类、7.1鱼群算法概述、7.2鱼群算法的基本原理7.2.1鱼群寻找食物的一些典型行为随机行为:单独的鱼在水中一般随机游动是为了在更大的范围内寻找食物点或周围伙伴。寻找食物的行动:当鱼发现食物时,会朝着越来越多的方向快速游动。群居行动:鱼在游泳时自然成群,以保证自己的生存并避免危险。追尾行为:一群鱼中的一只或多只找到食物,附近的伙伴就会跟着食物迅速到达食堂。7.2鱼群算法的基本原理、7.2鱼群算法的基本原理、7.2鱼群算法的机制人工鱼群结构模型人工鱼是实际鱼的虚拟实体,用于问题分析和说明。人工鱼主要由地壳系统、行动系统、运动系统三部分组成。通过感官接收环境的刺激信息,控制尾鳍活动,可以做出相应的压力行为。7.2鱼群算法的基本原理,识别系统:主要由视觉实现。将当前状态设置为x,视野范围设置为Visual,状态Xv设置为时间点在特定时间点的位置,如果该位置的状态比当前状态好,则考虑向该位置的方向进一步到达状态Vnext。如果状态Xv没有比当前状态好,请继续导航到视野中的其他位置。巡视次数越多,对视野状态的了解越多,就越有助于做出适当的判断和决定。状态更改可以用表达式表示,Rang()函数生成一个介于0和1之间的随机数。Step是移动步骤。7.2鱼群算法的基本原理、行为体系:主要包括喂养行为、群体行为、后方行为和随机行为。鱼类通过对行为的评价,为达到食物浓度更高的点,选择目前的最佳行为之一进行实施。动作系统:参数系统,主要由变量和函数组成。变量包括人工鱼总数、人工鱼对象状态、人工鱼移动的最大阶段、人工鱼的视野、尝试次数、拥挤度因素、人工鱼对象之间的距离等。函数包括人工鱼目前所在位置的食物浓度(即目标函数)、人工鱼的各种行为函数(食物行为、集体行为、追尾行为、随机行为)和评价函数。人工鱼的四种基本行为功能喂养行为这是人工鱼的饮食倾向。通常通过视觉或味觉,在水中感知食物的数量或浓度,选择倾向。设置在地壳范围内随机选择状态Xj的Xi的当前状态。否则,再次随机选择Xj,判断是否满足进展条件,尝试Try-number,如果还未满足,随机一步,7.2鱼群算法的基本原理,集体行动是鱼群生存和避免危险的一种生活习惯。鱼群算法一般规定两种:一种是尽量朝相邻伙伴的中心移动,另一种是避免过度拥挤。将当前状态设置为Xi,并浏览当前邻居中的合作伙伴数nf和中心位置Xc。如果伙伴中心表示食物更多,不太拥挤,则向伙伴中心位置进一步,否则进行觅食的动作。7.2鱼群算法的基本原理,追逐行动鱼群游动时,如果其中一条或多条鱼发现了食物,邻居伙伴会跟着它快速到达食物点。追尾行动是被适应性最高的附近人工鱼追赶的动作,在优化算法中被解释为接近附近最佳伙伴的过程。如果将人工鱼I的当前状态设置为Xi,并最大限度地探索当前邻居中所有伙伴中Xj的Yj,那么超级Xj的方向向前一步,即随机行为鱼在水中自由游动,表面随机看。实际上,准备更大范围的猎物狩猎,即在视野中随机选择一种状态,然后朝那个方向移动。7.2鱼群算法的基本原理、7.2鱼群算法的基本原理、人工鱼群算法的参数选择视野:由于视觉对算法的每个动作都有很大影响,因此其变化对收敛性能的影响也比较复杂。视野狭窄,人工鱼群的捕食行为和随机游动很明显。视野范围大,人工鱼的追尾动作和群集动作很明显。总的来说,视野越大,人工鱼就越容易找到全局极值并收敛。因此,适当地改善人工鱼的视野是提高人工鱼群算法优化性能的一个方向。步长:随着步长的增加,收敛速度加快,但是超过一定范围后,收敛速度减慢,甚至振动。因此,使用随机阶段可以在一定程度上防止振动,并利用适当的固定和可变阶段提高收敛速度和精度。7.2鱼群算法的基本原理,人工鱼数(n):人工鱼数越多,鱼群的集体智能就越明显,收敛速度快,准确度越高,从局部极值中突出的能力也越强,但迭代计算也越多。因此,在实际应用中,应在稳定收敛的前提下,尽量减少人工鱼的数量。尝试次数(Try-number):尝试次数越多,人工鱼执行猎物行为的能力就越强,收敛效率越高,但如果局部极值突出,就很容易错过全球极值点。也就是说,人工鱼摆脱局部极值的能力变弱。因此,在一般最佳化中,为了加快收敛速度,可以适当地增加尝试次数。在局部极值突出的情况下,要减少尝试次数,提高人工鱼随机游动的概率。拥挤度系数():拥挤度系数被引入到局部极值中,以避免过度拥挤。7.2鱼群算法的基本原理,拥挤度系数的定义:对于最大问题:对于最小问题:表达式中每个人期望极限值接近级别和在相应附近聚集的最大人工鱼数。拥挤度因素对算法的影响(以极值为例):拥挤度系数越大,允许拥挤的程度越小,摆脱局部极值的能力越强,收敛速度就越慢。对于一些局部极值不严重的问题,经常忽略拥挤的因素,简化算法,提高算法的收敛速度,提高结果的精度。7.2鱼群算法的基本原理,7.2.3鱼群算法的步骤初始化设置:人口规模n,每个人工鱼的初始位置,人工鱼的视野Visual,步骤步骤步骤步骤,人口系数,重复次数step-number。计算初始鱼群的个体适应值,借用最佳人工鱼状态及其值。评价每个个人,选择狩猎、集体、追尾、随机行动等要执行的行动。执行人工鱼的行动,更新自己,制作新鲜鱼。评价所有对象,如果对象比公告栏优秀,就用该对象更新公告栏。公告板的最佳解决方案达到满意误差范围后,算法结束。否则,转动步骤。7.2鱼群算法的基本原理,7.2鱼群算法的基本原理,公告板:用于记录最佳人工鱼群对象的状态。每个人工鱼个体在优化过程中,每次完成各措施时都会检查自己的状态和公告板的状态,如果自己的状态优于公告板状态,就可以用自己的状态替换公告板的状态,使公告板记录达到最佳状态。完整算法结束后,输出布告牌记录的值。迭代结束条件:连续多次获得的值的平均平方误差小于容差。在特定地区聚集的人工鱼的数量达到一定的比例。连续多次获得的平均值不超过发现的极值。达到指定的最大迭代次数。即可从workspace页面中移除物件。7.3鱼群算法的应用,7.3鱼群算法的应用人工鱼群算法在蚁群算法、粒子群算法并不受到广泛学者的关注,但在国内,对电力系统、神经网络、通风系统、遗传位置、信号处理、模糊控制器设计、非线性复合函数优化等进行了初步应用,并取得了良好的应用结果。此外,人工鱼群算法在灌区优化水量分配、多用户检测、数据挖掘、路由优化、湖泊富营养化综合评价、作业调度和数字图像处理等方面有初步应用。7.4鱼群算法的研究方向,7.4鱼群算法的研究方向算法的理论基础薄弱。到目前为止,人工鱼群算法的收敛性只从数学方面没有分析或证明的实验角度进行了分析。因此,对AFSA算法模型研究和收敛性的分析对AFSA研究非常有用。AFSA的实施过程与仍然是需要解决的难题的参数值有很大关系。一般

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论