# A Reputation-Based Collaborative User Recruitment Algorithm in Edge-Aided Mobile Crowdsensing
## 3 System Model and Problem Formulation
### Problem Formulation  
In our system, the cloud platform \(P\) gets the tasks \(\theta_{total}\), including some requirements from some applications or the requesters, such as traffic monitoring, noise conditions, and air conditions. Then the cloud platform \(P\) slices the massive tasks into several sub-tasks \(\theta=(\theta_{1},\theta_{2},\ldots,\theta_{n})\) on the basis of the time limitations of the sensing tasks, then publishes these sub-tasks. Usually, the detailed information about the tasks \(\theta\) can be expressed by a multi-element tuple \(F_{\theta}=\left(\theta_{j}^{typ},l_{\theta_{j}},t_{\theta_{j}},R_{\theta_{j} },R\omega_{\theta_{j}}\right)\), which indicates the type, locations, time limitations, coverage radius, and task reward. The time limitations of tasks \(t_{\theta_{j}}\) are usually divided into some timeslots to be performed. Based on the detailed information about the tasks \(\theta\), mobile users \(U=\{u_{1},u_{2},\ldots,u_{U}\}\) will decide whether to take part in these tasks and choose what kinds of tasks to participate in. The relevant details of the mobile users \(U=\{u_{1},u_{2},\ldots,u_{U}\}\) can be described as \(F_{u}=\left(l_{u_{i}},R_{u_{i}},\sigma_{u_{i}},C_{u_{i}}^{\theta_{j}}\right)\), where \(l_{u_{i}}\) is the real-time location, \(R_{u_{i}}\) is the sensing radius, \(\sigma_{u_{i}}\) is the reputation scores, and \(C_{u_{i}}^{\theta_{j}}\) is the cost for task \(\theta_{j}\). When users \(U\) accomplish a task, the reputation module will evaluate the performance of the users and update their reputation score. Simultaneously, in the urban environment, there are some smart static nodes \(S_{n}\), such as smart lampposts and base stations, which can replace the edge nodes. The smart static nodes generally perform other work or just stay asleep to reduce the energy cost. In special circumstances, these static nodes can wake up rapidly and start to work according to the requirements. \(S_{n}\) can be represented as \(S_{n}=\left(l_{S_{n}},R_{S_{n}},C_{S_{n}}^{\theta_{j}}\right)\), where \(l_{S_{n}}\) denotes the location of the static node. \(R_{S_{n}}\) denotes the sensing radius of the static node and \(C_{S_{n}}^{\theta_{j}}\) represents the sensing cost of the static node for task \(\theta_{j}\). In general, the cloud platform has a certain budget \(B\), and the tasks will have spatial and temporal requirements. Specifically, \(t_{\theta_{j}}\) represents a certain range of the sensing time and \(R_{\theta_{j}}\) is denoted as the certain range of the sensing radius for the tasks. Meanwhile, there is a reward \(R\omega_{\theta_{j}}\) for the user or static node who accomplishes the task and \(\sum R\omega_{\theta_{j}}\leq B\). The cloud platform \(P\) evaluates the users' reputation scores and other information to recruit the most appropriate user to execute the task. Aiming at maximizing the spatial and temporal coverage for the sensing tasks, there would be two kinds of approaches to achieve the goal. If the cloud platform \(P\) can not find the users to complete the task efficiently and qualitatively, then it will choose a static node that meets the requirements to finish the task. Let \(A_{\theta_{j}}^{\text{cov}}\) denotes the expected sensing coverage area of the task \(\theta_{j}\). \(A_{u_{i}\theta_{j}}^{\text{cov}}\) and \(A_{S_{n_{i}}\theta_{j}}^{\text{cov}}\) are the coverage area which the user \(u_{i}\) sense and the static node \(S_{n_{i}}\)sense, respectively, for task \(\theta_{j}\). In certain time limitations \(t_{\theta_{j}}\),\(A_{u_{i}\theta_{j}}^{\text{cov}}+A_{S_{n_{i}}\theta_{j}}^{\text{cov}}\) denotes the sensed area by the user and static node for the task \(\theta_{j}\).