Teodoro Montanaro councluded his Ph.D. in Control and Computer Engineering on Monday, September 10, 2018, with the final presentation and defense.
He presented his thesis "IoT Notifications: from Disruption to Benefit - Architectures for the Future of Notifications in the IoT", refereed by Giuliana A. Franceschinis (Università degli Studi del Piemonte Orientale) and Ana M. Bernardos (Universidad Politecnica de Madrid - ETSIDI) in front of the commission composed by the referees and Antonio Servetti (Politecnico di Torino), Marco Torchiano (Politecnico di Torino), and Cristina Gena (Università degli Studi di Torino).
For this plenary talk at the Charlotte AI Institute for Smarter Learning, Dr. Cori Faklaris introduces her fellow college educators to the exciting world of generative AI tools. She gives a high-level overview of the generative AI landscape and how these tools use machine learning algorithms to generate creative content such as music, art, and text. She then shares some examples of generative AI tools and demonstrate how she has used some of these tools to enhance teaching and learning in the classroom and to boost her productivity in other areas of academic life.
IoT and machine learning - Computational Intelligence conferenceAjit Jaokar
Slides for IoT and Machine learning talk. Sign up at Sign up at www.futuretext.com to get forthcoming copies of papers on IoT and Machine learning, Real time algorithms for IoT and Machine learning algorithms for Smart cities
Building the Social Internet of ThingsBill Harpley
'Building the Social Internet of Things: tools and inspiring ideas for artists and designers' is a call-to-arms for the next generation of artists and designers. It surveys the work of artists who are using data and digital technologies to explore the emerging 'Internet of Things'.
The premise of this presentation is that artists and designers played a critical role in shaping the early commercial Internet of two decades ago.
I think that we face the same challenge today, as we try to make sense of the emerging 'Internet of Everything'. Technologists may like to think that they have all the answers but the truth is that we only understand part of the problem.Once again, we need to call upon the skills of artists and designers to help make the IoE a valuable social phenomenon.
I gave this talk to a group of Fine Arts and Sculpture students at Brighton University in November 2015. They represent the generation that will figure out what the 'Social Internet of Things' will look like. They are the people who will create 'Thingbook'.
The edge computing market today includes consumer apps and devices, and the industrial sector, where increasingly powerful CPUs drive everything from wind turbines to autonomous vehicles, robots, drones and equipment. The device market is growing explosively:
These devices gather a wealth of data from a broad array of sensors – and have the potential to optimize efficiency, safety and performance, and revolutionize productivity and user experiences. But to deliver these benefits they need to become truly smart, performing analysis, training and inference on high volumes of sensor data on-the-fly.
There is an urgent need for software that simplifies and automates data analysis and inference at the edge, helping devices and systems learn from and make predictions about their environment: Cameras that recognize and track their targets; self-driving cars that choose the least congested routes using real- time predictions for intersections ahead; and drones that dynamically swarm, find their targets and gather intelligence without human oversight.
These examples require each device to make decisions based on a real-time analysis of its own sensor data fused with the analysis and predictions from other systems: Drones in a swarm need to collaborate or they will collide; they must gossip their insights to each other to enable the swarm to perform effectively. Today, the software to enable each of these complex scenarios must be developed from scratch, starting with raw data feeds and network protocols. To unlock the potential of an edge environment rich in sensors and power-efficient computing platforms developers need a simple way to get from vast amounts of raw data to insights and predictions.
What's needed is a new Architecture for the intelligent edge – one that consumes raw data from devices at the edge, and automatically creates a “digital twin” for each real-world system from its data. Digital twins statefully process their own data at the edge, analyzing, learning and predicting in real-time. Digital twins can find anomalies or correlations in their own data, and self-train powerful neural network models that enable them to predict their future performance, then share semantically enriched insights with other digital twins to solve system problems. The architecture helps application developers by dynamically creating digital twins that learn from their own data – automatically building a model of the real world that is always up to date, executes in real-time, and makes accurate predictions of the behavior of complex systems.
For this plenary talk at the Charlotte AI Institute for Smarter Learning, Dr. Cori Faklaris introduces her fellow college educators to the exciting world of generative AI tools. She gives a high-level overview of the generative AI landscape and how these tools use machine learning algorithms to generate creative content such as music, art, and text. She then shares some examples of generative AI tools and demonstrate how she has used some of these tools to enhance teaching and learning in the classroom and to boost her productivity in other areas of academic life.
IoT and machine learning - Computational Intelligence conferenceAjit Jaokar
Slides for IoT and Machine learning talk. Sign up at Sign up at www.futuretext.com to get forthcoming copies of papers on IoT and Machine learning, Real time algorithms for IoT and Machine learning algorithms for Smart cities
Building the Social Internet of ThingsBill Harpley
'Building the Social Internet of Things: tools and inspiring ideas for artists and designers' is a call-to-arms for the next generation of artists and designers. It surveys the work of artists who are using data and digital technologies to explore the emerging 'Internet of Things'.
The premise of this presentation is that artists and designers played a critical role in shaping the early commercial Internet of two decades ago.
I think that we face the same challenge today, as we try to make sense of the emerging 'Internet of Everything'. Technologists may like to think that they have all the answers but the truth is that we only understand part of the problem.Once again, we need to call upon the skills of artists and designers to help make the IoE a valuable social phenomenon.
I gave this talk to a group of Fine Arts and Sculpture students at Brighton University in November 2015. They represent the generation that will figure out what the 'Social Internet of Things' will look like. They are the people who will create 'Thingbook'.
The edge computing market today includes consumer apps and devices, and the industrial sector, where increasingly powerful CPUs drive everything from wind turbines to autonomous vehicles, robots, drones and equipment. The device market is growing explosively:
These devices gather a wealth of data from a broad array of sensors – and have the potential to optimize efficiency, safety and performance, and revolutionize productivity and user experiences. But to deliver these benefits they need to become truly smart, performing analysis, training and inference on high volumes of sensor data on-the-fly.
There is an urgent need for software that simplifies and automates data analysis and inference at the edge, helping devices and systems learn from and make predictions about their environment: Cameras that recognize and track their targets; self-driving cars that choose the least congested routes using real- time predictions for intersections ahead; and drones that dynamically swarm, find their targets and gather intelligence without human oversight.
These examples require each device to make decisions based on a real-time analysis of its own sensor data fused with the analysis and predictions from other systems: Drones in a swarm need to collaborate or they will collide; they must gossip their insights to each other to enable the swarm to perform effectively. Today, the software to enable each of these complex scenarios must be developed from scratch, starting with raw data feeds and network protocols. To unlock the potential of an edge environment rich in sensors and power-efficient computing platforms developers need a simple way to get from vast amounts of raw data to insights and predictions.
What's needed is a new Architecture for the intelligent edge – one that consumes raw data from devices at the edge, and automatically creates a “digital twin” for each real-world system from its data. Digital twins statefully process their own data at the edge, analyzing, learning and predicting in real-time. Digital twins can find anomalies or correlations in their own data, and self-train powerful neural network models that enable them to predict their future performance, then share semantically enriched insights with other digital twins to solve system problems. The architecture helps application developers by dynamically creating digital twins that learn from their own data – automatically building a model of the real world that is always up to date, executes in real-time, and makes accurate predictions of the behavior of complex systems.
IoT security compliance framework is essential to ensure IoT security. Here is a complete iot security audit checklist for ensuring security of IoT Devices in real time. know more here : https://www.qwentic.com/blog/iot-security-compliance-checklist
How do APIs and IoT relate? The answer is not as simple as merely adding an API on top of a dumb device, but rather about understanding the architectural patterns for implementing an IoT fabric. There are typically two or three trends:
Exposing the device to a management framework
Exposing that management framework to a business centric logic
Exposing that business layer and data to end users.
This last trend is the IoT stack, which involves a new shift in the separation of what stuff happens, where data lives and where the interface lies. For instance, it's a mix of architectural styles between cloud, APIs and native hardware/software configurations.
The presentation is made on CNN's which is explained using the image classification problem, the presentation was prepared in perspective of understanding computer vision and its applications. I tried to explain the CNN in the most simple way possible as for my understanding. This presentation helps the beginners of CNN to have a brief idea about the architecture and different layers in the architecture of CNN with the example. Please do refer the references in the last slide for a better idea on working of CNN. In this presentation, I have also discussed the different types of CNN(not all) and the applications of Computer Vision.
Recently I gave a talk at UC Berkeley regarding the transition from academia to industry in the context of Machine Learning and Data Science related roles. I based most of my slides on my own transition from being an Astrophysicist to a Machine Learning Expert. I hope this will be useful to many. Feedback is welcome!
A practical talk by Anirudh Koul aimed at how to run Deep Neural Networks to run on memory and energy constrained devices like smartphones. Highlights some frameworks and best practices.
BIG DATA AND MACHINE LEARNING
Big Data is a collection of data that is huge in volume, yet growing exponentially with time. It is a data with so large size and complexity that none of traditional data management tools can store it or process it efficiently. Big data is also a data but with huge size.
Global Azure Bootcamp Pune 2023 - Lead the AI era with Microsoft Azure.pdfAroh Shukla
In the era of AI, you can lead and empower your users with the latest innovation of Azure. In this keynote, we will cover
1. Microsoft and OpenAI partnership
2. Azure OpenAI Service
3. Azure AI stack
4. Azure OpenAI Service Capabilities
5. Top Capabilities and Use Cases
6. Power Platform and Azure OpenAI Integration
Presentation given at the The 9th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS 2017)
June 26, 2017, Lisbon, Portugal
The preprint version of the paper is available at
https://www.researchgate.net/publication/318041264_XDN_Cross-Device_Framework_for_Custom_Notifications_Management
IoT security compliance framework is essential to ensure IoT security. Here is a complete iot security audit checklist for ensuring security of IoT Devices in real time. know more here : https://www.qwentic.com/blog/iot-security-compliance-checklist
How do APIs and IoT relate? The answer is not as simple as merely adding an API on top of a dumb device, but rather about understanding the architectural patterns for implementing an IoT fabric. There are typically two or three trends:
Exposing the device to a management framework
Exposing that management framework to a business centric logic
Exposing that business layer and data to end users.
This last trend is the IoT stack, which involves a new shift in the separation of what stuff happens, where data lives and where the interface lies. For instance, it's a mix of architectural styles between cloud, APIs and native hardware/software configurations.
The presentation is made on CNN's which is explained using the image classification problem, the presentation was prepared in perspective of understanding computer vision and its applications. I tried to explain the CNN in the most simple way possible as for my understanding. This presentation helps the beginners of CNN to have a brief idea about the architecture and different layers in the architecture of CNN with the example. Please do refer the references in the last slide for a better idea on working of CNN. In this presentation, I have also discussed the different types of CNN(not all) and the applications of Computer Vision.
Recently I gave a talk at UC Berkeley regarding the transition from academia to industry in the context of Machine Learning and Data Science related roles. I based most of my slides on my own transition from being an Astrophysicist to a Machine Learning Expert. I hope this will be useful to many. Feedback is welcome!
A practical talk by Anirudh Koul aimed at how to run Deep Neural Networks to run on memory and energy constrained devices like smartphones. Highlights some frameworks and best practices.
BIG DATA AND MACHINE LEARNING
Big Data is a collection of data that is huge in volume, yet growing exponentially with time. It is a data with so large size and complexity that none of traditional data management tools can store it or process it efficiently. Big data is also a data but with huge size.
Global Azure Bootcamp Pune 2023 - Lead the AI era with Microsoft Azure.pdfAroh Shukla
In the era of AI, you can lead and empower your users with the latest innovation of Azure. In this keynote, we will cover
1. Microsoft and OpenAI partnership
2. Azure OpenAI Service
3. Azure AI stack
4. Azure OpenAI Service Capabilities
5. Top Capabilities and Use Cases
6. Power Platform and Azure OpenAI Integration
Presentation given at the The 9th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS 2017)
June 26, 2017, Lisbon, Portugal
The preprint version of the paper is available at
https://www.researchgate.net/publication/318041264_XDN_Cross-Device_Framework_for_Custom_Notifications_Management
UBIQUITOUS COMPUTING Its Paradigm, Systems & Middlewarevivatechijri
This paper offers a survey of ubiquitous computing research which is the developing a scope that
gears communication technologies into routine life accomplishments. This study paper affords a types of the
studies that extents at the ubiquitous computing exemplar. In this paper, we present collective structure principles
of ubiquitous systems and scrutinize important developments in context-conscious ubiquitous structures. In toting,
this studies work affords a novel structure of ubiquitous computing system and an evaluation of sensors needed
for applications in ubiquitous computing. The goal of this studies work are 3-fold: i) help as a parameter for
researchers who're first-hand to ubiquitous computing and want to subsidize to this research expanse, ii) provide
a unique machine architecture for ubiquitous computing system, and iii) offer auxiliary studies ways necessary
for exceptional-of-provider assertion of ubiquitous computing..
Intelligent Internet of Things (IIoT): System Architectures and Communica...Raghu Nandy
Internet of Things (IoT) can be designed by various approaches with optimistic technology choices. This paper focuses on comparing recent studies on architectural choices and communication approaches for IoT Systems. Understanding Goals of an IoT system and inventing a general prototype for general IoT solutions is uniquely challenging. Existing research prototypes provide us information about IoT systems and their challenges. Existing architectures and communication approaches such as such as Service Oriented Architecture (SOA), Instant Messaging (XMPP) and Web-Sockets Service can be used to develop a general IoT System prototype. SOA provides centralized/decentralized IoT systems. Instant Message services such as XMPP can be used to build distributed and secure IoT platforms. Web-sockets also used to build scalable IoT systems. Overall the choice depends on IoT system Goal and limitations. Intelligent IoT (IIoT) Systems can be seen as decision making system. IoT systems can be built on Cloud infrastructures With Sensor Event as a Service (SEaaS) - Cloud Sensor networks can enable applications to access on-demand real-time sensor data. A generic IoT platform can be built and extended to newer applications and platforms.
A survey on context aware system & intelligent Middleware’sIOSR Journals
Abstract: Context aware system or Sentient system is the most profound concept in the ubiquitous computing.
In the cloud system or in distributed computing building a context aware system is difficult task and
programmer should use more generic programming framework. On the basis of layered conceptual design, we
introduce Context aware systems with Context aware middleware’s. On the basis of presented system we will
analyze different approaches of context aware computing. There are many components in the distributed system
and these components should interact with each other because it is the need of many applications. Plenty
Context middleware’s have been made but they are giving partial solutions. In this paper we are giving analysis
of different middleware’s and comprehensive application of it in context caching.
Keywords: Context aware system, Context aware Middleware’s, Context Cache
LoRa Alliance presentation Marketing Day 2016; Impacts & benefits from internet of things onto Digital Marketing stratégies & policies, and iterative product design
This presentation by Morris Kleiner (University of Minnesota), was made during the discussion “Competition and Regulation in Professions and Occupations” held at the Working Party No. 2 on Competition and Regulation on 10 June 2024. More papers and presentations on the topic can be found out at oe.cd/crps.
This presentation was uploaded with the author’s consent.
This presentation, created by Syed Faiz ul Hassan, explores the profound influence of media on public perception and behavior. It delves into the evolution of media from oral traditions to modern digital and social media platforms. Key topics include the role of media in information propagation, socialization, crisis awareness, globalization, and education. The presentation also examines media influence through agenda setting, propaganda, and manipulative techniques used by advertisers and marketers. Furthermore, it highlights the impact of surveillance enabled by media technologies on personal behavior and preferences. Through this comprehensive overview, the presentation aims to shed light on how media shapes collective consciousness and public opinion.
Acorn Recovery: Restore IT infra within minutesIP ServerOne
Introducing Acorn Recovery as a Service, a simple, fast, and secure managed disaster recovery (DRaaS) by IP ServerOne. A DR solution that helps restore your IT infra within minutes.
0x01 - Newton's Third Law: Static vs. Dynamic AbusersOWASP Beja
f you offer a service on the web, odds are that someone will abuse it. Be it an API, a SaaS, a PaaS, or even a static website, someone somewhere will try to figure out a way to use it to their own needs. In this talk we'll compare measures that are effective against static attackers and how to battle a dynamic attacker who adapts to your counter-measures.
About the Speaker
===============
Diogo Sousa, Engineering Manager @ Canonical
An opinionated individual with an interest in cryptography and its intersection with secure software development.
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
PhD Defense of Teodoro Montanaro
1. IoT Notifications: from disruption to
benefit
Architectures for the future of notifications in the IoT
Presenter
Teodoro Montanaro
In collaboration with
Fulvio Corno
Pino Castrogiovanni
Supervisor(s)
2. 2
Research GOAL
Investigate the intelligence component in Internet of Things (IoT) architectures
and applications: study, define, and prototype intelligent distributed
architectures that may extract additional value and intelligent behaviors to some
significant sample problems, representative of future IoT scenarios.
The distribution and customization of notifications in the IoT domain has been
treated as an example of possible future IoT scenarios.
6. 6
Notification Context: sample scenario
Source: https://iot.do/windstream-research-future-connected-home-community-2015-04
Date: 9th September 2018 Time: 19.00
5 people:
Mum: is preparing the washing machine
Dad: is reading a newspaper
Clara: is using her pc on her bedroom
John: is working on his PC
Frank: is working out on the tapis roulant
7. 7
Notification Context: sample scenario
Source: https://iot.do/windstream-research-future-connected-home-community-2015-04
Date: 9th September 2018 Time: 19.00
5 people:
Mum
Dad
Clara
John
Frank
8. 8
Notification Context: sample scenario
Date: 9th September 2018 Time: 19.00
5 people:
Mum
Dad
Clara
John
Frank
Various IoT
devices
Source: https://iot.do/windstream-research-future-connected-home-community-2015-04
9. 9
Notification Context: sample scenario
Date: 9th September 2018 Time: 19.00
5 people:
Mum
Dad
Clara
John
Frank
Various IoT
devices
Events:
1. Cleaning
robot battery
is low
2. Frank stops
to play sport
Source: https://iot.do/windstream-research-future-connected-home-community-2015-04
10. 10
Notification Context: sample scenario
Date: 9th September 2018 Time: 19.00
5 people:
Mum
Dad
Clara
John
Frank
Various IoT
devices
Events:
1. Cleaning
robot battery
is low
2. Frank stops
to play sport
Notifications
Source: https://iot.do/windstream-research-future-connected-home-community-2015-04
11. 11
Notification Context: sample scenario
Date: 9th September 2018 Time: 19.00
5 people:
Mum
Dad
Clara
John
Frank
Various IoT
devices
https://me.me/
Source: https://iot.do/windstream-research-future-connected-home-community-2015-04
12. 12
Main problem
Notifications could be disruptive:
• Wrong moment
• Wrong device on which the notification is shown
• Wrong modality (e.g., vibration instead of sound)
• Wrong person(s)
• Repetitive notifications
• Too many simultaneous notifications
• …
13. Notification Context: sample scenario
Simplified version (used as a reference)
Cloud
Services
NotificationsNotifications
Notified
People
IoT Sensors / Dervices /
Services
Notification Generator
14. 14
Main Research GOAL
Design and develop new IoT architectures to
a) enhance the effect of IoT notifications on users experience
b) allow developers to effectively exploit the notifications improving
their services, tools and applications.
Notifications
15. 15
Proposed solutions
Two different approaches are possible
1. At the distribution level: notifications are intercepted as soon as
they arrive on the IoT devices and then systems decide if, when, and
how to show them.
IoT Sensors / Dervices /
Services
Notification Generator
Cloud
Services
NotificationsNotifications
Notified
People
16. 16
Proposed solutions
Two different approaches are possible
1. At the distribution level: notifications are intercepted as soon as
they arrive on the IoT devices and then systems decide if, when, and
how to show them.
Solution: Smart Notification System (SNS)
IoT Sensors / Dervices /
Services
Notification Generator
Cloud
Services
NotificationsNotifications
Notified
People
SNS
17. 17
Proposed solutions
Two different approaches are possible
2. At the design level: notifications are designed with the aim of
reducing user disruption.
IoT Sensors / Dervices /
Services
Notification Generator
Cloud
Services
NotificationsNotifications
Notified
People
18. IoT Sensors / Dervices /
Services
Notification Generator
Cloud
Services
NotificationsNotifications
Notified
People
18
Proposed solutions
Two different approaches are possible
2. At the design level: notifications are designed with the aim of
reducing user disruption.
Solution : XDN (Cross Device Notifications) framework
XDNXDN
20. IoT Sensors / Dervices /
Services
Notification Generator
Cloud
Services
NotificationsNotifications
Notified
People
20
SNS
Smart Notification System (SNS): a modular architecture to deal with
notifications at the distribution level.
It uses machine learning algorithms to manage incoming
notifications according to context awareness and users habits.
Our contributions:
1. Architecture design
2. Prototypes implementation of different architectural components
SNS
25. 25
A modular architecture
aware of
User context (e.g.,
location, status,
current activity),
SNS: Architecture
Environment status
(e.g., weather
information, current
date and time)
26. 26
A modular architecture
aware of
User habits
(e.g., usual lunch time)
SNS: Architecture
User context (e.g.,
location, status,
current activity),
Environment status
(e.g., weather
information, current
date and time)
27. 27
A modular architecture
aware of
User habits
(e.g., usual lunch time)
Decision maker: makes
decisions on who should
receive the notification, best
moment, best devices and
best modalities (including
actuation) to present
notifications.
SNS: Architecture
User context (e.g.,
location, status,
current activity),
Environment status
(e.g., weather
information, current
date and time)
30. 30
1. The Decision Maker contribution:
a) Decision maker prototype
2. The Collectors group of contributions:
a) IoT Collector server
b) Mobile Collector
c) SmartHome Collector
d) SmartCity Collector
SNS: Prototypes
3. The Context Analysis group of
contributions
a) Location Estimator
31. 31
1. The Decision Maker contribution:
a) Decision maker prototype
2. The Collectors group of contributions:
a) IoT Collector server
b) Mobile Collector
c) SmartHome Collector
d) SmartCity Collector
SNS: Prototypes
3. The Context Analysis group of
contributions
a) Location Estimator
32. 32
Objective: demonstrate that Machine Learning algorithms can be adopted to the
IoT notifications domain
Contribution: Preliminary version of the Decision maker module
Context Information to be used by the ML algorithm:
Notification information to be used by the ML algorithm:
SNS: 1. Decision Maker Prototype
33. 33
Objective: demonstrate that Machine Learning algorithms can be adopted to the
IoT notifications domain
Contribution: Preliminary version of the Decision maker module
Context Information to be used by the ML algorithm:
Notification information to be used by the ML algorithm:
SNS: 1. Decision Maker Prototype
Used dataset
Synthetic
information
34. 34
Objective: demonstrate that Machine Learning algorithms can be adopted to the
IoT notifications domain
Contribution: Preliminary version of the Decision maker module
Tests:
• 3 different machine learning algorithms adopted over an existing dataset
(MIT): Support Vector Machine, Gaussian Naïve Bayes and Decision Trees.
SNS: 1. Decision Maker Prototype
Used dataset
Synthetic
information
Used tools
35. 35
Objective: demonstrate that Machine Learning algorithms can be adopted to the
IoT notifications domain
Contribution: Preliminary version of the Decision maker module
Tests:
• 3 different machine learning algorithms adopted over an existing dataset
(MIT): Support Vector Machine, Gaussian Naïve Bayes and Decision Trees.
SNS: 1. Decision Maker Prototype
Used dataset
Synthetic
information
Used tools
Main outcome
- The three algorithms behave as expected:
• DT works better than the others due to the
programmatic approach used to generate synthetic
information
• Almost all the algorithms obtain an high level of
accuracy, precision and recall
- ML is promising technique to enhance the effect of IoT
notifications on users experience
36. 36
1. The Decision Maker contribution:
a) Decision maker prototype
2. The Collectors group of contributions:
a) IoT Collector server
b) Mobile Collector
c) SmartHome Collector
d) SmartCity Collector
SNS: Prototypes
3. The Context Analysis group of
contributions
a) Location Estimator
37. 37
SNS: 2. Collectors
Aims:
1. collect real data
2. validate the Machine Learning approach used in the Decision Maker Prototype
38. 38
SNS: 2.b Mobile Collector
Representative prototype:
Aims:
1. collect real data
2. validate the Machine Learning approach used in the Decision Maker Prototype
39. 39
• Collect user context information (e.g.,
location and activity);
• Collect all the mobile and IoT notifications
received on user smartphone;
• Collect the user reaction to the received
notifications.
29 people (5 females and 24 males)
used the app for 78 days
• users receives an average of 247
notifications a day
• users are almost always in the
same 3 or 4 places
• users receive most of the
notifications from non-important
contacts than from important
ones.
Used tools
SNS: 2.b Mobile Collector
Objective 1: collect real user data
40. 40
Input features:
• Notification type (mobile, IoT)
• Generating service (e.g., Telegram)
• Ringtone mode
• Notification sender
• Sender-Receiver FAMILY relationship
• Sender-Receiver FRIEND relationship
• Sender-Receiver WORK relationship
• Date and time of receipt (day of week,
day of month, month, time)
• User location (Lon/Lat)
• Activity (IN_VEHICLE, ON_BICYCLE,
ON_FOOT, RUNNING, STILL, TILTING,
UNKNOWN, WALKING)
• Battery level
• Battery status (charging or not
charging).
• Connection type (Wifi, network,
NoConn)
• Wifi SSID
Label: annoying or appreciated notification
(14 users for 15 days)
Objective 2: validate the Machine Learning approach used in the Decision Maker
Prototype
SNS: 2.b Mobile Collector
41. 41
1. The Decision Maker contribution:
a) Decision maker prototype
2. The Collectors group of contributions:
a) IoT Collector server
b) Mobile Collector
c) SmartHome Collector
d) SmartCity Collector
SNS: Prototypes
3. The Context Analysis group of
contributions
a) Location Estimator
42. 42
SNS: 3. Context Analysis: location estimation
Proposal: demonstrate possibility of inferring user location without energy-
hungry methods (e.g., GPS)
People usually spend 85% of their time staying in a few places.
The proposed solution uses Decision Trees as Machine Learning supervised
classification algorithm to establish user presence in the two most attended
meaningful places
Model that describes the estimation process performed for each user
43. 43
SNS: 3. Context Analysis: location estimation
Proposal: demonstrate possibility of inferring user location without energy-
hungry methods (e.g., GPS)
Tests:
• 10-fold cross validation through the Weka workbench
• user presence in a meaningful place was estimated every time a new
notification is received.
• Input features: combination of Feature Classes (A-AB-ABC-ABCD-ABCDE-BC-
…)
Results:
• Most important features (that
mainly influence decision) are
related to time
• “Current activity” (E) (i.e., the
only feature that consumes extra
energy), is not necessary
• Accuracy>75% in almost all tests
45. 45
Main Problem: Overwhelming notifications
Second approach
• At the design level: notifications are designed with the aim of reducing
user disruption
XDN: Motivation
46. 46
Main Problem: Overwhelming notifications
Second approach
• At the design level: notifications are designed with the aim of reducing
user disruption
Developers:
- define their strategies to let their software, then, influence users’
behaviors with respect to notifications
- exploiting the advantages of the cross-device approach
XDN: Motivation
47. 47
Main Problem: Overwhelming notifications
Second approach
• At the design level: notifications are designed with the aim of reducing
user disruption
Developers:
- define their strategies to let their software, then, influence users’
behaviors with respect to notifications
- exploiting the advantages of the cross-device approach
XDN: Motivation
48. 48
Main Problem: Overwhelming notifications
Second approach
• At the design level: notifications are designed with the aim of reducing
user disruption
XDN: Our Proposal
Literature
analysis
Requirements
identification
XDN
Architecture
design
Prototype
implementation
XDN tests with
real user
49. 49
XDN (Cross Device Notifications), a framework to assist developers in:
a) personalizing notifications to differentiate important and unimportant
ones
b) designing, implementing, and testing cross-device notifications
strategies to inform users without causing too much disruption and
involving both mobile and IoT devices.
XDN: Our Proposal
IoT Sensors / Dervices /
Services
Notification Generator
Cloud
Services
NotificationsNotifications
Notified
People
XDNXDN
51. 51
XDN: Architecture
4 main components:
1. The XDN library
2. The XDN GUI
3. The XDN Runtime Environment
4. The XDN IoT/Mobile library
52. 52
XDN: Architecture
4 main components:
1. The XDN library allows
(through APIs) to:
a) handle incoming
notifications
b) select devices to be
involved
c) perform actions on
selected devices
53. 53
XDN: Architecture
4 main components:
2. The XDN GUI allows
developers to explore and
evaluate different design
alternatives by providing:
a) an IDE to implement
and test developed
notification strategies
b) a simulator to simulate
the behavior of the
devices
54. 54
XDN: Architecture
4 main components:
3. The XDN Runtime Environment is run on a server to:
• accept device registration
requests;
• accept update requests
• accept new notifications
• customize and dispatch the
notifications
55. 55
XDN: Architecture
4 main components:
4. The XDN IoT/Mobile library to be integrated in the IoT/mobile
applications to:
• generate notifications compatible with XDN
• send the generated notifications to the XDN runtime
environment;
• receive commands from the XDN runtime environment
(in JSON)
• execute the received commands.
62. 62
XDN: first prototype
2 components were developed:
1. The XDN library (API)
2. The XDN GUI
Used tools
Tests with 12 volunteers (11 males and 1 female)
Aims:
• demonstrate the fulfillment of all the requirements
• collect a feedback about APIs and GUI
Each user tasks:
• modify an existing notification strategy
• develop a new notification strategy respecting some
given requirements
Volunteers’ main requirement:
• Previous experience with JavaScript
63. 63
XDN: first prototype
Results:
7 participants over 12 were able to complete all the tasks in the required
time.
User feedback: survey (from 0 to 5)
Table 3.6 - Final survey proposed to user
XDN GUI
Is it Useful?
XDN Library (API)
XDN framework in general
64. 64
XDN: first prototype
Results:
7 participants over 12 were able to complete all the tasks in the required
time.
User feedback: survey (from 0 to 5)
Table 3.6 - Final survey proposed to user
XDN GUI
Is it Useful?
XDN Library (API)
XDN framework in general
XDN Main outcome
• Efficacy of the proposed solution to enhance
developers that want to design, develop and test
their own notification strategies
65. 65
Thesis Conclusions
Main Problem: Overwhelming notifications
Our proposals:
1. SNS that acts at the distribution level and fosters ML algorithms
(autonomous system that directly influences end-users)
2. XDN that acts at the design level and fosters cross-device approach
(framework for developers)
Main outcome:
• Feasibility of the proposed approaches was demonstrated
• Efficacy of the proposed solutions to enhance
o user experience with notifications
o developers support in designing, developing and testing their own
notification strategies also exploiting the cross-device approach
• Efficacy of the user-centered design methodology in notification
domain
66. 66
Publications during the Ph.D.
2018
• Corno, F and De Russis, L. and Marcelli, A. and Montanaro, T. . An Unsupervised
and Non-Invasive Model for Predicting Network Resource Demands. In IEEE
Internet of Things Journal.
• Cagliero, L. and De Russis, L. and Farinetti, L and Montanaro, T. . Improving the
effectiveness of SQL learning practice: a data-driven approach. In 2018 IEEE
42nd Annual Computer Software and Applications Conference (COMPSAC).
2017
• Corno F.; De Russis L.; Montanaro T.- XDN: Cross-Device Framework for Custom
Notifications Management - In: The 9th ACM SIGCHI Symposium on Engineering
Interactive Computing Systems, Lisbon (Portugal), June 26-29, 2017. (In Press)
• Corno, Fulvio; Montanaro, Teodoro; Migliore, Carmelo; Castrogiovanni, Pino -
SmartBike: an IoT Crowd Sensing Platform for Monitoring City Air Pollution. In:
INTERNATIONAL JOURNAL OF ELECTRICAL AND COMPUTER ENGINEERING (IJECE,
ISSN: 2088-8708, a SCOPUS indexed Journal - Q2), vol. 7 n. 6. (In Press)
P
67. 67
Publications during the Ph.D.
2016
• Corno F., De Russis L., Montanaro T. - Estimate User Meaningful Places through
Low-Energy Mobile Sensing. In: SMC 2016: IEEE International Conference on
Systems, Man, and Cybernetics, Budapest, 9-12 October, 2016.
• Ghajargar M., Zenezini G., and Montanaro T. - Home delivery services:
innovations and emerging needs. In: 8th IFAC Conference on Manufacturing
Modelling, Management and Control MIM 2016, Troyes, France, 28—30 June 2016. pp.
1371-1376
2015
• Corno F.; De Russis L.; Montanaro T.; Castrogiovanni P. - IoT Meets Exhibition
Areas: a Modular Architecture to Improve Proximity Interactions. In: FiCloud
2015: The 3rd International Conference on Future Internet of Things and Cloud, Roma,
24-26 August, 2015. pp. 293-300
• Corno, Fulvio; De Russis, Luigi; Montanaro, Teodoro - A Context and User Aware
Smart Notification System. In: IEEE 2nd World Forum on Internet of Things (WF-
IoT), Milan, Italy, 14-16 December 2015. pp. 645-651
• Montanaro, Teodoro (2015) - SWARM Joint Open Lab Politecnico Di Torino, Italy.
In: CROSSROADS, vol. 22 n. 2, pp. 70-71. - ISSN 1528-4972
P
P
P
69. 69
Summary of contributions
Main Problem: Overwhelming notifications
Our proposals:
1. SNS acts at the distribution level and fosters
ML algorithms (autonomous system that
directly influences end-users)
o Decision Maker
o Collectors
o Context Analysis
2. XDN acts at the design level and fosters cross-
device approach (framework for developers)
o XDN library
o XDN GUI
o XDN Runtime Environment
o XDN IoT/Mobile library
Editor's Notes
Introduce the problem
Prototypes to demonstrate the feasibility of the system and the effectiveness of the proposed solutions to the IoT notifications domain
The modular nature of the SNS system inspired the design and the prototyping of three main groups of contributions provided as first outcome of the present dissertation
The modular nature of the SNS system architecture inspired the design and the prototyping of three main groups of contributions provided as first outcome of the present dissertation
First step: identify information to be used by the ML algotitms to decide on which device the notification should be sent
Then: select existing dataset that contains such an information -> MIT … collected through user smartphne containing that info EXCEPT target device
SVM e GNB try to find a correlation between inserted
DT algorithm tries to create a flowchart-like structure in which each internal node represents a test on an attribute, each branch represents the outcome of the test, and each leaf node represents a label. The paths from root to leaf represents classification rules and, as can be understood, it does not look for relations between data.
MIT researchers used mobile phones to collect data about call logs, Bluetooth devices in proximity, cell tower IDs, application usage, and phone status. 94 people over 9 months were monitored and the collected data were, then, used to infer different user information including location
SVM and GNB seem to work worse with unrelated data
DT algorithm reports better values with unrelated data.
However, it can be observed that the DT algorithm is
the only one that obtains a high value for all the reported metrics: while in both
experiments (with unrelated and related data) an high value (higher than 90%) of
the accuracy and recall falls in a lower value (lower than 90%) of the precision
and viceversa, with the DT algorithm the values obtained for all the three measures
is always high (higher that 90%). Moreover, through the analysis of each wrong
decision (the detailed list of all the made decision is not reported in this dissertation
for shortness needs), it can be noticed that all the errors made by DT in the second
experiment were related to combination of attributes that were not present in the
training set, implying that DT do not work very well with unknown notifications
contained in related data.
First step: identify information to be used by the ML algotitms to decide on which device the notification should be sent
Then: select existing dataset that contains such an information -> MIT … collected through user smartphne containing that info EXCEPT target device
SVM e GNB try to find a correlation between inserted
DT algorithm tries to create a flowchart-like structure in which each internal node represents a test on an attribute, each branch represents the outcome of the test, and each leaf node represents a label. The paths from root to leaf represents classification rules and, as can be understood, it does not look for relations between data.
MIT researchers used mobile phones to collect data about call logs, Bluetooth devices in proximity, cell tower IDs, application usage, and phone status. 94 people over 9 months were monitored and the collected data were, then, used to infer different user information including location
SVM and GNB seem to work worse with unrelated data
DT algorithm reports better values with unrelated data.
However, it can be observed that the DT algorithm is
the only one that obtains a high value for all the reported metrics: while in both
experiments (with unrelated and related data) an high value (higher than 90%) of
the accuracy and recall falls in a lower value (lower than 90%) of the precision
and viceversa, with the DT algorithm the values obtained for all the three measures
is always high (higher that 90%). Moreover, through the analysis of each wrong
decision (the detailed list of all the made decision is not reported in this dissertation
for shortness needs), it can be noticed that all the errors made by DT in the second
experiment were related to combination of attributes that were not present in the
training set, implying that DT do not work very well with unknown notifications
contained in related data.
Algorithms differently behave with related and unrelated data
SVM e GNB try to find a correlation between inserted
DT algorithm tries to create a flowchart-like structure in which a path from root to leaf is used to make decision
(made to represents classification rules and, as can be understood, it does not look for relations between data.)
(each internal node represents a test on an attribute, each branch represents the outcome of the test, and each leaf node represents a label.
MIT researchers used mobile phones to collect data about call logs, Bluetooth devices in proximity, cell tower IDs, application usage, and phone status. 94 people over 9 months were monitored and the collected data were, then, used to infer different user information including location
SVM and GNB seem to work worse with unrelated data
DT algorithm reports better values with unrelated data.
However, it can be observed that the DT algorithm is
the only one that obtains a high value for all the reported metrics: while in both
experiments (with unrelated and related data) an high value (higher than 90%) of
the accuracy and recall falls in a lower value (lower than 90%) of the precision
and viceversa, with the DT algorithm the values obtained for all the three measures
is always high (higher that 90%). Moreover, through the analysis of each wrong
decision (the detailed list of all the made decision is not reported in this dissertation
for shortness needs), it can be noticed that all the errors made by DT in the second
experiment were related to combination of attributes that were not present in the
training set, implying that DT do not work very well with unknown notifications
contained in related data.
SVM e GNB try to find a correlation between inserted
DT algorithm tries to create a flowchart-like structure in which each internal node represents a test on an attribute, each branch represents the outcome of the test, and each leaf node represents a label. The paths from root to leaf represents classification rules and, as can be understood, it does not look for relations between data.
MIT researchers used mobile phones to collect data about call logs, Bluetooth devices in proximity, cell tower IDs, application usage, and phone status. 94 people over 9 months were monitored and the collected data were, then, used to infer different user information including location
SVM and GNB seem to work worse with unrelated data
DT algorithm reports better values with unrelated data.
However, it can be observed that the DT algorithm is
the only one that obtains a high value for all the reported metrics: while in both
experiments (with unrelated and related data) an high value (higher than 90%) of
the accuracy and recall falls in a lower value (lower than 90%) of the precision
and viceversa, with the DT algorithm the values obtained for all the three measures
is always high (higher that 90%). Moreover, through the analysis of each wrong
decision (the detailed list of all the made decision is not reported in this dissertation
for shortness needs), it can be noticed that all the errors made by DT in the second
experiment were related to combination of attributes that were not present in the
training set, implying that DT do not work very well with unknown notifications
contained in related data.
The modular nature of the SNS system architecture inspired the design and the prototyping of three main groups of contributions provided as first outcome of the present dissertation
29 people helped us by installing the app and data demonstrate that -> LEGGI
understand if the promising adoption of machine learning approach in such domain is actually feasible and, eventually, continue experiments by involving real users in the evaluation.
The modular nature of the SNS system architecture inspired the design and the prototyping of three main groups of contributions provided as first outcome of the present dissertation
The modular nature of the SNS system architecture inspired the design and the prototyping of three main groups of contributions provided as first outcome of the present dissertation
K-means algorithm
The modular nature of the SNS system architecture inspired the design and the prototyping of three main groups of contributions provided as first outcome of the present dissertation
K-means algorithm
Features grouped in classes to perform parallel experiments with a selection of such classes. So we had the opportunity to understand that -> LEGGI
Developers are expected to:
Use XDN GUI to develop and test their notification strategies
Create a script to be integrated in the XDN runtime environment
b) As soon as a new notification arrives
The IoT/mobile device convert and send it through the XDN IoT/mobile library
the XDN runtime environment interprets the script
The XDN runtime environment sends the notification to the chosen IoT/mobile library
Previous experience with JavaScript to assure that the evaluation is not affected by problems in learning the JavaScript programming language or the concepts on which it is based.
Scale of 5 points: from 0 to 5
2 of the remaining people were facing only one last problem in coding when the time finished
Results demonstrate that the XDN library is useful, almost complete and understandable.
Then all the components of the XDN GUI are usefull except the Editor, due to the difficulty in finding and resolving errors.
Finally, the declared that a DEBUG function could be useful and that, if they will develop notification strategies in the future, they will consider XDN as an available tool
SUS è fatto di 10 domande System-Usability-Scale -> ti sei solo ispirato a SUS per alcune domande poiché l’obiettivo della valutazione non era la “semplice” usabilità del sistema
Scale of 5 points: from 0 to 5
2 of the remaining people were facing only one last problem in coding when the time finished
SUS è fatto di 10 domande System-Usability-Scale -> ti sei solo ispirato a SUS per alcune domande poiché l’obiettivo della valutazione non era la “semplice” usabilità del sistema
Efficient = efficace
Efficacy = efficacia
Scale of 5 points: from 0 to 5
2 of the remaining people were facing only one last problem in coding when the time finished
SUS è fatto di 10 domande System-Usability-Scale -> ti sei solo ispirato a SUS per alcune domande poiché l’obiettivo della valutazione non era la “semplice” usabilità del sistema
Scale of 5 points: from 0 to 5
2 of the remaining people were facing only one last problem in coding when the time finished
SUS è fatto di 10 domande System-Usability-Scale -> ti sei solo ispirato a SUS per alcune domande poiché l’obiettivo della valutazione non era la “semplice” usabilità del sistema