A Change Detection and Resource-aware Data Sensing Approaches for Improving the Reporting Protocol Mechanism for Mobile User

Update mechanism is an important process that relays information to the end-user by sending the data from the client to the server. There are several kinds of update mechanism that are used, one of them is reporting protocol. Reporting protocol sends the data from the client to the server continuously in a certain time interval. Reporting protocol occasionally sends the same information repeatedly to the end-user and sometimes the data arenâ€™t needed by the end-user. This is an issue, because it can cause a large amount of bandwidth USAge. In this research, we have developed an improvement of the reporting protocol mechanism for mobile user using change detection and resource-aware data sensing to minimize the bandwidth and resource USAge. The improvement of reporting protocol that is implemented reduces frequency of data transfer with the prediction of the changes in user activity and position. The prediction is used as a trigger when the data is about to be sent. The results have shown that the adaptive reporting protocol could improve the performance of the overall reporting protocol. This is shown by the improvement of the bandwidth efficiency up to 36-97%, memory efficiency at 1.5-6% and battery efficiency at 7-13%.


Introduction
In some systems, the client sends the data to the server for the further computation process. This process needs a mechanism to send the input data from the client to the server called as an update mechanism [1]. Update mechanism is used to send the data from the client to the server and processes it as the information. This update mechanism cannot run if there is no bandwidth. The higher information update frequency, the higher the used bandwidth. One of the update mechanisms is reporting protocol [1]. Reporting protocol sends the data from the client to the server continuously. The client does not need to confirm the server before sending.
The data that is sent via reporting protocol continuously called as data stream. The characteristics of data stream is not static (dynamic) and it has the high speed [2]. The example of data stream is sensor data of tracking application. As the dynamic and high speed characteristics of the data stream, when every new sensor data is sent directly at that time via reporting protocol , it will

Client
(mobile source) Server Response consume a large amount of bandwidth and resources (memory and battery) [3].
The bandwidth and the resources are the important component to computation process on the mobile device which handles the update mechanism such as reporting protocol. For example: reporting protocol in the activity and position tracking application. Each time the system gets the data sensing, the system needs to activate the sensor service. It will consume the high battery if it is not arranged wisely. After getting the data from the sensor service, the data will be saved in the memory. The memory saves the data temporarily before other process uses it. When the sensor runs with the high speed, the memory will get the data in a high speed, too. It will make the memory full of the data [2] and the other process will use the saved data frequently. One of the processes is the data transmission. When the memory is full of data, the data transmission will be executed more often. It will cause the high battery usage [6]. It is also cause the high bandwidth usage when sometimes the data sensing value is at the same value in a certain time period. It can be happened when the environment of tracked object (mobile user) does not give any change in activity or position. When the same data value is transmitted to the object tracker (end-user) repeatedly in a certain period time, it will give the same information to the enduser repeatedly, too. It will give the inefficient bandwidth cost.
The researches of the related topic have been widely developed. The research study [5], focus on the battery efficiency by adaptive location service to reduce high battery usage that caused by the GPS receivers. Not only the research of the resources savings, but also the bandwidth savings. The research study [7], designed an adaptive wireless data communication to the network conditions, traffic characteristics and location information to minimize the energy and bandwidth usage. The other research uses fuzzy as computation method in the mobile device and other wireless sensor with the limited resources [8,9].
The condition of high bandwidth and resources usage are contradictive with the resources and bandwidth limitation on the mobile device [4]. It needs to be improved by giving some adaptive mechanisms to save the resources and bandwidth cost. But the adaptive mechanism should be in a low computation so that it does not consume any higher resources and bandwidth.
Thus, in this paper, our purposed method is to saving the resource and bandwidth usage by the combination of the resource-aware data sensing and the change detection. The resource-aware data sensing is a data sensing process that runs adaptively to the battery level. To make it runs adapti-vely, we use the Fuzzy Inference System that has been widely used as a computation method in the limited resource devices. It will be combined to the change detection to reduce the bandwidth cost by the predicting the mobile user activity change using analysis of variance as a simple method. The combination of two simple method is to reach our goals that reduce the resources and bandwidth cost in the limited mobile device.

Reporting protocol
Reporting protocol is an updating mechanism that sends the data from client to the server continuously without confirmation from the client (mobile source) the server within a certain time period [1]. Reporting protocol is used in this research with the changes prediction trigger. The system will predict the activity and position changes before sending the data, otherwise the data will not sent. The reporting protocol will give the faster response time because the data will be sent from the client (mobile user) to the server without any request from the end-user as shown in Figure 1.

