在一片水域中,鱼往往能自行或尾随其他鱼找到营养物质多的地方,因而鱼生存数目最多的地方一般就是本水域中营养物质最多的地方,人工鱼群算法就是根据这一特点,通过构造人工鱼来模仿鱼群的觅食!聚群及追尾行为,从而实现寻优,以下是鱼的几种典型行为:
(1)觅食行为:一般情况下鱼在水中随机地自由游动,当发现食物时,则会向食物逐渐增多的方向快速游去。
(2)聚群行为:鱼在游动过程中为了保证自身的生存和躲避危害会自然地聚集成群,鱼聚群时所遵守的规则有三条:分隔规则:尽量避免与临近伙伴过于拥挤;对准规则:尽量与临近伙伴的平均方向一致;内聚规则:尽量朝临近伙伴的中心移动。
(3)追尾行为:当鱼群中的一条或几条鱼发现食物时,其临近的伙伴会尾随其快速到达食物点。
特点:
1)具有较快的收敛速度,可以用于解决有实时性要求的问题;
2)对于一些精度要求不高的场合,可以用它快速的得到一个可行解;
3)不需要问题的严格机理模型,甚至不需要问题的精确描述,这使得它的应用范围得以延伸.
停止条件
1) 判断连续多次所得的均方差小于语允许的误差
2)判断某个区域的人工鱼群的数目达到某个比率
3)联系多次所获取的值均不能超过已寻找的极值。
具体见原浙大博士李晓磊的博士论文-人工鱼群算法。
另外在nature上面2007年1一月有一篇关于人工鱼行为的文章。(这两部分的资料在附件里面)
[
Last edited by 2007骑猪逛街 on 2007-9-17 at 15:36 ]