<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Workshops, Los
Angeles, USA, March</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Towards Intelligent Personalization of IoT Platforms</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Fabio Paternò, Sadi Alawadi HIIS Laboratory, CNR-ISTI Pisa</institution>
          ,
          <addr-line>Italy fabio.paterno</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2019</year>
      </pub-date>
      <volume>20</volume>
      <issue>2019</issue>
      <abstract>
        <p>Trigger-action programming is an emerging paradigm for personalizing the behaviour of Internet of Th ings applications and services. In this area some recent research ef orts have been dedicated to designing environments able to support people without programming experience in specifying the desired personalization rules. Lit le at ention has been paid to how to provide intelligent support in identifying relevant rules. In this position paper we discuss the possible approaches to making such personalization platforms able to exploit the data collected on the behaviour of the users as well as the surrounding devices and things.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;End User Development</kwd>
        <kwd>Internet of Th ings</kwd>
        <kwd>Trigger-Action Programming</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>CCS CONCEPTS</title>
      <p>•Human-centered computing~Human computer
interaction (HCI) • Computer systems organization~External
interfaces for robotics • Soft ware and its engineering~Soft ware
notations and tools
1 INTRODUCTION</p>
      <p>hT e Internet of Th ings (IoT) is the network of objects in
our daily life (such as lights, refrigerators, car components,
medical devices, dog collars, etc.) that can send or receive
information with other devices on the network. Th ese
objects include sensors and actuators of various kinds and
can interact with each other, with human beings and with
the environment to exchange data in order to react to
realworld events, trigger actions and activate services. Th ey are
increasingly used in many sectors: home, retail, industry,</p>
      <p>Copyright © 2019 for the individual papers by the papers' authors. Copying permitted
for private and academic purposes. This volume is published and copyrighted by its
editors.
agriculture, and so forth. Consequently, we use our
applications more and more in dynamic contexts in terms
of services, devices, objects and people where many events
can occur.</p>
      <p>
        Users' activities can vary quickly and some of them
cannot even be anticipated when designing interactive
applications, but are only discovered during their actual
use. It may be very difi cult for developers to predict all
possible context-dependent scenarios, because there may
be unforeseen (at design time) requirements that need to be
supported when the application is actually used. Indeed, we
are all dif erent from each other in terms of culture,
abilities, interests, goals. Th e increasing pervasiveness of
such technologies implies that they are more sensitive than
ever to such dif erences. Th us, end-user development (EUD)
approaches [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], which aim to allow people without
programming experience to create or modify their
applications, have become particularly relevant to address
emerging IoT scenarios.
      </p>
      <p>
        Trigger-action programming [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] is a development
