Adaptive Context-Aware Energy Optimization for Services on Mobile Devices with Use of Machine Learning

In this paper we present an original adaptive task scheduling system, which optimizes the energy consumption of mobile devices using machine learning mechanisms and context information. The system learns how to allocate resources appropriately: how to schedule services/tasks optimally between the device and the cloud, which is especially important in mobile systems. Decisions are made taking the context into account (e.g. network connection type, location, potential time and cost of executing the application or service). In this study, a supervised learning agent architecture and service selection algorithm are proposed to solve this problem. Adaptation is performed online, on a mobile device. Information about the context, task description, the decision made and its results such as power consumption are stored and constitute training data for a supervised learning algorithm, which updates the knowledge used to determine the optimal location for the execution of a given type of task. To verify the solution proposed, appropriate software has been developed and a series of experiments have been conducted. Results show that due to the experience gathered and the learning process performed, the decision module has consequently become more efficient in assigning the task to either the mobile device or cloud resources. In face of presented improvements, the security issues inherent within the context of mobile application and cloud computing are further discussed. As threats associated with mobile data offloading are a serious concern, often preventing the utilization of cloud services, we propose a more security focused approach for our solution, preferably without hindering the performance.

[1]  Xu Chen,et al.  COMET: Code Offload by Migrating Execution Transparently , 2012, OSDI.

[2]  Sudeep Pasricha,et al.  Context-Aware Energy Enhancements for Smart Mobile Devices , 2014, IEEE Transactions on Mobile Computing.

[3]  Megha Gupta,et al.  EMCloud: A hierarchical volunteer cloud with explicit mobile devices , 2018, Int. J. Commun. Syst..

[4]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[5]  Narseo Vallina-Rodriguez,et al.  Energy Management Techniques in Modern Mobile Handsets , 2013, IEEE Communications Surveys & Tutorials.

[6]  Mostafa Ammar,et al.  IC-Cloud: Computation Offloading to an Intermittently-Connected Cloud , 2013 .

[7]  Mohammad Shojafar,et al.  Mobile Cloud Computing: Challenges and Future Research Directions , 2017, 2017 10th International Conference on Developments in eSystems Engineering (DeSE).

[8]  Lei Yang,et al.  Accurate online power estimation and automatic battery behavior based power model generation for smartphones , 2010, 2010 IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[9]  Piotr Nawrocki,et al.  Quality of Experience in the context of mobile applications , 2016, Comput. Sci..

[10]  Rodrigo Roman,et al.  Mobile Edge Computing, Fog et al.: A Survey and Analysis of Security Threats and Challenges , 2016, Future Gener. Comput. Syst..

[11]  J. Flinn,et al.  Energy-aware adaptation for mobile applications , 1999, SOSP.

[12]  Bartlomiej Sniezynski,et al.  A strategy learning model for autonomous agents based on classification , 2015, Int. J. Appl. Math. Comput. Sci..

[13]  Ian H. Witten,et al.  The WEKA data mining software: an update , 2009, SKDD.

[14]  Eryk Dutkiewicz,et al.  Cyberattack detection in mobile cloud computing: A deep learning approach , 2017, 2018 IEEE Wireless Communications and Networking Conference (WCNC).

[15]  Leo Breiman,et al.  Random Forests , 2001, Machine Learning.

[16]  Byung-Gon Chun,et al.  CloneCloud: elastic execution between mobile device and cloud , 2011, EuroSys '11.

[17]  Yunheung Paek,et al.  Techniques to Minimize State Transfer Costs for Dynamic Execution Offloading in Mobile Cloud Computing , 2014, IEEE Transactions on Mobile Computing.

[18]  Qiang Ye,et al.  A machine learning based intrusion detection scheme for data fusion in mobile clouds involving heterogeneous client networks , 2019, Inf. Fusion.

[19]  Piotr Nawrocki,et al.  Learning Agent for a Service-Oriented Context-Aware Recommender System in Heterogeneous Environment , 2016, Comput. Informatics.

[20]  Yung-Hsiang Lu,et al.  Cloud Computing for Mobile Users: Can Offloading Computation Save Energy? , 2010, Computer.

[21]  Wang Qing,et al.  CACTSE: Cloudlet aided cooperative terminals service environment for mobile proximity content delivery , 2013, China Communications.

[22]  Gaurav Bhatia,et al.  A study for improving energy efficiency in mobile devices , 2017, INFOCOM 2017.

[23]  Huber Flores,et al.  Adaptive code offloading for mobile cloud applications: exploiting fuzzy sets and evidence-based learning , 2013, MCS '13.

[24]  Albert Y. Zomaya,et al.  Toward Energy-Aware Scheduling Using Machine Learning , 2012 .

[25]  Athanasios V. Vasilakos,et al.  Security and privacy challenges in mobile cloud computing: Survey and way ahead , 2017, J. Netw. Comput. Appl..

[26]  Jordi Torres,et al.  Towards energy-aware scheduling in data centers using machine learning , 2010, e-Energy.

[27]  Piotr Nawrocki,et al.  Resource usage optimization in Mobile Cloud Computing , 2017, Comput. Commun..

[28]  Pan Hui,et al.  ThinkAir: Dynamic resource allocation and parallel execution in the cloud for mobile code offloading , 2012, 2012 Proceedings IEEE INFOCOM.

[29]  Alberto Maria Segre,et al.  Programs for Machine Learning , 1994 .

[30]  Rytis Maskeliunas,et al.  Comparative Evaluation of Machine Learning Algorithms for Network Intrusion Detection Using Weka , 2018 .

[31]  Karim Habak,et al.  COSMOS: computation offloading as a service for mobile devices , 2014, MobiHoc '14.

[32]  Sasu Tarkoma,et al.  Carat: collaborative energy diagnosis for mobile devices , 2013, SenSys '13.

[33]  José Rodríguez,et al.  Energy saving strategies in the design of mobile device applications , 2018, Sustain. Comput. Informatics Syst..

[34]  Filip De Turck,et al.  AIOLOS: Middleware for improving mobile application performance through cyber foraging , 2012, J. Syst. Softw..

[35]  Renato J. O. Figueiredo,et al.  MALMOS: Machine Learning-Based Mobile Offloading Scheduler with Online Training , 2015, 2015 3rd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering.

[36]  Samee Ullah Khan,et al.  Future Generation Computer Systems ( ) – Future Generation Computer Systems towards Secure Mobile Cloud Computing: a Survey , 2022 .

[37]  Henri E. Bal,et al.  Cuckoo: A Computation Offloading Framework for Smartphones , 2010, MobiCASE.

[38]  Alec Wolman,et al.  MAUI: making smartphones last longer with code offload , 2010, MobiSys '10.