# Bloom Filter Approach for Autonomous Data Acquisition in the Edge-Based MCS Scenario +
## 5 Conclusions  
Mobile crowdsensing refers to a set of human-driven IoT applications that allow users to detect phenomena of personal, communal, or even societal importance by sharing sensor data about their surroundings while being mobile. Typical MCS service deployment has a cloud-based centralized design that requires many computing resources and creates a lot of network traffic, both on mobile networks and towards cloud-based MCS services. Furthermore, MCS applications produce large amounts of data collected and preprocessed by devices with limited energy supply. Hence, there is a need for solutions that will reduce the energy consumption of such devices while satisfying application requirements in terms of the quality of acquired datasets. Figure 12: Percentage of redundant data received by ME hosts with respect to the parameter \(m_{worker}\). This paper proposes a hierarchical MCS deployment suitable for edge computing environments. Because ME hosts are responsible only for workers and MCS tasks inside their deployment area, such architecture allows parallelizing and segmenting the problem space based on the location. In particular, we propose a decentralized algorithm that allows mobile workers to engage in data collection and transmission processes on their own (i.e., independently) without requiring cloud-based supervision and coordination. The proposed algorithm uses a Bloom filter structure, both on mobile nodes and ME hosts, to minimize redundant worker activity while at the same time keeping uniform data density within the area. We evaluate the BF algorithm on a real-world dataset and show that it is a valuable data structure to orchestrate autonomous data acquisition on workers participating in MCS tasks. In particular, our results indicate that the proposed approach shows great potential for energy savings in distributed MCS environments due to decreased messaging between workers and edge hosts while satisfying application requirements. We have shown that the overall energy savings go from 35% up to 62% compared to a baseline approach. Because data processing splits over many ME hosts and all workers may autonomously determine when to send data, the proposed hierarchical edge-based MCS deployment has no single point of failure. However, the actual energy savings are highly dependent on the MCS application and its setup. We have proposed a generic solution for a distributed data collection in the MCS system, but additional savings can be achieved if the algorithm considers application-specific requirements. For example, in some cases, it could be better to reset BF after it has been filled to a certain extent instead of periodical reset in predefined time intervals. Such algorithm adjustment can further reduce communication between ME hosts and mobile workers, as filter reset messages are sent when required. Finally, we plan to investigate user traces obtained from cellular network providers to obtain a better insight into user mobility patterns and identify _popular_ areas. In areas with many workers, one can expect high data redundancy, especially after BF reset, because all workers would simultaneously start data transmission to the corresponding edge host. Additional savings can be achieved by choosing only top-\(k\) workers in the area, based on a valuation function, who will receive an empty filter after reset. Such an approach would reduce the amount of sent data and messaging between edge hosts and workers in the area and consequently increase system energy savings. Conceptualization, M.A., A.A. and I.P.Z. ; Methodology, M.A., A.A. and I.P.Z. ; Investigation, M.A. ; Formal analysis, M.A. and A.A.; Data curation, M.A. and A.A.; Software, M.A. and A.A.; Validation, M.A. and A.A.; Visualization, M.A. ; Writing--original draft preparation, M.A. ; Writing--review and editing, A.A. and I.P.Z. ; Supervision, I.P.Z. ; Funding acquisition, I.P.Z. All authors have read and agreed to the published version of the manuscript.