1 Introduction

Nowadays smartphones are highly ubiquitous. There were over 6.8 billion mobile phones in use all over the world in 2013 [1]. Meanwhile, with the technological advances, smartphones are programmable and equipped with a set of useful embedded sensors, such as GPS, accelerometer, microphone, camera and so on. These sensors can record a variety of sensing data. Therefore, the proliferation of smartphones provides facilities for applying their sensing data in a wide variety of domains, such as transportation, medical research and social networks, which emerges a new frontier called mobile crowdsensing.

As a special form of crowdsourcing [2], mobile crowdsensing aims to provide a mechanism to involve participants from the general public to effectively contribute and utilize sensing data from their mobile devices in solving specific problems in collaborations [3]. Crowdsensing leverages human intelligence to collect sensing data by employing mobile devices. It is obvious that crowdsensing has much significant benefit, such as overcoming the limits of space-time, low cost and so on.

In the real world, a mobile crowdsensing system generally consists of three parts. The first part is sensing task originator who initiates many mobile crowdsensing tasks. The second part is crowdsensing platform which is an intermediary between smartphone users and the sensing task originator. Meanwhile, the platforms provide some related services, such as pushing crowdsensing tasks to smartphone users. The last part is the set of smartphone users who provide sensing data according to crowdsensing task requirements published on platforms.

A key factor for the success of crowdsening lies in the users’ participation in data sensing activities. A number of works have studied the incentive mechanisms to motivate users to participate in crowdsensing. In [4], Reddy et al. investigated how different payment schemes affect user participation. In [5], Danezis et al. developed a seal-bid second-price auction to motivate user participation. In [6], Yang et al. studied two types of incentive mechanisms for a crowdsening system: crowdsourcer-centric incentive mechanisms and user-centric incentive mechanisms. They considered that crowdsourcer resided in the cloud and consisted of multiple sensing servers. In [7], Peng et al. studied the price competition of multiple crowdsourcers. Multiple crowdsourcers competed with each other to purchase crowdsourcing service from smartphone users. Koutsopoulos [8] developed a random incentive mechanism to minimize the total payment to the participating users while guaranteeing certain quality of service level. Although the above papers have studied different incentive goals or considered different objectives, they all just studied the relationship between crowdsourcers and smartphone users.

In this paper, we focus on the relationship between crowdsensing platforms and the sensing task originator who demands on sensing data. The above papers considered that crowdsensing platforms and sensing task originators as a whole named crowdsourcer. We consider an actual scenario where multiple crowdsensing platforms compete for a sensing task originator by pricing strategy. An incentive mechanism is designed for crowdsensing platforms which have absolute control over the service pricing strategy. We formulate the price competition among platforms as a dynamic non-cooperative game, where each platform independently decides its own price aiming at highest profit. Therefore we model the incentive mechanism as a multi-leader single-follower Stackelberg game and propose an iterative learning algorithm to achieve the Nash equilibrium among platforms as their optimal pricing strategy profile.

The rest of this paper is organized as follows. Section 2 presents the system model and utility functions of platforms and task originator. In Sect. 3, we model system as a Stackelberg game and proposed an algorithm to calculate Nash equilibrium. Simulation results are presented and analyzed in Sect. 4. Finally, Sect. 5 concludes the paper.

2 System Model

The system consists of many crowdsensing platforms which provide sensing data collection services, and a sensing task originator with many crowdsensing tasks. Using services of platforms incurs costs, such as reward for smartphone users, platform maintenance costs and so on. Hence platforms look forward to getting some return for their services. Meanwhile, the sensing task originator makes its crowdsensing tasks assignment strategy considering payment and return aiming at maximizing its utility. We assume that platforms belong to different companies, so they are selfish and rational that just want to maximize their own utility.

Fig. 1.
figure 1

System model

In our model, there is just one sensing task originator with M crowdsensing tasks and N crowdsensing platforms as shown in Fig. 1. The crowdsensing platforms first announce their own prices of data collection respectively to attract the sensing task originator to use their services. According to the prices that platforms announced, sensing task originator maximize utility by making its sensing tasks assignment strategy.

