- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于全局最优快速人工鱼群算法及其应用研究
基于全局最优快速人工鱼群算法及其应用研究
人工鱼群算法是一种有关动物行为的算法,这种算法具有一定的智能性,是最近几年国内学者提出来的。这种人工鱼群算法是从行为方面进行的主要研究,并对原来存在的问题进行解决。
【关键词】人工鱼群算法 优化方法 群体智能
众多实验能够证明,群体智能优化的相关算法在很多问题的解决上都发挥了至关重要的作用,也得到了十分广泛的应用。
1 人工鱼群算法
1.1 鱼群及其算法的基本思想
人工鱼群算法主要依据的是鱼群的行为启发,在2002年被提出的一种有关动物行为的比较优化的算法。一般情况下,一个范围之内,鱼群中的鱼会跟随群体中的其它成员一起找到食物比较多的地方。而通常情况下,一片水域范围内食物最多的地方往往会有最多的鱼群数目。根据这个特点,使用人工制作的鱼对鱼群的各种行为进行模拟,进而完成直线寻优的目的。
1.2 人工鱼模型
有关人工鱼模型的算法使用的是基于animats的模式,设计采用的顺序是从上到下的,因此先进行的步骤就是人工鱼模型的建造。通常情况下使用的是面向对象的技术方式,并用会用C++语言的伪代码形式来加以说明。人工鱼一般的模型描述方式如下:
{
Various:
float AF_X[n]; //AF’s position
float AF_step; //the distance that AF can moue for each step
float AF_visual; //the visual diatance of AF
float try_number; //attempt time in the behavior of prey
float AF_delta; //the condition of jamming
Functions:
float AF_foodconsistence(); //the food consistence of AF’s current position
float AF_move(); //AF move to the next position
float AF_follow(); //the behavior of follow
float AF_prey(); //the behavior of prey
float AF_swarm(); //the behavior of swarm
float AF_evaluate(); //evaluate and select the behavior
float AF_init(); //to initialize the AF
Aritificial_fish();
Virtual~Aritificial_fish();
};
通过上述模型的设置,会让人工鱼相关信息能被同伴收到,并能将人工鱼的一些行为规划到种群类型之中,会在鱼中间有所感知。
对人工鱼个体的状态表示通常表示为向量X=(x1,x2,x3……xn),其中xi (i=1,……,n )表示要寻优的变量;然后将人工鱼处在环境的食物多少表示为 Y = f ( X),Y 代表目标函数值;人工鱼个体之间的距离表示为dij= |Xi-Xj|;Step 表示人工鱼移动的最长距离;δ表示和其他鱼之家的拥挤情况。
1.2.1 聚群行为
有关人工鱼的聚群行为可以用伪代码形式加以说明,可以设人工鱼当前状态是Xi,要完成的任务是对周围一定范围内有伙伴的数目fn及中心位置Xc进行测量,要是得到的两个数相比的比值小于δYi,则表示人工鱼中心位置食物比较充足,也没有很多同伴在周围,然后可以向食物方向游动一次;如果情况相反那么就不执行觅食行为。伪代码描述如下:
float Artificial_fish::AF_swarm()
{
f n=0;Xc =0;
for(j=0;jfriend_number;j++)
if(i ,dj Visual){nf ++;Xc +=Xj;}
else
AF_prey();
Return AF_foodconsistence(
i |next
X );
}
1.2.2 追尾行为
有关追尾行为同样可以使用伪代码方式进行表示,首先设人工鱼当前状态设置为Xi ,要完成的任务书要对一定范围内的的伙伴数量Yj进行探索,其中最大的伙伴Xj的数量如果比拥挤度δ大,表明伙伴Xj周围具食物比较充分,并且其周围环境没有很多同伴,于是应该执行朝伙伴Xj的方向前进一步命令;如果得到的结果相反,就不执行觅
您可能关注的文档
最近下载
- 食品产业园建设项目可行性研究报告.docx
- 综合与实践 探秘曹冲称象第3课时 活动三、四 课件 2025-2026学年度西师大版数学三年级上册.pptx VIP
- 《精华版武松打虎》课件.pptx VIP
- 英语人教版(2024)7年级上册 Unit 3 My School Section B 1a - 2教案 教学设计.docx VIP
- 走进地理学(南京大学)中国大学MOOC慕课 章节测验答案.docx VIP
- 微生物的基本知识病毒ppt课件.pptx VIP
- 品管圈案例:降低股动脉介入术后外周血管并发症的的发生率.pptx
- 骨科专科护士考试试题与答案.docx VIP
- 双悬臂(3T)快速计算.xls VIP
- 项目管理的8个表格-V3.0.xlsx VIP
文档评论(0)