paradigm to support management of the dynamic
situations characterizing the advent of the IoT. It is based
on the specifi cation of rules whose structure is simple: it
indicates that if/when something happens in terms of
events and/or conditions, then the desired ef ect should
occur. An example of an environment supporting this
approach is IFTTT. It is a Web and mobile environment that
allows users to create rules, called «applets», in the form if
trigger then action, where triggers and actions can be
chosen from existing services (for example, Facebook,
Evernote, Weather, Dropbox, etc.). It is estimated that
320000 applets involving 400 service providers have been
installed more than 20 million times [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Services involve
peripherals, hubs, wearable devices, social networks,
messaging, …. However, IFTTT has some limitations. It
supports applets composed of only one trigger and one
action, while previous work [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] has reported a test with
226-participants that has shown that even people without
programming experience can easily use rules with multiple
triggers and actions by extending the IFTTT language. It
does not distinguish between events and conditions. It is
not easy to extend the list of the connected applications,
and it shows long lists of potential channels to compose,
where it is easy to get lost. Some recent research ef orts aim
to overcome such limitations [
        <xref ref-type="bibr" rid="ref1 ref4">1, 4</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>2 EXAMPLE PERSONALIZATION PLATFORM</title>
      <p>
        An example personalization platform is reported in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]:
it is composed of a set of tools that allows people without
programming experience to dynamically personalize their
interactive applications, smart things, and humanoid robots
in order to best suit their needs in specifi c contexts of use.
It relies on a middleware (context manager) that is
composed of a server that can collect, model and interpret
the data generated by the various sensors and objects,
which are collected through context delegates, small
soft ware that convert raw data into a more structured
format that can be bet er managed by the context server.
hT e platform includes a personalization rule editor that
enables even people without programming experience to
easily defi ne their specifi c rules in order to adapt the
behaviour of the available objects, devices, and applications
to their preferences. For this purpose, it shows the possible
triggers that are logically structured in terms of the aspects
they refer to (user, environment, technology), and the
possible consequent actions (reminders, alarms, user
interface modifi cations, changes in the state of some
appliances, etc.). Th e platform also includes a rule manager,
which receives the personalization rules to execute, and
subscribes to the context manager to be informed when
some events or conditions associated to any of such rules
are verifi ed, so that the consequent actions can be executed.
It has been extended in order to also support the
personalization of humanoid robots, which can be
considered an integrated set of sensors and actuators, with
the additional possibility to perform human-like behaviour.
      </p>
      <p>hT e platform can be applied in several domains
exploiting IoT technologies (e.g. smart retail, industry 4.0,
home, health, etc.). For example, we are organising trials of
this type of personalization platform for the PETAL project
in the Ambient Assisted Living domain. In this context, the
target users are elderly with mild cognitive impairments
and their formal and informal caregivers. Th e older adults
have a tablet for their interactions with applications
supporting cognitive stimulation exercises and providing
information useful for their daily life. Th ey also wear a
smartwatch able to connect with Bluetooth and Wifi at the
same time. Th is device is exploited to detect personal data
(e.g. step counters and heart rate), and user’s indoor
position (with the support of Bluetooth proximity beacons),
these sensed data are sent to the context manager via Wifi
connection. Other sensors include beacons with
accelerometers to detect use of doors, windows, cupboards,
objects, and sensors to detect motion, light, indoor and
outdoor temperature, humidity. In addition, a number of
lights that can be controlled in terms of colour, intensity,
temperature, duration will be used as well for providing
stimuli in order to help the older adults to bet er organise
their daily activities. Th us, the lights can set scenes with
activation and relaxation ef ects depending on the period of
the day and the state of the user.</p>
    </sec>
    <sec id="sec-3">
      <title>3 INTRODUCING INTELLIGENCE IN THE</title>
    </sec>
    <sec id="sec-4">
      <title>PERSONALIZATION PLATFORM</title>
      <p>The massive amount of the data generated by this type of
personalization platform can be processed in a way to add
intelligence to the platform. Machine Learning (ML)
algorithms can be used to achieve this goal. In this case, ML
algorithms should be exploited to build knowledge by
processing the available data with the goal to allow the
platform to take dynamic real time initiatives based on
what has been learnt from the historical data.</p>
      <p>In order to introduce in this type of personalization
platforms the ability to exploit the data related to the
behaviour of users, devices and objects with the goal to
automatically identify relevant personalization rules, there
are two possible types of relevant data (see Figure 1):
 Data concerning the user behaviour (such as
movements, interactions with objects and applications,
…), and contextual conditions (such as time, weather,
light, …);
 Data concerning the personalization rules that have
been created and executed beforehand.
Behavioural and contextual data
In this type of platform, a machine learning approach
should be able to identify in which contextual situations it
is preferred that some actions occur. Based on the historical
data collected by the context manager it is possible to train
a model, which is then used to identify some rules. This
type of approach can be effective when the possible events
and actions are limited. For example, an intelligent
thermostat is able to detect the room temperature at which
the heating system should be turned on based on the user’s
previous choices. Thus, in this case the data are when the
user turned on the thermostat and the temperature at that
time. The consequent action in this case is to turn the
thermostat on. A more general solution is rather difficult
because it implies the ability to monitor in a continuous and
reliable way many possible relevant contextual aspects and
actions performed (corresponding to changes of the
appliances status or commands sent to applications). Thus,
for example, if the goal is to personalize the use of the
lights, then we should have tools able to monitor various
aspects (time, user position, weather, …) and actual lights
uses in order to identify possible routines and preferences
in associating them.</p>
      <p>
        One further issue is how to exploit the rules identified
through machine learning. Indeed, previous studies [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]
have identified various issues in intelligent systems for the
home, such as the learning system failing to understand
user intent or the system’s behaviour being hard to
understand.
      </p>
      <p>
        Rules‐related data
In this case it can be possible to design a personalization
rule recommendation system based on rules previously
provided according to two possible approaches:
collaborative or content-based filtering. In collaborative
filtering the basic idea is that if user A has specified a rule,
which is also indicated by user B, then there is a good
probability that other rules specified by user B can still be
relevant for user A. Thus, it is sufficient to monitor the rules
indicated by various users and then apply this approach to
identify what rules to suggest. In the case of content-based
filtering it is possible to consider various types of
recommendations. Some can be obtained through
generalization of the content of some part of the existing
rules. Thus, for example if there is a rule that says that
when the user enters the bedroom then the lights should be
on, one possible suggestion obtained through
generalization can be that when the user enters any room,
then the lights should be on. Another type of
recommendation can be obtained by trigger refinement,
which means narrowing the situations when the trigger
should be fired by adding conditions that make the rules
more suitable to meet more precisely specified needs.
Other recommendations can be based on the actual users’
behaviour and their preferences. This means exploiting a
specific case of context-aware recommendation systems
[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. For example, they can be device-oriented: if the user
prefers to use some specific device, then it can be
meaningful to suggest rules that exploit it, for example for
sending alarms. One further aspect is to have
locationdependent recommendations, which aim to provide
suggestions when the users are in a specific area that they
seem to prefer. Likewise, they can also be time-oriented
recommendations, which are rules with triggers associated
with specific periods of the day when the user is more
inclined to receive information (e.g. reminders).
      </p>
    </sec>
    <sec id="sec-5">
      <title>4 CONCLUSIONS</title>
      <p>Trigger-action programming captures various aspects
that characterize the emerging need to support
personalization of IoT environments. EUD approaches can
empower even people without programming experiences
to customize such applications. Although intelligent
support can be useful in the perspective to augment these
EUD approaches based on the analysis of the data
concerning the actual user behaviour, it needs to be
carefully designed in order to obtain meaningful results.</p>
      <p>In this position paper we provide some indications about
what possible approaches to data collection and analysis
can help us to obtain mixed-initiative, usable platforms for
personalization of daily IoT environments in such a way as
to enhance the user experience.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>G</given-names>
            <surname>Ghiani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M</given-names>
            <surname>Manca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F</given-names>
            <surname>Paternò</surname>
          </string-name>
          and
          <string-name>
            <given-names>C</given-names>
            <surname>Santoro</surname>
          </string-name>
          (
          <year>2017</year>
          ).
          <article-title>Personalization of Context-dependent Applications through Trigger-Action Rules</article-title>
          .
          <source>ACM TOCHI</source>
          , Vol.
          <volume>24</volume>
          ,
          <string-name>
            <surname>Issue</surname>
            <given-names>2</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Article</surname>
            <given-names>N.</given-names>
          </string-name>
          <year>14</year>
          ,
          <year>April 2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>H</given-names>
            <surname>Lieberman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F</given-names>
            <surname>Paternò</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M</given-names>
            <surname>Klann</surname>
          </string-name>
          and
          <string-name>
            <given-names>V</given-names>
            <surname>Wulf</surname>
          </string-name>
          (
          <year>2017</year>
          ).
          <article-title>"End-user development: An emerging paradigm" In: "End-user development"</article-title>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          , Springer,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>N.</given-names>
            <surname>Leonardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Manca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Paternò</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Santoro</surname>
          </string-name>
          ,
          <article-title>Trigger-Action Programming for Personalising Humanoid Robot Behaviour</article-title>
          , Glasgow, 2019 ACM CHI'
          <volume>19</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>P</given-names>
            <surname>Markopoulos</surname>
            , J Nichols
          </string-name>
          ,
          <string-name>
            <given-names>F</given-names>
            <surname>Paternò</surname>
          </string-name>
          and
          <string-name>
            <given-names>V</given-names>
            <surname>Pipek</surname>
          </string-name>
          (
          <year>2017</year>
          ).
          <article-title>End-User Development for the Internet of Th ings, ACM Transactions on Computer-Human Interaction (TOCHI</article-title>
          ) Volume
          <volume>24</volume>
          <issue>Issue 2</issue>
          ,
          <fpage>9</fpage>
          <string-name>
            <surname>,</surname>
          </string-name>
          <fpage>2017</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Mi</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Qian</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>X.F.</given-names>
          </string-name>
          ,
          <year>2017</year>
          .
          <article-title>An Empirical Characterization of IFTTT: Ecosystem, Usage, and Performance</article-title>
          ,
          <source>Proceedings of Internet Measurement Conference (IMC)</source>
          '
          <volume>17</volume>
          ,
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>B</given-names>
            <surname>Ur</surname>
          </string-name>
          ,
          <string-name>
            <surname>E McManus</surname>
          </string-name>
          ,
          <article-title>MPY Ho and ML Lit man (</article-title>
          <year>2014</year>
          ).
          <article-title>Practical triggeraction programming in the smart home</article-title>
          .
          <source>CHI</source>
          <year>2014</year>
          :
          <fpage>803</fpage>
          -
          <lpage>812</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>W Newman Learning from a learning thermostat: lessons for intelligent systems for the home</article-title>
          ,
          <source>2013 ACM international joint conference on Pervasive and ubiquitous computing</source>
          , pp.
          <fpage>93</fpage>
          -
          <lpage>102</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>G.</given-names>
            <surname>Adomavicius</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Tuzhilin</surname>
          </string-name>
          ,
          <article-title>Context-aware recommender systems, 2011, Recommender systems handbook</article-title>
          , pp.
          <fpage>217</fpage>
          -
          <lpage>253</lpage>
          , Spring
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>