Combined method (Change detection and resource-aware data sensing)
The system will get the input data from the sensor and this process called as data sensing. The real time data sensing runs repeatedly. Once data sensing proceed, the system will activate the sensor service. It needs the battery power to activate the sensor service. When the data sensing speed is too high, then the sensor service will be activated frequently and cause the high battery consumption. When the high speed data sensing is reached, the large amount of data will be saved in the memory and it will cause the full memory. As we know that mobile device has the limited resources [4]. The high battery consumption and the full memory can be reduced by lowering the data sensing speed so that the incoming data is not too large. In our methodology, data sensing will be lower with adaptive mechanism called resource-aware data  sensing. This will make the speed of the data sensing changes adaptively to the battery level. The higher the battery level, the faster the speed of the data sensing (sensing the data with the smaller delay). The rules of resource-aware data sensing is shown as Figure 2. The rules above are computed by Fuzzy Inference System that will be explained in section C. The resource-aware data sensing mechanism will be combined to the change detection. This is because the reporting protocol sends the data from the client to the server continuously when sometimes there are some of the redundant data values. The bandwidth usage will be inefficient because the same value will give the same information repeatedly to the end-user within a certain time period. It will be useless for the end-user and also inefficient bandwidth usage.
That condition served as the idea to combine the resource-aware data sensing with the changes detection as a trigger to transmit the data. The data will be sent when the changes occurs. It means there is a reduction of data transmission frequency. Transmit the data adaptively to the changes detection will give the smaller transmission frequency than transmit it periodically. In addition, resource-aware data sensing give the adaptive speed which sometimes data sensing will be in the lower speed when the battery level is low. Automati-cally, the smaller sending frequency will give the smaller inefficient bandwidth and resources usage. The changes are predicted by simple computation method called analysis of variance for the limited resources mobile device. To prove the hypothesis, it needs to design a system algorithm clearly as shown in Figure 2.
The rules of the change detection are divided into three levels as shown as Table 2. They are "normal change", "critical change" and "no change". The "normal change" will be occurred when the mobile user activity changes normally like from "sitting" to "standing". The "critical changes" will be occurred when the mobile user activity changes strangely with the significant change like from "standing" to "laying". The data sampling will not be sent until the system predicts that the changes occurred. When the changes occurred, the system will check if it is the "normal change" or "critical change" and then sending the data sampling. If the changes occurred as "normal changes", then the system will send the aggregated data. But, if the changes occurred as "critical changes", then the system will send N/2 current data from N data sample of changes prediction process. The sent data will be the input of activity recognition and position in the server. The analysis of variance will be explained in Section D.

Fuzzy Inference System
In this research, Fuzzy Inference System is used to determine the speed data sensing according to the battery level. The fuzzy rule gives the IF-  ELSE operation with the degree of membership between 0 and 1. The method separated into three main processes, they are Fuzzification, Fuzzy Processing and Defuzification.

Fuzzification
Fuzzification is the process to "translate" the input and the output as the fuzzy membership function [10,11]. Each of the input and the output has 1 variable or more. The battery level is the variable input and the data sensing speed is the variable output. Each variable has some labels. Labels of the battery level and speed data sensing are shown in Table I. each label of the input and the output will be "translated" to the fuzzy membership function which is every label has its own range value as shown in Table 3.

Fuzzy Processing
Fuzzy processing is the second main process of Fuzzy Inference System that executes the given rules to determine the membership degree of the output [10,11]. The fuzzy processing executes the rules by seeing the degree of membership resulted from the fuzzification process. The output from fuzzy processing is the membership degree of the output.

Defuzzification
Defuzzification is the process to convert the membership degree to the crisp value (the speed of data sensing) according to the rules [10,11].

Analysis of Variance
Analysis of variance is a method for determining the differences of the two or more data group by seeing the similarity value of them [2]. The group of data has two similarity values. The two similarity values are between-class (the similarity of the data among inter-class) and within-class (the similarity of the data among intra-class). Input data for analysis variance are the amount of sample data (N), the amount of group (k) and the amount of the data in each group (n). The flowchart of analysis of variance is shown in Figure 3 and will be explained as follows as: 1) Determine the amo-unt of sample data (N), the amount of group (k) and the amount of the data in a group (n) b) Calculate the mean 1 ���, 2 ���, 3 ���, … … ��� of each group y 1 , y 2 , y 3 ,……, y k and mean of mean from each group using the following equation (1).
c) Then, calculate SSB (Sum of Square Between) and (Sum of Square Within) using equation (2).
where, k is the amount of the group, j is group j th , � is mean of group j th and ̿ is mean of mean from each group using equation (3).
where, k is the amount of the group, j is group j th , n j is the amount of the data in group j th , i is data i th in group j th , x ji is data i th value in group j th , � is mean of group j th ; d) Calculate MSB (Mean of Square Between) and MSW (Mean of Square   Within); e) MSB is calculated by dividing SSB with df (degree of freedom) using equation (4).
where, k is the amount of group as shown by the equation(5).
where, N is the amount of sample data and k is the amount of group; f) Then, calculate F ratio = / ; g) Then, find F table in F distribution table by finding the intersection between df of MSB (k-1) in the column and df of MSW (N-k) in the row; h) When F ratio and F table are known, then it will be checked. If F ratio > F table, then each group has the different mean data value. Else if F ratio <= F table, then each group has the same mean data value.

