context-awareness & occupancy/traffic monitoring

44
Context awareness & Contextual Computing Occupancy Monitoring of Mary Idema Pew Library Advisor Professor Engelsma Sam Serpoosh https://github.com/Sam-Serpoosh https://linkedin.com/in/samserpoosh http:// masihjesus.wordpress.com @masihjesus

Upload: samserpoosh

Post on 15-Apr-2017

1.571 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Context-Awareness & Occupancy/Traffic Monitoring

Context awareness & Contextual Computing

Occupancy Monitoring of Mary Idema Pew Library

Advisor Professor EngelsmaSam Serpoosh

https://github.com/Sam-Serpooshhttps://linkedin.com/in/samserpoosh

http://masihjesus.wordpress.com@masihjesus

Page 2: Context-Awareness & Occupancy/Traffic Monitoring

Device sensors more information

Page 3: Context-Awareness & Occupancy/Traffic Monitoring

We collect big data• What do we do with it?

• Recommendation Engines

• More relevant and useful content for each individual

• Better user experience and more value

Page 4: Context-Awareness & Occupancy/Traffic Monitoring

What is missing?

Page 5: Context-Awareness & Occupancy/Traffic Monitoring

Human-human VShuman-computer

Current Context & Situational Information

Page 6: Context-Awareness & Occupancy/Traffic Monitoring

Context can be different

Page 7: Context-Awareness & Occupancy/Traffic Monitoring

Hang out suggestion

WHERE???

PREVIOUS ACTS???

WHO???

Page 8: Context-Awareness & Occupancy/Traffic Monitoring

What you’re looking at

Page 9: Context-Awareness & Occupancy/Traffic Monitoring

Context depends on domain

• Based on the application• Problem it is solving• The Domain“Any information that can be used in order

to describe the situation of an entity relevant to interaction between user and the application is considered Context.”

Page 10: Context-Awareness & Occupancy/Traffic Monitoring

What can be improved on campus?

• Looking for a book?

• Campus Tour Guide?

Page 11: Context-Awareness & Occupancy/Traffic Monitoring

Campus tour app kills social Interaction

Page 12: Context-Awareness & Occupancy/Traffic Monitoring

Meeting with library staff

• new books notification

while they’re passing by different sections

• Traffic and

Occupancy Monitoring In certain areas

Page 13: Context-Awareness & Occupancy/Traffic Monitoring

Occupancy monitoring wins

• Library staff are more interested in occupancy monitoring

• That’s an actual problem

• Students can get help on where is less crowded to study/work

Page 14: Context-Awareness & Occupancy/Traffic Monitoring

How to solve it• Install Beacon devices in 3rd Floor Innovation

Zone & 4th Floor Study Room

• Add a traffic/occupancy monitoring feature to a popular application which is used by majority of students

• Collect and process traffic data and get real-time information for those areas

Page 15: Context-Awareness & Occupancy/Traffic Monitoring

Overall architecture

Page 16: Context-Awareness & Occupancy/Traffic Monitoring

Client application• Laker Mobile• Used by Majority of Students• Has a Library Section

• Need to make it more useful• Add a context-aware background service for monitoring traffic activities (e.g. Enter, Exit)

Page 17: Context-Awareness & Occupancy/Traffic Monitoring

ibeacon• Wireless devices transmitting radio signals to

smart devices

• Devices can hear these signals (via BLE scanning)

• Communicate with beacons

• Estimate their proximity from them

Page 18: Context-Awareness & Occupancy/Traffic Monitoring

Ibeacon (cont.)• Introduced by Apple in iOS 7

• Core Location Library

• Works with Bluetooth Low Energy (BLE)

• Proximity Calculation and Context Awareness

Page 19: Context-Awareness & Occupancy/Traffic Monitoring

Main functionalities• Region Monitoring

• Can detect Enter/Exit for a monitored region/area

• Region Change detection

• Beacon Ranging• Can calculate the proximity to a certain beacon

device in a given region• Proximity levels Far, Near, Immediate,

Unknown

• Identifiable through UUID, Major and Minor numbers

Page 20: Context-Awareness & Occupancy/Traffic Monitoring

We used estimote beacons

Page 21: Context-Awareness & Occupancy/Traffic Monitoring

Ruby on rails web server

• Receiving traffic data• Returns traffic information in a given period in

conventional format: JSON, CSV• Gives real-time information on population of

monitored areas• Shows a heat map associated with monitored

areas

• All the other BORING parts of a web service

Page 22: Context-Awareness & Occupancy/Traffic Monitoring

Sample dataSubmitted data from a client device looks like

this

Page 23: Context-Awareness & Occupancy/Traffic Monitoring

Sample data (cont.)Areas population

Page 24: Context-Awareness & Occupancy/Traffic Monitoring

Heat map

Page 25: Context-Awareness & Occupancy/Traffic Monitoring

Overall workflowPretty Straightforward and Simple

