Abstract
Mobile crowd sensing harnesses the data sensing capability of individual smartphones, underpinning a variety of valuable knowledge discovery, environment monitoring, and decision-making applications. It is a central issue for a mobile crowd sensing system to maximize the utility of sensing data collection at a given cost of resource consumption at each smartphone. However, it is particularly challenging. On the one hand, the utility of sensing data from a smartphone is usually dependent on its context which is random and varies over time. On the other hand, because of the marginal effect, the sensing decision of a smartphone is also dependent on decisions of other smartphones. Little work has explored the utility maximization problem of sensing data collection. This article proposes a distributed algorithm for maximizing the utility of sensing data collection when the smartphone cost is constrained. The design of the algorithm is inspired by stochastic network optimization technique and distributed correlated scheduling. It does not require any prior knowledge of smartphone contexts in the future, and hence sensing decisions can be made by individual smartphone. Rigorous theoretical analysis shows that the proposed algorithm can achieve a time average utility that is within O(1/V) of the theoretical optimum.
Keywords
Introduction
Over the past decades, mobile phones have become an indispensable part of the daily life of almost everyone. Most of the smartphones embed a rich set of built-in sensors, such as accelerometer, gyroscope, microphone, global positioning system (GPS), and camera. 1 As a consequence, it is unprecedentedly easier for one to collect sensing information around surroundings and share such sensing information. As a new compelling paradigm for large-scale sensing data collection and sharing, mobile crowd sensing 2 harnesses the data collection capability of individual smartphones, underpinning a variety of valuable knowledge discovery, environment monitoring, and decision-making applications. A number of exciting applications based on mobile crowd sensing have been explored, for example, noise mapping3,4 and personal environmental impact analysis. 5
There are two types of mobile crowd sensing, depending on the way of node participation, that is, participatory sensing and opportunistic sensing.1,6 Participatory sensing requires participants to actively engage in sensing activities by manually determining how, when, what, and where to sense. In opportunistic sensing, however, sensing activities are typically automated, without requiring user intervention to actively and consciously perform sensing tasks. In practice, opportunistic sensing applications may run in the background and the phone users may not be aware of active execution of sensing applications. In other words, opportunistic applications are usually transparent to phone users. The benefit of opportunistic sensing is that it significantly lowers the burden of phone users, allowing higher participation, which is crucial for wide adoption of mobile crowd sensing.
This article concentrates on opportunistic sensing based mobile crowd sensing. A mobile crowd sensing system (Figure 1) consists of a central data collection server and a number of smartphones. Each smartphone opportunistically collects sensing data around its vicinity and reports the sensing data to the central collection server, which then applies data analytics algorithms for monitoring or decision-making purposes. The objectives of such a mobile crowd sensing system include larger sensing data volume, higher data quality, and lower cost incurred at smartphones for sensing data collection. We do not consider strategic behaviors of smartphone users and assume that smartphones are cooperative in participating sensing data collection. Such mobile crowd sensing systems are practical in the real world, for example, when smartphones are volunteers or members of the same organization. Mobile crowd sensing systems with strategic smartphones are beyond the scope of this work.

