Architecture of a Context Aware Framework for Automated Mobile Device Configuration Md. Fazla Rabbi Opu, Emon Biswas, and Mansura Habiba
Samsung Bangladesh R &D Center (SBRC), Dhaka, Bangladesh
[email protected],
[email protected] and
[email protected]
Abstract—In this paper an architecture for context aware framework for mobile phones has been represented. The main goal of this proposed architecture is to enable phones to configure themselves based on self-initiated decisions which are directed by surrounding. This framework will reduce user’s manual settings configuration. This will increase the flexibility level to great extent. Finally using the proposed framework phone will be self-configured. Most of the existing work regarding context aware mobile application is mainly based on location. However in this paper we have included a variety of context aware information along with inferred activities e.g. driving, running, meeting etc. in which users are engaged. In addition power management and memory management are two most important limitations of mobile devices. In this paper these two limitations are improved to a significant stage.
1
INTRODUCTION
Mobile Phone has become the most popular device in present age. Introduction of smart phone has taken this situation to another stage. Now phone is a mandatory device to each person. Although smart phones are smart enough to provide several services to its owner, still user need to perform a lot of configuration and settings in order to get different services. Sometimes, this configuration has too much limited scope to provide user actual facility. For example, if user forgets to add reminder for any event appropriately, the device cannot remind him by itself about an important event. Therefore, mobile phones are still lacking of automated and self governing features. In this regard, the settings of any smart mobile phone have so many options to configure in order to provide user more services with flexibility. In spite of phones are becoming smarter day by day, users are being burdened with so many configuration options. However, a phone should be configured by itself. In this regard, user can manipulate phone’s configuration if necessary but phone should be pre configured and help user to get rid of extra burden of configuring each and every settings option. In order to make smart phone self governed, phone should be able to recognize different context parameter such as noise, temperature, location, weather, speed/motion and
brightness etc. based on the information extract from different context parameter phone will change its configuration. At the same time phone needs to save context parameter as history for adoption learning process as well as for future use. The main goal of future mobile phone is to be autonomic and to behave dynamically with the change of context. In order to reach this goal the main obstacles are: (1) there is no generic framework infrastructure to develop co aware application, (2) recognition of context parameter and extract information through calculation from context parameters is associated with energy cost, (3) calculation and information needs time, (4) lots of data need to be saved for further requirement and (5) context for smart phone is very dynamic and uncertain. In this research, we propose context aware framework architecture for mobile phones to meet five basic requirements of future smart phones. Phone of future will perform five features such as : (1) extracts information from dynamic context (2) changes configuration and settings according to the change in context automatically (3) stores information for future use (4) Phone can share such information with other devices (5) provides users personalized and preferred services based on their surrounding context This research has seven objectives to deal with, they are: (1) demonstrating unsupervised machine learning approaches in order to help mobile devices in identifying context (2) designing framework to extract context information in cost of minimum power and memory space (3) developing architecture framework to provide partially autonomic services which can be manipulate later by users (4) saving context information for future use (5) designing architecture framework to change phone configuration dynamically with the change in context (6) designing architecture framework to interpret higher level context information to lower level of information and (7) designing mechanism to share context information saved as history among mobile devices.
2
Literature Review
L. Baltrunus et al [3] has proposed a music recommendation in a car based on the traffic conditions, weather, driver’s mood and way of driving. They have measured the impact of context information on the user’s decision and recommended songs for driver. This calculation is static as well as they have used some defined parameters which are limited such as user can be driving in relax or in sporty. This kind of limited parameter is not always sufficient to take a decision. In the proposed paper dynamicity of context with the change of time has been considered as the main driving factor. Therefore the proposed framework can take decisions more dynamically than all existing framework. Y. Xiao et al [2] has proposed a cloud assisted based context aware power management system; this system can reduce power consumption by dynamically changing wi-fi accesspoint with best signal. Moreover it takes help from cloud services to reduce power consumption by monitoring data download and dynamically off / on downloading. In the proposed system, instead of using continuous cloud services as well as keep running all services always, run-service-as-you-
need method is applied. Therefore in the proposed framework no unnecessary service is running at any moment. In addition, all idle services for a certain period of time go off automatically. These existing context aware mobile frameworks focus on mainly location and provide different location based services. However our main goal is to deal with all possible context aware parameters and to change the phone settings dynamically.
3
Overview of Proposed Framework
The main design principles of proposed architecture are (1) Autonomy, (2) Dynamic (3) Re-configurability (4) Scalability (5) Extensibility (6) Personalization (7) Privacy and (8) on-site and off-site data storage.
Fig. . Proposed Context aware framework Abstract level
Figure 1 depicts the proposed framework for agent based context aware mobile platform. Four agents have been used in this framework e.g. Context Consumer, Context Manager, QoC Manager and Data Manager. Context services typically reside in cloud and delivers context information to application or services of smart phone. In this framework, along with cloud based context services, some local context services also have been considered. All types of context information are extracted, simplified and categorized with the help of Context Engine. Later simplified context aware information is saved in either remote knowledge domain or local knowledge domain by the help of Data Manager. The components of proposed framework architecture are described as following 3.1
Context Consumer
In our proposed framework, any kind of mobile application or services are the context consumer. Context consumer needs different type of context information in order to adopt with the changing surrounding and react accordingly. There are 5 general WH questions in order to figure out different type of context information. Mainly these 5 WH questions decide what kind of context information the context consumer
requires. Sometime it may happen that all these 5 questions retrieve the actual context aware information for context consumer. Therefore usually a context consumer needs response for the following situations, such as Who is the client, any application or service or web service or the general settings of the phone? Where the client resides? When client ask for the information and when the information has been extracted from environment? What is the current activity of the client at the moment client is asking for such as sensor activity? Why this information is being invoked? Some other potential questions also need to be answered for efficient context invocation, such as What is the device the client is using to invoke information such as smart phone, PDA, Tablet, laptop or smart TV? What are the sub sections of context need to be looked for such as wind speed, temperature, rain measurement, traffic, route, places etc.? What kind of security and privacy related policies are incorporated with the request for context aware information? Is there any preference set prior to invoking the service by client? If yes then what are those preferences? 3.2
Context Manager
In this proposed framework, context consumer usually request for context information to context Manager. Then context Manager runs a discovery service in order to find out the appropriate context owner. As soon as context Manager finds the proper context owner, context Manager binds the context consumer with the context Owner. Another major role of context Manager is to communicate Data Manager in order to get as well as store context related data. Context Manager is also responsible for assigning context owner to stored context information. Context manager send both pull data and update data request to data manager. On the response of request from context manager Data Manager pull data from remote or local knowledge domain or updates data in both knowledge domains. 3.3
Context Owner
Each manager has a number of context owner based on different type of context related information. Appropriate context owner is selected by context Manager for context consumer based on the preference of context consumer. Context owner is responsible to store different remote context services of its type with corresponding Quality of Service (QoS) and Quality of Context (QoC). Furthermore, when context Manager binds context owner to appropriate context consumer, context owner is in charge of
selecting correct context service that fits the QoS and QoC requested by context consumer. 3.4
QoC Manager
Each piece of context information needs to have a slandered QoC (Quality of Context). In this proposed framework following QoC indicators are considered: precision, freshness, temporal resolution, spatial resolution and probability of correctness. Along with these some other indicators are also considered such as probability to change, degree of dependency on other context information, frequency of use. QoC Manager is in charge of measuring the QoC of the context information simplified context engine. After QoC measurement corresponding results are assigned the category by Context Manager. Occasional context information is saved in remote knowledge domain while regular information are saved in local knowledge domain. 3.5
Context Engine
Context Parameter Recognition Mechanism: Figure 2 depicts the mechanism used in this proposed framework in order to detect context parameter. At first context read service will run periodically and only collect context those are viable to change according to time. In order to read context sensors are used. Once context has been sensed context parameter are extracted from context information. Next step is to classify all context parameters and categorize them into different classes. At first context aware information are classified into higher level parameters and later they are classified into lower and unit context parameter. For example, at first stage acceleration is measured as High level Context Parameter (HCP) and later at the second stage it is defined whether user is running or walking or driving as the Lower level Context Parameter (LCP). Once LCP is measured and stored, based on the LCP some uncertain context parameter is assumed and more details about LCP are gathered from environment. Finally all details are saved.
Fig. . Context parameter Recognition Mechanism
Context Parameter Inference Mechanism: Different kind of context parameters are extracted from cloud services or sensors resides in phone. for example, location is the most changed parameter for mobile devices. GPS location tracing cost lots of power consumption. Therefore we have defined the location inference mechanism to save extra power consumption. There are two different ways
GPS Tracing. In this technique, phone will enable GPS Location Identification Service (LIS) periodically to identify the current location. Another thing is as phone is learned about some regular location along with duration such as 9 hours at office in weekdays, 9 hours at home. Therefore phone can use LIS once in weekdays just to confirm whether it is in office during 9 hour working time. Similarly, after the time when usually user goes to sleep and phone remains idle, phone does not require LIS to run. In this way, the following rule limits energy consumption due to continuous using of LIS Periodical checking of LIS Phone should be learned about office time and sleeping time of user, so during office time and sleeping time only once LIS will run to confirm that the location is same. Telecom Tracing. For LIS based services phone only need to know the current location. Every present telecom company provides user the exact current location. Telecom operators also informs user if he or she changed location and transferred to the inference location of another BSTI. The proposed framework can use this information along with GPS to detect current location. Using this feature, energy consumption will reduce to zero due to identify location.
Fig. . Noise Level Inference
Similarly there are some other context parameters such as noise, weather, temperature, driving mode and many other parameters can be detected using this proposed framework. Figure 4 describes the noise detection and inference procedure in this proposed framework. It is already discussed earlier that the proposed framework will also have manual re-configurability feature. So user can change his or her current location manually. 3.6
Context Service
Bothe remote and local context services will be implemented for the proposed framework. They will be known as CAWS (context aware service) .Remote context services, typically residing in different clouds, deliver context information with vari-
ous QoC and QoS. Sometimes existing remote context services are not enough and device need on site context information extraction. Therefore in this paper, local Context service is represented. Another reason of this novel idea is to overcome some outstanding limitations of mobile devices such as power limitation, continuous availability, dependency on infrastructure. Some context services are deployed locally; these services can be killed if they are no longer required or are kept idle for certain amount of time. Again these services can be resumed when required. 3.7
Data Manager
Data storage and retrieval as well as updating context information and provide related context services corresponding updated data. There will be two different types of data; regularly used data are known as regular data while data those are used occasionally are termed as occasional data. Data those are used occasionally are saved in remote data storage. In this system the remote data storage is Remote Knowledge Domain. Moreover Local Knowledge Domain is in charge of regularly used data. In this way the phone memory has been saved from memory leakage problem.
Fig. . Data Extraction and saving mechanism
Figure 5 describes how data are managed in phone memory and cloud as well. In this regard, data manipulation is less time consuming. As all searching, indexing and updating data services are resided in cloud for remote data. only searching local data services resides in local phone. All other complex operation on data both local and remote is performed in cloud. Therefore all those services do not use phone memory or power for their actions. This way proposed framework can save memory and power. 3.8
Service Manager
Figure 6 describes how share manager can perform automated Configuration and manages changes
Fig. . Autonomic Configuration Change Mechanism
3.9
Share Manager
Another important component of the proposed framework is Share Manager. This component is in charge to share context related information among devices through Bluetooth, Wi-Fi direct, Wi-Fi or even through internet. 3.10
Policy Manager
Security and privacy is one of the major concerns of smart phone users. Therefore, the proposed framework cannot avoid a policy Manager. This Manager is responsible to define policies for security, privacy and collaboration among Data Manager, Share Manager and Context Manager. In case of binding context owner and context consumer, Context Manager asks Policy Manager to check whether context owner and context consumer are compatible according to security as well as privacy. If there is any mismatch reported by Policy Manager, Context Manager does not bind context owner and context consumer in order to prevent privacy violation.
4
Prototype
In this section some scenarios are described those will be benefitted once the proposed framework is implemented. Following are some scenario: Scenario I: Bella enters her office as her work in a R&D center, she needs her phone in vibrate mode. Currently if she forgets to change the phone to silent mode; the phone won’t be in silent mode automatically. However in this proposed framework, once the phone detects current locations marked as Bella’s office, phone configuration will automatically change its ringer mode and will go to silent mode. Scenario II: Bella gets a call in the middle of road where the surrounding is so noisy. Phone will automatically increase the volume level as soon as it detects the outer noise level.
Scenario III: Bella has prepared a shopping list and saved and she is passing a shopping mall, phone will reminder her if she wants to stop by shopping mall and complete her shopping. Scenario IV: Bella has returned from a historical place, now one of her friends wants to visit the same place. Using the proposed framework, Bella can easily share the route she travelled, the hotel she stayed and the places she visited from her phone to her friend’s phone. Scenario V: Bella deleted an important note from her mobile. Still Bella can get that note according to the proposed framework as the same note is saved in cloud for years after years. Scenario VI: Bella unconsciously put her phone beside water or heater. If phone can detect the out temperature level is intolerable, it will ring to draw Bella’s attention. Scenario VII: Bella visited a new place and forgot the way to return back from where she started, the phone will guide her to trace the route. Scenario VIII: Bella wants to save all favorite phone numbers in her mobile phone. She does not need to do that manually. Based on the incoming and outgoing call frequency favorite numbers will be saved automatically.
5
Performance Analysis
5.1
Reduce Power Consumption
The proposed framework can reduce power consumption to a great extent. Periodically it will run a service for example after each two hour or less to detect whether there is any idle service
Algorithm 1. Detect idle service
1. For each two hours a. K = list of idle service b. For each service k in K i. If k is idle for T time T = true ii. If k has no dependent service P= true iii. If k will not be required for U time M = true iv. If (T ^ P ^ M ) Stop service k . Currently all service need to run for ever if user forget to stop that service after use and cost a lot amount of power. In this proposed framework idle service will no longer be running although user forgets to stop them or not.
Algorithm 2. Detect Location 1. For weekdays a. GPS will run automatically up to office start time and detect the current location b. If location is similar to other week days for last 15 days c. GPS service will be shut down automatically for q amount of time which is predefined and store the location, other services dependent on GPS system will use the saved location d. Else GPS service will run at every 1 hour i. Save current location Lcur and GPS service shutdown ii. If Lprev == Lcur GPS service shutdown iii. Else update Lcur iv. All GPS dependent service will use Lcur as current location Usually on weekdays we use to stay at office during day time and during night we use to stay at home. However although the location is not being changed the running GPS location service in mobile phone still use to consumes power. During 8 hours at office the location is office except lunch break, similarly at night 6-7 hours the location is home. In this system GPS system will not be running all day long.
1. 2.
3.
Algorithm 3. Run GPS based Traffic System Detect user is driving or running or walking or idle If driving a. Run GPS Traffic Notification Service b. Change to auto answer mode through SMS or receive emergency call Else Stop GPS Traffic Notification Service
Although algorithm 3 needs to run a service to detect the user activity, however it will be a local service and cost 67% less power than remote service GPS Traffic Notification. Figure 6 shows that the proposed framework can reduce power consumption around 69% than CasCap [2] and around 50% than the most popular smart phone S3. Moreover user need not to shutdown services from task manager of S3. The proposed framework will automatically detect unused services and shut them down.
8 6 CapCas
4
Samsung S3
2
Our proposed
0 60 Servicves Fig. .
30 Services
15 Services
Comparative power consumption analysis for proposed framework
The main objective of this proposed framework is to run services only when they are required and other time all unnecessary services will be stop state. Another main contribution of this proposed framework is user need not to configure phone about which service is required when, phone will take decision based on context aware knowledge domain. 5.2
Access Context based Multimedia
W.Viana et al [1] describes their approach combines metadata extracted from the users’ context along with annotations which is provided manually by the users and with annotations inferred by applying user-defined rules to context features. In this approach annotation is manual and multimedia needs to be saved in device. Moreover, user needs to pre-configure some rules and policies. However in this proposed framework all multimedia files will be categorized based on location, frequency of use, type, length and so many. User can automatically enjoy pictures of his current location and saved in his phone or in cloud. in this way managing media files will no longer need any manual configuration. 5.3
Better Reminder Service
This proposed framework can help user in many ways as an automatic reminder and user will need very limited configuration for that reminder service. As following 1. Based on detecting how long user is running at Gym the proposed framework can remind him when to stop 2. Based on how long user is driving proposed framework can remind him what the remaining distance to destination is or what the fuel storage is and what the next fuel pump is. 3. Based on the current location at user’s regular grocery shop, id user saves what to buy next phone can remind him or her about shopping list
6
Conclusion and Future Discussion
This paper has presented a novel framework for the development and management of context aware services as well as applications for mobile devices. This framework will reduce user’s interaction with their devices and take decision based on context aware knowledge domain automatically. This framework will help devices to configure by it and reduce user’s initiatives. However as supervised learning is maintained in this proposed framework, still there will be options for manual configuration which will be used less day by day as the learning of devices become mature and sufficient. This framework will make mobile device real smart and independent which is the ultimate requirement of future phone. We have designed a prototype system for this framework and demonstrated its effectiveness and several applications. We are now implementing the context inference service and learning mechanism for devices. We therefore planning to develop a complete set of services and applications based on this framework. We are also interested in developing methodology that would test applications and services that would be based on this framework.
References 1. W.Viana, A. Miron, B. Moisuc, J.Gensel, M. Villanova-Oliver and H. Martin, Towards the semantic and context-aware management of mobile multimedia, Multimedia Tools and Applications, Issn: 1380-7501 2. Yu Xiao , Pan Hui and Petri Savolainen, "CasCap: Cloud-assisted Context-aware Power Management for Mobile Devices" In preceeding MCS’11, June 28, 2011, Bethesda, Maryland, USA
3. Linas Baltrunas, Marius Kaminskas1, Bernd Ludwig, Omar Moling, Francesco Ricci, Aykan Aydin, Karl-Heinz L¨uke, and Roland Schwaiger, "InCarMusic: Context-Aware Music Recommendations in a Car", EC-Web 2011, LNBIP 85, pp. 89–100, 2011 4. Chris Lu, Maiga Chang, Kinshuk, Echo Huang and Ching-Wen Chen, Usability of Context-Aware Mobile Education Game, Knowledge Managements and E- Learning: An International journal, Vol.3, No.3, pp. 448-477, 2011 5. D. Sathan, A. Meetoo and R.K. Subramaniam, “Context Aware Lightweight Energy Efficient Framework”, Vol. 5 No. 4, pp. 249-255, 2010 6. S. Buthpitiya,F. Luqman, M. Griss, Bo Xing and A.K. Dey, “Hermes -- A Context-Aware Application Development Framework and Toolkit for the Mobile Environment” 26th International Conference on Advanced Information Networking and Applications Workshops (WAINA), 2012 7. Penghe Chen, Shubhabrata Sen, Hung Keng Pung, Wenwei Xue, Wai Choong Wong, (2012) "A context management framework for context-aware applications in mobile spaces", International Journal of Pervasive Computing and Communications, Vol. 8 Iss: 2, pp.185 - 210