<!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 />
    <article-meta>
      <title-group>
        <article-title>Machine Learning in the Support of Context-Aware Adaptation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Vivian Genaro Motti</string-name>
          <email>vivian.motti@uclouvain.be</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nesrine Mezhoudi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jean Vanderdonckt</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Author Keywords Context-aware Adaptation</institution>
          ,
          <addr-line>Adaptivity, Adaptability</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>LILab - Louvain Interaction Laboratory - Université catholique de Louvain Place des Doyens 1 - Louvain-la-Neuve 1348</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>Adapting user interfaces according to the context of use aims at improving the usability levels of an application and enhancing the user experience, mainly by optimizing the users' interaction and reducing their errors. However, given the significant amount of information involved, adapting UIs often demands complex inferences. Because the context information is extensive, it is hard to prioritize it to decide the best adaptation techniques. Moreover, dealing with recurrent trade-offs, e.g. adaptability vs. performance, is not simple. To aid the adaptation decisions, machine learning algorithms can be applied to support reasoning, inferences and also to deal with complex or fuzzy information. Although ML can provide several benefits for CAA, there is no agreed framework that aids developers in applying it. Thus, aiming to fill such a gap, this paper defines potential scenarios of CAA where ML can be successfully applied, presenting their common requirements and main trade-offs.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>INTRODUCTION
Nowadays users of many different profiles are interacting
with several device types and from varied environments,
resulting in significantly heterogeneous contexts of use in
which the interactions to take place. As such, it is not
scalable for developers to implement dedicated versions of
UIs and applications that are suitable for and accommodate
all constraints and characteristics of each specific context of
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies
bear this notice and the full citation on the first page. To copy otherwise,
or republish, to post on servers or to redistribute to lists, requires prior
specific permission and/or a fee.
use. Therefore, in the current computational landscape, of
ubiquity, mobility, pervasiveness and context-awareness,
adaptation becomes an inevitable solution. However,
efficiently implementing adaptation taking several contexts
into account to match them with appropriate techniques is a
challenge.</p>
      <p>
        In this sense, machine learning (ML) as a domain capable
of supporting the solution of complex problems, is able to
provide significant help [Alpaydin, 200
        <xref ref-type="bibr" rid="ref4">4], [Bishop, 2006</xref>
        ],
[Barber, 2010]. Although machine learning is able to
provide important benefits for CAA, so far there is no
guidance that effectively supports developers in finding the
best approaches to solve their recurrent problems in CAA.
This paper presents a roadmap that guides stakeholders in
the application of machine learning algorithms in the
domain of context-aware adaptation. Potential application
scenarios are exemplified, supporting the development of
similar applications. We present a set of potential
approaches that support the development of adaptive and
adaptable applications in an optimal fashion. This roadmap
aims at guiding the development of CAA in all its phases,
considering different application domains, context
information and scenarios of use. We also identified the
main trade-offs commonly encountered and commons
requirements for applying ML for context-aware
adaptation.
      </p>
      <p>This paper is organized as follows: the Section 2 discusses
related works; Section 3 presents the roadmap; Section 4
presents common requirements and the design decisions;
Section 5 discusses the contributions, and Section 6
presents the final remarks and the future works.</p>
      <p>RELATED WORKS
Since the early 90’s ML has been applied to support
different façades of CAA. Although these works are
dedicated to explore distinct applications of machine
learning for context-aware adaptation, they are scattered,
each one focusing on a specific application of adaptation at
a time without a unified view of their potential benefits.
CAA can benefit from ML potential especially during two
distinct phases: the inferences about context information,
and the CAA design decisions. Examples of ML application
during the inference phase include: finding patterns in user
interaction histories and clustering data, as users’ profiles
[Jennings and Higuchi, 1993]. Examples of ML applied for
the design decisions of the CAA process include: predicting
the user behavior [Mitrovic, 2007], [Mitrovic, 2009],
automating tasks, learning about the user preferences, and
continuously evolving the adaptation engine itself. Other
ML algorithms also have been successfully applied to
support CAA, for example:
• Bayesian Networks: as directed acyclic graphs,
composed by nodes and arcs representing respectively
variables and their relationships, Bayesian networks have
been applied to model users and to predict their needs. As
such, the system observes the user events, and responds to
them by triggering new events [Horvitz et al., 1998].
• Clustering: consists in associating information based on
the similarities found in its properties. Information that
shares the same characteristics is located together
composing a group called cluster. E.g. contents in
webpages can be clustered according to their users’ access,
as performed in MLTutor, distinguishing trends in user
interaction [Smith and Blandford, 2002].
• Decision Trees (DT): are composed by set of rules
strategically and hierarchically organized. DT aid the
representation, the selection and the classification of data.
In [Vanderdonckt, 1999] and in [Eisenstein and Puerta,
2000] decision trees were applied to support the decision
and selection of the most appropriate widget to build a GUI.
• Fuzzy Logic: recommended to deal with fuzzy data, the
fuzzy logic was applied to adapt services in a mobile
context [Cao et al., 2005], and to evaluate design decisions
of adaptive composition of mobile applications [Desruelle
et al., 2011].
• Genetic Algorithms: Acay (2004) recommends genetic
algorithms in adaptation for complex systems, since they
are capable of handling highly constraint problems, they are
scalable for higher dimensions, and also because in
complex task the feature space can grow exponentially with
the number of features.
• Markov Models: In a simple markov model each node
lists possible states of the system, and the transitions reflect
probabilities to change from one state to another. Only the
last state (user action) is considered, however in
secondorder models the last two states (user actions) also count,
[Deshpande and Karypis, 2004]. In CAA, markov models
have been used to predict user actions based on their
interaction history.
• Neural Networks: as an interconnected group of artificial
neurons, by using processing elements to connect input
nodes with output nodes, neural networks were applied to
compile a user profile and guide web browsing according to
the relevance of the web content [Seo and Zhang, 2000].
• Rule Induction: consists in extracting formal rules based
on observation of data, or local patterns. It was specifically
applied in MLTutor to suggest users relevant hypertext
pages [Smith and Blandford, 2002]. Although it is the most
common approach adopted for context-aware adaptation
given its simplicity, it has also reduced expressiveness.
It is important to investigate how each machine learning
algorithm support specific phases of context-aware
adaptation in depth; but so far there is no unified view that
supports the application of ML for CAA in a broad manner,
covering general-purpose implementations. To contribute in
this sense, we abstracted potential applications, defined
common requirements, and highlighted the main trade-offs.
LEARNING GOALS
Based on the analysis of the related works presented above,
we notice that the learning mechanism can be employed to
achieve specific goals. These goals are achieved either
based on patterns that are identified from the user
interaction or based on the user evaluation of the adaptation
results provide by the system. Generally these goals belong
to 5 main classes:
Associating: for instance when a navigational pattern is
identified in the user interaction history (recorded by means
of log files), the tasks that are executed together can be
associated in chunks, facilitating their access and making
the interaction more efficient. In this way groups of tasks
are created. One possible category is favourite
corresponding to the most accessed contents or tasks. The
same approach is also valid for groups of users, i.e. users
with same interests and profiles can share their favourite
contents.</p>
      <p>Sorting: consists in abstracting the sequence of interaction
of the user in order to re-define the access order of the
tasks, for instance with a given user always access the menu
items in a given order (this pattern must be also identified
by analysing log files of the interaction history), this
information must be used as the criterion to re-arrange the
order of the menu items, links, buttons of the UI.
Suggesting/Recommending: based on expected interaction,
the system can suggest to the user contents or tasks that are
more likely to be accessed by them. A certain user profile
can help to decide the contents of interest.</p>
      <p>Hiding/Deleting: the contents or tasks that have the least
frequent access must also have less priority of access in the
UI, i.e. while the access to the most common tasks and
contents must be facilitated the least common tasks and
contents can be grouped and accessed by means of an extra
resource (link, button or icon). Thus, optimizing the space
usage in the UI. Deleting the shortcuts to least accessed
tasks can also be an option to optimize the space usage in
the UI, by giving priorities to the most used contents and
accessed tasks.</p>
      <p>Creating: some interactions that are always repeated by the
user while accessing and interacting with the application
can be automated. For instance if the user always re-size
(maximize) the window of the UI, the system can change
the default settings to automatically maximize the window
when the application is launched.</p>
      <p>Aiming to fulfill the goals abovementioned, different ML
can be employed. The next section illustrates how
algorithms can be applied to perform CAA.</p>
      <p>A ROADMAP OF MACHINE LEARNING APPLICATIONS
Although ML has already been applied to support CAA, the
works so far are sparse and thus not integrated yet, given
that there is no agreed framework capable of guiding
stakeholders in the selection and in the implementation of
ML algorithms to provide efficient CAA to the end users, in
this section we provide a unified view of how ML
algorithms can be employed for applications in the different
phases of a CAA process.
For each scenario listed in Table 1, specific refinements are
needed to concretely model and implement the solutions.
For instance, regarding the application of decision trees for
UI generation, in the definition of the best modality,
attributes gathered from the context information can be
considered, as: occurrence of visual impairments of the
user, availability of input and output devices (e.g.
microphone, speakers, headset), battery level (in case of
mobile devices). As possible classes for the DT, two
modality types are envisaged: graphic and audio. It is out of
the scope of this paper to provide further implementation
details about modeling each scenario suggested, however
we do provide in the next section further refinements about
the design decisions.</p>
      <p>DESIGN DECISIONS
