<!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>Learning Classifier Systems as Recommender Systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sooraj K Babu</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sebastian von Mammen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Games Engineering, Julius-Maximilians University</institution>
          ,
          <addr-line>Würzburg</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>A multitude of software domains, ranging from e-commerce services to personal digital assistants, rely on recommender systems (RS) to enhance their performance and customer experience. There are several established approaches to RS, including algorithms, namely, collaborative filtering, content-based ifltering, and various hybrid systems that use diferent verticals of data, such as the user's preferences, the metadata of items to be suggested, etc., to generate recommendations. Contrary to those, we adopt a classifier system to benefit from its rule-based knowledge representation and interwoven learning mechanisms. In this paper, we present our approach and elaborate on its potential use to flexibly and efectively guide a user through the application of an authoring platform.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Means to direct a user’s attention are captured by the term ’guidance’ [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. In the context
of this work, we limit the scope of according intelligent guidance in an authoring platform to
the tasks of (1) familiarisation (overall workflow, functionalities, and UIs) and (2) usage of a
software system (e.g., various modeling, composition processing, or analytics tasks). Apart from
classifying the information we need out of a vast amount of data, an RS is a generic solution to
receive expert feedback [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. However, an RS is hardly utilized to assist a user with contextual
recommendations to familiarize them with complex software or to help them use it thoroughly.
To fill this gap, we explore primarily two research questions through this work: RQ1) How
to guide a user through diferent steps in using a complex software system by employing an
RS? RQ2) How can an LCS be adapted to develop a practical and generic rule-based RS for
user guidance? The following sections briefly describe the related work on RS approaches and
user assistance, the methodology we have adapted, our currently implemented concept and its
integration into an authoring platform, along with the evaluation plan.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>
        The logic behind widely used RS approaches can be conceptually associated with rule-based
systems. For example, algorithms such as collaborative filtering and content-based filtering
classify the items to be recommended either by evaluating user interactions [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] or by assessing
heterogeneous information about the items themselves [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Meaning, If a user requirement
falls under any of these classifications, then specific recommendations are delivered to the
users from these classifications. Such conditional statement, as explained above, are typically
hard-coded part of the respective RS algorithms and only diferent classifications of user data
result in diferently configured recommendations. In contrast, some approaches rely on rule
representations to make recommendations. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], for instance, rely on a decision list rule learner
to recommend TV shows to the user. [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] designed a rule-based system to sort and recommend
relevant threads from lengthy online discussion forums. [14] ask the user for inputs, convert
them into rules, and use contextual information to provide location-based services to the user.
All these works and most of the research we found during the literature review were either
based on established RS algorithms or hybrid methods. They have proven to be efective in their
domains. However, to the best of our knowledge, LCS had not been considered for implementing
RS before. At the same time, the applied nature of LCS brings various advantages to RS, most
importantly the flexibility to adjust to changes in user data, a given application context, and
available recommendations over time. As we will detail in this paper, LCS also allows us to
represent diferent RS approaches simultaneously, which may reduce the maintenance costs of
an according software framework, increase its applicability, or even support cross-fertilization
of diferent RS concepts.
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Basic Representations</title>
      <p>A   of a software service and the  that support him/her can be represented as two agents
communicating with each other [15]. As defined by [ 16], an agent  can be represented as a
quadruple (, , , ) where  is the set of situations an  can be in,  is the set
of actions  can perform,  is the set of data  can rely on, and  :  ×  = 
yields ’s action in a given situation, provided certain data. Following this definition, 
of the   agent would capture all the situations the user may be in, i.e. diferent stages in
diferent use cases.  captures the set of inputs the   can provide to navigate, manipulate,
select, or control the software in use [17],  consists of all the data the   has about one’s
own goals and data that could be provided, about the software system, including for instance
how it works, previously stored files, the currently displayed information, etc. Likewise, the 
of the  agent would consist of all activities   is performing across diferent use cases.
 contains recommendations to the   agent to navigate, manipulate, select or control the
system, and  contains all data inferred from user interaction, and knowledge and metadata
of the software components and use cases. In summary, the knowledge bases, , , and
, of both agents contain a vast amount of contextual information from diferent use cases
to serve each other. They would ideally contain information such as the user’s intentions of
utilizing the system, necessary awareness of the task being carried out, the decisions a user
makes, the data extrapolated from user interaction patterns, the knowledge of all the system
components, the metadata of all the objects that drives the system, etc.</p>
      <p>Implementing the function  of the RS agent specifies which recommendation it can provide
to the  ; and in this case, an LCS does this, which will be detailed in the next section.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Methodology and Concept</title>
      <p>XCS is one of the most investigated learning classifier systems [ 18]. Compared to the original
LCS approach, the primary change in XCS is in the definition of classifier fitness. Fitness is a
value that determines the worth of a classifier. As a result, XCS tends to strengthen classifiers
that are both accurate in making predictions and maximally general. This change results in the
population having more strong classifiers and the system delivering high performance, which
is crucial for an RS. In addition, the system representation is compact compared to traditional
LCS. Also, the genetic algorithm works on the action set, whereas conventional LCS considers
the whole rule population [19]. This makes XCS efective computationally. As with every LCS,
an XCS classifier has a condition and an action part. Condition in this context consists of a set
of inputs captured from the users (if the user grants respective permissions). The corresponding
action part can be contextual depending upon the type of action the user is performing. For
example, if the user is familiar with a game engine, the inputs captured (condition) could be the
interaction information pattern indicating what the user is planning to do. The corresponding
recommendation (action) could be information on the intended task in the form of a tooltip or
an appropriate guiding cue. A classifier can be directly translated to the function ( ())
that provides an agent’s action in any situation. Both the classifier and the function ()
process similar data to assess a user’s state and assist with recommendations (See Fig. 2). An
agent’s  and the  it needs to decide what action to take are the same as the attributes of
a condition analyzed by a classifier.</p>
      <p>Multi-instance Approach: User guidance in a complex system should serve diferent use
