Tag Archive: “evolution”
Here’s an update on the model. As a convenience for the purposes of debugging and experimentation, I’ve added a “dashboard” readout that can be used to display any variable. I’ve also added manual controls to adjust the behavior parameters while the simulation is running. It’s fun! You can cause the agents to clump together, disperse, or exhibit other apparent patterns. Lastly, I’ve added a rudimentary pause mode (bullet time, as I announced to all within earshot upon implementation).
Pausing is handy, but I expect it will need to be rewritten in a way that allows more continuous control of the simulation speed – slow motion or step-by-step modes would also be nice.
Still lots to work on and review in the model itself. In particular, I want to examine the turning rate code; I see a lot of jittery motion that suggests something may be off.
Want to see and hear more of this project? I can continue to post updates. Some will be more focused on the concepts of the model and some will be more focused on the implementation – for example, I don’t really know much about Java, so I may post code examples of whatever strikes me as clever or confusing.
Posted on Thursday, May 13th, 2010.
A month or so ago I started working on a simple model of “flocking” behavior, based on work presented at a seminar I attended. I implemented most of the math, but left the visualization for later. It lay fallow for a few weeks. Over the past two days, I dusted off the project and added some simple graphics. It works!
Try it out for yourself right here (Java plugin required). The current camera controls are designed with a three-button mouse in mind, but support for the center button (scroll wheel) seems inconsistent across browsers. Hey, it’s just a demo.
Here are a few slides from a brief presentation I gave to my colleagues when I began this project.
Iain Couzin gave a talk in March as part of the EvoS seminar series. Iain’s research program involves computer modeling and experimental observation of collective animal behavior systems (schools of fish, flocks of birds, herds of ungulates). Rigorous feedback between theory and observation was evident in his work. It was inspiring.
Iain’s presentation catalyzed interest in agent-based modeling in our lab (I am an affiliated staff member). Others jumped in with NetLogo, but I decided to see what I could do with Processing due mainly to my recently rekindled interest in the language. The Obsessive Camera Direction library makes it easy to navigate the visualization.
My implementation is derived from two of the publications which formed the basis for much of the work displayed during Iain’s EvoS seminar. The first paper describes the basic rules from which a variety of flocking behaviors can be elicited, depending on particular parameter values:
Couzin, I. D., Krause, J., James, R., Ruxton, G. D., & Franks, N. R. (2002). Collective Memory and Spatial Sorting in Animal Groups. Journal of Theoretical Biology, 218(1), 1-11. [PDF]
The second paper adds goal-oriented behavior to the model and explores the effect of different proportions of “leaders” in a group (how many cooks constitute too many cooks in the kitchen?):
Couzin, I. D., Krause, J., Franks, N. R., & Levin, S. A. (2005). Effective leadership and decision-making in animal groups on the move. Nature, 433(7025), 513-516. [PDF]
My implementation does not yet include any goal-oriented behavior, but it is designed with the addition of this and other extensions in mind:
Here’s a conceptual diagram of how the pieces of the simulation are arranged. Every speck you see flying about is an Agent, and every agent may exhibit one or more Behaviors. A Collective behavior dictates the direction an agent will move based on its proximity to other visible agents. This design may be be extended to model the interaction of multiple agent types.
Whether I proceed with all or any of the potential improvements to this model is an open question. I may decide to apply this approach to other problems more closely matched to existing research programs at BU. However, I do think it would be swell to develop and test this implementation sufficiently to replicate the varied patterns presented by Iain Couzin.
Posted on Tuesday, May 11th, 2010.
Today I started reading The Windup Girl by Paolo Bacigalupi. So far, it’s as excellent as the testimonials claim. Having recently read Sundiver by David Brin, I noticed what seems to be a subtle nod to that story in one of the opening scenes of Windup Girl.
From the first chapter:
Cycles and rickshaws and megodont wagons flow past them, parting like a river around boulders. The cauliflower growths of fa’ gan fringe scar the beggars’ noses and mouths.
From the first chapter of Sundiver:
Bright points of static filled the space above the blankets and in front of the screen, and then Fagin stood, en-replica, a few inches away.
The E.T. did look somewhat like a giant sprout of broccoli.
An ailment called fa’ gan that looks like cauliflower and an alien named Fagin that looks like broccoli, both introduced in the first chapter of each author’s debut novel? It could be a coincidence – perhaps “fa’ gan” has a meaningful real-world etymology - but I like to think it’s an “easter egg” for the well-read geek. Now I’m going to be on the lookout for other genre references!
Upon further reflection, it occurs to me that there is an additional commonality which might suggest a more specific reason for this reference: both books deal with evolutionary themes.
As part of the Uplift series, Sundiver examines a universe in which humanity’s haphazard evolution is an exception to the norm of guided intervention. Windup Girl is set in a world populated by “genehacked” animals and bioengineered plagues like fa’ gan. One question, among others, is whether these beings are the result of guided or misguided human intervention.
According to his most recent blog post, David Brin is a contributing author to a forthcoming book, Pathological Altruism, which is edited by a group that includes my boss. So now if we can just get a character from Windup Girl to give an EvoS seminar, the circle will be complete.
Posted on Saturday, March 13th, 2010.
My friend Dan has authored a study which has received considerable press coverage this week. It is about the circumstantial advantages of ADHD. Articles about his paper have appeared at Scientific American, Slate, The Economist, New Scientist, The Daily Telegraph, and elsewhere.
It’s all in a day’s work for Dan, but it’s nice to see such widespread recognition for his research. He’s given me many insights into the evolutionary elegance of the world around us, and now the world has a chance to consider his insight.
Posted on Friday, June 13th, 2008.
As you may know, the runner-up at this year’s Kentucky Derby, Eight Belles, was euthanized shortly after the race due to ankle injuries she sustained just after crossing the finish line.
Interestingly, Eight Belles and all of her Kentucky Derby competitors were in part descended from Native Dancer, an accomplished racehorse whose career was eventually curtailed by a “recurring foot injury” and whose bloodline has a reputation for “producing fragile horses”.
Selective breeding leads to the inheritance of desired traits like being fast and light. When taken to extremes (as with the inbred pure-breeding of some Thoroughbreds, arguably), it’s not too surprising that narrow emphasis on a few traits breeds animals that may otherwise be unfit to withstand aspects of the stress they’re expected to endure.
But then again, Kentucky is home to the Creation Museum. Maybe if they ask nicely someone upstairs will just intelligently design a stronger racehorse.
Posted on Thursday, June 5th, 2008.
My good friend Dan has had a scholarly article published in an online peer-reviewed journal, Behavioral and Brain Functions. He is the principal author of “Examining impulsivity as an endophenotype using a behavioral approach: a DRD2 TaqI A and DRD4 48-bp VNTR association study.” I helped a wee bit.
Posted on Thursday, January 11th, 2007.