Potential trade-offs. Although ML algorithms provide a
set of benefits for CAA, care must be taken to not disturb
the user interaction. Clearly, there are several trade-offs that
can be expected by automating UI changes by means of
adaptation. Therefore if the user interaction is not very well
understood, the adaptation results can: bother, annoy,
confuse or even prevent users from achieving their actual
goals. That is why users must be always able to evaluate the
adaptation, to confirm that the results achieved are
convenient according to their goals and interests. Moreover,
by changing the UI layout that the users are familiarized
with, can make them lost, thus all the changes must be
clearly indicated. The common requirements presented
below aim at fulfilling CAA goals with ML, but also
avoiding potential trade-offs.</p>
      <p>Common Requirements. Technically, the learning process
by means of ML algorithms occurs when: (i) the priorities
(or weights) of the adaptation rules are modified in a
decision tree (the conditions in each node), providing
adaptation results that are more suitable for the context of
the user, (ii) the records of the previous interaction behavior
are analyzed and patterns are identified helping the
Adaptation Engine to automatically perform new
adaptations, (iii) a negative feedback is given by the user,
and then an adaptation technique has its priority or weight
decreased in the adaptation engine.</p>
      <p>All these approaches rely on the end user behavior and
feedback. For instance, if a certain pattern is identified in
the log of the user interaction, it is likely that the navigation
in the application can be optimized accordingly. And if the
user accepts the adaptation proposed by the system, this
feedback is used by the engine to set the adaptation as
successful.</p>
      <p>Machine learning algorithms aim at optimizing the
adaptation process. Then, mainly the learning infrastructure
involves two general requirements. First gathering the
preferences of the user (with feedback or history of
interaction for instance) and possibly other context
elements and then adapting the engine (for instance by
adjusting parameters related with priorities or preferences).
These requirements are cyclic, i.e. once the adaptation is
performed and present, the user intervene again providing
his or her feedback, which, if positive, concludes the cycle,
and if negative, adjust the engine. Such general
requirements can be refined in four specific requirements:
•</p>
      <p>First, the user interaction needs to be recorded (with
•
•
•
log files, or history features).</p>
      <p>Then, the adaptation process may request the
authorization of the user to proceed, by announcing
what will be done, and proceeding in case of
agreement.</p>
      <p>The adaptation must be presented in a progressive
fashion, and clearly stating to the end user that there is
a change, and explaining what is happening, and also
why it is happening.</p>
      <p>And finally, after the adaptation was performed, the
user must have the option to:
o Accept or reject it
o Undo it
o Evaluate or classify it, providing a feedback
that will be used to adjust the parameters of
the techniques implemented.</p>
      <p>The user feedback must be applied to improve and evolve
the adaptation engine, making its results more precise and
accurate for next applications.</p>
      <p>CONTRIBUTIONS
The main contributions of this paper include: motivating the
use of ML algorithms for CAA; contextualizing application
scenarios; and providing a roadmap to guide stakeholders in
their design decisions regarding CAA supported by ML.
The specific contributions include: the literature review of
current related works; the description of ML algorithms
applied for CAA scenarios; and the presentation of main
trade-offs and common requirements in this domain.
FINAL REMARKS
Due to the large availability of technological devices, it is
each day more important to implement and provide users
applications able to effectively adapt themselves according
to the context. Such implementation is a complex task,
since much context information is involved and several
application resources can be subject to context-aware
adaptation. Therefore, ML algorithms can efficiently
support this task. ML has as main advantages the ability to
sense the context in a dynamic manner to evolve the
adaptation engines, providing users more suitable
adaptations. This paper presents a roadmap that can
effectively guide stakeholders in the application of ML
algorithms for CAA.</p>
      <p>ACKNOWLEDGMENTS