cases in a usual scenario. Considering an authoring platform as an example, these use cases could
be familiarisation of tools, various composition mechanisms, UI navigation, and live assistance
for various tasks the platform could ofer. Having an RS with knowledge about the user base
and the whole software platform could support users with all the above use cases. However,
in an XCS-based RS, a single rule population that contains classifiers to address all these use
cases might lead to over-generalization. Generalization is a process through which an XCS tries
to make classifiers as general as possible through a genetic algorithm (GA) to attain optimal
performance [20]. In each learning iteration, the GA selects a few rules with the highest fitness
from the population and mutates them into general rules. A general classifier typically has a few
attributes and can match with diferent situations [ 21]. Whereas over-generalization is when
the rule population will have the classifiers with more wild characters (#) and fewer attributes,
resulting in giving inaccurate actions [22]. In the case of an XCS-based RS, over-generalization
can drastically reduce the performance and accuracy of the  agent. To solve this, we propose</p>
      <p>Actions
GA</p>
      <p>Action Set [A]
Prediction Array</p>
      <p>P(A)
Match Set</p>
      <p>[M]
Reward Covering</p>
      <p>XCS Instance 1</p>
      <p>P1:
Familiarisation</p>
      <p>XCS Instance 2</p>
      <p>XCS Instance 3</p>
      <p>XCS Instance 4</p>
      <p>P2:
Composition</p>
      <p>P3:
UI Navigation</p>
      <p>P4:</p>
      <p>Live Assistance
Environment (Complex System - SuOC)</p>
      <p>User Agents</p>
      <p>Recommendations</p>
      <p>RS
Agents
using multiple  agents, each meant for specific use cases, and each has its own XCS instances
with individual rule populations. The proposed architecture of the XCS system is shown in Fig.
1. The   interacts with the System under Observation and Control (SuOC), in this case, the
complex software system. They will be monitored by the  throughout the session. The user
activity will be captured in the form of a classifier by corresponding XCS instances. Depending
on the  of the   agent, and the  available, the  will compare this classifier with
the corresponding rule populations [P1-P4]. The XCS instance can select appropriate actions
considering the highest prediction value and be given back to the SuOC as recommendations.
However, there will be potential challenges in having multiple XCS instances. Such as resolving
conflicts by diferent RS agents, representing rules across diferent RS agents, coordinating
between RS agents for a seamless user experience, etc. These have to be researched over the
course of development. As in any XCS system, the user’s response to the recommendations
is crucial. If the user accepts the recommendation, a positive reward r is given back to the
XCS to strengthen the rule. If the user is not benefited from the recommendation, the reward
will be negative. However, in this case, assuming the user’s expertise in the software increases
over time, they might ignore the recommendations. Solely modifying the rule’s fitness without
considering the user’s mastery will impact the predictions for users who actually need them.
Mapping user expertise and the conditions which deviated a lot could be one way to address
this problem.</p>
      <p>
        XCS as a Substitution for Established RS Approaches: Traditional recommendation
approaches, such as collaborative filtering (CF) or content-based filtering (CB), use specific data
points to formulate recommendations. For example, CF uses similarities between users and
their usage/ratings on items to be recommended to generate suggestions [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. In comparison,
CB uses the metadata of the item along with the user’s interests to yield recommendations [23].
An XCS-based RS, as mentioned above, can be used as a substitution for these conventional
approaches. For example:
      </p>
      <p>[, , ℎ, , ] : []
consider the simple classifier mentioned above with multiple attributes that suggest a 3D
environment template to a user. The attributes referring to the user’s domain and the attributes
referring to ratings given by other users on an item can be examined to generate
recommendations similar to CF. Similarly, attributes indicating the theme, the goal of using the environment,
and the kind of object the environment contains can be considered to produce results similar to
CB. An actual classifier can be further detailed and will contain more contextual attributes. In
this way, using an XCS-based RS delivers the functionality of a hybrid RS.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Prototype Development</title>
      <p>A virtual reality (VR) authoring platform [24] is chosen to test the XCS-based RS. Out of the
multiple interlinked components an authoring platform typically have, we have considered the
3D environment editor (referred to as editor from now on) as the initial use case to implement
the RS. The editor allows users to import 3D assets from online libraries and compose a VR
environment by drag and drop facility. User assistance with an editor like this can be broadly
classified into four categories. 1) Personalisation: allowing the users to resume work from
where they stopped, provide usage statistics, and keep track of user preferences, 2) Platform
Navigation: providing context-aware support in the form of cues, 3) Composition assistance:
providing assets such as 3D models, automate/auto-complete the design, recommend templates,
and provide cue assistance, and 4) Context-aware live support: alerts based on user activities.
Platform personalization and recommendations for UI navigation are generated by processing a
particular user’s preferences and experience on the system. The details of the current session,
such as the active/passive time, several IDs, etc., are also considered to narrow down the rules
to construct accurate recommendations. The session data, the metadata and the theme of the
3D environment under composition, and the index of the assets used, will be considered to
provide context-aware composition assistance, such as auto-completion of the environment
and 3D model suggestions. In addition, the user’s interaction pattern aligned with the session
information and explicitly mentioned requests/requirements through the help window will be
used to provide live assistance. Out of the four categories of assistance listed above, composition
assistance is in the prototype stage, and the rest are under development. A graph database is
adapted for keeping track of information considering the dynamicity of the data generated
over time. As a result, the performance of the RS will remain constant even if the size of the
graph multiplies over time. In addition, the graph schema is flexible enough to accommodate
random changes that might arise as the development progresses and the understanding of the
problem space grows [25]. In the context of an RS to assist a user, this is essential as we cannot
foresee what kind of interaction a user can have with the system. As a part of the platform
development, we conducted a contextual inquiry among 102 healthcare professionals who could
be the platform’s potential users. The study was conducted online, and the section of the study
concerning user assistance asked the users about their expectations about RS. In addition, a
mockup video of the authoring platform was shown to the users to understand all use cases
of the RS better. The response from the users aligned with our proposed application ideas.
A few of the notable requirements from the study were 1) the subsequent steps have to be
indicated clearly while using the authoring platform, 2) to get pre-designed 3D environments
upon providing a requirement as a keyword, 3) the system should indicate when there is a
possibility of cybersickness while using the VR application (for further results: [26]) All of these
explicit requests are achievable using the proposed rule-based system. Consider the example
rule (abstract representation):</p>
      <p>[, ,  , , ] : []
A rule consisting of the above attributes, the use case, user’s experience, ongoing activity, and
the status of that activity are a set of attributes that can be considered to suggest the subsequent
steps, existing templates, and to generate alerts along with other recommendations the situation
demands. During and after completing the development, user studies and interviews will be
conducted to measure the performance of RS, the impact on user experience, and the efectiveness
of user guidance it provides while using the platform.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Discussion and Future Work</title>
      <p>During the prototype development, the XCS-based RS gave recommendations to the user with
