What we published

Context-Aware Background Application Scheduling in Interactive Mobile Systems - Published at IEEE JSAC 2017

Today, lots of mobile users want to extend the battery life time of their smartphones. If we can preload and unload applications to the background with the knowledge about future launching pattern, can we reduce the battery consumption of the smartphones? We verified that battery efficiency can be improved and it is showed by real-world measurement.

IEEE JSAC (Journal on Selected Areas in Communications, Impact Factor: 3.672) is a most prestigious journal which covers the entire field of communications and networking.

Each individual’s usage behavior on mobile devices depends on a variety of factors, such as time, location, and previous actions. Hence, context-awareness provides great opportunities to make the networking and computing capabilities of mobile systems more personalized and more efficient in managing their resources. To this end, we first reveal new findings from our own Android user experiment: 1) the launching probabilities of applications follow Zipf’s law and 2) inter-running and running times of applications conform to log-normal distributions.We also find contextual dependencies between application usage patterns, for which we classify contexts autonomously with unsupervised learning methods. Using the knowledge acquired, we develop a context-aware application scheduling framework, context-aware application scheduler (CAS), that adaptively unloads and preloads background applications for a joint optimization in which the energy saving is maximized and the user discomfort from the scheduling is minimized. Our trace-driven simulations with 96 user traces demonstrate that the context-aware design of the CAS enables it to outperform existing process scheduling algorithms. Our implementation of the CAS over Android platforms and its end-to-end evaluations verify that its human-involved design indeed provides substantial user-experience gains in both energy and application launching latency.

[ Overall architecture of CAS and its operations over time ]