An illustration of mobile crowd sensing systems. Smartphones perform sensing tasks and then report sensing data to the data collection server via cellular networks.
It is a central issue for a mobile crowd sensing system to gather high-quality sensing data with low resource consumption at smartphones. We observe that the utility of sensing data collected by a smartphone may be dependent on the phone context under which it collects the data. 1 The phone context typically varies over time and can be random in nature. In a large noise detection and monitoring application, for example, the utility of acoustic sensing data is larger when the smartphone is out of the pocket. In a road traffic monitoring application that is time-sensitive, for another example, the utility of sensed road traffic condition is smaller when the smartphone has a poor network connection as it incurs long delay. In the meanwhile, we should emphasize that it costs a smartphone non-negligible resources (e.g. energy, central processing unit (CPU), and bandwidth) as it performs sensing and reporting sensing data to the system. A smartphone is driven by a battery, and the computing power is typically limited. As a result, it is important for smartphones to decide at appropriate time for better data collection at lower cost. More importantly, a mobile crowd sensing system can gather sensing data from many smartphones. It is easy to understand that there is a redundancy with sensing data from different smartphones which leads to the marginal effect. 7 Therefore, a smartphone decision of data sensing and reporting should also take decisions of other smartphones into account.
There are several great challenges for the mobile crowd sensing system to maximize the utility of sensing data collection at a given cost of resource consumption at each smartphone. First, the context of each smartphone is random and varies over time, which is difficult, if not impossible, to predict for future contexts. Second, a mobile crowd sensing system may have a large number of smartphones. A centralized solution for deciding the sensing decision for each individual smartphone may introduce prohibitive computational and commutation cost. Moreover, it would introduce the single point of failure problem. Finally, because of the marginal effect, the sensing decision of a smartphone is also dependent on decisions of other smartphones.
Mobile crowd sensing has received increasingly extensive research study. Unfortunately, little work has been done on maximizing the utility of sensing data collection from smartphones as the cost of smartphones is constrained. In particular, little work has noticed the dependence of sensing data utility on the actual context of a smartphone which is random and changes over time. In addition, most of the existing work ignores the marginal effect of sensing data. As a consequence, most existing mobile crowd sensing systems and applications3,8 blindly make smartphones to collect sensing data, either periodically or randomly.
In this article, we propose a distributed algorithm for maximizing the utility of sensing data collection in a mobile crowd sensing system. To tackle the aforementioned challenges, we take advantage of the stochastic network optimization technique developed in Neely 9 and the idea of distributed correlated scheduling 10 to design a distributed online scheduling algorithm. It does not require any prior knowledge of smartphone contexts in the future, and hence sensing decisions can be made by individual smartphones. The algorithm first transforms the satisfaction of cost constraints to the stability of virtual queues. By defining a quadratic Lyapunov function, the algorithm continuously minimizes a drift-minus-utility expression to make sensing decisions.
Our major contributions are summarized as follows:
It is the first attempt, to the best of our knowledge, to explore the crucial problem of utility maximization of sensing data collection in a mobile crowd sensing system when the cost of smartphones is constrained.
We formulate the cost-constrained utility maximization problem as an online optimization problem in which the sensing action of individual smartphones is the online decision. We propose a distributed algorithm for solving the online optimization problem which allows each smartphone to make its own sensing decisions.
We perform rigorous theoretical analysis to show that our algorithm can achieve a time average utility that is within
The remainder of this article is organized as follows. In the next section, related work is discussed. We formulate the system model and define the problem formally in section “Problem definition.” In section “Online scheduling algorithm,” we present the details of our distributed optimal online scheduling algorithm. We evaluate the performance of the algorithm based on simulations in section “Performance evaluation.” Finally, a brief conclusion of this work is given in section “Conclusion.”
Related work
Due to the fast increasing of usage of smartphones, mobile crowd sensing is becoming more and more popular in recent years and has attracted extensive research attention from both academia and industry. The research trend started with the notion of participatory sensing which requires the user interaction to sense particular events. Then, research evolved into opportunistic sensing which enlarges the vision of mobile crowd sensing by allowing the cooperation of multiple smartphones without requiring the explicit interaction with users.
A great number of opportunistic sensing applications have been designed and implemented. For example, GeoServ 8 is a scalable sensor networking platform where millions of users can participate in urban sensing and share location-aware information using always-on cellular data connections. Nericell 11 is a system that performs rich sensing by piggybacking on mobile phones that users carry with them in normal course. The system could be used to annotate traditional traffic maps with information such as the bumpiness of roads, and the noisiness and level of chaos in traffic. The recent work 12 presents sensor mobile enablement (SME), which is a lightweight standard for efficiently identifying, coding, and decoding heterogeneous sensing information on mobile devices. More examples can be found in a recent survey paper. 13 But most of these applications do not consider the problem of limited mobile phone resources or information saturation.
Little existing work has studied the problem of efficient scheduling to achieve optimal utility considering the marginal effect with limited resource of smartphones. And most of the related work requires sufficient statistical knowledge and perform in offline manner or prediction-based approach. For example, in Sheng et al., 14 the authors study an energy efficient problem in mobile crowd sensing and propose prediction-based algorithms to minimize the energy consumptions at smartphones. In Zhu et al., 15 the authors develop a novel smartphone-based vehicular crowd sensing system that achieves efficient utilization of limited 3G budgets to improve system performance. They propose heuristic algorithm based on the statistic data to estimate whether a WiFi encounter is approaching so as to make decisions. Their feasibility heavily depends on the accuracy of the prediction of future patterns and cannot guarantee the optimal performance. In comparison, our optimal online scheduling algorithm does not require any prior knowledge of the future patterns and can achieve a time average utility that could be arbitrarily close to the optimum, in a distributed manner.
Problem definition
First, we summarize the key notations in Table 1.
Key notations.
We consider typical opportunistic sensing scenario in which each smartphone automatically performs sensing tasks and reports sensing data to remote server without user involvement, such as noise level and radio signal strength.16–20 In large-scale sensing applications, smartphones are usually organized into target regions according to their geographic locations,3,5,8,21 for efficient data management. A target region is the area around a sensing target. For example, in the noise mapping application Ear-Phone, 3 physical area is divided into small regions with size of 100 m × 100 m. Sensing targets are the noise of each region and smartphones in the same region sense the noise of that region together. For another example, in road traffic monitoring applications, sensing targets are the traffic conditions of each road. Then, the target region is the road. All smartphones on the road sense the traffic condition of that road. It is easy to understand that there is a redundancy with sensing data from different smartphones in the same target region since they all collect sensing data for the same sensing target. Since the scheduling problems in different regions are similar, we only need to focus on the scheduling algorithm in one target region which can be easily extended to the others.
Consider that the mobile crowd sensing system operates over discrete time with unit time slots
Suppose that the phone context can be detected automatically by sensors (e.g. accelerometer and gyroscope).
1
For every slot, each smartphone detects the current phone context automatically and chooses whether or not to perform a sensing task and report to the remote server. We use binary variable
where
Each smartphone can choose not to sense and report in order to save the cost. The time average expected utility and cost are denoted by
We then define the cost-constrained utility maximization problem as follows
where
We see that it is quite challenging to achieve the maximal time average utility considering the time average cost constraint at each smartphone since the phone context is random and time-varying which makes it infeasible to precisely calculate optimal solution in an offline manner. And the current decision is coupled with future decision by the constraint. What’s more, it is significantly more challenging to solve in a distributed method. The difficulty is that neither smartphone knows the phone context of others in the target region. Thus, a distributed scheduling algorithm may have redundant smartphones to sense and send reports which incur costs without increasing utility. In the next section, we will provide a distributed online algorithm which is able to make the optimal sensing decision by each smartphone.
Online scheduling algorithm
Problems (3) and (4) are standard stochastic network optimization problems which can be solved by the Lyapunov optimization technique 9 in a centralized manner. Such a centralized method requires the remote server as the coordinator to make sensing decisions for all smartphones in each region based on a full knowledge of phone contexts, in every time slot. This method is not scalable when the number of small regions becomes larger since the server needs to make sensing decisions for every small region. Therefore, in this section, we propose a distributed approach that enables sensing decisions to be made by each smartphone, based on the idea of distributed correlated scheduling. 10
Distributed optimal scheduling algorithm
In each time slot, each smartphone detects its phone context automatically and decides whether or not to perform a sensing task and report. Let
for some thresholds
Suppose that all smartphones receive feedback message specifying the values of
for each slot
First, we define the Lyapunov function as follows
Then, we define Lyapunov drift as
Lemma 1
In each time slot t, we have
where
Proof
First, squaring both sides of equation (6), and using the fact that
Summing over
Moreover, by defining
Taking conditional expectations on both sides of equation (9), applying the above two inequalities, we can see that lemma 1 holds. For page limit, we omit the details of proof for the above two inequalities.
The drift-minus-utility algorithm is to choose a pure strategy function
where W is the positive integer which represents a moving average window size.
Then, we can derive the distributed scheduling algorithm for each smartphone
Performance analysis
We analyze the performance of the distributed optimal scheduling algorithm by the following theorem 1.
Theorem 1
For arbitrary phone contexts
The gap between time average utility achieved by Algorithm 1 and the optimal time average utility that can be achieved by any other distributed algorithms is within
The time average cost constraint on each smartphone
Proof
For page limit, the proof is omitted here.
Theorem 1 shows that fixing the window size W, our distributed scheduling algorithm can achieve a time average utility that is within
Performance evaluation
In this section, we conduct simulations to evaluate our distributed online scheduling algorithm for mobile crowd sensing. Consider a target region which has
We verify the utility optimality achieved by our algorithm. Figure 2 shows how the parameter V affects the time average utility with different values of W. We see that the utility improves significantly and converges quickly toward the optimum as the value of V increases. The impact of W is not such obvious. The utility just improves a little when W varies from 10 to 50. The improvement can even be negligible when W is further increased. Figure 3 shows the similar results with a much larger system delay

