Insects have very small brains, a million neurones in a bee just 100,000 in a fly, and yet they can fly and navigate the space around them pretty well. Scientists are intrigued on how they can manage this feat with such limited "computational power".
Nature has evolved a straightforward method for navigation. Insects have compound eyes, each composed by single eyes, ommatidia, and the image of an object in the environment moves from one "ommatidia" to the next as the insect (or the object) move. By measuring the angular velocity, that is the time it takes the edge of an object to move from one "ommatidia" to the next, the insect brain "knows" the relative velocity and adjust the fly to avoid hitting the object.
This system is very good, since it requires very little processing power (it also has problems though: ever wondered why nocturnal insects, like moths, seems to be attracted by light to the point of ending up smashing into the light source? Well it is because of their way to process images to fly: if you are flying in the dark and your only points of light are stars, you just make sure to keep the angle to one of this points -start- fixed and you fly in a straight direction. This is because stars are so far away... However, if you take as point of reference a light that is nearby and keep the same angle you end up smashing on that light point. And this is what happens to moths. They evolved through million of years when the only light at night came from the stars....).
Having understood the trick, researchers are now trying to create systems that can use the detection of angular velocity to guide the flight of machines, like drones.
This is what is reported in a paper published on Computational Biology by a team of researchers at the university of Sheffield who have managed to simulate the way bees detect changes in the surrounding space as they fly, using just a few of their neurones (scientists are still at work in trying to understand their neural circuitry that is actually used for this computation).
Interestingly, as it is often the case in Nature, bees do not calculate the exact angular velocity but an approximation that is fair enough for their need. This requires less computation and takes care of errors. The simulation performed by the researchers mimics this approximate calculation of the "optic flow" and leads to a flying behaviour similar to the one of a bee.
If you look at a bee, you will notice that it does not fly in a perfect rectilinear line but it wobbles a bit. This is the consequence of using an approximate estimate of the angular velocity and at the same time it creates a reacher representation of the surrounding ambient. Another case in point demonstrating that the best is worse than the good enough...
I am fascinated by seeing how much we can learn from Nature and the practical application in ICT of our increased understanding of seemingly irrelevant, tiny, things like a single bee!