Results and Analysis
In this section, we discuss about the experimental result of bandwidth and resources efficiency that is given by our purposed method. We compare and observe the bandwidth and resources usage of t he four mechanisms: combined mechanism (our proposed method), change detection mechanism only, resource-aware data sensing mechanism only and periodic mechanism.
In the first part, we will explain the experimental environment. In second part of this section, we will compare the result of bandwidth usage that given by the four mechanisms. In third part, we will compare the result of memory usage that given by the four mechanisms. And in the last part, we will compare the experimental result of battery level that given by the four mechanism.

Experimental Environment
The experimental environment is explained in Figure 4 which the experimental data is sent from the client to the server via reporting protocol. That experimental environment includes some modules in the mobile source (client) and the server.
The modules in the client are adaptive data transmission with the change prediction module, Accelerometer and GPS data readings modules, windows sampling modules and communication via HTTP modules. The modules in the server are activity recognition module, communication module and data updating module. The used Smartphone is Galaxy Samsung Ace GT-S5830 with some specifications: 1) Operating system Android Gingerbread 2.3.4; 2) CPU 800 MHz ARM 11; 3) RAM 278 MB; 4) Network GSM/HSPA.

Bandwidth Usage
Scenario: the period of evaluation is ±330 seconds for each of the update mechanism. Each mechanism runs with 10 times activity changes with the 7 "critical changes" and 3 "normal changes". The band-width usage of the four mechanisms are captured by Wireshark.
Result: the proposed method gives the average bandwidth usage at 41.410 bytes/sec. However, the other the mechanisms give the larger bandwidth usage as shown in Table 4. The purposed method can save the bandwidth usage at 36-97% compared to the other three mechanisms. The graphics of the four mechanisms bandwidth usage are shown as Figure 5, Figure 6, Figure 7, and Figure  8. Analysis: the bandwidth usage is smallest than the other the mechanisms because the resourceaware data sensing slower the data sensing speed and it is much slower when the data transmission is executed when there is an activity change.

Memory Usage
Scenario: the period of evaluation is ±330 seconds for each of the update mechanism. Each mechanism runs with 10 times activity changes with the 7 "critical changes" and 3 "normal changes". Result: the proposed method gives the average memory usage at 51.8626% bytes/sec. However, the other the mechanisms give the larger memory usage as shown in Table 5. The purposed method can save the memory usage at 1.5-6% compared to the other three mechanisms. The graphics of the four mechanisms memory usage are shown in Figure 9, Figure 10, Figure 11, and Figure 12.
Analysis: the proposed method can save memory usage the most because its resource-aware data sensing runs adaptively to the battery level. When the battery level goes down, the speed data sensing decreased. This will reduce the saved data in the memory. The data speed sensing also affects the data transmission speed. The saved data in memory for the input-output of the data transmission process is also decreased when the data transmission speed is decreased. But, the memory usage is not significantly efficient because of the combined method.

Battery Level
Scenario: the period of evaluation is ±330 seconds for each of the update mechanism. Each mechanism runs with 10 times activity changes with the 7 "critical changes" and 3 "normal changes". Result: the proposed method gives the battery power level at 83% in the last second. However, the other the mechanisms give the smaller battery power level as shown in Table 6. The purposed method can save the battery power at 7-13% compared to the other three mechanisms. The graphics of battery level of the four mechanisms in the last second are shown as Figure 13, Figure 14, Figure  15, and Figure 16. Analysis: the data transmission process needs the battery power to keep the process alive. The adaptive data sensing reduces the speed of the data transmission. When the data transmission frequency is reduced, the battery power usage to support the data transmission process is reduced and this make the battery power level does not go down too significantly. Figure 9. The memory usage of the purposed method. Figure 10. The memory usage of the change detection mechanism. Figure 11. The memory usage of the resource-aware data sensing mechanism.

Conclusion
Our proposed algorithm can generate the bandwidth usage at 36-97%, the memory usage at 1.5-6% and the battery power at 7-13% efficiently compared to the other three mechanisms (change detection only, resource-aware data sensing only and periodic). The experimental result shows that our proposed method gives the better result compared to the other three mechanisms. Improvement of reporting protocol is the interesting research topic for bandwidth and resources efficiency. It can be added by some other pa-rameter adaptively to give the better result. For example reporting protocol with the bandwidth and activity changes as a trigger of data transmission for the vehicle tracking.