Page 26: Context-Awareness & Occupancy/Traffic Monitoring

Quick peak on Implementation

• CLBeaconManager From Core Location Library• When a device enters a monitored area• Certain callback gets invoked by beacon

manager• (void)beaconManager:(ESTBeaconManager*)didEnterRegion:

(ESTBeaconRegion)

• Context-Aware logic of the application is here or triggered here

Page 27: Context-Awareness & Occupancy/Traffic Monitoring

Did enter region

Page 28: Context-Awareness & Occupancy/Traffic Monitoring

Region monitoring &beacon ranging

• Region Monitoring can happen both in background and foreground

• Beacon Ranging can only happen when the application is in foreground• Proximity calculation• Signal Strength calculation• Solving the problem of overlapping areas

Page 29: Context-Awareness & Occupancy/Traffic Monitoring

Frequency of ble scan

• Ranging happens quite frequently when application is in foreground • Almost every few seconds

• Region Monitoring depends on few thingsCondition Max time to detect Range

ChangenotifyEntryStateOnDisplay =

YES & Phone Awakened1 second

notifyEntryStateOnDisplay = NO

& Phone Awakened

NEVER

Application is just running in background

From few seconds up to 15 minutes

Page 30: Context-Awareness & Occupancy/Traffic Monitoring

Subtleties on server• Device is On border of a region

• Two subsequent traffic data can be submitted with EXACT same time

• Which one do you consider in Area Population calculation?

Page 31: Context-Awareness & Occupancy/Traffic Monitoring

What we can find out?

• How long a users occupy a given area• Enter at 9:00 AM• Exit at 13 PM

• Taking a break or temporarily leaving the area• Exit at 18:35• Enter at 18:44• Taking a break, Finding a book, meeting

someone, etc.

• Just walking by a monitored area closely• Enter at 17:35:07• Exit at 17:35:40

Page 32: Context-Awareness & Occupancy/Traffic Monitoring

Hourly population report

Page 33: Context-Awareness & Occupancy/Traffic Monitoring

Closer look

Page 34: Context-Awareness & Occupancy/Traffic Monitoring

Devices per day

Page 35: Context-Awareness & Occupancy/Traffic Monitoring

Lessons learnedApple users upgrade FAST

Page 36: Context-Awareness & Occupancy/Traffic Monitoring

Lessons learned (CONT.)

• Dealing with new and unfamiliar technology• Technical Side = Advertisement and Promoting

• ??A lot of unknowns, unfamiliar obstacles??

• Building a infrastructure, platform, framework• Core logic is interchangeable

Page 37: Context-Awareness & Occupancy/Traffic Monitoring

Lessons learned (cont.)

• Dealing with other organizations

• IT was worried about WiFi interference

• Bluetooth & WiFi 2.4 GHz frequency

• Students will face Internet connection problems

Page 38: Context-Awareness & Occupancy/Traffic Monitoring

Wifi disconnects• Could not connect to WiFi through my

laptop???!!!• Everything else was connected (iPhone, iPad,

etc.)

• The conversation with IT hit me• we have an Estimote beacon in our lab• Stackoverflow to the rescue

Page 39: Context-Awareness & Occupancy/Traffic Monitoring

Context matters• Human-Human interaction is very effective at

this• We want the human-computer interaction to

be efficient and valuable• recommending appropriate things, showing

relevant content• Why not better? We know one more

missing piece of the puzzle• Context is a Caved in Stone

Page 40: Context-Awareness & Occupancy/Traffic Monitoring

Special thanks to• Professor Jonathan Engelsma• Carlos Rodriguez• Kyle Felker• Kristin Meyer• Ehsan Valizadeh• Davoud Qorashi• All the students who used the

application and collaborated in this work

Page 41: Context-Awareness & Occupancy/Traffic Monitoring
Page 42: Context-Awareness & Occupancy/Traffic Monitoring

References• Dey AK, Abowd GD. Towards a better understanding of

context and context-awareness. CHI’2000 Workshop on the What, Who, Where, When, and How of Context-Awareness.

• Yin, Chuantao, Bertrand David, and Rene Chalon. "Use your mobile computing devices to learn-Contextual mobile learning system design and case studies."Computer Science and Information Technology, 2009. ICCSIT 2009. 2nd IEEE International Conference on. IEEE, 2009.

• Prophet Kitchen application for Rubens House in Antwerp Belgium. http://vimeo.com/84760383

• Estimote official website. http://estimote.com/ • API documentation of Estimote.

http://estimote.com/api/index.html

Page 43: Context-Awareness & Occupancy/Traffic Monitoring

References (cont.)• Estimote iOS SDK.

https://github.com/Estimote/iOS-SDK • Apple documentation on CLBeaconManager.

https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocationManagerDelegate_Protocol/CLLocationManagerDelegate/CLLocationManagerDelegate.html - //apple_ref/occ/intfm/CLLocationManagerDelegate/locationManager:didEnterRegion: