| Literature DB >> 35161750 |
Teodoro Montanaro1, Ilaria Sergi1, Matteo Basile1, Luca Mainetti1, Luigi Patrono1.
Abstract
One of the main concerns of the last century is regarding the air pollution and its effects caused on human health. Its impact is particularly evident in cities and urban areas where governments are trying to mitigate its effects. Although different solutions have been already proposed, citizens continue to report bad conditions in the areas in which they live. This paper proposes a solution to support governments in monitoring the city pollution through the combination of user feedbacks/reports and real-time data acquired through dedicated mobile IoT sensors dynamically re-located by government officials to verify the reported conditions of specific areas. The mobile devices leverage on dedicated sensors to monitor the air quality and capture main roads traffic conditions through machine learning techniques. The system exposes a mobile application and a website to support the collection of citizens' reports and show gathered data to both institutions and end-users. A proof-of-concept of the proposed solution has been prototyped in a medium-sized university campus. Both the performance and functional validation have demonstrated the feasibility and the effectiveness of the system and allowed the definition of some lessons learned, as well as future works.Entities:
Keywords: Internet of Things; air pollution; government facilities; machine learning; smart cities; traffic monitoring
Mesh:
Year: 2022 PMID: 35161750 PMCID: PMC8839545 DOI: 10.3390/s22031000
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Functional requirements.
| Requirement n. | Requirement Description |
|---|---|
| R1 | Citizens would like to have the possibility of reporting strange situations about pollution revealed through their sensors. |
| R2 | Citizens would like to receive notifications about strange pollution situations or intense traffic and understand if the administrations are intervening in any way. |
| R3 | City officials would like to receive reports from citizens. |
| R4 | City officials would like to receive notifications about reports from citizens. |
| R5 | City officials would like to access historic data to, for instance, evaluate the possibility of planting new trees. |
| R6 | City officials would like to set or reset the threshold for the generation of alerts. |
| R7 | City officials would like to access fine grained data about a zone in case of necessity. |
| R8 | City officials would like to monitor other situations like traffic in a specific zone, in case of necessity. |
Non-Functional requirements.
| Requirement n. | Requirement Description |
|---|---|
| RN1 | Security: The system should assure that all the manipulated data and the parts of the systems themself are protected against malware attacks or unauthorized access. |
| RN2 | Usability: The system should expose user-friendly interfaces to improve user experience and facilitate the exploitation of exposed services. |
| RN3 | Performance: The system should guarantee the reactivity of the system to user requests and interactions, in order to guarantee low waiting time before targeted operations’ execution and responses. |
| RN4 | Reliability, Availability, and Maintainability: The system should be able to work and expose services without failures, guaranteeing, at the same time, minimum recovery time. |
| RN5 | Scalability: Considering the mobile nature of the proposed system, this non-functional requirement is the most important one that should be satisfied by the system to support the possibility of adding increasing number of sensors all over the city. |
Figure 1System architecture of the proposed solution.
Figure 2Sequence Diagram of all the interactions among different components.
REST API for reports, interventions, operators, and survey.
| Action | Method | Path | Input Parameters |
|---|---|---|---|
| Get the list of reports | GET | /api/report | / |
| Get the list of possible report categories | GET | api/category/getAllCategories | / |
| Get the list of subcategories | GET | api/category/<category_id>/getSubCategories | - |
| Insert a new report category | POST | api/category/insert |
name timestamp |
| Insert an intervention associated to a report | POST | api/intervention/ |
title report_id description timestamp |
REST API for the Machine Learning algorithm.
| Action | Method | Path | Input Parameters |
|---|---|---|---|
| Get estimation | POST | /api/imageProcessing/estimation | - image |
Figure 3Screenshots of the Mobile Application. The menu of the application (a); the form used by the user to report a problem (b).
Figure 4Developed prototype. The top of the realized prototype in which all the used sensors are exposed (a); the internal details of the realized prototype (b).
Details of the Machine used on the Amazon Elastic Compute Cloud (EC2).
| CPU | vCPUs | RAM (GiB) | Network Burst Bandwidth (Gbps) | EBS Burst Bandwidth (Mbps) |
|---|---|---|---|---|
| Intel Xeon Platinum 8000 (with a sustained all core Turbo CPU clock speed of up to 3.1 GHz) | 2 | 4 | 5 | Up to 2085 |
Performance evaluation for submitting a report.
| Request | #Samples in 1 h | Response Times (ms) Average | Throughput Transactions/s | Network (KB/s) Received | Network (KB/s) Sent |
|---|---|---|---|---|---|
| HTTP | 40,000 | 232.38 | 11.11 | 10.59 | 4.8 |
| HTTP | 40,000 | 112.49 | 11.11 | 10.7 | 5.1 |
| HTTP | 40,000 | 110.54 | 11.11 | 15.81 | 7.2 |
Performance evaluation for assigning an intervention to an operator.
| Request | #Samples in 1 h | Response Times (ms) Average | Throughput Transactions/s | Network (KB/s) Received | Network (KB/s) Sent |
|---|---|---|---|---|---|
| HTTP | 2000 | 344.6 | 1.11 | 11.41 | 0.52 |
| HTTP | 2000 | 117.11 | 1.11 | 1.68 | 0.74 |
| HTTP | 2000 | 448.31 | 1.11 | 0.43 | 0.66 |
Comparison of related works and our solution.
| Multiple Mobile IoT Devices | Notifications to Citizen about Pollution | Exploit User Feedbacks | Indoor/Outdoor | |
|---|---|---|---|---|
| Spandana et Shanmughasundram [ | Mobile | No | No | Indoor |
| Becnel et al. [ | Distributed | No | No | Indoor |
| Patil et al. [ | Distributed | Yes | No | Indoor |
| Garzon et al. [ | Distributed | Yes | No | Indoor |
| White et al. [ | Fixed | No | Yes | Indoor |
| Re Cecconi et al. [ | Fixed | No | Yes | Outdoor |
| Ertiö et al. [ | Fixed | NO | Yes | Outdoor |
| Rinaldi et al. [ | Distributed | Yes | Only data from sensors | Indoor |
| Tagliabue et al. [ | Distributed | Yes | Yes | Indoor |
| Our solution | Mobile | Yes | Yes | Outdoor |