1 Introduction
-
Owen value implementation: we introduce a novel cooperative game model while capturing dynamic interactions of MC agents depending on their different viewpoints. This approach is generic and applicable to implement real-world MC operations.
-
Payment mechanism for devices: we implement a payment mechanism based on the Owen value. To attract enough mobile devices’ participations, their resource consumption and the risk of privacy exposure are compensated with rewards through our payment mechanism.
-
Differential privacy algorithm: we employ the basic concept of DP to formalize the notion of devices’ privacy. To protect the sensitive information that needs to be released, our DP algorithm can preserve devices’ private data by data anonymization. The level of data protection will accordingly be used to set the rewarding payment to encourage their true data.
-
The synergy of combined algorithms: we explore the sequential interaction of MC, payment and DP algorithms, and jointly design an integrated scheme to strike an appropriate performance balance between conflicting requirements. The synergy effect lies in its responsiveness to the reciprocal combination of different control algorithms.
-
Practical implementation: we investigate the dynamic MC environment based on the step-by-step distributed cooperative game process. This is a suitable and practical approach for real-world MC operations.
2 Related work
3 The proposed integrated MC control scheme
3.1 Cooperative game model for the MC system
-
Mobile user devices (MUDs): MUDs, i.e., mobile phones and IoT gadgets, are the MC participants which collect the sensing data, and report this information to the MC server. \( \mathbbm{M} \) is the set of MUDs where \( {MUD}_{1\le i\le m}\in \mathbbm{M}= \) {MUD1 … MUDm}. According to their own preferences, MUDs also select their levels of privacy protection. When a MUD chooses a higher level of privacy protection, his MC contribution is reduced. Naturally, individual MUD’s payoff is proportional to his contribution. Therefore, each rational MUD needs to trade-off between the level of privacy protection and his payoff maximization.
-
Access point (AP): AC is a networking agent that allows MUDs to connect to a wired network. Usually, APs are situated around high MUD density hotspots to improve communication capacity. In our scheme, AP is also working as a payment management entity that controls the exchange of sensing data between multiple MUDs and the MC server. Based on the MUD’s contribution, the AP decides each MUD’s payment according to the Owen value algorithm.
-
MC server (MCS): MCS gets the sensing data and provides the reward through the AP. Finally, the MCS delivers a final service to MC customers by analyzing the sensing data.
-
Application tasks: \( \mathbbm{A}= \){ A1 … Av } is the set of MC sensing tasks.
3.2 Differential privacy algorithm for MC
3.3 The Owen value of cooperative game
-
efficiency: for all (ℕ, ℂ, \( \mathcal{V} \)) ∈ \( \mathfrak{C} \), \( {\sum}_{a_i\in \mathbb{N}}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)=\mathcal{V}\left(\mathbb{N}\right) \).
-
symmetry: for all (ℕ, ℂ, \( \mathcal{V} \)) ∈ \( \mathfrak{C} \) and for all symmetric coalitions \( {\mathcal{C}}_k \), \( {\mathcal{C}}_l\in \) ℂ, then \( {\sum}_{a_i\in {\mathcal{C}}_k}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)={\sum}_{a_i\in {\mathcal{C}}_l}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right) \).
-
dummy: for all (ℕ, ℂ, \( \mathcal{V} \)) ∈ \( \mathfrak{C} \) and for all ai ∈ ℕ, \( {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)=0 \) if ai is a null player.
-
additivity: for all (ℕ, ℂ, \( \mathcal{V} \)) and (ℕ, ℂ, \( {\mathcal{V}}^{\prime } \)) ∈ \( \mathfrak{C} \), and for all ai ∈ ℕ, \( {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}+{\mathcal{V}}^{\prime}\right)= \) \( {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)+{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},{\mathcal{V}}^{\prime}\right) \) where \( \left(\mathcal{V}+{\mathcal{V}}^{\prime}\right)\left(\boldsymbol{S}\right)=\mathcal{V}\left(\boldsymbol{S}\right)+{\mathcal{V}}^{\prime}\left(\boldsymbol{S}\right) \) for any S ⊂ ℕ.
-
Balanced contributions among coalitions: for all (ℕ, ℂ, \( \mathcal{V} \)) ∈ \( \mathfrak{C} \) and \( {\mathcal{C}}_k,{\mathcal{C}}_l\in \) ℂ, \( {\sum}_{a_i\in {\mathcal{C}}_k}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)-{\sum}_{a_i\in {\mathcal{C}}_k}{\chi}_{a_i}\left(\mathbb{N}\setminus {\mathcal{C}}_l,{\left.\mathbb{C}\right|}_{\mathbb{N}\setminus {\mathcal{C}}_l},{\left.\mathcal{V}\right|}_{\mathbb{N}\setminus {\mathcal{C}}_l}\right)={\sum}_{a_i\in {\mathcal{C}}_l}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)-{\sum}_{a_i\in {\mathcal{C}}_l}{\chi}_{a_i}\left(\mathbb{N}\setminus {\mathcal{C}}_k,{\left.\mathbb{C}\right|}_{\mathbb{N}\setminus {\mathcal{C}}_k},{\left.\mathcal{V}\right|}_{\mathbb{N}\setminus {\mathcal{C}}_k}\right) \).
-
Balanced contributions among players: for all (ℕ, ℂ, \( \mathcal{V} \)) ∈ \( \mathfrak{C} \) and \( {\mathcal{C}}_k,{\mathcal{C}}_l\in \) ℂ, \( {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)-{\chi}_{a_i}\left(\mathbb{N}\setminus {a}_j,{\mathbb{C}}_{-{a}_j},{\mathcal{V}}_{-{a}_j}\right)={\chi}_{a_j}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)-{\chi}_{a_j}\left(\mathbb{N}\setminus {a}_i,{\mathbb{C}}_{-{a}_i},{\mathcal{V}}_{-{a}_i}\right) \).
-
monotonicity among coalitions: for all (ℕ, ℂ, \( \mathcal{V} \)) and (ℕ, ℂ, \( {\mathcal{V}}^{\prime } \)) ∈ \( \mathfrak{C} \), \( {\sum}_{a_i\in {\mathcal{C}}_k}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)\ge {\sum}_{a_i\in {\mathcal{C}}_l}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},{\mathcal{V}}^{\prime}\right) \) if \( \mathcal{V}\left(\boldsymbol{S}\cup {\mathcal{C}}_k\right)-\mathcal{V}\left(\boldsymbol{S}\right)\ge {\mathcal{V}}^{\prime}\left(\boldsymbol{S}\cup {\mathcal{C}}_k\right)-{\mathcal{V}}^{\prime}\left(\boldsymbol{S}\right) \) for all \( \boldsymbol{S}\boldsymbol{\subseteq}\mathbb{N}\setminus {\mathcal{C}}_k \).
-
monotonicity among players: for all (ℕ, ℂ, \( \mathcal{V} \)) and (ℕ, ℂ, \( {\mathcal{V}}^{\prime } \)) ∈ \( \mathfrak{C} \), \( {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)\ge {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},{\mathcal{V}}^{\prime}\right) \) if \( \mathcal{V}\left(\boldsymbol{S}\cup \left\{{a}_i\right\}\right)-\mathcal{V}\left(\boldsymbol{S}\right)\ge {\mathcal{V}}^{\prime}\left(\boldsymbol{S}\cup \left\{{a}_i\right\}\right)-{\mathcal{V}}^{\prime}\left(\boldsymbol{S}\right) \) for all S ⊆ ℕ ∖ {ai}.
-
marginality among coalitions: for all (ℕ, ℂ, \( \mathcal{V} \)) and (ℕ, ℂ, \( {\mathcal{V}}^{\prime } \)) ∈ \( \mathfrak{C} \), \( {\sum}_{a_i\in {\mathcal{C}}_k}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)={\sum}_{a_i\in {\mathcal{C}}_l}{\chi}_{a_i}\left(\mathbb{N},\mathbb{C},{\mathcal{V}}^{\prime}\right) \) if \( \mathcal{V}\left(\boldsymbol{S}\cup {\mathcal{C}}_k\right)-\mathcal{V}\left(\boldsymbol{S}\right)={\mathcal{V}}^{\prime}\left(\boldsymbol{S}\cup {\mathcal{C}}_k\right)-{\mathcal{V}}^{\prime}\left(\boldsymbol{S}\right) \) for all \( \boldsymbol{S}\boldsymbol{\subseteq}\mathbb{N}\setminus {\mathcal{C}}_k \).
-
marginality among players: for all (ℕ, ℂ, \( \mathcal{V} \)) and (ℕ, ℂ, \( {\mathcal{V}}^{\prime } \)) ∈ \( \mathfrak{C} \), \( {\chi}_{a_i}\left(\mathbb{N},\mathbb{C},\mathcal{V}\right)={\chi}_{a_i}\left(\mathbb{N},\mathbb{C},{\mathcal{V}}^{\prime}\right) \) if \( \mathcal{V}\left(\boldsymbol{S}\cup \left\{{a}_i\right\}\right)-\mathcal{V}\left(\boldsymbol{S}\right)={\mathcal{V}}^{\prime}\left(\boldsymbol{S}\cup \left\{{a}_i\right\}\right)-{\mathcal{V}}^{\prime}\left(\boldsymbol{S}\right) \) for all S ⊆ ℕ ∖ {ai}.
Set of coalitions |
\( \mathbb{C}=\left\{{\mathcal{C}}_1=\left\{{a}_1,{a}_2\right\},{\mathcal{C}}_2=\left\{{a}_3\right\}\right\} \)
| ||
---|---|---|---|
Permutation |
a
1
|
a
2
|
a
3
|
a1 ← a2 ← a3 | \( \mathcal{V}\left(\left\{{a}_1\right\}\right) \)- \( \mathcal{V}\left(\phi \right) \) =20 | \( \mathcal{V}\left(\left\{{a}_1,{a}_2\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_1\right\}\right) \) = 70 | \( \mathcal{V}\left(\left\{{a}_1,{a}_2,{a}_3\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_1,{a}_2\right\}\right) \) = 30 |
a1 ← a3 ← a2 | N/A; π(a1) < π(a3) < π(a2) and \( {a}_1,{a}_2\in {\mathcal{C}}_1 \) but \( {a}_3\notin {\mathcal{C}}_1 \) | ||
a2 ← a1 ← a3 | \( \mathcal{V}\left(\left\{{a}_1,{a}_2\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_2\right\}\right) \) =60 | \( \mathcal{V}\left(\left\{{a}_2\right\}\right) \)- \( \mathcal{V}\left(\phi \right) \) =30 | \( \mathcal{V}\left(\left\{{a}_1,{a}_2,{a}_3\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_1,{a}_2\right\}\right) \) =30 |
a2 ← a3 ← a1 | N/A; π(a2) < π(a3) < π(a1) and \( {a}_2,{a}_1\in {\mathcal{C}}_1 \) but \( {a}_3\notin {\mathcal{C}}_1 \) | ||
a3 ← a1 ← a2 | \( \mathcal{V}\left(\left\{{a}_1,{a}_3\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_3\right\}\right) \) =40 | \( \mathcal{V}\left(\left\{{a}_1,{a}_2,{a}_3\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_1,{a}_3\right\}\right) \) =40 | \( \mathcal{V}\left(\left\{{a}_3\right\}\right) \)- \( \mathcal{V}\left(\phi \right) \) =40 |
a3 ← a2 ← a1 | \( \mathcal{V}\left(\left\{{a}_1,{a}_2,{a}_3\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_2,{a}_3\right\}\right) \) =50 | \( \mathcal{V}\left(\left\{{a}_2,{a}_3\right\}\right) \)- \( \mathcal{V}\left(\left\{{a}_3\right\}\right) \) =30 | \( \mathcal{V}\left(\left\{{a}_3\right\}\right) \)- \( \mathcal{V}\left(\phi \right) \) =40 |
Total | 20 + 60 + 40 + 50 = 170 | 70 + 30 + 40 + 30 = 170 | 30 + 30 + 40 + 40 = 140 |
Owen value
\( {\chi}_a\left(\mathbb{N},{\mathcal{C}}_1,\mathcal{V}\right) \)
| 170/4 = 42.5 | 170/4 = 42.5 | 140/4 = 35 |
3.4 Main steps of our integrated MC control scheme
-
Step 1: At the initial time, application features and system parameters are determined by the simulation scenario and Table 2.
-
Step 2: Each MUD has its own privacy preserving level (ε); it is fixed for each sensing task application.
-
Step 3: The MCS generates MC sensing tasks, sequentially. These task applications are operated through local APs. Each AP works as a mediator between the MCS and MUDs while calculating their payments.
-
Step 4: The task Av is assigned to a specific AP, and MUDs around that AP create the set \( {\mathcal{N}}_{A_v} \) while actively participating the MC service. At this time, MUDs in \( {\mathcal{N}}_{A_v} \) form multiple coalitions according to their privacy preserving level (ε).
-
Step 5: Using (2) and (3), each MUD generates the Laplace noise, and adds it to the actual MC outcome while satisfying the Eq. (1); it guarantees the MUD’s DP.
-
Step 6: In a distributed manner, the AP monitors only MUDs in its own coverage area, and estimates each MUD’s actual MC contribution \( \left(\mathfrak{A}\right) \) according to (6).
-
Step 7: Based on the Eq. (4), the AP calculates the Owen value for each individual MUD; ℂ for each task is localized at each AP. Therefore, the computation overhead can be practically reduced.
-
Step 8: Based on the step-by-step distributed cooperative game process, the AP, MCS, and MUDs interact with one another, and cause a cascade of interactions.
-
Step 9: Under the dynamic MC system environment, the MCS is constantly generates MC tasks; proceeds to step 2 for the next cooperative game iteration.
Sensing tasks |
ψ
| MC cycles per MUD | Total MC cycles (\( {\mathcal{T}}^{A_v} \)) | Service duration |
Av = τ1 | 0.95 | 180 cycles/s | 750 cycles/s | 2400 s (40 min) |
Av = τ2 | 0.9 | 200 cycles/s | 1000 cycles/s | 2700 s (45 min) |
Av = τ3 | 0.85 | 220 cycles/s | 1250 cycles/s | 2880 s (48 min) |
Av = τ4 | 0.8 | 250 cycles/s | 1500 cycles/s | 3000 s (50 min) |
Parameter | Value | Description | ||
m
| 100 | The number of physical mobile devices | ||
‖AP‖ | 10 | The number of access points |
4 Performance evaluation
4.1 Experimental method
-
100 MUDs are used in which these devices are distributed randomly.
-
10 APs are located evenly in a geographical region.
-
Each MUD’s ε value for its PD is randomly decided among {0.85, 0.9, 0.95}. According to the DP mechanism, the proposed approach cannot achieve a complete privacy protection, but provide a partially protected privacy based on the ε value.
-
Simply, we consider four cases of MUD capacity to proceed the MC service; 100 cycles/s, 150 cycles/s, 200 cycles/s, and 250 cycles/s. MC capacity of each individual MUD is randomly selected from the above four cases.
-
There are four different sensing task applications, i.e., {τ1, τ2, τ3, τ4}, which are specified according to the sensing requirements. They are generated with equal probability.
-
Sensing tasks \( \mathbbm{A} \) are generated based on the Poisson process, which is with rate λ (tasks/s), and the range is varied from 0 to 3.
-
All application tasks need a specific local region information. This region is randomly selected, and the MC task is assigned to the corresponding AP.
-
System performance measures obtained on basis of 100 simulation runs are plotted as functions of the sensing task generation rate.
-
For simplicity, we assume the absence of physical obstacles in the experiments.