Boids: Difference between revisions
Content added Content deleted
(→{{header|Java}}: added Java) |
(reorganized task description) |
||
Line 1:
{{draft task}}
A [[wp:Boids|Boids]] algorithm simulates the flocking behaviour of birds. This task requires the creation of a graphical or purely textual
See:▼
* http://www.red3d.com/cwr/boids/▼
If you implement a purely textual simulation, this is a possible board representation, where "O" are the boids that should go toward the right, "#" are fixed walls that should be avoided by the boids, and "." is free space (using a space is also acceptable for free space, if you add some kind of frame around the board).▼
<pre>.......###############...............................................................
Line 24 ⟶ 19:
............................................................#################........</pre>
▲If you implement a purely textual simulation, this is a possible board representation, where "O" are the boids that should go toward the right, "#" are fixed walls that should be avoided by the boids, and "." is free space (using a space is also acceptable for free space, if you add some kind of frame around the board).
An even simpler simulation that doesn't contain walls is acceptable.▼
▲
<br><br>
▲See also:
▲* http://www.red3d.com/cwr/boids/
* http://natureofcode.com/book/chapter-6-autonomous-agents/
<br><br>
=={{header|C}}==
See [[Boids simulation/C]]
|
Revision as of 20:34, 22 April 2016
Boids is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.
A Boids algorithm simulates the flocking behaviour of birds. This task requires the creation of a graphical or purely textual simulation of a flock of birds navigating the cave with obstacles depicted below.
.......###############............................................................... .......###############............................................................... ......#################.............................................................. O......###############............................................................... OO.....###############............................................................... OO.....###############....................#.........................#................ OO......#############...................#####...................#########............ OO......#############...................#####..................###########........... OO.......###########...................#######................#############.......... OO.........#######......................#####................###############......... OO............#.........................#####...............#################........ OO........................................#.................#################........ O...........................................................#################........ ............................................................#################........ ...........................................................###################....... ............................................................#################........
If you implement a purely textual simulation, this is a possible board representation, where "O" are the boids that should go toward the right, "#" are fixed walls that should be avoided by the boids, and "." is free space (using a space is also acceptable for free space, if you add some kind of frame around the board).
A simulation that doesn't contain obstacles but only shows flocking behavior is acceptable.
See also:
C
Java
Racket
Here is the result. The Whalesong compiler was used to compile the Racket source into JavaScript.