feature suggestions. For example, the user was asked to provide names of 3D models they would
require to create a virtual environment, and the RS would suggest additional assets that align
with the user’s requirement. However, this observation is based on the ongoing development
in a limited space of a 3D editor, with only a few classifiers in the rule population. A few
questions that need to be explored through the next course of development are how to address
the cold-start issue that might arise once the RS is implemented across multiple use cases in
addition to a 3D editor. and how to maintain and improve the system’s performance when the
scope of the software platform and user base increases. In addition, currently, the system’s front
end acts as the SuOC, and it will remain the primary method to infer requirements from the user.
However, the scope of using an Intelligent User Interface, similar to the famous Microsoft Clippy
[27], as an additional input mechanism to capture user input to increase the UX eficiency has
to be explored.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Acknowledgements</title>
      <p>This research was partially funded by the German Federal Ministry of Education and Research
(BMBF) as part of the research initiative for Human-Technology Interaction ”Digital Platforms:
Interactive Assistance Systems for Humans“ in the project VIA-VR (project number 16SV8444).
discussion forums, in: International Conference on Adaptive Hypermedia and Adaptive Web-Based Systems,
Springer, 2008, pp. 12–21.
[14] S. Sharma, D. Kaur, Location based context aware recommender system through user defined rules, in:
International Conference on Computing, Communication Automation, 2015, pp. 257–261. doi:10.1109/CCAA.
2015.7148384.
[15] M. Afsharchi, B. H. Far, J. Denzinger, Ontology-guided learning to improve communication between groups
of agents, in: Proceedings of the fifth international joint conference on Autonomous agents and multiagent
systems, 2006, pp. 923–930.
[16] J. Denzinger, J. Kidney, Evaluating diferent genetic operators in the testing for unwanted emergent behavior
using evolutionary learning of behavior, in: 2006 IEEE/WIC/ACM International Conference on Intelligent
Agent Technology, 2006, pp. 23–29. doi:10.1109/IAT.2006.63.
[17] A. Sutclife, On the efective use and reuse of hci knowledge, ACM Transactions on Computer-Human</p>
      <p>Interaction (TOCHI) 7 (2000) 197–221.
[18] A. Stein, R. Maier, L. Rosenbauer, J. Hähner, Xcs classifier system with experience replay, in: Proceedings of
the 2020 Genetic and Evolutionary Computation Conference, 2020, pp. 404–413.
[19] S. W. Wilson, State of xcs classifier system research, in: International workshop on learning classifier systems,</p>
      <p>Springer, 1999, pp. 63–81.
[20] A. R. Wagner, A. Stein, Mechanisms to alleviate over-generalization in xcs for continuous-valued input spaces,</p>
      <p>SN Computer Science 3 (2022) 1–23.
[21] L. B. Booker, D. E. Goldberg, J. H. Holland, Classifier systems and genetic algorithms, Artificial intelligence 40
(1989) 235–282.
[22] P. L. Lanzi, An analysis of generalization in the xcs classifier system, Evolutionary computation 7 (1999)
125–149.
[23] M. J. Pazzani, D. Billsus, Content-based recommendation systems, in: The adaptive web, Springer, 2007, pp.</p>
      <p>325–341.
[24] S. von Mammen, A. Müller, M. E. Latoschik, M. Botsch, K. Brukamp, C. Schröder, M. Wacker, Via vr: A
technology platform for virtual adventures for healthcare and well-being, 2019, pp. 1–2. URL: https://downloads.
hci.informatik.uni-wuerzburg.de/2019-viavr-vsgames.pdf .
[25] I. Robinson, J. Webber, E. Eifrem, Graph databases: new opportunities for connected data, " O’Reilly Media,</p>
      <p>Inc.", 2015.
