“Boids算法”的版本间的差异

来自集智百科 - 复杂系统|人工智能|复杂科学|复杂网络|自组织
跳到导航 跳到搜索
(Moved page from wikipedia:en:Boids (history))
 
(重定向页面至鸟群算法
标签新重定向
第1行: 第1行:
此词条暂由彩云小译翻译,未经人工整理和审校,带来阅读不便,请见谅。
+
#重定向 [[鸟群算法]]
 
 
{{short description|Artificial life program, developed by Craig Reynolds in 1986, which simulates the flocking behaviour of birds}}
 
 
 
{{Use mdy dates|date=July 2011}}
 
 
 
{{for|the reptilian family|Boidae}}
 
 
 
[[File:Boids OpenGL example.webm|thumb|A Boids example created in [[OpenGL]]]]
 
 
 
A Boids example created in [[OpenGL]]
 
 
 
在[[[ OpenGL ]]中创建的 Boids 示例
 
 
 
'''Boids''' is an [[artificial life]] program, developed by [[Craig Reynolds (computer graphics)|Craig Reynolds]] in 1986, which simulates the [[Flocking (behavior)|flocking]] behaviour of [[Bird|birds]]. His paper on this topic was published in 1987 in the proceedings of the [[Association for Computing Machinery|ACM]] [[SIGGRAPH]] conference. <ref>{{Cite book
 
 
 
Boids is an artificial life program, developed by Craig Reynolds in 1986, which simulates the flocking behaviour of birds. His paper on this topic was published in 1987 in the proceedings of the ACM SIGGRAPH conference. <ref>{{Cite book
 
 
 
Boids 是一个人工生命程序,由克雷格 · 雷诺兹于1986年开发,模拟鸟类的群集行为。他关于这个主题的论文发表在1987年的 ACM SIGGRAPH 会议记录上。< ref > { Cite book
 
 
 
| last1=Reynolds
 
 
 
| last1=Reynolds
 
 
 
1 = Reynolds
 
 
 
| first1=Craig
 
 
 
| first1=Craig
 
 
 
1 = Craig
 
 
 
| author1-link=Craig Reynolds (computer_graphics)
 
 
 
| author1-link=Craig Reynolds (computer_graphics)
 
 
 
| author1-link = Craig Reynolds (计算机图形学)
 
 
 
| title=Flocks, herds and schools: A distributed behavioral model.
 
 
 
| title=Flocks, herds and schools: A distributed behavioral model.
 
 
 
| title = 羊群、畜群和学校: 一个分布式行为模型。
 
 
 
| year=1987
 
 
 
| year=1987
 
 
 
1987年
 
 
 
| number=
 
 
 
| number=
 
 
 
数字 =
 
 
 
| journal=SIGGRAPH '87: Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques
 
 
 
| journal=SIGGRAPH '87: Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques
 
 
 
87: 第14届计算机图形学与互动技术年度会议论文集
 
 
 
| publisher=[[Association for Computing Machinery]]
 
 
 
| publisher=Association for Computing Machinery
 
 
 
| publisher = 计算机协会
 
 
 
| pages=25–34
 
 
 
| pages=25–34
 
 
 
| 页数 = 25-34
 
 
 
| isbn=978-0-89791-227-3
 
 
 
| isbn=978-0-89791-227-3
 
 
 
978-0-89791-227-3
 
 
 
| doi=10.1145/37401.37406
 
 
 
| doi=10.1145/37401.37406
 
 
 
| doi = 10.1145/37401.37406
 
 
 
| citeseerx=10.1.1.103.7187
 
 
 
| citeseerx=10.1.1.103.7187
 
 
 
10.1.1.103.7187
 
 
 
}}</ref>
 
 
 
}}</ref>
 
 
 
} </ref >
 
 
 
The name "boid" corresponds to a shortened version of "bird-oid object", which refers to a bird-like object.<ref>{{Cite journal
 
 
 
The name "boid" corresponds to a shortened version of "bird-oid object", which refers to a bird-like object.<ref>{{Cite journal
 
 
 
“ boid”这个名字对应于一个缩短版的“鸟形物体” ,它指的是一个鸟形物体
 
 
 
| last1=Banks
 
 
 
| last1=Banks
 
 
 
1 = Banks
 
 
 
| first1=Alec
 
 
 
| first1=Alec
 
 
 
1 = Alec
 
 
 
| last2=Vincent
 
 
 
| last2=Vincent
 
 
 
2 = Vincent
 
 
 
| first2=Jonathan
 
 
 
| first2=Jonathan
 
 
 
2 = Jonathan
 
 
 
| last3=Anyakoha
 
 
 
| last3=Anyakoha
 
 
 
3 = Anyakoha
 
 
 
| first3=Chukwudi
 
 
 
| first3=Chukwudi
 
 
 
3 = Chukwudi
 
 
 
| title=A review of particle swarm optimization. Part I: background and development
 
 
 
| title=A review of particle swarm optimization. Part I: background and development
 
 
 
文章标题: 粒子群优化。第一部分: 背景与发展
 
 
 
|date=July 2007
 
 
 
|date=July 2007
 
 
 
日期 = 2007年7月
 
 
 
| journal=Natural Computing
 
 
 
| journal=Natural Computing
 
 
 
自然计算
 
 
 
| volume=6
 
 
 
| volume=6
 
 
 
6
 
 
 
| issue=4
 
 
 
| issue=4
 
 
 
第四期
 
 
 
| pages=467–484
 
 
 
| pages=467–484
 
 
 
| 页数 = 467-484
 
 
 
| doi=10.1007/s11047-007-9049-5
 
 
 
| doi=10.1007/s11047-007-9049-5
 
 
 
| doi = 10.1007/s11047-007-9049-5
 
 
 
| citeseerx=10.1.1.605.5879
 
 
 
| citeseerx=10.1.1.605.5879
 
 
 
10.1.1.605.5879
 
 
 
}}</ref> Incidentally, "boid" is also a New York Metropolitan dialect pronunciation for "bird".
 
 
 
}}</ref> Incidentally, "boid" is also a New York Metropolitan dialect pronunciation for "bird".
 
 
 
顺便说一句,“ boid”也是纽约都市方言中“ bird”的发音。
 
 
 
 
 
 
 
{{multiple image|direction=vertical|image1=Rule separation.gif|caption1=Separation|image2=Rule alignment.gif|caption2=Alignment|image3=Rule cohesion.gif|caption3=Cohesion|header=Rules applied in simple Boids}}
 
 
 
As with most artificial life simulations, Boids is an example of [[emergence|emergent]] behavior; that is, the complexity of Boids arises from the interaction of individual agents (the boids, in this case) adhering to a set of simple rules.  The rules applied in the simplest Boids world are as follows:
 
 
 
As with most artificial life simulations, Boids is an example of emergent behavior; that is, the complexity of Boids arises from the interaction of individual agents (the boids, in this case) adhering to a set of simple rules.  The rules applied in the simplest Boids world are as follows:
 
 
 
与大多数人工生命模拟一样,Boids 是突发行为的一个例子; 也就是说,Boids 的复杂性来自于个体代理(在这个例子中是 Boids)遵循一组简单规则的相互作用。在最简单的博伊德世界中适用的规则如下:
 
 
 
 
 
 
 
* '''separation''': [[wikt:steer#Verb|steer]] to avoid crowding local flockmates
 
 
 
* '''alignment''': steer towards the average heading of local flockmates
 
 
 
* '''cohesion''': steer to move towards the average position (center of mass) of local flockmates
 
 
 
 
 
 
 
More complex rules can be added, such as obstacle avoidance and goal seeking.
 
 
 
More complex rules can be added, such as obstacle avoidance and goal seeking.
 
 
 
可以添加更复杂的规则,如避障和寻找目标。
 
 
 
 
 
 
 
The basic model has been extended in several different ways since Reynolds proposed it. For instance, Delgado-Mata et&nbsp;al.<ref>
 
 
 
The basic model has been extended in several different ways since Reynolds proposed it. For instance, Delgado-Mata et&nbsp;al.<ref>
 
 
 
自雷诺兹提出这一基本模型以来,这一基本模型已经以几种不同的方式得到了扩展。例如,Delgado-Mata et al. < ref >
 
 
 
{{cite journal
 
 
 
{{cite journal
 
 
 
{引用期刊
 
 
 
|first1= Carlos | last1= Delgado-Mata
 
 
 
|first1= Carlos | last1= Delgado-Mata
 
 
 
1 = Carlos | last1 = Delgado-Mata
 
 
 
|first2= Jesus Ibanez | last2= Martinez
 
 
 
|first2= Jesus Ibanez | last2= Martinez
 
 
 
2 = Jesus Ibanez | last2 = Martinez
 
 
 
|first3= Simon | last3= Bee
 
 
 
|first3= Simon | last3= Bee
 
 
 
3 = Simon | last3 = Bee
 
 
 
|first4= Rocio | last4= Ruiz-Rodarte
 
 
 
|first4= Rocio | last4= Ruiz-Rodarte
 
 
 
4 = Rocio | last4 = Ruiz-Rodarte
 
 
 
|first5= Ruth | last5= Aylett
 
 
 
|first5= Ruth | last5= Aylett
 
 
 
5 = Ruth | last5 = Aylett
 
 
 
|title= On the use of Virtual Animals with Artificial Fear in Virtual Environments
 
 
 
|title= On the use of Virtual Animals with Artificial Fear in Virtual Environments
 
 
 
| title = 在虚拟环境中使用虚拟动物和人工恐惧
 
 
 
|journal= New Generation Computing
 
 
 
|journal= New Generation Computing
 
 
 
| journal = New Generation Computing
 
 
 
|volume=25 |issue=2 |pages= 145–169
 
 
 
|volume=25 |issue=2 |pages= 145–169
 
 
 
25 | issue = 2 | pages = 145-169
 
 
 
|date=2007
 
 
 
|date=2007
 
 
 
2007年
 
 
 
|doi= 10.1007/s00354-007-0009-5}}</ref>
 
 
 
|doi= 10.1007/s00354-007-0009-5}}</ref>
 
 
 
10.1007/s00354-007-0009-5}} </ref >
 
 
 
extended the basic model to incorporate the effects of fear. Olfaction was used to transmit emotion between animals, through pheromones modelled as particles in a free expansion gas. Hartman and Benes<ref>
 
 
 
extended the basic model to incorporate the effects of fear. Olfaction was used to transmit emotion between animals, through pheromones modelled as particles in a free expansion gas. Hartman and Benes<ref>
 
 
 
扩展了基本模型,加入了恐惧的影响。嗅觉被用来在动物之间传递情感,通过一种自由膨胀气体中的粒子模拟信息素。哈特曼和贝内斯 < 参考 >
 
 
 
{{cite journal
 
 
 
{{cite journal
 
 
 
{引用期刊
 
 
 
|first1= Christopher | last1= Hartman
 
 
 
|first1= Christopher | last1= Hartman
 
 
 
1 = Christopher | last1 = Hartman
 
 
 
|first2= Bedr̆ich |last2= Benes̆
 
 
 
|first2= Bedr̆ich |last2= Benes̆
 
 
 
|first2= Bedr̆ich |last2= Benes̆
 
 
 
|title= Autonomous boids
 
 
 
|title= Autonomous boids
 
 
 
| title = autonous boids
 
 
 
|journal= Computer Animation and Virtual Worlds
 
 
 
|journal= Computer Animation and Virtual Worlds
 
 
 
计算机动画和虚拟世界
 
 
 
|volume=17 |issue=3–4 |pages= 199–206
 
 
 
|volume=17 |issue=3–4 |pages= 199–206
 
 
 
17 | issue = 3-4 | pages = 199-206
 
 
 
|date=July 2006
 
 
 
|date=July 2006
 
 
 
日期 = 2006年7月
 
 
 
|doi= 10.1002/cav.123}}</ref>
 
 
 
|doi= 10.1002/cav.123}}</ref>
 
 
 
10.1002/cav. 123} </ref >
 
 
 
introduced a complementary force to the alignment that they call the change of leadership. This steer defines the chance of the boid to become a leader and try to escape.
 
 
 
introduced a complementary force to the alignment that they call the change of leadership. This steer defines the chance of the boid to become a leader and try to escape.
 
 
 
引入了一种补充力量,他们称之为领导权的更迭。这头牛决定了它成为领导者并试图逃跑的机会。
 
 
 
 
 
 
 
The movement of Boids can be characterized as either chaotic (splitting groups and wild behaviour) or orderly. Unexpected behaviours, such as splitting flocks and reuniting after avoiding obstacles, can be considered emergent.
 
 
 
The movement of Boids can be characterized as either chaotic (splitting groups and wild behaviour) or orderly. Unexpected behaviours, such as splitting flocks and reuniting after avoiding obstacles, can be considered emergent.
 
 
 
Boids 的运动可以表现为混乱的(分裂的群体和野生行为)或有序的。意想不到的行为,比如分散羊群和避开障碍后的团聚,可以被认为是紧急的。
 
 
 
 
 
 
 
The boids framework is often used in computer graphics, providing realistic-looking representations of flocks of birds and other creatures, such as schools of fish or herds of animals. It was for instance used in the 1998 video game ''[[Half-Life (video game)|Half-Life]]'' for the flying bird-like creatures seen at the end of the game on [[Locations of Half-Life#Xen|Xen]], named "boid" in the game files.
 
 
 
The boids framework is often used in computer graphics, providing realistic-looking representations of flocks of birds and other creatures, such as schools of fish or herds of animals. It was for instance used in the 1998 video game Half-Life for the flying bird-like creatures seen at the end of the game on Xen, named "boid" in the game files.
 
 
 
Boids 框架通常用于计算机图形学,提供鸟群和其他生物的逼真表现,比如鱼群或动物群。例如,在1998年的视频游戏《半条命》中,在游戏结束时,在游戏文件中被命名为“ boid”的类似飞鸟的生物就使用了这个名字。
 
 
 
 
 
 
 
The Boids model can be used for direct control and stabilization of teams of simple Unmanned Ground Vehicles (UGV)<ref>{{cite conference |title= Design and analysis of Group Escape Behavior for distributed autonomous mobile robots  |first1= Hongkyu |last1= Min  |first2= Zhidong |last2= Wang |year= 2011 |conference= IEEE International Conference on Robotics and Automation (ICRA)|doi= 10.1109/ICRA.2011.5980123 }}</ref> or [[Micro air vehicle|Micro Aerial Vehicles]] (MAV)<ref>{{cite conference |title= Swarms of micro aerial vehicles stabilized under a visual relative localization  |first1= Martin |last1= Saska |first2= Vakula |last2= Jan |first3= Preucil |last3= Libor |year= 2014 |conference= IEEE International Conference on Robotics and Automation (ICRA)|doi= 10.1109/ICRA.2014.6907374 }}</ref> in [[swarm robotics]]. For stabilization of heterogeneous UAV-UGV teams, the model was adapted for using onboard relative localization by Saska et&nbsp;al.<ref>{{cite conference |title= Coordination and Navigation of Heterogeneous UAVs-UGVs Teams Localized by a Hawk-Eye Approach  |first1= Martin |last1= Saska |first2= Vonasek |last2= Vojtech |first3= Krajnik |last3= Tomas |first4= Preucil |last4= Libor |year= 2012 |conference= IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)|url=http://labe.felk.cvut.cz/~tkrajnik/ardrone/articles/formace.pdf}}</ref>
 
 
 
The Boids model can be used for direct control and stabilization of teams of simple Unmanned Ground Vehicles (UGV) or Micro Aerial Vehicles (MAV) in swarm robotics. For stabilization of heterogeneous UAV-UGV teams, the model was adapted for using onboard relative localization by Saska et&nbsp;al.
 
 
 
Boids 模型可用于群体机器人中简单的无人地面车辆(UGV)或微型飞行器(MAV)团队的直接控制和稳定。为了稳定异质 UAV-UGV 团队,Saska 等人将该模型用于板载相对定位。
 
 
 
 
 
 
 
At the time of proposal, Reynolds' approach represented a giant step forward compared to the traditional techniques used in computer animation for motion pictures. The first animation created with the model was ''[[Stanley and Stella in: Breaking the Ice]]'' (1987), followed by a feature film debut in [[Tim Burton]]'s film ''[[Batman Returns]]'' (1992) with computer generated bat swarms and armies of penguins marching through the streets of Gotham City.<ref>{{cite journal | url=http://lrss.fri.uni-lj.si/people/ilbajec/papers/ilb_ab09.pdf | last1=Lebar Bajec |first1= Iztok |first2=  Frank H. |last2= Heppner | date=2009 | title=Organized flight in birds | journal=Animal Behaviour | volume = 78 | issue = 4 | pages = 777–789 | doi = 10.1016/j.anbehav.2009.07.007 }}</ref>
 
 
 
At the time of proposal, Reynolds' approach represented a giant step forward compared to the traditional techniques used in computer animation for motion pictures. The first animation created with the model was Stanley and Stella in: Breaking the Ice (1987), followed by a feature film debut in Tim Burton's film Batman Returns (1992) with computer generated bat swarms and armies of penguins marching through the streets of Gotham City.
 
 
 
在提议的时候,雷诺兹的方法代表了一个巨大的进步相比,传统的技术用于电脑动画电影。第一部与模特合作的动画片是《史丹利与史黛拉: 破冰》(1987) ,之后是蒂姆 · 伯顿(Tim Burton)的电影《蝙蝠侠归来》(Batman Returns,1992) ,电脑合成的蝙蝠群和成群的企鹅穿过哥谭市的街道。
 
 
 
 
 
 
 
The boids model has been used for other interesting applications. It has been applied to automatically program Internet multi-channel radio stations.<ref>
 
 
 
The boids model has been used for other interesting applications. It has been applied to automatically program Internet multi-channel radio stations.<ref>
 
 
 
Boids 模型已经被用于其他有趣的应用程序。它已被应用于互联网多频道广播电台的自动节目
 
 
 
{{cite conference
 
 
 
{{cite conference
 
 
 
{引用会议
 
 
 
| title        = DJ-boids: emergent collective behavior as multichannel radio station programming
 
 
 
| title        = DJ-boids: emergent collective behavior as multichannel radio station programming
 
 
 
| title = DJ-boids: 作为多频道电台节目的紧急集体行为
 
 
 
| first1 = Jesús | last1 = Ibáñez
 
 
 
| first1 = Jesús | last1 = Ibáñez
 
 
 
| first1 = Jesús | last1 = Ibáñez
 
 
 
| first2 = Antonio F. | last2 = Gómez-Skarmeta
 
 
 
| first2 = Antonio F. | last2 = Gómez-Skarmeta
 
 
 
| first2 = Antonio F. | last2 = Gómez-Skarmeta
 
 
 
| first3 = Josep | last3 = Blat
 
 
 
| first3 = Josep | last3 = Blat
 
 
 
| first3 = Josep | last3 = Blat
 
 
 
| date          = 2003
 
 
 
| date          = 2003
 
 
 
2003年
 
 
 
| booktitle    = Proceedings of the 8th international conference on Intelligent User Interfaces
 
 
 
| booktitle    = Proceedings of the 8th international conference on Intelligent User Interfaces
 
 
 
| booktitle = 第八届智能用户界面国际会议记录
 
 
 
| pages        = 248–250
 
 
 
| pages        = 248–250
 
 
 
| 页数 = 248-250
 
 
 
| doi          = 10.1145/604045.604089
 
 
 
| doi          = 10.1145/604045.604089
 
 
 
10.1145/604045.604089
 
 
 
}}</ref>
 
 
 
}}</ref>
 
 
 
} </ref >
 
 
 
It has also been used for visualizing information<ref>
 
 
 
It has also been used for visualizing information<ref>
 
 
 
它也被用于可视化信息 < ref >
 
 
 
{{cite conference
 
 
 
{{cite conference
 
 
 
{引用会议
 
 
 
| title        = Time-Varying Data Visualization Using Information Flocking Boids
 
 
 
| title        = Time-Varying Data Visualization Using Information Flocking Boids
 
 
 
使用信息植群的时变数据可视化
 
 
 
| last = Moere | first = A V
 
 
 
| last = Moere | first = A V
 
 
 
| last = Moere | first = a v
 
 
 
| date          = 2004
 
 
 
| date          = 2004
 
 
 
2004年
 
 
 
| booktitle    = Proceedings of the IEEE Symposium on Information Visualization
 
 
 
| booktitle    = Proceedings of the IEEE Symposium on Information Visualization
 
 
 
美国电气和电子工程师学会信息可视化研讨会论文集
 
 
 
| pages        = 97–104
 
 
 
| pages        = 97–104
 
 
 
| pages = 97-104
 
 
 
| doi          = 10.1109/INFVIS.2004.65
 
 
 
| doi          = 10.1109/INFVIS.2004.65
 
 
 
10.1109/INFVIS. 2004.65
 
 
 
}}</ref>
 
 
 
}}</ref>
 
 
 
} </ref >
 
 
 
and for optimization tasks.<ref>
 
 
 
and for optimization tasks.<ref>
 
 
 
以及优化任务
 
 
 
{{cite journal
 
 
 
{{cite journal
 
 
 
{引用期刊
 
 
 
|first1 = Zhihua | last1 = Cui
 
 
 
|first1 = Zhihua | last1 = Cui
 
 
 
1 = zhiva | last1 = Cui
 
 
 
|first2 = Zhongzhi | last2 = Shi
 
 
 
|first2 = Zhongzhi | last2 = Shi
 
 
 
|first2 = Zhongzhi | last2 = Shi
 
 
 
|title= Boid particle swarm optimisation
 
 
 
|title= Boid particle swarm optimisation
 
 
 
| title = Boid 粒子群优化
 
 
 
|journal= International Journal of Innovative Computing and Applications
 
 
 
|journal= International Journal of Innovative Computing and Applications
 
 
 
国际创新计算与应用杂志
 
 
 
|volume=2 |issue=2 |pages= 77–85
 
 
 
|volume=2 |issue=2 |pages= 77–85
 
 
 
2 | issue = 2 | pages = 77-85
 
 
 
|date=2009
 
 
 
|date=2009
 
 
 
2009年
 
 
 
|doi= 10.1504/IJICA.2009.031778}}</ref>
 
 
 
|doi= 10.1504/IJICA.2009.031778}}</ref>
 
 
 
10.1504/IJICA. 2009.031778}} </ref >
 
 
 
 
 
 
 
==See also==
 
 
 
*[[Swarm intelligence]]
 
 
 
*[[Collective cell migration]]
 
 
 
 
 
 
 
==References==
 
 
 
{{Reflist}}
 
 
 
 
 
 
 
==External links==
 
 
 
* [http://www.red3d.com/cwr/boids/ Craig Reynolds' Boids page]
 
 
 
* [http://www.vergenet.net/~conrad/boids/pseudocode.html Explanation of algorithm in pseudocode]
 
 
 
* [https://gpolo.github.com/birdflocking JavaScript implementation]
 
 
 
*[https://lufemas.github.io/boid-ai-implementation/ JavaScript implementation with Phaser Framework]
 
 
 
* [https://web.archive.org/web/20080205014305/http://www.navgen.com/3d_boids/ 3D Boids Simulation using OpenGL, used by the BBC's Natural History Unit]
 
 
 
*[https://black-square.github.io/BirdFlock/ Live In-Browser 3D Simulation of Bird Flocking Behavior in Unity3D] – Open Source implementation for Windows, Linux and Mac
 
 
 
* [https://github.com/piskvorky/PredatorPrey UNIX+Windows open source implementation in C++, using OpenGL and simulation controls]
 
 
 
* [https://github.com/tofti/javafx-boids A java implementation using the javafx API]
 
 
 
*GLSchool - part of [[XScreenSaver]] software
 
 
 
 
 
 
 
{{collective animal behaviour}}
 
 
 
 
 
 
 
[[Category:Artificial life]]
 
 
 
Category:Artificial life
 
 
 
类别: 人工生命
 
 
 
[[Category:1986 software]]
 
 
 
Category:1986 software
 
 
 
类别: 1986软件
 
 
 
<noinclude>
 
 
 
<small>This page was moved from [[wikipedia:en:Boids]]. Its edit history can be viewed at [[Boids算法/edithistory]]</small></noinclude>
 
 
 
[[Category:待整理页面]]
 

2021年2月20日 (六) 21:27的版本

重定向至: