We describe a novel approach and a software framework for mobile crowdsensing applications with mobile agents that enables energy efficient, robust and scalable campaign execution. The framework is Web-enabled for integration with existing pervasive computing systems.
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Mobile Crowdsensing with Mobile Agents
1. References: Leppänen, T., Álvarez Lacasia, J., Tobe, Y., Sezaki, K. and Riekki, J. “Mobile Crowdsensing with
Mobile Agents,”Autonomous Agents and Multi-agent Systems, pp. 1-35, Springer, ISSN 1387-2532, 2015
Mobile Crowdsensing with Mobile Agents
JAAMAS Extended Abstract Presentation in AAMAS2016
May 9-13, Singapore
Teemu Leppänen1, José Álvarez Lacasia2, Yoshito Tobe3, Kaoru Sezaki2 and Jukka Riekki1
1Department of Computer Science and Engineering, University of Oulu, Finland
2Institute of Industrial Science, University of Tokyo, Japan
3RealWorld Communication Laboratory, Aoyama Gakuin University, Japan
2. What is mobile crowdsensing?
Crowdsensing: ”participatory sensor networks, where humans take
active roles with their personal mobile devices. Human intelligence
and social interactions are leveraged to collect contxt-aware and
semantically complex data about urban phenomena”
General model for crowdsensing campaigns
(1) Creation, (2) Recruitment, (3) Execution, (4) Result verification and (5) Publishing
Technical and human-related challenges
1. Dynamic environment: participant recruitment, network connectivity
2. Self-contained applications with no interaction capabilities
3. Energy consumption overhead, allow normal phone use
4. Participant performance (flexibile rules of participation!), privacy
5. Data verification and quality assessment Traditional model of crowdsensing applications
3. Multi-agent system and mobile agents in crowdsensing
Campaigns designed with different agent-based roles and their
interactions
- Minimal role ”data collector”: collect sensor data, process and upload
- Complex (campaign-specific) tasks defined through cooperating roles
Roles implemented as mobile agents (Challenge 2)
- Campaigns started by injecting mobile agent(s) into the system
- Mobile agents then interact with each other and system components:
negotiate their role execution, share information and task results
- Mobile agents relocate the task execution (if needed)
Benefits with this approach (Challenges 1, 2, 3)
- Autonomous, decentralized, proactive and reactive campaign execution
- Agent mobility provides robustness, scalability as extending the campaign coverage
- Online model for (multiple simultaneous) campaigns running in a set of devices
- Multi-agent system allows to evaluate different strategies for crowdsensing
Model of crowdsensing with mobile agents
4. Examples of role-based tasks in crowdsensing
Sensing task (Challenges 3, 5)
- Initiate sensing and control sensors and parameters: sample rate, event thresholds, ...
- Operate in different sensing modes: manual, automatic and context-aware
- Data processing: filter, detect events, quality assessment, …
Participant-related aspects (Challenges 1, 4)
- Monitoring participant behavior: suggest changes to data collection in-situ
- Calculate fair compensation (and reputation) for participants
- Recruitment based on context, reputation, …
Privacy protection (Challenge 4)
- Negotiate campaign requirements with participant’s privacy requirements:
anonymize data, exclude sensitive locations, …
=> Benefit is that these actions can be executed autonomously online
5. Simulation: design
Simulations to evaluate the approach target energy efficiency
Parameters
- Fixed campaign starting and ending criteria (80% area covered)
- Varying number of mobile agents (1-90) in a campaign
- Varying participant appearance rate, max ~5000 participants
- Fixed data and agent size (bytes)
- Energy consumption model realistic (our experiments; Wang & Manner, 2010)
Campaigns
1. Reference: data uploaded to campaigner in real-time
2. Reference: data uploaded exactly once at the end of participation
3. Mobile agents migrate into the devices at join-time
4. Different number of roaming agents, participants join/leave at slow rate
5. Fixed number of mobile agents, participants join/leave at fast increasing rate
6. Mobile agents (1-20) interacting: sharing data and task results
Snapshot of a on-going simulation.
Participants, their routes and agent
migrations are depicted.
6. Simulation: results
Total energy consumption
of mobile agents based
campaigns (T3_2, T4_2) is
about the same, or lower,
than in the best reference
campaign (T2).
Mobile agent interaction
(data and results sharing)
overhead is between 0-25%
of total campaign energy
consumption, depending on
the campaign design.
Total energy consumption
distribution in campaigns.
7. Software framework for mobile agents in mobile devices
1. Agent execution environment application in smartphones
2. Resource directory maintains list of available devices and their capabilities
- Devices periodically update their status: remaining battery, available sensors, etc
- Campaigners perform runtime lookups for available devices
3. Framework is seamlessly Web-integrated
- Devices, sensors, sensor data and agents abstracted as
Web resources with RESTful interfaces
- Agent interaction protocol based on HTTP methods
• OPTIONS: observe environment through resource metadata
• GET: request agent state, data, task results, …
• POST: request action, migrate agent
• DELETE: delete resource
=> Framework can become Integral part of an ubiquitous computing platform
8. Real-world evaluation: design
Pedestrian flock detection
- Wi-Fi scan as a sensor, collects id and signal strength’s of detected access points
- Participants clustered into flocks based on similarity of their Wi-Fi data vectors
Two roles for mobile agents
- Data Collector (DC) agent: migrates into the devices to
run the sensing task: collect sensor data and generate
data vectors
- Data Aggregator (DA) agent: retrieve data vectors, calculate
cosine similarity features between all data vectors and
upload result to the campaigner
=> Designed to evaluate in-network data processing and agent interaction overhead
Example real-world campaign design and agent interactions
9. Real-world evaluation: experiments
Evaluated three real-world campaigns
1. Upload: reference campaign with real-time data upload
no agents
2. MA Resident: One DA agent, four DC agents as ”resident”
agents with real-time data upload
3. MA Migrate: One DA agent, one roaming DC agent, data
upload when migrates into device
Each campaign running time 15 minutes
- A set of five different Android (4.x) smartphones
- Collected data on (1) total energy consumption and (2) the total amount of transmitted data
over different data upload and agent migration periods
10. Real-world evaluation: results
Real-world kicks in: results show significant mobile agent execution overhead
- Due to our software implementation: mobile agents programmed with a scripting language that
requires its own runtime environment
- To address this, the native programming language of the platform should be used in future work
- Note: The simulations described on previous slides already included this overhead!
Mobile agents, with in-
network data processing,
significantly reduce the
amount of transmitted
data in the campaign.
Across campaigns, energy
consumption can be
reduced, even with in-
network data processing
and local sharing of results
11. Conclusions
Mobile agents enable robust and scalable campaign execution in dynamic environments
Mobile agents can execute crowdsensing campaigns more energy efficiently than
”traditional” reference campaigns
Mobile agents-based campaigns may operate best in opportunistic crowdsensing
applications with infrequent migrations, due to agent execution and interaction overhead