nicolas-haderer-christophe-ribeiro-jmetroscope-110713

advertisement
Dynamic Deployment of Sensing Experiments in
the Wild Using Smartphones
Nicolas Haderer, Christophe Ribeiro, Romain Rouvoy,
Lionel Seintuier
University Lille 1 – LIFL,
Inria Lille – Nord Europe
1
Agenda
•
•
•
•
•
CrowdSensing
Problematic & Limitation
The APISENSE platform
Preliminary results
Demo
2
Why do we collect data?
• Better understanding of crowd behavior and
its environment
– E.g., optimizing public transport services
Road map of Chicago
Paths of Chigago Twitteres
3
Mobile|Phone Sensing
• Revolution driven by smart devices to collect
of crowd activity traces
Richdistribution
suitespopularity
of sensors
Increasing
App
channels
Microphone
Compas
Accelerometer
Camera
WIFI/3G/4G
GPS
4
CrowdSensing
• Capability of lifting a (large) diffuse group of
participants to delegate the task of retrieving
trustable data from the field
Crowd
Sensing
Microphone Camera
WIFI/3G/4G
Compas
Accelerometer GPS
5
CrowdSensing
 Data collection can take different forms


Participatory sensing involves the user in the sensing
task (eg. surveys)
Opportunistic sensing uses mobile sensors carried by
the user (eg. smartphones)
 And can be effective across multiple scales
Individual
Group
Community
6
CrowdSensing : opportunities
• A lot of research interests
– Building Noise Map Urban area
– Obtain human crowd density
– Earthquakes Monitoring
–…
7
Agenda
•
•
•
•
•
CrowdSensing
Problematic & Limitation
The APISENSE platform
Preliminary results
Demo
8
Problematic
• Real world deployment is labor-intensive
process
Crosscutting
challenges
Privacy
Energy
Task
description
Worker
recruitment
Task
deployment
Worker
rewarding
Data upload
Task
execution
9
Existing tools
• Funf in a box
10
Existing tools
• Pogo : Middleware for Mobile Phone Sensing
11
Limitation of the SotA
• Multi-tenant architectures are limited
– Constrained infrastructures (database, resources)
– Tenants side effects (availability)
– Legal issues (data ownership)
– Security leaks (data isolation)
• Application-specific solutions
– Lack of flexibility to be reused in another context
12
Limitation of the SotA
• Community sensing problem
Data redundancy
High energy consumption
13
Challenges summary
Development cost
Software
challenges
Crosscutting
challenges
Scalability
Flexibility
Privacy
Security
Energy
Task
description
Worker
recruitment
Task
deployment
Worker
rewarding
Data upload
Task
execution
14
Agenda
•
•
•
•
•
CrowdSensing
Problematic & Limitation
The APISENSE platform
Preliminary results
Demo
15
APISENSE®
• Open crowd-sensing platform
– Flexible and customizable architecture
– Supporting various research communities
– Leveraging the deployment of CrowdSensing tasks
16
APISENSE® – The platform
http://www.apisense.fr
17
Central Node
• A trustable central server
– Intermediary between collector node & workers
– Guarantees workers anonymity (generated ids)
– Checks the task scripts and rewards workers
– Deploy and generate sensing node
18
Sensing Node
• A cloud-oriented storage
• Support for data authentication + encryption
• Configurable infrastructure (SPL + components)
• XML | NoSQL database, processing services, visualization
19
APISENSE Mobile Application
• Mobile application
– Downloads & executes scripts (sandbox)
– Uploads datasets when plugged
– Controls sensor privileges & privacy filters
Time filter
Sensors privileges
Location filter
20
CrowdSensing Javascript API
21
CrowdSensing Javascript API
22
APISENSE®
23
Agenda
•
•
•
•
•
CrowdSensing
Problematic & Limitation
The APISENSE platform
Preliminary results
Demo
24
Application Example
• Collecting exceptions in the wild (CoffeeScript)
logcat.onLog {filter: [’*:W’,’*:E’]},
(log) ->
trace.add
message: log.message,
time: log.timestamp,
Warning log Taxonomy
application:
apps.process(log.pid).applicationName,
topTask: apps.topTask().applicationName
Error log Taxonomy
25
Application Example
• Assessing Machine Learning Models
– User context recognition implementation : ~ 30 lines
…
accelerometer.onChange(function(acc) { buffer.push(acc) });
// Learning phase
dialog.display({ message: "Select movement", spinner: classes },function(pattern){
accelerometer.onChange(function(acc) { buffer.push(acc) });
sleep(‘5s’)
model.record(attributes(buffer), pattern);
buffer = new Array();
return;
});
…
// Exploitation phase
time.schedule({ period: '5s' }, function() {
trace.add({
position: model.evaluate(attributes(buffer)),
stats: model.statistics() });
Representative Confusion Matrix
buffer = new Array();
} } });
26
Agenda
•
•
•
•
•
CrowdSensing
Problematic & Limitation
The APISENSE platform
Preliminary results
Demo
27
Questions ?
Nicolas H ADERER
C HRISTOPHE R IBEIRO
Romain R OUVOY
http://apisense.fr
28
Download