Let the price strategy profile of crowdsensing platforms be \(P = ({p_1},{p_2}, \cdots ,{p_j}, \cdots {p_N})\). The variable \({p_j}\) represents the unit price of data on platform j. The sensing task originator’s sensing tasks assignment strategy profile is \(X = ({x_1},{x_2}, \cdots ,{x_i}, \cdots {x_M})\), where \({x_i} = ({x_{i1}},{x_{i2}}, \cdots ,{x_{ij}}, \cdots {x_{iN}})\). \({x_i}\) is total amount of data in task i and \({x_{ij}}\) means amount of data of task i collected in platform j.

According to our model and decision variables, we define the following utility functions:

  1. 1.

    The total utility of the sensing task originator is

    $$\begin{aligned} {F(P,X) = \sum \limits _{i = 1}^M {{f_i}(P,{x_i})},} \end{aligned}$$
    (1)

    \({f_i}(P,{x_i})\) is utility of crowdsensing task i as

    $$\begin{aligned} {{f_i}(P,{x_i}) = {\alpha _i}\log (1 + \sum \limits _{j = 1}^N {{\beta _j}{x_{ij}}} ) - \sum \limits _{j = 1}^N {{p_j}{x_{ij}}},} \end{aligned}$$
    (2)

    Where \({\alpha _i}\) is utility parameter of task i and \({\beta _j}\) is data quality parameter of platforms j.

    The utility function of sensing task i is comprised of two parts. The first part is the tasks’ diminishing return on the data collected from platforms. The second part is total payment for platforms.

  2. 2.

    The utility of crowdsensing platform j is

    $$\begin{aligned} {{g_j}({p_j},X) = {p_j}\sum \limits _{i = 1}^M {{x_{ij}}},} \end{aligned}$$
    (3)

which is total return getting from each crowdsensing task and parameter \({C_j}\) means the resources quantity of platform j, requiring \(\sum \limits _{i = 1}^M {{x_{ij}}} \le {C_j}\).

3 Optimal Pricing Strategy Dealing with a Non-cooperative Game

Our incentive mechanism for crowdsensing platforms is based on optimizing their pricing strategies. We model our crowdsensing platforms-task originator incentive mechanism as a multi-leader single-follower Stackelberg game [9] and Nash Equilibrium is the solution of the game. There are two stages in this mechanism: in the first stage, crowdsensing platforms announce their own unit prices; in the second stage, the sensing task originator makes crowdsensing tasks assignment strategy to maximize its own utility. Therefore the crowdsensing platforms are leaders and the sensing task originator is the follower in this Stackelberg game. Both platforms and sensing task originator are players.

Then we define the equilibrium concepts.

Definition 1 (Nash equilibrium): A set of strategies profile \((p_1^*,p_2^*, \cdots ,p_N^*)\) is the Nash equilibrium of the non-cooperative game among platforms if for any platform j,

$$\begin{aligned} {g_j}(p_j^*,p_{ - j}^*) \ge {g_j}({p_j},p_{ - j}^*) \end{aligned}$$

In our model, there exists a non-cooperative game among platforms. In the crowdsensing platform level, Nash equilibrium is that any platform can not improve its own utility unilaterally, if the other platforms’ strategy profiles are fixed.

In order to make the optimal pricing strategy at Nash equilibrium of crowdsensing platforms, the platform needs to know other platforms’ utility functions and the sensing task originator’s responding strategy. But these information may not be obtained in real world. So each platform can just adjust its own strategy by observing the reaction of other platforms and the sensing task originator, eventually reach a steady state.

Based on the above reasons, an iterative learning algorithm is proposed to achieve the Nash equilibrium. Assuming that pricing strategy profile of crowdsensing platforms at t moment is P(t). Then the sensing task originator needs to adjust its sensing tasks assignment strategy X(t) to maximize its utility. After sensing task originator utility reaches maximum, crowdsensing platforms adjust their price strategy \(P(t+1)\) at \(t+1\) moment by learning from its historic strategy P(t) and sensing task originator’s strategy X(t). The price iterative equation for platform j is