Time average utility versus V.

Time average utility versus V (

Time average utility versus V (
Second, we verify whether the cost constraints at smartphones are satisfied. In Figure 5, the curves plot time average cost up to time slot t of each smartphone (1–5). We can see that the time average cost of each smartphone satisfies the constraint

Time average cost up to t (


Time average cost up to t (
Adaption to changes
Next, we demonstrate that our algorithm can adapt to changes robustly. The simulation time is increased to 1500 slots which is divided into three phases. Each phase is of 500 time slots. Note that the phone context processes
Figures 8 and 9 show the average utility and the average cost of smartphone 1 over 1500 time slots. Values at each time slot t are obtained by averaging the utility and cost in that slot over 300 independent simulation runs. We see that the system can adapt to the changes in probability distribution of smartphone context quickly by adjusting to the new optimal average utility. And the cost constraint is still satisfied with only small disturbance in a short time.

Average utility versus t.

Average cost of smartphone 1 versus t.
We also demonstrate adaption to smartphone’s mobility. The mobile smartphones may leave or enter a target region over time. We simulate the mobility by making smartphone 1 and smartphone 2 leave the target region in phase 2, and have another smartphone with a trust of 0.4 join in phase 3. Figures 10 and 11 show the results. We see that the algorithm can quickly adapt to the changes incurred by mobility. The average utility adjusts fast to the new optimal value when changes occur. The average cost of smartphone 3 is always satisfied despite small disturbance.

Average utility versus t after simulating mobility.

Average cost of smartphone 3 versus t.
Conclusion
This article has presented a distributed algorithm for maximizing the utility of sensing data collection in a mobile crowd sensing system. The algorithm leverages both the stochastic network optimization technique and distributed correlated scheduling. It does not require any prior knowledge of smartphone contexts in the future, and supports individual smartphones to make their own sensing decisions. We have performed rigorous theoretical analysis to show that the proposed algorithm can achieve a time average utility that is within
Footnotes
Academic Editor: Joel JPC Rodrigues
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: The research was supported by the Wenzhou Science and Technology Bureau Program (application no. 2016 G0001 and 2016G0024). It was also supported by Education Department of Zhejiang Province 2016 educational technology research project (General Project No. JB084).
