Researchers at the University of Melbourne have used machine learning to accurately predict when an individual will next unlock their phone. The technique can be used, they say, to trigger more timely data acquisition, better schedule OS updates and synchronisation and improve energy efficiency.
Smartphones are actually not very smart when it comes to system updates and battery conservation,” said the university’s Professor of human computer interaction Vassilis Kostakos.
“A typical system update takes tens of minutes, prevents people from using their phone in the meantime, and can’t be paused once it commences. Knowing when users are most likely to use their phone can help smartphone apps and operating systems determine when to automatically update itself, without using large amounts of battery power or interrupting user-experience.”
The researchers installed an application – a plugin of the AWARE framework, an open-source middleware to capture contextual data on mobile devices – on the phones of 27 Android users over a two week period.
Initially the app collected 18 sorts of data from the phones, such as light, location, data traffic, and readings from Google’s Activity Recognition API and Android’s Pedometer API to calculate users’ activities and steps. App usage was also collected, as it could inform the timing of what the researchers – led by PhD student Chu Luo – referred to as the next ‘unlock event’.
The researchers used two regression algorithms – multiple linear regression and random forests – to predict when a phone would next be unlocked. They also used a classification approach, to determine whether a phone would be unlocked in the next five minutes.
“Doing so means that we do not try to answer the question ‘When will the next unlock happen?’, but rather we ask the question ‘Will the next unlock happen in the next x minutes?’” Luo et al write in their paper Energy-efficient prediction of smartphone unlocking.
“In essence, this is an easier question to answer, but it still provides utility given that many smartphone operations can complete within a few minutes,” they added.
Utilising hardware sensors, is in itself, quite energy intensive. So the researchers repeated their work, using only software based data – application usage, screen events, time and gender – collection of which “has a negligible impact on battery”.
In both cases, the researchers obtained a highly accurate rating for the next ‘unlock event’, with slightly greater accuracy using only software based data.
“In 93 per cent of cases, it accurately predicted whether users would unlock their phone in the next five minutes,” Kostakos said.
“Our feature evaluation indicates that the strongest indicators of phone unlocking are software-related features including idle time (time since the end of last session), the duration of last session, and the hour of day,” Luo added.
There are limitations to the method, however. Users often unlock their phones because of a notification or text message; common occurences which are difficult for machine learning methods to predict.
“It’s challenging for AI to predict when certain arbitrary events occur, but it holds great promise regarding events that are more regular. For example, many people use phones just before going to sleep and then lock their phone until morning,” said paper co-author Dr Jorge Goncalves.
While previous studies have been able to infer user intent – such as predicting whether users are available to answer an incoming call, how responsive they are to instant messaging and when to best interrupt users with notifications – they are typically battery intensive, and don’t give much insight into what factors lead to a user actually unlocking their phone. The Melbourne researchers work promises big benefits for phone users – less frequent charging and better performance.
“Based on our system, in non-usage periods, such as when someone sleeps at night, smartphones could schedule computation-intensive tasks such as app and OS updates, or any other activity that can affect user experience, such as downloading new podcast episodes or game updates,” Kostakos said.
“And rather than checking for updates every five minutes, your phone could just check once – before you use it. The end result could be increased time between needing to charge your phone, and a better user experience with the system operating at optimal speed.”