Boids (Flocks, Herds, and Schools: a Distributed BehavioralModel) .new { font-weight: bold; color: red } BoidsBackground and Updateby Craig Reynolds[Youneed to be using an Java-enabled browser to see this demo.](more information about this applet (and others) is available)In 1986 I made a computer model of coordinated animal motion such asbirdflocks and fish schools. It was based on three dimensionalcomputationalgeometry of the sort normally used in computer animation or computeraideddesign. I called the generic simulated flocking creaturesboids.The basic flocking model consists of three simplesteering behaviors which describe how anindividualboid maneuvers based on the positions and velocities its nearbyflockmates: Separation: steer to avoid crowdinglocal flockmates Alignment: steer towards the averageheading of local flockmates Cohesion: steer to move toward theaverage position of local flockmates Each boid has direct access to the whole scene's geometric description,butflocking requires that it reacts only to flockmates within a certainsmallneighborhood around itself. The neighborhood is characterized by adistance (measured from the center of the boid) and an angle,measured from the boid's direction of flight. Flockmates outside thislocalneighborhood are ignored. The neighborhood could be considered a modeloflimited perception (as by fish in murky water) but it is probably morecorrectto think of it as defining the region in which flockmates influence aboidssteering. a boid's neighborhoodA slightly more elaborate behavioral model was used in the earlyexperiments.It included predictive obstacle avoidance and goal seeking. Obstacleavoidance allowed the boids to fly through simulated environments whiledodging static objects. For applications in computer animation, a lowpriority goal seeking behavior caused the flock to follow a scriptedpath. simulated boid flock avoiding cylindrical obstacles (1986)(earlymotion tests, 20 second clip, QuickTime, 10 MB)In cooperation with many coworkers at the Symbolics Graphics DivisionandWhitney / Demos Productions, we made an animated short featuring theboidsmodel called Stanley and Stella in: Breaking the Ice. This filmwas first shown at the Electronic Theater at SIGGRAPH '87. There was atechnical paper on boidspublished atthe same conference. In the course notes for SIGGRAPH '88 there was aninformal paper about obstacle avoidance.Since 1987 there have been many other applications of the boids modelin therealm of behavioral animation. The 1992TimBurton film Batman Returns was the first. It contained computer simulated batswarmsand penguin flocks which were created with modified versions of theoriginalboids software developed at Symbolics.Andy Kopra(then at VIFX, which later merged withRhythm & Hues)produced realisticimagery of bat swarms. Andrea Losch (then at Boss Films) and PaulAshdowncreated animation of an "army" of penguins marching through the streetsofGotham City. from Stanley and Stella in: Breaking the Ice (1987)(40 second clip, QuickTime, 2.8 MB)As luck would have it, Chris Langtonorganized the original ground-breaking Artificial Life Workshop a few months after the boids paper waspublishedin 1987. A helpful go-between got word to Chris and he let me give aninformal presentation on boids at theWorkshop. Theboidsmodel has become an oft-cited example of principles of ArtificialLife. Flocking is a particularly evocative example of emergence:wherecomplex global behavior can arise from the interaction of simple localrules.In the boids model (and related systems like the multi-agentsteering behavior demos) interactionbetweensimple behaviors of individuals produce complex yet organized groupbehavior.The component behaviors are inherently nonlinear, so mixing them givestheemergent group dynamics a chaotic aspect. At the same time, thenegativefeedback provided by the behavioral controllers tends to keep the groupdynamics ordered. The result is life-like group behavior.A significant property of life-like behavior is unpredictabilityovermoderate time scales. For example at one moment, the boids in theappletabove might be flying primarily from left to right. It would be all butimpossible to predict which direction they will be moving (say) fiveminuteslater. At very short time scales the motion is quite predictable: onesecondfrom now a boid will be traveling in approximately the same direction.Thisproperty is unique to complex systems and contrasts with both chaoticbehavior (which has neither short nor long term predictability) andordered(static or periodic) behavior. This fits with Langton's1990observation that life-like phenomena exist poised at the edge ofchaos.The boids model is an example of an individual-basedmodel, a class of simulation used to capture the global behavior ofalarge number of interacting autonomous agents. Individual-based modelsarebeing used in biology, ecology, economics and other fields of study.Note that the straightforward implementation of the boids algorithm hasanasymptotic complexity of O(n2). Each boidneeds toconsider each other boid, if only to determine if it is not a nearbyflockmate. However it is possible to reduce this cost down tonearly O(n)by the use of a suitable spatial data structure which allowsthe boidsto be kept sorted by their location. Finding the nearby flockmates of agivenboid then requires examining only the portion of the flock which iswithin thegeneral vicinity. Using such algorithmic speed-ups and modern fasthardware,large flocks can be simulated in real time, allowing for interactive applications.[new]Online resources related to boids Flocks, Herds, and Schools: ADistributed Behavioral Model the SIGGRAPH '87 boids paper. An emailinterview where I describe a little about how the boid model cameabout. [new] Another page about boids in a report about ALife and GAs by Sophia Smith. Noteson the 1987 boids paper in a literature review by Andrew Gildfind. A summary of Flocks,Herds, and Schools in the report on ArtificialLife in ComputerAnimation in the HyperGraph project of the ACM SIGGRAPH Education Committee. Books and articles that describe boids ArtificialLife (1993) the book by StevenLevy An Epistemological Flock(1995) in Zmagazine by Kees Vuik. ArtificialLife (1994) in Cornell's SciTech Magazine by KaiWu AnIntroduction To Artificial Life by Moshe Sipper. Life Formspart of an "interactive essay on aLife" by Stewart Dean. ParticleSystems (in computer graphics) by Allen Martin. TheDarwin Machine: Artificial Life and Art by Simon Penny Outof Control: The New Biology of Machines, Social Systemsand the Economic World (specifically, chapter 2B) by Kevin Kelly ArtificialLife (1992) by BruceSterlingfrom F&SF. ArtificialLife meets Entertainment: Lifelike Autonomous Agents(1995) by PattieMaes Complexity: The Emerging Science at the Edge of Order andChaos (1992) by M. Mitchell Waldrop GreatMambo Chicken and the Transhuman Condition (1991) by Ed Regis Its Alive"Scientists play god in a binary universe of their own making" (1998)by Curt Suplee [new] FlockingBirds and Schooling Fish by Jason Hagey Life asan Abstract Phenomenon: Is Artificial Life Possible? by Claus Emmeche EmergentBehavior: Particles and Flocks by Rick Parent TheAdaptive Behavior Approach to Psychology (2000) by Bram Bakkerdescribes adaptive behavior, including boids, for a cognitivepsychology audience. (PDF) [new] ArtificialLife: Boids of a Feather Flock Together (2000) by Shawn Carlson. This ScientificAmerican Amateur Scientist column discusses the role ofsoftware experiments as a tool in understanding biological phenomena. [new] Articles on other topics that mention boids as example ormetaphor: Self-organizationand its catalysts in Human Values as Strange Attractors:Coevolution of classes of governance principles (1993) by Anthony Judge [new] Empoweringthe Child: Nurturing the Hungry Mind(1995) by Raymond H. Hartjen. Chaosand the IS Executive (1996) by ChristopherMeyer Chaos,Complexity, and Flocking Behavior: Metaphors for Learning(1996) by StephaniePace Marshall. [new] Rulesfor "Flocking Behavior" in the Web (1997) is an attempt to applyconcepts of emergent behavior to problems of business management. Messy,Exciting and Anxiety-Ridden: Adaptive Software Development (1997)by JimHighsmith draws a parallel between complex adaptive systemsand flexible software development practices. [new] SomeEmerging Principles for Managing in Complex Adaptive Systems (1997)by Paul Plsek, Curt Lindberg, and Brenda Zimmerman. [new] ComplexityTheory: Fact-Free Science Or Business Tool? (1998) by David Berreby reports on the fifth Chaos in Manufacturingconference. The boids model is described (albeit incorrectly) on page 2. [new] Thriving atthe Edge of Chaos: What HealthCare Organizations Can Learn fromComplexity Science (2000) by Sheri M.Gon. [new] Other computational models of group motion Computer animation Eurythmy by Susan Amkraut and Michael Girard containedthe first procedural animation of flocks when it was shown at the Film& Video Show of SIGGRAPH '85. It is available on SIGGRAPH Videoreview (SVR Issue 21, Entry 2). Some imagery from the final versionappear on this page from Ars Electronica 89. Amkraut andGirard also created flocking and herding in the 1993 VR production Menagerie. JessicaHodgins and colleagues at Georgia Tech's GVU have created severalphysically-based models of group behaviors such as herding one-legged hoppers and a pack ofbicyclists. Disney's TheLion King (1994) included a wildebeest stampede by Kiran Joshi,MJ Turner, et al.. Here are two stampede-related items from Brian Tiemann's excellent The Lion King WWW Archive: LionKing production notes (search for second occurrence of stampede) Stampedesequence (QuickTime Movie, 21.9 MB. Also available as low res QT(1.2 MB) and MPEG1(28.7 MB)) XiaoyuanTu implemented a realistic, physically-based model of fishschooling as part of her dissertation research on artificial animals.See also: Tuand Terzopoulos. "ArtificialFishes: Physics, Locomotion, Perception, Behavior", ACMComputer Graphics, Proceedings of SIGGRAPH'94, July1994. A non-technical article called Fishes of the Silicon Sea, by Gene Levinson which appeared in TheWorld & I Magazine. While at Santa Barbara Studios, Mark Wendell used the Dynamationparticle system software to create animation of flocking spacecreatures for Elogiuman episode of Star Trek: Voyager. Course CS206at George Washington University includes an assignment to implement a BehavioralMotion Control System like boids. You can see some of thestudent's animations from: 1997, 1998 and 1999. [new] Games, Interactive graphics and virtual reality Rip-Off(1980) a videoarcade game designed by TimSkelly featured a group of three autonomous "enemy tanks" whichexhibited coordinatedgroup motion. They avoided collisions with each other and would seekthe goalobjects ("canisters"), or if they got too close, the player controlledvehicles. The combination of goal seeking and collision avoidanceproduced amotion like flocking. For more details, read Tim Skelly's own description of the behavior.See also thisRip-Off screenshotand this page about an emulator. [new] Plasm:A FishSample (1985) by PeterBroadwell , Rob Myers, RobinSchaufler, Eva Manolis, etal., premieredat the SIGGRAPH 85 art show. On at least one occasion, a schoolaccidentallyarose in this "virtual fish tank". ParallelBird Flocking Simulation (1993) by Helmut Lorek and Matthew White. Describes an implementation ofboids using up to 50 parallel Transputer processors to simulate flocksof up to 100 boids at interactive rates (6 frames per second orbetter). The simulation included obstacle avoidance. The full articleis available in PDF. [new] The Virtual Fishtankintroduces visitors to the sciences of complexity, artificial life andrelated fields. It is an online version of a project that started as an installationat The Computer Museumin Boston. Its goal is to introduce visitors to the sciences ofcomplexity and artificial life. The original project was jointlydeveloped by the MIT Media Lab(see their project page) and NearLife Inc.(see their recentprojects page). VirtualGreat Barrier Reef: A theoretical approach towards an evolving,interactive VR environment using a distributed DOME and CAVE System(1998) by Scot Thrane Refsland, Takeo Ojika, Tom Defanti, Andy Johnson, Jason Leigh, Carl Loeffler, and Xiaoyuan Tu inProceedings of Virtual Worlds '98. Paris, France, July 1-3, 1998. Alsoavailable in PDF. Robotics Maja Mataricheads The InteractionLab at the University of Southern California which studies robotic group behaviors.See also Maja's dissertation and these videos of robotsperforming various group behaviors, including flocking. (Somepress clippings from WIRED and CNN.And see this delightful story about Maja (the second paragraph)) CooperativeMobile Robotics: Antecedents and Directions by Y. UnyCao, Alex S. Fukunaga, and Andrew B. Kahng (UCLA 1996) surveys researchin robot groups. TheRobot Sheepdog Project by Richard Vaughan etal. provides an interesting contrast to much of the work cited onthis page: the flocking/herding involved is of natural animals while arobot plays a role similar to a sheepdog. As is done when training realsheepdogs, ducks are used here as a less challenging stand-in forsheep. Read the delightful paper for more detail. See also Neil Sumpter's pagesabout the visionresearch related to robo-sheepdog. TheExamination and Exploration of Algorithms and Complex Behaviour toRealistically Control Multiple Mobile Robots (1997) by Duncan Crombie,examines algorithms to control multiple mobile robots, focuses onbehaviors that can be obtained through local control, and demonstratescreateing complex behaviours with simple algorithms. [new] Self-Organizationin Large Populations of Mobile Robots (1993) by Cem Ünsal Describesthe use of a homogeneous population of robots, an Army-ant swarm,for transportation of material. Investigates both spatial andbehaviroal self-organization. [new] SocialBehavior in The Antsa community of cubic-inch microrobots which form a structured robotic community capable of task such as clustering,following the leader, and playing tag. [new] DistributedAnt Robotics a collection of publication and resourcesby IsraelWagner [new] CollectiveLocomotion (1998) by PierreArnaud of the LAMICollective Robotics Group. Includes papers and Labot,a Java demonstation applet. [new] CalculatingSwarms (2000) by Ivars Peterson (in Science News)discusses swarm intelligence, emergent computation and collectiverobotics. [new] Aerospace (coordinated groups of aircraft or spacecraft) SubsumptiveArchitecture of Populous Satellite Constellations (1995) by Brian J. Mork discussespotential applications and designs for groups of reactive communicatingsatellites: "design goals are embedded in the constellation rather thanindividual satellites, and the constellation exhibits emergentbehavior." [new] Solar-PoweredUltralight Aircraft Designed To Fly in Formation(1996) describes early test of a potential fleet of solar-poweredautonomous aircraft that fly at high altitude in "V" formations likegeese, and this press release of the test flight of a prototype. BirdsInspire Formation-Flying Satellites (1999), US Air Force pressrelease describing the US AFRL's "Technology Satellite of the 21stCentury" (TechSat 21)program, including plans for a system of "formation-flying" satellitesthat can quickly adapt to rapidly changing mission requirements. Seealso Space Missions Using Satellite Clusters. [new] Education (about distributed and complex systems) MitchelResnick developed StarLogo a programmable modeling environment for exploring thebehaviors of decentralized systems such as bird flocks, traffic jams, and antcolonies. For more information see Mitchel's book Turtles, Termites, and Traffic Jams OK, while not strictly a "computational model ofgroup motion," Schools are for Fish is a collection of participatory activitiesfor young students to help them learn about group motion and complexsystems. Artificial life and Evolutionary computation (Not)Evolving Collective Behaviours in Synthetic Fish by Nahum Zaera, Dave Cliff,and JanetBruten. Published in From Animalsto Animats 4 (SAB96). AnInvestigation Into Computational Flocking Techniques (1999) by Phil Pocknellinvestigates flocking (herding) under the influence of a predator.Specifically, it models a situation very much like the interactionbetween a sheep-dog and a flock of sheep, such as in a sheep-dog trial.See the Tadpoidsapplet, and the related PestControl applet. [new] BehaviouralSimulation in Voxel Space (1997) by HongwenZhang and BrianWyvill uses as its example a group of butterflies navigating byolfactory sensors. Based on Zhang's 1996 Ph.D. thesis. See the fullpaper in PDF. Ant-basedLoad Balancing in Telecommunications Networks (1996) by RuudSchoonderwoerd, Owen Holland. JanetBruten and Leon Rothkrantz. See also these related links: There'san ant in my phone (1998) by Mark Ward in New Scientist, British Telecom: Notes from the Ant Colony (1997) by Julia Flynn inBusinessWeek, and CollectiveIntelligence for Network Control. [new] Other emergent, collective behavior AmorphousComputing HomePage a research group exploring the question: "How dowe obtain coherent behavior from the cooperation of large numbers ofunreliable parts that are interconnected in unknown, irregular, andtime-varying ways?" [new] SwarmIntelligence: Payman Arabshahi'spage of links on emergent computation by swarms of simple agents. [new] Other topics... JohnMee's term report on software to simulate themovement of a flock of birds. G.Keith Still has developed a system called Legion to simulate the motion of large crowds of people. It canhandle crowds of more than 100,000 people. See also these related pages, and these articles by Sheryl Canter in PC Magazine from April 1996and May1996. A page of Java-baseddemos by the Biological Model Simulation group at Keio University.The demos are in 2d and include basic schooling, predation, interactivefeeding, and schooling with two species. Animation Science Corporationsells tools to model the motion of large crowds with their Rampagesoftware, based on an efficient engine for interacting particlesystems. Daniel Bullok wrote a fishtank simulation asa class project. An introduction called Complexity andSocial Behaviour and a computational model of resource-deprived termites by Octavio Miramontes A Flocking-Strategy for a programmable multi-agent shell VehicleGuideby Jan Beutler JonathanRobbins' page The Boids is the report from his Science Project -- his 8thgrade Science Project, mind you. (Yikes! Kids these days!) Simulationof Herding with Dynamics by HowardZhang uses a simple spring-mass model of animal bodies andsimulates herding on the plane. This report contains good diagrams anddescriptions of the implementation of component steering behaviors. TheComputational Beauty of Nature is the web site for a book of thesame name by Gary W. Flake(shop for the book here). He implemented boids and added another rule which cause theboids to attempt to maintain a clear view ahead of them. This resultedin flocks which form the classic "V" formations of migrating geese. Seethe Javademonstration. In a class project called A-Life Foodchain Simulation Leon Blackwell extends a boid-likemodel to include predator-prey interactions. TheDuck Pond: Following, Flocking and Herding a 1977 class project byBrian O'Connor. Includes source code and animations. (Althoughthere seem to be access problems for some of the files.) E Pluribus Unum (the January 1999 installment of Brian Hayes'column on Computing Science in American Scientist)talks about emergence using examples such as flocks, schools,herds, traffic jams, ant colonies, and forest fires. Anattempt to replicate the main findings of Craig Reynolds's (1987)'Boids' by Harry Brignull, reports on a project to implement boidsusing the POPBUGS package by Chris Thornton.Includes diagrams of the resulting group motion and source code. Flocking,Boids and Tag (1998) by AronHelser. This classproject involved an interactive flock which plays the game of tag andallows the use to either ride along passively with a member of theflock, or take control and pilot the boid. [new] GOIDSProject a study of flocking geese objects (1999) by Cathryn JPolinsky. Presentation slides for a Senior Project called "FlightSimulation of Flocking Geese Using Particle Set Animation" [new] Natural flocks, herds, and schools Some seminal papers from the (hardcopy) literature: The Structure and Function of Fish Schools (1982) byBrian Partridge in Scientific American,June 1982, pages 114-123. The Chorus Line Hypothesis of Manoeuvre Coordination inAvian Flocks (1984) by Wayne Potts, in Nature,Volume 309, May 24, 1984, pages 344-345. Animal Groups in Three Dimensions: How Species Aggregate(1997) edited by Julia K. Parrish and William M. Hamner. A collection of papersrelated to a 1991 workshop on measuring and modeling animalaggregations. Use this link to shop for the book. A 22 second movie of aschool of anchovies (160x120 pixels, in JPEG(1.1 Mb) and Quicktime(1.8 Mb) formats) swimming in the Kelp Forest tank at the Monterey Bay Aquarium from a page of fish videos at FINS. See also the live Kelp Cam view ofthis tank. Here are some other flock/herd/school pictures on the web: schoolinganchovies, schoolfrom below, crowdedfish, orcaand herring, herd ofrunning Akhalteke, schoolof spadefish, Gallimimuses flock (Jurassic Park), V formation of geese, herdof wild asses, wildebeestherd, herringschooling (MPEG, 0.5 Mb), herringschool turning (MPEG, 1.0 Mb) ... Temple Grandin's interestingsite on behavior of livestock and other subjects, contains a section on Recommended Basic Livestock Handling which covers topics such as: UnderstandingFlight Zone and Point of Balance MovingCattle out of Pens and Sorting [new] Low StressMethods for Moving Cattle on Pastures... [new] each of which contain pictures and diagrams on geometricalrelationships between herds of livestock, the shapes of theirenclosures, and the positions of human handlers. William H. Calvin's book The Ascent of Minddiscusses the predation on herds of early humans in Chapter 8: Hand-Ax Heaven (youmay wish to search for the first occurance of herd). Lessons fromGeese: on the structure of migratory goose flocks, and folksythoughts on applying these ideas to groups of humans. V formations: at the bottom of Jim Rible's page about the CanadaGoose there is a discussion about the mixed evidence for anaerodynamic explanation of the "V" formations often seen in migratingducks and geese. See also the cited references. A page by UweKils illustrating how individual fish in a school benefit fromreduced predation due to optical confusion. An essay called MigrationAdvantages of Shoaling by Tony J. Pritcher in his book Behaviour of Teleost Fishes describes research by Uwe Kils into theeffect he calls synchrokinesis whereby small movements ofindividuals copied through the shoal provide an accurate movementtowards better conditions. (Contrast this with the work of Tonerand Tu (above) which suggests that individual errors are damped outby interaction with the rest of the group.) Vigilance,Flock Size, and Flock Geometry: Information Gathering byWestern Evening Grosbeaks (1995) by MarcBekoff a field ethology study of how the size and relativepositioning of this bird affect the vigilance (scanning) behavior ofindividuals in the group. [new] Cutting horses and herding dogs: these two typesof trained animal behaviors have evolved into modern sportcompetitions. Their origin was to assist humans raising stock animals,and they can still be found in this role today. Both are related toherding behavior in special ways. The job of a herding dog (stockdog, sheepdog) is to help ashepherd contain and control a herd of stock animals (especially sheep,goats or cattle). A herding dog uses its understanding of the stockanimal's herding behavior to be able to move the whole group as a unit.For more information see: TheStockdog Server, Dog-Play:Herding and TheHerding Page [new] The cutting horse derived from the American cowboy cultureand is specifically trained to handle cattle. A cutting horse's skillis in being able to defeat the cattle's herding instinct,allowing it to separate off (cut) one individual at a time. The site ofthe National Cutting HorseAssociation includes historyand videos ofthe sport. [new] Some general information about these animals: Fish fromthe WWW Virtual Library. Birdlinksby RolfAnthony de By From Cornell's Biodiversity and Biological Collections: Ichthyology Ornithology From the Department ofVertebrate Zoology in the National Museum of NaturalHistory at the Smithsonian Institution: Divisionof Birds Divisionof Fishes From the Electronic Zoo: collections on birds and fish From AnimalPictures Archive pictures of: flocks, herdsand schools. [new] Biomechanics: How BirdsFly by David Goodnow NaturalFlight: Biology & Physics by Roy Beckemeyer From the about.comsite on Birding: TheAbility to Fly Flightof Birds FishSwimming (1993) by J.J.Videler [new] TheVirtual Whale Project includes simulated swarms of prey, see Cool School below. SatelliteTracking of Threatened Species from NASA (see also Argos). An exhibit on Vertebrate Flight in the online Museum of Paleontology of The University of California atBerkeley. Birdsin Flight very high speed photography by Ralph W. Scott A large collection of AnimalBehavior Sites [new] Software(There is additional source code for Java implementations listed on the boids applet page.) Boids This is the original 1986-1988 implementation, written inSymbolics Common Lisp, and based on Symbolics' S-Geometry 3d modelingsystem and S-Dynamics animation system. (Modern versions ofthose applications are available from Winged Edge Technologies, see: Mirai Modeling and Mirai Animation. Your browser may not recognize this file as Lispsource code and try to reformat it as filled text. If so use [View /Page Source] or equivalent, or download the file.) C++Boids This platform-independent boids implementation by Christopher Klineincludes C++ source code and an Inventor-based binary executable demofor SGI machines. These boids support both flocking and obstacleavoidance. Buzzz! An After Dark screen saver module for Macintosh computersby Simon Fraser. Thisvery nice package implements a parameterized version of boids includingseveral species of creatures (wasps, birds, fish, sheep...) based onaltering the parameters. There are control panels that allow you toexperiment with the parameters. For other sources of this software seeSimon's AD page. boids.exe by Jürgen Schmitz. Version 1.0 of a Windows application featuringthree distinct species of flocking birds and nice control panels foradjusting their parameters. See the readme file for more information. SchoolView This is a screen saver for NeXT computers by David Lambert based on theboids model. C code and related files are available for FTP. See the readme file for details. A-Quarium A screen saver for Windows by Ric Colasanti. A-Quariumis a fish tank simulator somewhat related to boids. "...a fish will tryto swim with a close neighbour if it is of the same species, and willtry to swim away if it is of a different species. The behaviour of thefish tank is an emergent property of all the individual fishactions..." MaxBoids There is an implementation of boids for MAX,an interactive real-time graphic programming environment, from IRCAM and Opcode. Boppers This Windows 3.1 software originally accompanied the book ArtificialLife Lab by RudyRucker, Waite Group Press, 1993, now out of print. It includes animplementation of boids and related ALife models. ImagineFlock 3D A commercial "IPASplug-in" for 3D Studio from CBLTechnology. Stone'sMac Boids This is an application for a PowerPC Macintosh using QD3D. Otherversions exist for 68000 Macs with FPU, and as After Dark modules. Seethe main page by Stone(Ishihama Yoshiaki) for other alife-related Mac and Java software. MatFa'sBoids 0.1 Mattias Fagerlund wrote thisvery nice 2D implementation of boids for Windows 95 or WindowsNT andprovides both executable and source code. A screen shot on the web pageshows the interactive slider controls and a large flock flying aroundseveral obstacles. Boids:DirectX Flocking Sample A boids implementation by Stephen Coy has been included in the DirectX sample code sinceversion 5. Stephen suggests that better source code is included with DMBoids the DirectMusic demo based on boids. Boidsfor Apprentice A boids demo based on Christopher Kline's implementation (seeabove) is included in Eric Powers'sOpenGL/OpenInventor tool called Apprentice which is free fornon-commercial, educational use. Cool School By David S. Hooper, Cool School simulates a school of fish andpredators using behavioral modeling. The O(n2)cost of the naive boids algorithm is reduced by by subdividing thepopulation into a hierarchy of "subschools". He reports running atinteractive rates with 32 subschools each containing 33 fish on a200MHz Pentium-class machine. Cool School was developed as part of the Virtual Whale projectmentioned above. Simulationof a Flock of Birds A 1997 class project at Stanford by Chris Quartetti and Eng-ShienWu, includes a movie file showing flocking and collision avoidance, andC++ source code. BoidsDemos in VRML, Java3D, and C Anthony Steed(of University College London) developed the first two implementationsto compare VRML and Java3D, and the third to test the DIVE multi-userVR system. Source is includes for all three. FlockThis! A commercial plug-in from Northern Lights Productionsfor the Electric Imageanimation system, creates herds and flocks of animated characters. [new] Gnat Cloudand Mega Flies Keith Wiley createdthese Mac applications to simulate extremely large swarm-likepopulations, using modifications of the basic boid algorithms. See alsohis FlockWith Obstacles applet. [new] vbBoid Richard Lowe wrote this boids implementation in Visual Basic andprovided the source code at PlanetSourceCode's VBrepository. (I have not seen it run but:) It apparently providesfor interactive specification of obstacles. [new] 3D Boids Robert Platt wrote aboids implementation as a Windows application for a Final Year Projectin college. The original version used Direct3D and he later rewrote itto use OpenGL. Binaries and sourceare available for download from his page. [new] TheBirds Olcay Cirit wrote this 2dshooter game based on boids. It runs under Windows 95, 98, and NT andis available for free download. You can shot at the flocking birds, butwatch out, because they can shoot back! And since they are a flock,they can make coordinated group attacks. [new] Crowdsimulation Bill Powersdeveloped these models of "people moving in relation to other peopleand things" as part of a suite of (Windows PC based) demonstrations ofhis PerceptualControl Theory. Powers and his colleagues in the Control Systems Group seek tomodel and understanding the purposeful behavior of living organisms. [new] CreatureBehaviour Simulator James Greenbankwrote this ecological simulation of a three species system usingindividual-based local rules. It is written as a Java application. Thispage contains links to a paper, the source code and bothplatform-independent and Windows-specific executables. [new] CM:Flocking Model a StarLogoT implementation of flocking from Connected Mathematics ("MakingSense of Complex Phenomena Through Building Object-Based ParallelModels.") Includes links to a movie of the simulation and apage of background. [new] flockv1.0 John Kundert-Gibbs wrotethis flocking plug-in for Mayain its scripting language MEL. It is available at the HIGHEND3Drepository. [new] Greg'sboids GregJohnson wrote this boids code to use with the Persistence of Vision Raytracer, thepage contains links to the code, a movie, and some diagrams of thesteering force vectors used in the boids model. [new] Lexicological note: in addition to common terms like flock,herd, and school, English has a rich history ofspecificwords to describe groups of various animals, sometimes known as collectivenouns or venereal terms. These words were used morefrequentlywhen hunting wild animals was a major source of food. For an amusingdiscussion of these words see the book AnExaltation of Larks by James Lipton (Viking Penguin, 1993, ISBN0140170960). Here are some web pages that provide similar information: Venereal Termsby Kreme CollectiveNouns in A Beastly Garden Of Wordy Delights by Melissa Kaplan CollectiveNouns: A (re-)collection. by David Featherston GroupNames and birdgroups by TerryRoss Favecollective nouns by Lizzie Bailey See also TheCollective Noun Page by Ojophoyimbo Animal Terms For: Baby,Male, Female and Group by R-Zu-2-U [new] Birdsin Numbers by NeilE. Taylor [new] AnimalCongregations from the USGSNPWRC [new] What do youcall a..... by Kimberly Beer [new] TheName Game by Janice Welsh [new] Send comments to Craig Reynolds<cwr@red3d.com> visitors since June 29, 1995Last update: September 6, 2001 (fixed the "early motion tests"link December 6, 2006)(fixed links to Brian J. Mork's work July 30, 2007) |
|