SlideShare a Scribd company logo
A Context and User Aware
Smart Notification
System
Fulvio Corno
Luigi De Russis
Teodoro Montanaro*
http://jol.telecomitalia.com/j
olswarm/
http://elite.polito.it/
2
Outline
1. Context and Motivation
2. Goal
3. Architecture
4. Prototype
5. Preliminary results
6. Conclusion
7. Future work
3
Context
Context
Infographic from "The Connectivist": growing of IoT connected devices
(http://www.theconnectivist.com/2014/05/infographic-the-growth-of-the-internet-of-things/)
4
Motivation
Motivation
5
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
6
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
7
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
8
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
The number of notifications is growing
9
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
The number of notifications is growing
10
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
Nowadays the same notification is replicated on all available devices
The number of notifications is growing
11
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
Nowadays the same notification is replicated on all available devices
The number of notifications is growing
12
Motivation
Motivation
IoT devices can generate, receive and show different kinds of notifications
Nowadays the same notification is replicated on all available devices
The number of notifications is growing
The benefit of displaying the same
notification on all available devices
could put user patience to a hard test
13
Analyze how machine learning approach can improve
IoT notification user experience
Goal
Goal
14
Analyze how machine learning approach can improve
IoT notification user experience
Goal
Goal
15
Analyze how machine learning approach can improve
IoT notification user experience
Goal
Goal
Develop a system able to filter incoming notifications
depending on:
• Notification information
• Environment status
• User context
• User habits
16
Analyze how machine learning approach can improve
IoT notification user experience
Goal
Goal
Develop a system able to filter incoming notifications
depending on:
• Notification information
• Environment status
• User context
• User habits
17
Analyze how machine learning approach can improve
IoT notification user experience
Goal
Goal
Develop a system able to filter incoming notifications
depending on:
• Notification information
• Environment status
• User context
• User habits
Evaluate machine learning approach
18
We propose:
Architecture
Architecture
19
We propose: A modular architecture
Architecture
Architecture
20
We propose: A modular architecture
Architecture
Architecture
21
We propose: A modular architecture
Architecture
Architecture
22
We propose: A modular architecture
aware of
Architecture
Architecture
23
We propose:
Environment status
(e.g., weather information,
current date and time)
A modular architecture
aware of
Architecture
Architecture
24
We propose:
Environment status
(e.g., weather information,
current date and time)
User context (e.g.,
location, status, current
activity),
A modular architecture
aware of
Architecture
Architecture
25
We propose:
Environment status
(e.g., weather information,
current date and time)
User context (e.g.,
location, status, current
activity),
User habits
A modular architecture
aware of
Architecture
Architecture
26
We propose: A modular architecture
Architecture
Architecture
27
We propose:
Decision maker: Machine Learning
algorithm makes decisions (best devices
+ best modes + best moment).
Architecture
Architecture
28
Architecture: example
Architecture
29
Architecture: example
Architecture
Mario is in a
meeting
30
Architecture: example
Architecture
Mario is in a
meeting
31
Architecture: example
Architecture
Every meeting lasts at least 2
hours
Mario is in a
meeting
32
Architecture: example
Architecture
Every meeting lasts at least 2
hours
Mario is in a
meeting
33
Architecture: example
Architecture
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
34
Architecture: example
Architecture
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
35
Architecture: example
Architecture
Notification:the toilet
paper has just finished
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
36
Architecture: example
Architecture
Notification:the toilet
paper has just finished
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
37
Architecture: example
Architecture
Notification:the toilet
paper has just finished
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
38
Architecture: example
Architecture
Notification:the toilet
paper has just finished
Notify:
• At 18:10
• on his personal
smartphone
• Sound
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
39
Architecture: example
Architecture
Notification:the toilet
paper has just finished
Notify:
• At 18:10
• on his personal
smartphone
• Sound
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
40
Architecture: example
Architecture
Notification:the toilet
paper has just finished
Notify:
• At 18:10
• on his personal
smartphone
• Sound
Time: 17:00
Meeting started at
16:00
Wife is at home
Every meeting lasts at least 2
hours
Mario is in a
meeting
41Prototype
Prototype implementation
42Prototype
Prototype implementation
Aim: evaluate machine learning approach to decide
• who should receive an incoming notification;
• the best moment to show the notification;
• the best device(s)
• the best mode to notify the incoming notification
43Prototype
Prototype implementation
Aim: evaluate machine learning approach to decide
• who should receive an incoming notification;
• the best moment to show the notification;
• the best device(s)
• the best mode to notify the incoming notification
44Prototype
Prototype implementation
Preliminary version of
Aim: evaluate machine learning approach to decide
• who should receive an incoming notification;
• the best moment to show the notification;
• the best device(s)
• the best mode to notify the incoming notification
45Prototype
Prototype implementation
Preliminary version of
Aim: evaluate machine learning approach to decide
• who should receive an incoming notification;
• the best moment to show the notification;
• the best device(s)
• the best mode to notify the incoming notification
46Prototype
Prototype implementation
47Prototype
Prototype implementation
Preliminary version of
48Prototype
Prototype implementation
Preliminary version of
Dataset
49Prototype
Prototype implementation
Preliminary version of
Dataset Algorithms
50
Prototype implementation
Prototype
Dataset
51
Prototype implementation
Prototype
94 people over 9 months
monitored through
smartphones in 2004:
• Sender
• Receiver
• Type of notification
• Timestamp of receipt
• User current location
Dataset
52
Prototype implementation
Prototype
94 people over 9 months
monitored through
smartphones in 2004:
• Sender
• Receiver
• Type of notification
• Timestamp of receipt
• User current location
Dataset
Synthetic data:
• User current
activity
• Available devices
for the user
• Target device.
53
Prototype implementation
Prototype
94 people over 9 months
monitored through
smartphones in 2004:
• Sender
• Receiver
• Type of notification
• Timestamp of receipt
• User current location
Dataset
Synthetic data:
• User current
activity
• Available devices
for the user
• Target device.
Real + synthetic dataset:
165,289 samples, almost one per
each hour of the day
(the missing samples are related
to hours in which users turned
off their smartphones)
54
Prototype implementation
Prototype
94 people over 9 months
monitored through
smartphones in 2004:
• Sender
• Receiver
• Type of notification
• Timestamp of receipt
• User current location
Dataset
Synthetic data:
• User current
activity
• Available devices
for the user
• Target device.
Real + synthetic dataset:
165,289 samples, almost one per
each hour of the day
(the missing samples are related
to hours in which users turned
off their smartphones)
Information collected by Decision Maker in previous example
{
“notification“:{
“senderName“:“mySmartHome“,
“type“:“smart Home Notification“,
“receiptTimestamp“:“1447347600“
},
“userStatus“: {
“senderId“:“359“,
“currentActivity“:“STILL“,
“currentActivityConfidence“:“50%“,
“availableDevices”:[“deviceId”:”23”]
},
“deviceStatus“:{
“deviceId“:”23”,
“category“:”Smartphone”,
“currentStatus“:”On”,
“currentMode“:”Ring”,
“wifiStatus“:” Connected through MOBILE”,
“batteryLevel“:” 57%”,
“batteryStatus“:”BATTERY_STATUS_NOT_CHARGING”
}
}
55
Prototype implementation
Prototype
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
56
Prototype implementation
Prototype
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
57
Prototype implementation
Prototype
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
58
Prototype implementation
Prototype
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
Training dataset: 80% of data
Tests dataset: 20% of data
59
Prototype implementation
Prototype
Simplified version of the Decision
maker:
• only one device as receiver;
• only one available mode for each
device;
• no decision about the best time
to deliver the notification;
• not aware of environment
context
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
Training dataset: 80% of data
Tests dataset: 20% of data
60
Prototype implementation
Prototype
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
Training dataset: 80% of data
Tests dataset: 20% of data
61
Prototype implementation
Prototype
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
Training dataset: 80% of data
Tests dataset: 20% of data
62
Prototype implementation
Prototype
Three machine learning
algorithms:
1. SupportVector Machine
2. Gaussian NaĂŻve Bayes
3. Decision Trees.
Machine learning algorithms
Dataset
Real + synthetic data (165,289
samples)
Training dataset: 80% of data
Tests dataset: 20% of data
63
Preliminary results
Preliminary results
64
Preliminary results
Preliminary results
96,10%
83,40%
93,90%
0,00%
20,00%
40,00%
60,00%
80,00%
100,00%
Support
Vector
Machine
Gaussian
Naive Bayes
Decision Trees
Percentage of corrected predictions obtained
with used algorithms
65
Preliminary results
Preliminary results
CPU time (in seconds) for a training phase with
33058 samples
96,10%
83,40%
93,90%
0,00%
20,00%
40,00%
60,00%
80,00%
100,00%
Support
Vector
Machine
Gaussian
Naive Bayes
Decision Trees
5801,1
12,9 13,9
1
10
100
1000
10000
Support
Vector
Machine
Gaussian
Naive Bayes
Decision Trees
Percentage of corrected predictions obtained
with used algorithms
66
Preliminary results
Preliminary results
Average CPU time (in milliseconds) for each
notification classification
SupportVector Machine 40,22 ms
Gaussian Naive Bayes 0,31 ms
Decision Trees 0,001 ms
96,10%
83,40%
93,90%
0,00%
20,00%
40,00%
60,00%
80,00%
100,00%
Support
Vector
Machine
Gaussian
Naive Bayes
Decision Trees
Percentage of corrected predictions obtained
with used algorithms
CPU time (in seconds) for a training phase with
33058 samples
5801,1
12,9 13,9
1
10
100
1000
10000
Support
Vector
Machine
Gaussian
Naive Bayes
Decision Trees
67
Conclusion
Obtained results demonstrated that our system uses a promising technique to
manage the problem of overwhelming notifications.
Specifically, the machine learning approach was tested through 3 different
algorithms and SVM and DT seem to be the most promising one.
Conclusion
Future work:
Define a new dataset to include all the needed real information
Development of a system to collect real data and real notifications
Careful evaluation of the machine learning algorithms
Enhancement of prototype to include unconsidered blocks
68
Thank you
Future work
Notification Collector (beta):
Android app to collect real data
https://goo.gl/pLMWSG
To contribute: download it!
Requirement: Android 5 (Lollipop)
We collect (anonymously):
• Incoming notification info (no
content)
• User current activity
• User current location
• Device status
• User feedback

More Related Content

Viewers also liked (20)

ODP
OWD - Push Notification Server Architecture [DEVCON1_2012]
Fernando Sela
 
PPT
Dawn Nafus's presentation at eComm 2008
eComm2008
 
PDF
Mobile Score Notification System
Abdul Rahman Sherzad
 
PPTX
SenSocial
Abhinav Mehrotra
 
PDF
Common Alerting Protocol and Procedures
Nuwan Waidyanatha
 
PPTX
ISCRAM 2013: Context Ontology for Humanitarian Assistance in Crisis Response
ISCRAM Events
 
PPTX
ISCRAM 2013: Smartphones as an Alerting, Command and Control System for the P...
ISCRAM Events
 
PPT
METAA Dinner
robertchappell
 
PDF
I Cafe Ordering Process
I-Café Pilipinas
 
PDF
II-SDV 2014 Design and development of a novel Patent Alerting Service (Bayer ...
Dr. Haxel Consult
 
PPTX
[CONTEXTS'10] Using context awareness to foster active lifestyles
Josué Freelance
 
PDF
Intelligent Wireless Sensor Network Simulation: Flood Use Case
catherine roussey
 
PPTX
New
ikrrish
 
PPT
Location-based Services - Introduction
axelkuepper
 
PPTX
Intelligent Wireless Sensor Network Simulation
catherine roussey
 
PDF
IoT Meets Exhibition Areas: a Modular Architecture to Improve Proximity Inter...
Teodoro Montanaro
 
PDF
REST is not enough: Using Push Notifications to better support your mobile cl...
Juan Gomez
 
PPTX
Mobile learning and application-final presentation
Vasumathy Vardarajan
 
PPT
Sensing mobile phones
Arpan Pal
 
PPTX
"Integration of wireless sensor technology, Internet tools y computational me...
3JornadasRFID
 
OWD - Push Notification Server Architecture [DEVCON1_2012]
Fernando Sela
 
Dawn Nafus's presentation at eComm 2008
eComm2008
 
Mobile Score Notification System
Abdul Rahman Sherzad
 
SenSocial
Abhinav Mehrotra
 
Common Alerting Protocol and Procedures
Nuwan Waidyanatha
 
ISCRAM 2013: Context Ontology for Humanitarian Assistance in Crisis Response
ISCRAM Events
 
ISCRAM 2013: Smartphones as an Alerting, Command and Control System for the P...
ISCRAM Events
 
METAA Dinner
robertchappell
 
I Cafe Ordering Process
I-Café Pilipinas
 
II-SDV 2014 Design and development of a novel Patent Alerting Service (Bayer ...
Dr. Haxel Consult
 
[CONTEXTS'10] Using context awareness to foster active lifestyles
Josué Freelance
 
Intelligent Wireless Sensor Network Simulation: Flood Use Case
catherine roussey
 
New
ikrrish
 
Location-based Services - Introduction
axelkuepper
 
Intelligent Wireless Sensor Network Simulation
catherine roussey
 
IoT Meets Exhibition Areas: a Modular Architecture to Improve Proximity Inter...
Teodoro Montanaro
 
REST is not enough: Using Push Notifications to better support your mobile cl...
Juan Gomez
 
Mobile learning and application-final presentation
Vasumathy Vardarajan
 
Sensing mobile phones
Arpan Pal
 
"Integration of wireless sensor technology, Internet tools y computational me...
3JornadasRFID
 

Similar to A Context and User Aware Smart Notification System (20)

PPTX
PhD Defense of Teodoro Montanaro
Teodoro Montanaro
 
PDF
[EUC2014] cODA: An Open-Source Framework to Easily Design Context-Aware Andro...
Matteo Ferroni
 
PDF
iThings-2012, Besançon, France, 20 November, 2012
Charith Perera
 
PPTX
NATO Workshop on Pre-Detection of Lone Wolf Terrorists of the Future
Jerome Glenn
 
PPTX
Enabling the physical world to the Internet and potential benefits for agricu...
Andreas Kamilaris
 
PPT
Ubiquitous networking
Abhinav Wagadre
 
PPT
Symantec_2-4-5 nov 2010
Agora Group
 
PPTX
PERICLES Workflow for the automated updating of Digital Ecosystem Models with...
PERICLES_FP7
 
PPTX
Reacting to Advanced, Unknown Attacks in Real-Time with Lastline
Lastline, Inc.
 
PDF
The quest for Ubiquitous Computing: from Ambient Intelligence to the combinat...
Diego López-de-Ipiña González-de-Artaza
 
PPTX
Advancing Impact Measurement | Public Good App House
TechSoup
 
ODP
Collaboration Between Infosec Community and CERT Teams : Project Sonar case
Valdes Nzalli
 
PDF
How to build corporate size fraud prevention
Rakuten Group, Inc.
 
PPTX
Wireless Sensor Network for AgriTech Applications
IoTForum | TiE Bangalore
 
PDF
Measuring usability workshop
Stefan Ivanov
 
PDF
Internet of Things.pdf
OlanrewajuJoe
 
PPT
Simon Forge TAFI workshop
blogzilla
 
PDF
Beyond the screen - UX research methods for novel technology
Swetha Sethu-Jones
 
PDF
George konstantakis iot and product design
360mnbsu
 
PPT
GK NU CS 101 Session 1B (1).ppt
PiyushRanjan269184
 
PhD Defense of Teodoro Montanaro
Teodoro Montanaro
 
[EUC2014] cODA: An Open-Source Framework to Easily Design Context-Aware Andro...
Matteo Ferroni
 
iThings-2012, Besançon, France, 20 November, 2012
Charith Perera
 
NATO Workshop on Pre-Detection of Lone Wolf Terrorists of the Future
Jerome Glenn
 
Enabling the physical world to the Internet and potential benefits for agricu...
Andreas Kamilaris
 
Ubiquitous networking
Abhinav Wagadre
 
Symantec_2-4-5 nov 2010
Agora Group
 
PERICLES Workflow for the automated updating of Digital Ecosystem Models with...
PERICLES_FP7
 
Reacting to Advanced, Unknown Attacks in Real-Time with Lastline
Lastline, Inc.
 
The quest for Ubiquitous Computing: from Ambient Intelligence to the combinat...
Diego López-de-Ipiña González-de-Artaza
 
Advancing Impact Measurement | Public Good App House
TechSoup
 
Collaboration Between Infosec Community and CERT Teams : Project Sonar case
Valdes Nzalli
 
How to build corporate size fraud prevention
Rakuten Group, Inc.
 
Wireless Sensor Network for AgriTech Applications
IoTForum | TiE Bangalore
 
Measuring usability workshop
Stefan Ivanov
 
Internet of Things.pdf
OlanrewajuJoe
 
Simon Forge TAFI workshop
blogzilla
 
Beyond the screen - UX research methods for novel technology
Swetha Sethu-Jones
 
George konstantakis iot and product design
360mnbsu
 
GK NU CS 101 Session 1B (1).ppt
PiyushRanjan269184
 
Ad

Recently uploaded (20)

PDF
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
PDF
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
PDF
Dev Dives: Accelerating agentic automation with Autopilot for Everyone
UiPathCommunity
 
PDF
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
PDF
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
PDF
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
PDF
Unlocking FME Flow’s Potential: Architecture Design for Modern Enterprises
Safe Software
 
PDF
''Taming Explosive Growth: Building Resilience in a Hyper-Scaled Financial Pl...
Fwdays
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
PDF
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
PPTX
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
PPTX
Smart Factory Monitoring IIoT in Machine and Production Operations.pptx
Rejig Digital
 
PPTX
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
PDF
99 Bottles of Trust on the Wall — Operational Principles for Trust in Cyber C...
treyka
 
PDF
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
PDF
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
PDF
TrustArc Webinar - Navigating APAC Data Privacy Laws: Compliance & Challenges
TrustArc
 
PDF
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
PPTX
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
Dev Dives: Accelerating agentic automation with Autopilot for Everyone
UiPathCommunity
 
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
Unlocking FME Flow’s Potential: Architecture Design for Modern Enterprises
Safe Software
 
''Taming Explosive Growth: Building Resilience in a Hyper-Scaled Financial Pl...
Fwdays
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
Smart Factory Monitoring IIoT in Machine and Production Operations.pptx
Rejig Digital
 
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
99 Bottles of Trust on the Wall — Operational Principles for Trust in Cyber C...
treyka
 
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
TrustArc Webinar - Navigating APAC Data Privacy Laws: Compliance & Challenges
TrustArc
 
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
Ad

A Context and User Aware Smart Notification System