=Paper= {{Paper |id=Vol-3294/short2 |storemode=property |title=Combining IGA and KG for Serendipitous Learning Contents Recommendation |pdfUrl=https://ceur-ws.org/Vol-3294/short2.pdf |volume=Vol-3294 |authors=Emmanuel Ayedoun,Satoko Inoue,Hiroshi Takenouchi,Masataka Tokumaru |dblpUrl=https://dblp.org/rec/conf/recsys/AyedounITT22 }} ==Combining IGA and KG for Serendipitous Learning Contents Recommendation== https://ceur-ws.org/Vol-3294/short2.pdf
Combining IGA and KG for Serendipitous Learning Contents
Recommendation
Emmanuel Ayedoun 1, Satoko Inoue 2, Hiroshi Takenouchi 3, and Masataka Tokumaru 1
1
  Faculty of Engineering Science, Kansai University, 3-3-35 Yamate-cho Suita, Osaka 564-8680 Japan
2
  Graduate School of Engineering, Kansai University, 3-3-35 Yamate-cho Suita, Osaka 564-8680 Japan
3
  Department of System Management, Fukuoka Institute of Technology, 3-30-1 Wajiro-higashi, Higashi-ku,
Fukuoka, 811-0295 Japan


                Abstract
                Although there have been few attempts to propose serendipity-oriented recommender systems
                in the field of education, such systems appear to lack of the essential ability to support learners’
                agency, which is learners’ feeling of ownership and control over their own learning. In this
                paper, we propose an Interactive Evolutionary Computation driven recommender system that
                enables learners to take control and responsibility of their own learning while recommending
                learning resources that are novel and unexpected, yet still relevant to learners’ interests. The
                proposed system specifically employs Interactive Genetic Algorithm (IGA) and Knowledge
                Graphs (KG) for dynamic recommendation of learning contents related to the history of
                scientific discoveries. We conducted both numerical simulations that confirmed the
                effectiveness of the learning contents optimization algorithm and an experimental evaluation
                which hinted at the meaningfulness of the proposed approach towards inducing serendipity
                within learners.

                Keywords 1
                Recommender Systems, Serendipitous Learning, Interactive Evolutionary Computation


1. Introduction                                                                             overgeneralization of recommended information
                                                                                            can impair the ability of learning support systems
                                                                                            to provide learners with content that is interesting,
    The deployment of recommender systems in
                                                                                            novel and more importantly unexpected [5]. As a
the field of technology enhanced education has
                                                                                            result, such approaches can lead to an overly
attracted increased interest as a promising means
                                                                                            narrow set of suggestions lacking in serendipity
to help learners navigate through suitable learning
                                                                                            and inadvertently placing the learner in what is
resources, given the plethora of available digital
                                                                                            known as a “filter bubble”, according to Pardos
learning resources nowadays [1]. The principal
                                                                                            [6]. That is, proposing recommender systems that
and commonly used techniques to build
                                                                                            also aim at helping learners make serendipitous
recommender systems are collaborative filtering
                                                                                            knowledge acquisition is necessary to tackle the
[2] and content-based filtering [3]. However, in an
                                                                                            filter bubble issue.
educational context, both approaches present
                                                                                                The term “Serendipitous learning” has been
some shortcomings: risk of overgeneralization for
                                                                                            used to refer to learning through gaining new
collaborative recommenders and risk of
                                                                                            insights, discovering interesting aspects and
overspecialization as far as content-based
                                                                                            recognizing new relations, which occurs by
recommenders are concerned. Such issue has been
                                                                                            chance or as by-product of other activities [7], [8].
framed as the “serendipity-problem” [4], to
                                                                                            Serendipitous learning emphasizes the positive
denote      that   the     overspecialization    or

Proceedings Name, Month XX–XX, YYYY, City, Country
EMAIL: email1@mail.com (A. 1); email2@mail.com (A. 2);
email3@mail.com (A. 3)
ORCID: XXXX-XXXX-XXXX-XXXX (A. 1); XXXX-XXXX-
XXXX-XXXX (A. 2); XXXX-XXXX-XXXX-XXXX (A. 3)
            ©️ 2020 Copyright for this paper by its authors. Use permitted under Creative
            Commons License Attribution 4.0 International (CC BY 4.0).

            CEUR Workshop Proceedings (CEUR-WS.org)
role of unexpected realization of hidden,                informal learning, which depends to a large extent
seemingly unrelated connections or analogies for         on individual preferences or choices and is often
learning and research [8], [9]. Although there           self-directed [19], could be greatly enhanced by
have been few attempts to propose serendipity-           introducing in such learning environments
oriented recommender systems in the field of             serendipity-oriented recommender systems. As
education [10], [11], [12], such systems do not          evoked in the previous section, it should also be
necessarily support learners’ agency, which is yet       noted that most recommender systems dedicated
an essential requirement, as serendipitous               to learning support embed recommendation
encounters also owe to the open-minded attitude          techniques that could inadvertently place learners
of the seekers, their curiosity, and their               into “filter bubbles”, a type of swim-laning of
perspicacity [13].                                       learners into a particular track based on a machine
    Interactive Evolutionary Computation (IEC) is        learned stereotype [8]. Meanwhile, it has been
a generic term which refers to a group of                suggested that serendipitous experiences are
optimization techniques or algorithms that uses          valuable to learning at a personal level [10].
subjective human evaluation instead of a                     Therefore, to the extent of fostering learners’
numerical fitness function to solve optimization         engagement in informal learning settings, the goal
problems when the fitness function cannot be             and major contribution of this study is to propose
assumed or appropriately represented in the form         a serendipity-oriented recommender system
of a mathematical function [14]. Given such              which fulfill the following requirements:
characteristics, IEC techniques have been                     • Target support of learning in an informal
successfully applied in many fields, such as face                 learning environment
identification [15], fashion design [16], music               • Facilitate learner’s agency by actively
composition [17], hearing aid fitting [18]. In a                  supporting self-directed learning through
typical scenario of IEC, a small number of                        exploratory interaction with the learning
solutions (e.g., a population of ten solutions) are               environment
shown to a human user who is supposed to assign               • Embed a resource recommendation
one of a pre-specified set of ranks (e.g., 1: very                algorithm that involves learners in the
bad, 2: bad, 3: average, 4: good, 5: very good) to                system recommendation refining process
each solution in the population.                                  by actively gathering their preferences
    In this paper, we propose an Interactive
Evolutionary      Computation       (IEC)      driven
recommender system that enables learners to take         2.2. Approach
control and responsibility of their own learning
while exploring learning resources that are novel        2.2.1. Overview of proposed system
and unexpected, yet still relevant to their interests.
The proposed system specifically employs                     Figure 1 shows an overview of the proposed
Interactive Genetic Algorithm (IGA) and                  system. In the system, the learning contents are
Knowledge Graphs (KG) for dynamic generation             represented in the form of “learning paths”
of learning contents.                                    covering related concepts and presented to
                                                         learners via a dedicated interface, shown in Figure
2. Research Goal and Approach
2.1. Problem      Statement   and
Research Goal

    In the domain of technology enhanced
learning, a number of recommender systems have
been proposed. Yet, a closer look to the current
status of their development and evaluation reveals
that such efforts present some limitations. For
instance, available systems seem to target learning
in formal settings, do not sufficiently support            Figure 1: Schematic representation of
learners’ agency and evaluate effectiveness only
                                                           interactions between the learner and the
from the standpoint of learners’ grade. However,
                                                           system
                                                        interesting to the user by leveraging IGA, and
                                                        generates new paths based on those features. If the
                                                        generated path exists in the path database, it is
                                                        presented to the user as-is, and if it does not exist,
                                                        it is replaced by the most similar path in the path
                                                        database and presented to the user (Phase 2). By
                                                        repeating the evaluation of the proposed paths, the
                                                        system attempts to learn the learners’ taste and
                                                        interests, and presents them with novel paths of
                                                        greater interest, yet unexpected enough to achieve
Figure 2: System Interface showing the paths            recommendation of learning contents that could
navigation window                                       induce serendipity.
 2. For instance, the knowledge database used for
 the study presented in this paper is a database in     2.2.2. Knowledge graph model
 which learning contents (i.e., scientific
 discoveries and inventions) are related to each            In general, a knowledge graph G= {E, R, F} is
 other and such relationships can be quantitatively     a collection of entities E, R, and facts F [22]. A
 expressed. To this extent, we built the learning       fact is a triple (ℎ, 𝑟, 𝑡) ∈ F that denotes a link 𝑟 ∈
 contents database of the system using the contents     R between the head ℎ ∈E and the tail 𝑡 ∈ E of the
 of the book “Science: The Definitive Visual            triple. In our proposed system, the relationship
 Guide, Adam Hart-Davis (Ed.)” [21]. It is a            between nodes and edges is also represented using
 comprehensive book which tells the history of          the common (ℎ, 𝑟, 𝑡) triples. Note that ℎ and 𝑡
 science and technology from the earliest times to      represent two different nodes in the knowledge
 the present day in chronological order by              graph, while 𝑟 represents an edge linking these
 capturing every key moment of discovery, and           nodes. In the following lines, we provide an
 showing how the concepts, the inventions, and the      overview of how we define these triples in the
 individuals behind them have changed our world.        context of this study.
 More interestingly, the book illustrates how one           First of all, we expressed ℎ as a collection of
 discovery is connected to another by presenting        the three parameters vectors ℋelement, ℋBefore and
 some pointers to events that preceded and              ℋAfter.
 followed a current discovery or invention. Such                   ℋelement
 structure obviously holds the potential to make it         ℎ = [ ℋBefore ]                                 (1)
 easier for the reader to realize how scientific                    ℋAfter
 discoveries and inventions in a wide range of              ℋelement represents the main contents of a page,
 scientific fields are interrelated to each other. In   and is expressed as in equation (2), where ℎpage is
 the resulting knowledge graph, each piece of           the page number of the node, ℎdiscipline is the
 information (i.e., major discovery or invention) is    discipline (i.e., scientific field), and ℎera is the era
 represented by a node, and the relationship
                                                        of the node contents.
 between related nodes is depicted by an edge. In                         𝑒1        ℎpage
 other terms, each node holds the contents of each          ℋelement = [𝑒2] = [ℎdiscipline]                 (2)
 page of the book, while an edge expresses the                            𝑒3        ℎera
 relationship between two related pages.
     Therefore, what is called “learning path” in the      ℋBefore represents the related pages labeled as
 context of this study is a collection of nodes and     page BEFORE (=B) in the book, which refer to
 edges extracted from a knowledge graph.                the related pages older than the current page.
 Generation and optimization of learning path to be     ℋBefore is defined as in equation (3) according to
 presented to learners at a given time of the           the number of older related pages NB, and each
 interaction are achieved by the means of an            BEFORE page 𝑏i.
 interactive genetic algorithm (IGA), a kind of IEC                          𝑏1
 algorithm.                                                                  𝑏2
     In the proposed system, users are first asked to                         ⋮
 explore the knowledge graph and select paths of           ℋBefore = 𝑏 = 𝑏 (1  i  NB)                (3)
                                                                                i
 interest which they evaluate ((Phase 1). Then, the                           ⋮
 system learns the features of the paths that are                          [𝑏𝑁𝐵 ]
   ℋAfter is defined similarly to ℋBefore and             quantitatively express the degree of relevance or
represents the related pages labeled as page              divergence between two nodes (i.e., learning
AFTER (=A) in the book, as shown in (4). Note             contents).
that NA stands for the number of related pages
coming after the current page 𝑎j.                         2.2.3. Learning           path      optimization
                 𝑎1                                       algorithm
                 𝑎2
                  ⋮                                           Path optimization here refers to the generation of
   ℋAfter = 𝑎 = 𝑎j (1  i  NA)                    (4)
                                                          new paths of interest to the user by the system. Let
                  ⋮                                       N be the number of paths generated from the
               [𝑎𝑁𝐴 ]                                     knowledge graph G described in the previous
                                                          section, and pathk (k ∈ N ), a path arbitrarily
    Next, 𝑡 which also represents a content node          retrieved from the path database. In this study, each
similarly to ℎ above is defined as follows. Let 𝑡page     pathk has a fixed length and is composed of four
denote the page number, 𝑡discipline denote the            nodes h1, h2, h3, h4 (h1, h2, h3, h4 ∈ ℎ) and three
discipline, and 𝑡era the era. t is expressed as in (5).   edges 𝑟1, 𝑟2, and 𝑟3 (𝑟1, 𝑟2, 𝑟3 ∈ 𝑟).
         𝑡1         𝑡page                                     Considering that the edges 𝑟1, 𝑟2, 𝑟3 are
    𝑡 = [𝑡2] = [𝑡discipline]                        (5)   defined as in (6), 𝑟𝑝𝑎𝑡ℎ𝑘 which is the vector
         𝑡3          𝑡era
    Finally, 𝑟 consists of the association of the         representing the whole path (i.e., 𝑝𝑎𝑡ℎ𝑘 ) is
following three vectors 𝒳element, 𝒳Before, and 𝒳After,    expressed as the sum of 𝑟1, 𝑟2, and 𝑟3 as follows:
as shown in equation (6).                                          𝑟𝑝𝑎𝑡ℎ𝑘 = [𝑟1, 𝑟2, 𝑟3]           (10)
          𝒳element                                           In the present study, the process of path
    𝑟 = [ 𝒳Before ]                                (6)    optimization using IGA is based the gene
           𝒳After                                         information expressed by 𝑟𝑝𝑎𝑡ℎ𝑘 . To such extent,
    𝒳element expresses the relation between the           the learner first rates some paths presented to him
main contents of node ℎ and the main content of           by the system in terms of relevance with their
node 𝑡 in terms of difference between discipline
                                                          interests. Here, it seems important to bear in mind
and era parameters, as shown in (7).
             |ℎ𝑑𝑖𝑠𝑐𝑖𝑝𝑙𝑖𝑛𝑒 − 𝑡𝑑𝑖𝑠𝑐𝑖𝑝𝑙𝑖𝑛𝑒 |                 that learners are not prompted to evaluate each
𝒳element = [                              ]        (7)    edge or node, but the whole path with a focus on
                    |ℎ𝑒𝑟𝑎 − 𝑡𝑒𝑟𝑎 |
                                                          the connection between starting nodes and ending
    𝒳Before is defined as the difference between
                                                          nodes. The intention here, is to make the system
node ℎ and 𝑡 in terms of three parameters: pages
number, discipline, and era, as shown in equation         capture how interesting the learner finds the
(8). Note that here 𝒳𝐵𝑖 = 0 if 𝑡 = 𝑏𝑖 (i ∈ NB).           connection between several related events across
                       |𝑏𝑖1 − 𝑡1 |                        various scientific disciplines and eras. Based on
                                                          the obtained evaluation values, the path is
𝒳Before = 𝒳Bi = [ 𝑖2 − 𝑡2 |]
                       |𝑏                          (8)
                       |𝑏𝑖3 − 𝑡3 |                        optimized by genetic algorithm processing, and
    Similarly, 𝒳After is defined as the difference        the next-generation solution candidate (i.e.,
between node ℎ and 𝑡 in terms of three                    learning path) is presented to the learner. The path
parameters: pages number, discipline, and, and            is optimized by repeating this process for a certain
era, as shown in equations (9). Here as well,             number of generations. Note that here, the path
𝒳𝐴𝑗 =0 if 𝑡 = 𝑎𝑗 (j ∈ NA).                                optimization differs from usual implementation of
                      |𝑎𝑗1 − 𝑡1 |                         IGA as it requires an additional process that we
                                                          call Path retrieval. When generating the next
𝒳After = 𝒳Aj = [|𝑎𝑗2 − 𝑡2 |]                       (9)
                                                          generation of solutions, in most cases, Crossover
                      |𝑎𝑗3 − 𝑡3 |
                                                          or Mutation will cause the generation of candidate
    Based on the proposed knowledge graph                 solutions (i.e., paths) that do not exist in the path
model, our key idea is to let an edge 𝑟 capture           database RDB. Therefore, for example, a non-
differences in terms of discipline, era and page
                                                          existent path rpathA needs to be “replaced” by an
number between two given nodes, ℎ and 𝑡.
                                                          existing path rpathB with the constraint that both
Besides, by expressing era and page number as
time series parameters and adopting a similarity          paths are similar enough (i.e., rpathA  rpathB). To the
scale for the discipline parameter, we aim to             extent of calculating the degree of similarity
between two paths, we adopted the Dynamic Time            contents (i.e., path) presented at the last
Warping (DTW) algorithm [23], which is a well-            generation was relatively high (M= 3.9, SD:0.92).
known technique to find an optimal alignment                  Next, DTW values, which indicate similarity
between two given (time-dependent) sequences              degrees between the generated path by the
under certain restrictions. The DTW distance              algorithm and the one retrieved from the database,
𝐷(𝑝𝑎𝑡ℎ𝑘 , 𝑝𝑎𝑡ℎ𝑙 ) which indicates the degree of           tend to converge to a value near 0 around the last
similarity of two different paths 𝑝𝑎𝑡ℎ𝑘 and               generation. This suggests that the proposed
𝑝𝑎𝑡ℎ𝑙 is recursively calculated using the                 system was able to generate paths that are close to
                                                          paths which exist in the database. This is a good
following equations:
                                                          indication that the proposed DTW-based path
𝐷(𝑝𝑎𝑡ℎ𝑘 , 𝑝𝑎𝑡ℎ𝑙 )
                                                          similarity calculation method performed well.
= 𝛿(𝑟𝑝𝑎𝑡ℎ𝑘 , 𝑟𝑝𝑎𝑡ℎ𝑙 )                                         However, when analyzing the transition of
           𝐷(𝑝𝑎𝑡ℎ𝑘 , 𝑝𝑎𝑡ℎ𝑙−1 )                            DTW values for some subjects, there were cases
+ min { 𝐷(𝑝𝑎𝑡ℎ𝑘−1 , 𝑝𝑎𝑡ℎ𝑙 )               (11)            in which DTW values rose rapidly even near the
          𝐷(𝑝𝑎𝑡ℎ𝑘−1 , 𝑝𝑎𝑡ℎ𝑙−1 )                           last generation or did not show a decreasing trend
                                                          despite the number of generations increased, such
   where 𝛿(𝑟𝑝𝑎𝑡ℎ𝑘 , 𝑟𝑝𝑎𝑡ℎ𝑙 ) denotes the distance         as in the case of Subject B (Figure 4). Therefore,
                                                          we cannot rule the hypothesis that using a method
between respective edges of 𝑝𝑎𝑡ℎ𝑘 and 𝑝𝑎𝑡ℎ𝑙               other than DTW distance as a method for
calculated as:                                            calculating path similarity may lead to higher
 𝛿(𝑟𝑝𝑎𝑡ℎ𝑘 , 𝑟𝑝𝑎𝑡ℎ𝑙 ) = |𝑟𝑝𝑎𝑡ℎ𝑘 − 𝑟𝑝𝑎𝑡ℎ𝑙 | (12)            performance for path optimization.
                                                              From the results of the questionnaire survey,
3. Pilot Evaluation                                       we note that the proposed system was able to
                                                          present interesting and surprising learning
                                                          contents to two out of three subjects. Moreover,
    We conducted an experimental pilot
                                                          two subjects also declared that they were able to
evaluation to investigate whether the proposed
                                                          experience serendipity through their interaction
system could present information of interest but
                                                          with the system. Such results seem to suggest the
yet unexpected enough to the extent to induce
                                                          meaningfulness of the proposed approach.
serendipity within participants. The subjects were
3 university students majoring in science-related
fields. Subjects were asked to visit and then
evaluate the paths proposed by the system in terms
of preference level on the scale of 0 to 5. Based on
their ratings, the system generated new paths and
the same operation was repeated until the ending
condition (i.e., 10 generation rounds) was met. At
the end of the interactions, we administrated a
questionnaire survey, to collect participants’
subjective opinions on the meaningfulness of their
interaction with the system.
    Figure 3~5 show the transition of the DTW
values and evaluation scores of the most highly
rated paths by each of the three participants
(Subjects A~C) between the first and last
generation rounds.
    First, from these results, it can be noted that the
proposed system was able to optimize the paths
according to each user since the highest
evaluation scores from participants seem to
stabilize around the last generations. In other
terms, the system was able to gradually present
subjects with learning contents that were highly           Figure 3: Evaluation scores of the best paths and
rated. The average evaluation score of the learning        corresponding DTW values (Top to Bottom Subject
                                                           A, B and C).
                                                       [11] M. J. Ibarra, C. Serrano, and A. F. Navarro,
[1] H. Drachsler, K. Verbert, O. C. Santos, and             “Recommender system to identify students
     N. Manouselis, “Panorama of recommender                with learning deficiencies in assessments” In
     systems      to    support     learning,”    In        2016      International     Symposium      on
     Recommender systems handbook, pp. 421–                 Computers in Education (SIIE), IEEE, pp. 1–
     451, Springer, Boston, MA, 2015, doi:                  6, 2016.
     10.1007/978-1-4899-7637-6_12.                     [12] R. Rismanto, A. Rachmad Syulistyo, and B.
[2] M. D. Ekstrand, “Collaborative Filtering                P. Citra Agusta, “Research Supervisor
     Recommender Systems,” Foundations and                  Recommendation System Based on Topic
     Trends® in Human–Computer Interaction,                 Conformity,” International Journal of
     vol. 4, no. 2, pp. 81–173, 2011, doi:                  Modern Education and Computer Science,
     10.1561/1100000009.                                    vol. 12, no. 1, pp. 26–34, Feb. 2020, doi:
[3] P. Lops, M. D. Gemmis, and G. Semeraro,                 10.5815/ijmecs.2020.01.04.
     “Content-based recommender systems: State         [13] O. Yaqub, “Serendipity: Towards a
     of the art and trends,” In Recommender                 taxonomy and a theory,” Research Policy,
     systems handbook, pp. 73–105, Springer,                vol. 47, no. 1, pp. 169–179, Feb. 2018, doi:
     Boston, MA, 2011, doi: 10.1007/978-0-387-              10.1016/j.respol.2017.10.007.
     85820-3_3                                         [14] H. Takagi, “Interactive evolutionary
[4] L. Iaquinta, M. de Gemmis, P. Lops, G.                  computation: fusion of the capabilities of EC
     Semergro, M. Filannino, and P. Molino,                 optimization and human evaluation,”
     “Introducing serendipity in a content-based            Proceedings of the IEEE, vol. 89, no. 9, pp.
     recommender system”, In Proceedings of the             1275–1296, 2001, doi: 10.1109/5.949485.
     Eighth International Conference on Hybrid         [15] C. Caldwell and V. S. Johnston, “Tracking a
     Intelligent Systems, IEEE, pp. 168–173,                criminal suspect through” face-space “with a
     2008.                                                  genetic algorithm”, In Proceedings of
[5] T. Gup, “Technology and the end of                      International Conference on Genetic
     serendipity”, The Chronicle of Higher                  Algorithms, 1992, pp. 416–421.
     Education, vol. 44, p. A52, 1997.                 [16] J. H. Lee, H. S. Kim, and S. B. Cho,
[6] Z. A. Pardos, and W. Jiang, “Designing for              “Accelerating       evolution    by     direct
     serendipity in a university course                     manipulation for interactive fashion design,”
     recommendation system” In Proceedings of               In Proceedings of the fourth International
     the tenth international conference on learning         Conference on Computational Intelligence
     analytics & knowledge, pp. 350–359, 2020.              and Multimedia Applications. ICCIMA,
[7] I. Buchem, “Serendipitous learning:                     2001, pp. 343–347.
     Recognizing and fostering the potential of        [17] N. Tokui, and H. Iba, “Music composition
     microblogging”, Form@re, vol. 11, no. 74,              with interactive evolutionary computation.”
     pp. 7–16, Mar. 2013, doi: 0.13128/formare-             In Proceedings of the third international
     12559.                                                 conference on generative art, 2000, vol. 17,
[8] G. A. Fine and J. G. Deegan, “Three                     no. 2, pp. 215–226.
     principles of Serendip: insight, chance, and      [18] H. Takagi and M. Ohsaki, “Interactive
     discovery       in   qualitative     research,”        Evolutionary Computation-Based Hearing
     International Journal of Qualitative Studies           Aid Fitting,” IEEE Transactions on
     in Education, vol. 9, no. 4, pp. 434–447, Oct.         Evolutionary Computation, vol. 11, no. 3, pp.
     1996, doi: 10.1080/0951839960090405.                   414–427,          Jun.        2007,       doi:
[9] J. Gritton, “Can serendipitous browsing lead            10.1109/tevc.2006.883465.
     to                                serendipitous   [19] R. G. Brockett and R. Hiemstra, Self-
     learning?,”http://www.futurelab.org.uk/reso            direction in Adult Learning: Perspectives on
     urces/publications-reports-articles/web-               Theory, Research and Practice. Routledge,
     articles/Web-Article795 (accessed June                 1994.
     30th, 2022).                                      [20] E. Olshannikova, T. Olsson, J. Huhtamäki, S.
[10] O. R. Zaiane, “Building a recommender                  Paasovaara, and H. Kärkkäinen, “From
     agent for e-learning systems,” In                      Chance to Serendipity: Knowledge Workers’
     Proceedings of International Conference on             Experiences of Serendipitous Social
     Computers in Education, IEEE, pp. 55-59,               Encounters,” Advances in Human-Computer
     2002, doi:
     Interaction, vol. 2020, pp. 1–18, Feb. 2020,
     doi: 10.1155/2020/1827107.
[21] J. Gribbin, A. Hart-Davis, D. Palmer, J.
     Cherfas, and Dorling Kindersley Limited,
     Science, The definitive visual guide.
     London: Dorling Kindersley Publishers Ltd.
[22] A. Rossi, D. Barbosa, D. Firmani, A.
     Matinata, and P. Merialdo, “Knowledge
     Graph Embedding for Link Prediction,”
     ACM Transactions on Knowledge Discovery
     from Data, vol. 15, no. 2, pp. 1–49, Apr.
     2021, doi: 10.1145/3424672.
[23] T. Giorgino, “Computing and Visualizing
     Dynamic Time Warping Alignments inR:
     ThedtwPackage,” Journal of Statistical
     Software, vol. 31, no. 7, 2009, doi:
     10.18637/jss.v031.i07.