BCS SPA Software in Practice

2nd – 4th July 2018

Book your place now

Distributed Biological Algorithms with IoT at SPA 2018

biological distributed algorithms at SPA 2018

For most of us, using IoT systems to implement distributed biological algorithms is not something we get a lot of practice of during our day-to-day work. But what an exciting topic. Who wouldn’t like to learn more about distributed biological algorithms implemented with IoT systems?

If you want to try something a bit different to your day job, yet learn some new skills and ways of thinking which will be useful during your 9 - 5, then Maisie Fernandes and Venus Bailey are running an unmissable session ‘Internet of Things With Pyhysical Programming’ at SPA 2018.

We were too intrigued and excited to wait, so we asked them to give us a teaser of what we can look forward to.

Q: Hi Maisie, Venus. Your session sounds awesome and very unique. We’d love to know what was your inspiration for this session?

Thank you. Outside of our day-to-day work, we both have quite a lot of outreach and workshop experience using fun hardware platforms including Raspberry-pi, Arduino and microbit. Venus has some research and work experience on developing distributed algorithms for wireless sensor networks and has always combined these two areas of interest to a real workshop.

The focus of this workshop is about distributed biological algorithms, like in nature how birds flock, fishs school, ants forage, fireflies synchronise. It is intriguing to think how these small creatures with such small brains can coordinate so well as a whole. In the workshop, we want to take a simple example and turn it into reality. The workshop will act as a playground for us to experiment. The randomness of the number of people, how people move, and what sort of ideas they generate on the day will provide some interesting variations in running this workshop!

Q: Can you tell us why we should be interested in biological distributed algorithms in IoT systems?

In a smart sensor scenario of Internet of Things (IoT), e.g. smart car park, pollution sensors, etc.) nodes (small computers with wireless capability) are positioned distributedly, depending on the applications, they can also be mobile. The nodes are micro-controller/processors with limited computational power, memory and battery. They usually have a common goal to achieve, e.g. get the best estimate of pollution levels given the accuracy and resolution (time and space) requirements.

Several common challenges arises, how to conserve battery power, how to route the data effectively back to the internet, how to trade off in-network processing with some data loss and routing all the data back to the main base to be processed, etc. The nodes need to be able to make individual decisions with some information from their neighbouring nodes only. The network as a whole needs to be self-adapting and self-organising, while achieving a common goal.

Interestingly, nature is really good at solving distributed problems. We can find examples in bird flocking, fish schooling, ant foraging, firefly synchronisation, etc. These little creatures are known to work individually, and coordinate with nearby individuals. As a group, they can achieve a common global objective. This are also emergent behaviours, the phenomenons that emergent from the relationships of a group of individuals, rather than the individual parts.

Q: Will all attendees have the chance to actually code algorithms for IoT systems if they have basic programming skills?

Yes. Attendees don’t need a lot of programming experience to attend the workshop. The tools will be provided to practise their analytical skills and code algorithms in a practical way.The focus of the workshop is to experience the development of a distributed algorithm.

Q: We don’t want to spoil the surprise, but can you give us a little teaser of the distributed game we will be deriving?

The first part of the workshop will involve getting the participants familiarized with microbit programming and get the first firefly synchronisation algorithm. The second half of the workshop, we will experiment a few different parameter settings and see what effect it has on the synchronisation algorithm based on how we coordinate ourselves. The last part, the participants will get the chance of developing and testing their own distributed algorithms and strategy.

Q: How do you envision we may put our new skills and insights to use after your session?

Attendees will gain a better understand how a distributed algorithm can fits into a bigger goal and get some insights on how this fits in the IoT picture.

A few tickets for SPA conference are still available. We invite you to join us.