[26] A. Halbig, S. K. Babu, S. Gatter, M. E. Latoschik, K. Brukamp, S. von Mammen, Opportunities and challenges
of virtual reality in healthcare – a domain experts inquiry, Frontiers in Virtual Reality 3 (2022). URL: https:
//www.frontiersin.org/article/10.3389/frvir.2022.837616. doi:10.3389/frvir.2022.837616.
[27] Y. Tymchuk, What if clippy would criticize your code?, in: BENEVOL’15: Proceedings of the 14th edition of
the Belgian-Netherlands software evoLution seminar, 2015.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Oshita</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Kaida</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Matsumoto</surname>
          </string-name>
          ,
          <article-title>Improving user experience of c programming language learning system for novices, in: 2019 8th International Congress on Advanced Applied Informatics (IIAI-AAI)</article-title>
          , IEEE,
          <year>2019</year>
          , pp.
          <fpage>306</fpage>
          -
          <lpage>309</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>B.</given-names>
            <surname>Mirel</surname>
          </string-name>
          , “
          <article-title>applied constructivism” for user documentation: Alternatives to conventional task orientation</article-title>
          ,
          <source>Journal of business and technical communication 12</source>
          (
          <year>1998</year>
          )
          <fpage>7</fpage>
          -
          <lpage>49</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>H.</given-names>
            <surname>Van der Meij</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. Van Der</given-names>
            <surname>Meij</surname>
          </string-name>
          ,
          <article-title>A comparison of paper-based and video tutorials for software learning</article-title>
          ,
          <source>Computers &amp; education 78</source>
          (
          <year>2014</year>
          )
          <fpage>150</fpage>
          -
          <lpage>159</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>D.</given-names>
            <surname>Kao</surname>
          </string-name>
          ,
          <article-title>Exploring help facilities in game-making software</article-title>
          ,
          <source>in: International Conference on the Foundations of Digital Games</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>14</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>D.</given-names>
            <surname>Selimi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. P.</given-names>
            <surname>Nuci</surname>
          </string-name>
          ,
          <article-title>The use of recommender systems in web technology and an in-depth analysis of cold state problem</article-title>
          , arXiv preprint arXiv:
          <year>2009</year>
          .
          <volume>04780</volume>
          (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Woźniak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Grana</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Corchado</surname>
          </string-name>
          ,
          <article-title>A survey of multiple classifier systems as hybrid systems</article-title>
          ,
          <source>Information Fusion</source>
          <volume>16</volume>
          (
          <year>2014</year>
          )
          <fpage>3</fpage>
          -
          <lpage>17</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R. J.</given-names>
            <surname>Urbanowicz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. N.</given-names>
            <surname>Browne</surname>
          </string-name>
          , Introduction to learning
          <source>classifier systems</source>
          , Springer,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>E. F.</given-names>
            <surname>Badjio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Poulet</surname>
          </string-name>
          ,
          <article-title>User guidance: from theory to practice, the case of visual data mining</article-title>
          ,
          <source>in: 17th IEEE International Conference on Tools with Artificial Intelligence (ICTAI'05)</source>
          , IEEE,
          <year>2005</year>
          , pp.
          <fpage>2</fpage>
          -pp.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricci</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Rokach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Shapira</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. B.</given-names>
            <surname>Kantor</surname>
          </string-name>
          , Recommender systems handbook,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Koren</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rendle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Bell</surname>
          </string-name>
          ,
          <article-title>Advances in collaborative filtering, Recommender systems handbook (</article-title>
          <year>2022</year>
          )
          <fpage>91</fpage>
          -
          <lpage>142</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>C. C.</given-names>
            <surname>Aggarwal</surname>
          </string-name>
          ,
          <article-title>Content-based recommender systems</article-title>
          ,
          <source>in: Recommender systems</source>
          , Springer,
          <year>2016</year>
          , pp.
          <fpage>139</fpage>
          -
          <lpage>166</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>V.</given-names>
            <surname>Padmanabhan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. K.</given-names>
            <surname>Seemala</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. N.</given-names>
            <surname>Bhukya</surname>
          </string-name>
          ,
          <article-title>A rule based approach to group recommender systems</article-title>
          , in: International Workshop on Multi-disciplinary
          <source>Trends in Artificial Intelligence</source>
          , Springer,
          <year>2011</year>
          , pp.
          <fpage>26</fpage>
          -
          <lpage>37</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>F.</given-names>
            <surname>Abel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. I.</given-names>
            <surname>Bittencourt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Henze</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Krause</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Vassileva</surname>
          </string-name>
          ,
          <article-title>A rule-based recommender system for online</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>