This work received funding from the European
Commission’s Seventh Framework Program under grant
agreement number 258030 (FP7-ICT-2009-5).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Acay</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          (
          <year>2004</year>
          )
          <article-title>Adaptive User Interfaces in Complex Supervisory Tasks</article-title>
          .
          <source>PhD Thesis</source>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Alpaydin</surname>
          </string-name>
          , E. Introduction to Machine Learning, The MIT Press,
          <year>October 2004</year>
          , ISBN 0-262-01211-1
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Barber</surname>
          </string-name>
          , D.
          <source>Bayesian Reasoning and Machine Learning</source>
          , Cambridge University Press ,
          <year>2010</year>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bishop</surname>
            ,
            <given-names>C. M. Pattern</given-names>
          </string-name>
          <string-name>
            <surname>Recognition</surname>
          </string-name>
          and
          <source>Machine Learning</source>
          , Springer,
          <year>2006</year>
          , ISBN:
          <fpage>978</fpage>
          -0-
          <fpage>387</fpage>
          -31073-2
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Cao</surname>
            ,
            <given-names>J.; Xing N.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Chan</surname>
            ,
            <given-names>A.T.S.</given-names>
          </string-name>
          ; Feng Y.;
          <string-name>
            <surname>Jin</surname>
            <given-names>B.</given-names>
          </string-name>
          ;
          <article-title>"Service adaptation using fuzzy theory in context-aware mobile computing middleware," Embedded and Real-Time Computing Systems</article-title>
          and Applications,
          <year>2005</year>
          . Proceedings. 11th IEEE International Conference on , vol., no., pp.
          <fpage>496</fpage>
          -
          <lpage>501</lpage>
          ,
          <fpage>17</fpage>
          -
          <lpage>19</lpage>
          Aug.
          <year>2005</year>
          doi: 10.1109/RTCSA.
          <year>2005</year>
          .93
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Deshpande</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Karypis</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2004</year>
          .
          <article-title>Selective Markov models for predicting Web page accesses</article-title>
          .
          <source>ACM Trans. Internet Technol. 4</source>
          ,
          <issue>2</issue>
          (May
          <year>2004</year>
          ),
          <fpage>163</fpage>
          -
          <lpage>184</lpage>
          . DOI=http://doi.acm.
          <source>org/10</source>
          .1145/990301.990304
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Desruelle</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blomme</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Gielen</surname>
            ,
            <given-names>F.. Adaptive</given-names>
          </string-name>
          <string-name>
            <surname>Mobile Web Applications: A Quantitative Evaluation</surname>
          </string-name>
          <article-title>Approach</article-title>
          .
          <source>In Proceedings of ICWE</source>
          .
          <year>2011</year>
          ,
          <fpage>375</fpage>
          -
          <lpage>378</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Eisenstein</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Puerta</surname>
          </string-name>
          , A..
          <year>2000</year>
          .
          <article-title>Adaptation in automated user-interface design</article-title>
          .
          <source>In Proceedings of the 5th international conference on Intelligent user interfaces (IUI '00)</source>
          . ACM, New York, NY, USA,
          <fpage>74</fpage>
          -
          <lpage>81</lpage>
          . DOI=
          <volume>10</volume>
          .1145/325737.325787 http://doi.acm.
          <source>org/10</source>
          .1145/325737.325787
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Horvitz</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Breese</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heckerman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hovel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Rommelse</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          (
          <year>1998</year>
          ).
          <article-title>The Lumiere project: Bayesian user modeling for inferring the goals and needs of software users</article-title>
          .
          <source>Proceedings of the Fourteenth Conference on Uncertainty in AI</source>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Jennings</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Higuchi</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          (
          <year>1993</year>
          ).
          <article-title>A User Model Neural Network for a Personal News Service. User Modeling and User-Adapted Interaction 3</article-title>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          1-
          <fpage>25</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Mitrovic</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Royo</surname>
            ,
            <given-names>J. A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Mena</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>Performance analysis of an adaptive user interface system based on mobile agents</article-title>
          .
          <source>In Proc. DSV-IS '07</source>
          . New York: ACM Press,
          <fpage>29</fpage>
          --
          <lpage>44</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Mitrovic</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Royo</surname>
            ,
            <given-names>J. A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Mena</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          (
          <year>2009</year>
          )
          <article-title>Adaptive Graphical User Interfaces: An Approach Based on Mobile Agents</article-title>
          , Networks, pp.
          <fpage>1</fpage>
          -
          <lpage>36</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Seo</surname>
            ,
            <given-names>Y.-W.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Zhang</surname>
          </string-name>
          , B.
          <string-name>
            <surname>-T.</surname>
          </string-name>
          (
          <year>2000</year>
          ).
          <article-title>Learning user's preferences by analyzing web-browsing behaviors</article-title>
          .
          <source>In Proc. of int'l conf. on autonomous agents</source>
          <year>2000</year>
          <article-title>(aa '</article-title>
          <year>2000</year>
          ) (pp.
          <fpage>381</fpage>
          -
          <lpage>387</lpage>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Smith</surname>
            ,
            <given-names>A. S. G.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Blandford</surname>
            ,
            <given-names>A. N. N.</given-names>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>MLTutor : An Application of Machine Learning Algorithms for an Adaptive Web-based Information System</article-title>
          ,
          <source>International Journal of Artificial Intelligence in Education</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>22</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Vanderdonckt</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1999</year>
          ).
          <article-title>Advice-giving systems for selecting interaction objects</article-title>
          .
          <source>Proceedings User Interfaces to Data Intensive Systems</source>
          ,
          <volume>152</volume>
          -
          <fpage>157</fpage>
          . IEEE. At: http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arn umber=
          <volume>79147</volume>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>