Author: Niamh Ellis, MEng Electrical & Electronic Engineering, University of Aberdeen

Project: From the dancefloor to dancing bots: understanding spatial organization of honeybee colonies using Kilobots

Supervisor: Fabio Manfredini, School of Biological Sciences, University of Aberdeen

Trying to find the perfect summer job or internship is difficult and I wasn’t sure I was going to find anything that would not only look good on my CV but also excite me whilst improving my skills. I’m very interested in Robotics and Artificial Intelligence and I hope to pursue a PhD in this area but was having trouble finding a related opportunity.  I had applied for a few opportunities when I received an email with the advert for the project “From the dancefloor to dancing bots: understanding spatial organization of honeybee colonies using Kilobots” I instantly knew it was perfect.

Niamh working with Kilobots. Photo credit: University of Aberdeen

We started off our first meeting by discussing how we could model the behaviour of bees with the Kilobots; however we quickly realised that it would be incredibly difficult to model the bees waggle dance which communicates the distance and direction of food sources to other bees in the hive. This is because it relies on the other bees being able to “see” the movement of the dancing bee which would be difficult to translate to the Kilobots. However, we decided to base the work on a paper looking at tandem running in ants. Tandem running in ants is where a scout, leads a follower to a food source that they have discovered by random searching. This lent itself to the Kilobots behaviour more as follow the leader behaviour has already been implemented in Kilobots. The main problem was a form of route memory as kilbots do not have this ability.

I then began researching ants’ behaviour and worked on learning the basics of coding the Kilobots in CoppeliaSim Simulator before working with the real Kilobots. Using the simulator allowed me to try different set ups and easily determine where in my code something went wrong. This was invaluable for working with the real Kilobots, which require calibration and only can only communicate the current state through LEDs. This made coding and testing quite complex and meant I had to take a step back and first begin with changing LED colours based on distances before altering the movement of the Kilobot. At the same time I continued research and working with the simulator, this allowed me to produce results in both the simulator and the real Kilobots allowing for greater analysis.

I created a simulation using Kilobots to simulate the behaviour of ants during tandem running using stationary Kilobots as beacons to solve the route memory problem. The tandem pair then moved up these beacons to the food source. I then implemented the same with the real Kilobots and compared against a random search that I coded. Which was based on methods I came across while looking at simulations of ant behaviours. In my coding the Kilobot randomly turned before moving straight.

The main comparison I wanted to make was which of the two scenarios was quicker with increasing area. I also wanted to look at the difference between the results of the real world and the simulation.

The results lined up with behaviour observed in ants, with the random search being faster in smaller areas. In the Simulation I found that for smaller areas it was faster to use the random search rather than the beacon method which lines up with the previous work and the behaviour of ants. I also found that the random search had the chance to be either very quick or very time consuming I feel this also lines up with the behaviour of ants and is down to the fact that the random search is truly random not pseudo random. The random search was also more prone to failing than the beacons, this was down to the fact that the Kilobot could get stuck in the corners of the enclosure used to contain the search area.

Niamh working with Kilobots. Photo credit: University of Aberdeen

With the real Kilobots I also found that the random search was quicker but didn’t manage to identify a threshold by which point the beacons were quicker as the beacons were more prone to failing in real life than in the simulation.  This is likely due to the beacons being moved by the scout or follower.

Having discovered a threshold at which point the tandem running was faster proves that the Kilobots can be used to simulate the behaviour of ants and further lines up with the paper the work was based on.

The results of this project are promising it opens up using Kilobots as a biomimetic test for ant behaviours which are difficult to test in real ant colonies. This is incredibly useful as biological entities are incredibly difficult to model with multiple ethical concerns and the general disorder of the system making testing in real world very difficult. This is also useful as it looks at a bioinspired behaviour that could be applied in other applications in robotics.

I found the entire project to be very enjoyable and believe it has greatly enhanced my skills in coding, problem solving and communication among others. It also gave me a chance to work with real robots which I greatly enjoyed and gave me experience in CoppeliaSim.