Enter the maze

Are you there yet?

by Jo Brodie, Queen Mary University of London

Cell phone tower: by Alistair McIntyre from Pixabay

Plenty of people love the Weasley family's clock from the Harry Potter books and films. It shows where members of the family are at any given time. Instead of numbers giving the time, the clock face has locations where someone might be (home, school, shopping) and the many hands on the clock show the family members. The wizarding world uses magic to make their whereabouts clock work, but muggles (and squibs) can use mobile network data to build a simple version, and use Bayesian networks to improve it.

Your mobile phone is in contact with several cell towers in the mobile provider's network. When you want to send a message, it goes first to the nearest cell tower before passing through the network, finally reaching your friend's phone. As you move around, from home to school, for example, you will pass several towers. The closer you are to a tower the stronger the signal there, and the phone network uses this to estimate where you are, based on signal strength from several towers. This means that, as long as your phone is with you, it can act as a sensor for your location and track you, just like the Weasley's whereabouts clock.

You could also have a similar system at home that monitors your location, so that it switches on the lights and heating as you get closer to home to welcome you back. On a typical day you might head home somewhere between 3 and 6pm (depending on after-school events) and as you leave school the connection to your phone from the tower nearest the school will weaken, but connections will strengthen with the other cell towers on your route home. But what if you appear to be heading home at 11 in the morning? Perhaps you are, or maybe actually the signal has just dropped from the tower nearest to the school so a tower nearer your home is now getting the strongest signal!

As you move nearer to a tower, the signal gets stronger

A system using Bayesian logic to determine 'near home' or 'not near home' can be trained to put things into context. Unless you are ill, it's unlikely that you'd be heading home before the afternoon so you can use these predicted timings to give a likelihood score of an event (such as you heading home). A Bayesian network takes a piece of information ('person might be nearby') and considers this in the context of previous knowledge ('and that's expected at this time of day so probably true' or 'but is unlikely to be nearby now so more information is needed'). Unlike machine learning which just looks for any patterns in data, in a Bayesian networks approach the way one thing being considered does or does not cause other things is built in from the outset. Here it builds in the different possible causes of the signal dropping at a cell tower.

You could also set up a similar system in a home using wifi points to predict where you are and so what you are doing. Information like that could then feed data into a personalised artificial intelligence looking after you (see page 16). Not all magic has to be run by magic!

This article was inspired by the blog on Presence Detection Part 1: Home Assistant & Bayesian Probability and a previous cs4fn article on making a Whereabouts Clock