# A Task-Centric Cooperative Sensing Scheme for Mobile Crowdsourcing Systems
## 4 Task-Centric Cooperative Sensing Scheme
### Participant Selection Scheme  
Given a set of active participant indices \(I_{R}\), in Section 2, an optimal linear estimate of the missing sensing data is proposed in Equation (6). The optimality is conditioned upon the assumption that the spatial correlations remain unchanged during normal operation. A performance metric is also proposed in Equation (7) to compare the loss of data integrity due to different choices of \(I_{R}\). In this section, we will focus on the question of choosing specific composition of \(I_{R}\). The following is the research problem that we consider in this paper:  
Given M users in a MCS, and an upper bound of allowable loss of sensing data integrity loss_threshold (>0), find a participant selection algorithm that minimize the number of active participants R subject to \(C\leqslant\) loss_threshold. Selecting \(R\) active participants out of total \(M\) potential participated users require exhaustive evaluation of M!/[R! (M-R)!] different combinations. This computation complexity grows exponentially with respect to the size of \(M\). Thus direct enumeration of all possible solutions is not practical. We present a greedy heuristic participant selection algorithm to select the minimum set of active participants in an iterative manner, namely _Task Centric Participant Selection_ (TCPS) algorithm. In TCPS, it is assumed that all grid-participants (only one participant is selected to represent the grid) are selected as active participants initially. In each iteration, the active participant list is exhaustively examined to identify exactly one participant to be removed from this list. This removed participant is chosen such that its removal will cost least increase in the loss of sensing data integrity value \(C\). The recursion terminates when \(C\) exceeds a pre-defined upper bound \(\varepsilon\). This is a greedy heuristic because once a user is chosen to be set to idle mode; it will not be restored in the later iterations. As such the computation complexity is proportional to a polynomial O(\(M^{2}\)). The pseudo code listing of the TCPS algorithm is as shown in Algorithm 1. Before participant selection, all users will remain active during the training period so that both \(\mathbf{Data}_{R}\) and \(\mathbf{Data}_{M-R}\) are available in order to estimate the correlation matrix **B** and the set of active participant indices \(I_{R}\). Such computation can take place at the cluster head. Once the remaining selected \(M-R\) users are set to idle, the MCS system will operate with \(R\) participants, and produces. ```
1:\(\mathbf{\mathrm{Ensure}}\) grids Index set \(I\leftarrow\{1,2,\ldots,M\}\) iteration count \(r\gets 0\) Data \(\leftarrow\) Data\({}_{M}\), Y \(\leftarrow\) empty matrix selection set of grids \(I_{R}\leftarrow\{1,2,\ldots,M\}\) data integrity loss_threshold flag \(\leftarrow\) false whileFlag = False \(r=r+1\), Selected_id \(\leftarrow\) 0 \(\epsilon_{min}\leftarrow\infty\) for\(k=1\) to \(M-r+1\), \(X\leftarrow\) Data matrix with the \(k^{th}\) column removed Y\({}_{\mathrm{mpp}}\leftarrow\) [\(Y\mid k^{th}\) column of Data matrix] \(\varepsilon\left(k\right)\leftarrow\frac{\left\lfloor\left\lfloor Y_{\mathrm{mpp }}-X\left(X^{T}X\right)^{-1}X^{T}*Y_{\mathrm{mpp}}\right\rfloor_{1}\right\rfloor_ {F}}{\left\lfloor\left\lfloor Y_{\mathrm{mpp}}\right\rfloor_{1}\right\rfloor_ {F}}\) if\(\varepsilon(k)<\epsilon_{min}\), then \(\varepsilon_{min}\leftarrow\varepsilon(k)\) \(k^{*}\gets k\) endif endfor Data = Data matrix without the \(k^{*}\) column if\(\epsilon_{min}>\) loss_threshold then Flag = True else Flag = False ;Selected_id \(\leftarrow\)\(k^{*}\) endif \(Y=\left\lceil Y\mid k^{*}\text{ column of Data matrix}\right\rfloor\) \(I_{R}\gets I_{R}\) without Selected_id \(k^{*}\) \(C(r)=\varepsilon_{min}\) endwhile Output: selection set of grids \(\leftarrow\) I\({}_{R}\) \(Data_{M-R}=Y\), \(Data_{R}=Data\) \(\mathbf{\mathrm{B}}=\left(Data_{R}^{T}*Data_{R}\right)^{-1}Data_{R}^{T}*Data_{M-R}\)
```  
**Algorithm 1**Task Centric Participant Selection (TCPS).