$$\begin{aligned} {{p_j}(t + 1) = {p_j}(t) + {v_j}(\frac{{\partial {g_j}({p_j}(t),X(t))}}{{\partial {p_j}(t)}}),} \end{aligned}$$
(4)

where, \({v_j} > 0\) is platform pricing strategy adjustment step length, and

$$\begin{aligned} {\begin{array}{l} \frac{{\partial {g_j}(P(t),X(t))}}{{\partial {p_j}(t)}} \approx \frac{{{g_j}([ \cdots ,{p_j}(t)\, +\, \varepsilon , \cdots ],X(t))\,-\, {g_j}([ \cdots ,{p_j}(t)\,-\,\varepsilon , \cdots ],X(t))}}{{2\varepsilon }} \end{array},} \end{aligned}$$
(5)

Thus the whole iteration process loop illustrated as follow:

figure a

In the iterative learning algorithm, task originator makes its optimal strategy \({X^*}\) to obtain the maximum utility given platforms pricing strategies in Algorithm 1 row 9. The optimization problem can be written as follow:

$$\begin{aligned} {\begin{array}{l} \mathop {\max }\limits _X F(X,P)\\ s.t.\left\{ \begin{array}{l} X \ge 0\\ \sum \limits _{i = 1}^M {{x_{ij}} \le {C_j}} \end{array} \right. \end{array}} \end{aligned}$$
(6)

To solve this optimization problem, Genetic Algorithm (GA) and Newton method is applied. Genetic Algorithm [10] is a powerful stochastic algorithm based on the principles of nature selection and natural genetics. Genetic Algorithm maintains a population of individuals which also called strings representing candidate solutions to the optimization problems, and probabilistically modifies the population by some genetic operators, for example, selection, crossover, mutation, with the intent of finding a near-optimal solution to the problem.

But in some cases, its convergence rate is slow. This is mainly because of the parameter selection in Genetic Algorithm. For instance, if initial population size of individuals is too large, the algorithm takes up a lot of system resources leading to low convergence rate. When it is too small, optimal process terminates in sub-optimal solution. There is still no effective method for selecting these parameters.

To improve the calculation accuracy and convergence rate of optimization process, we adopt a typical method that using Genetic Algorithm to obtain a rough solution first, and then using Newton method to calculate precisely based on the rough solution. This process is relatively stable. It effectively avoids the convergence in the local optimal solution, and ensures enough precision.

4 Simulations and Discussions

In this section, we present simulations with Matlab to evaluate the performance of the incentive mechanism. Our performance metrics includes (a) optimal pricing strategies of crowdsensing platforms; (b) utility of platforms; and (c) utility of sensing task originator. In order to facilitate simulation, there are just two crowdsensing platforms called platform 1 and platform 2 in our simulation. But these results can be easily extended to the model having multiple platforms.

4.1 Nash Equilibrium Between Crowdsensing Platforms

Set data quality parameter \({\beta _1} = 0.6,\,{\beta _2} = 0.7,\) quantity of resource for platforms \({C_1} = {C_2} = 50, \) number of crowdsensing tasks \(M = 5\) and utility parameter \(\alpha \) of sensing task originator is uniformly distributed over [1, 10].

Fig. 2.
figure 2

The relationship between price and utility in platforms.

Fig. 3.
figure 3

Nash equilibrium between platform 1 and platform 2, when \({\beta _1} = 0.6,\,{\beta _2} = 0.7\)

Figure 2 shows the utility of platforms as a function of their own price respectively. We observe that utility curves of both crowdsensing platform 1 and platform 2 first increase and then decrease as their own price becomes higher. When price of the crowdsensing platform is too high, sensing task originator is willing to complete their crowdsensing tasks on the other platform leading to little utility. While the price of crowdsensing platform is too low, even if the number of tasks platform completed is saturated, its utility is still low. The best response is the price which results in the highest utility when the other is fixed.

Figure 3 shows the Nash equilibrium between platform 1 and platform 2. These two curves mean the best responding pricing strategy of the two platforms respectively. Thus the intersection of two curves is Nash equilibrium, as well as the optimal pricing strategy, because in this intersection both platforms achieve their optimal utility and no one can improve its own utility unilaterally.

4.2 Optimal Pricing Strategy of Crowdsensing Platforms

We show the impact of data quality parameter \(\beta ,\) number of crowdsensing tasks M and range of utility parameter \(\alpha \) on the optimal prices of crowdsensing platforms respectively in Figs. 4 and 5.

In Fig. 4, We observe that the optimal price of platform 1 decreases and platform 2 increases as the data quality of platform 2 improves. Both trends gradually become steady. This is because when the quality of data improves, sensing task originator’s demand of data will decrease. It weakens influence of quality data on platforms’ optimal price. Then we compare the changes in optimal price between different quantities of platform resources. We assume these two platforms having the same quantity of resources. It is obvious that the fewer quantity of platform resources is the more considerably the prices vary. This can be explained by the reason that when the quantity of platform resources is few, it is a seller’s market. Thus platforms have initiative and their quality of data is influential.

In Fig. 5(a), it can be observed that both optimal prices of platforms increase with sensing task originator’s number of tasks M and gradually becomes steady as M becomes larger.

In Fig. 5(b), we observe that when the range of tasks’ utility parameter \(\alpha \) increases, the optimal prices for both platforms increase almost linearly. The reason is that increment range of utility parameter means the sensing task originator can get more return from the data collected by platforms, thus the price it can afford is higher.

Fig. 4.
figure 4

Optimal prices of platforms versus \({\beta _2}\) for different quantities of platform resources, \({\beta _1} = 0.6,\,M = 5\)

Fig. 5.
figure 5

M and \(\alpha \) impact on optimal prices of platforms.

Fig. 6.
figure 6

Optimal utility of platforms versus \({\beta _2}\) for different C , \({\beta _1} = 0.6\)

4.3 Optimal Utility of Crowdsensing Platforms

We study the effect of data quality parameter \(\beta \) on the crowdsensing platform utility in diverse quantities of platform resources situation in Fig. 6. We assume that there are same quantities of resources between platform 1 and platform 2. The results show that the optimal utility of b platforms varies little in different quantities of resources, as data quality of platform 2 increases. And the increment of resource quantities just makes a slightly improvement of the platforms’ utility. The reason is that both quantities of resources for platforms increase, leading to reduction of their optimal prices.

4.4 Optimal Utility of Sensing Task Originator

Then we explore the impact of data quality parameter \(\beta \) and number of crowdsensing tasks M on optimal utility of sensing task originator.

In Fig. 7(a), it is obvious that the sensing task originator’s optimal utility increases almost linearly as data quality of platform 2 improves. The growth rate of sensing task originator utility is basically same in different source situation. The reason for diminishing increment is that when the quantity of resource grows to a certain degree, data demand of sensing task originator approaches to saturation.

Fig. 7.
figure 7

Impact of data quality parameter \(\beta \) and number of crowdsensing tasks M on optimal utility of sensing task originator

In Fig. 7(b) sensing task originator optimal utility raises diminishingly as the number of crowdsensing tasks M increase. It can be explained that although number of tasks increases, the quantity of resources is fixed. Therefore sensing task originator utility raises to a certain degree and becomes steady.

5 Conclusion

In this paper, we study the incentive mechanism for crowdsensing platforms that maximizes their utility through pricing strategy. The situation that multiple crowdsensing platforms compete for providing data collection service for the sensing task originator is considered. A dynamic non-cooperative game, specifically a Stackelberg game is used to model this situation. For the reason that a crowdsensing platform may not know the strategies of others which are unrevealed information, we propose an iterative learning algorithm to find the optimal pricing strategy profile for platforms at Nash equilibrium. We also evaluate the performance and analyze influence factors of pricing strategy of crowdsensing platforms.