<!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>Behaviour-aware Tourist Profiles Data Generation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pavel Merinov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>David Massimo</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francesco Ricci</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Free University of Bozen-Bolzano</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We propose a computational model to synthesise individual-level user profiles from scarce populationlevel data in tourism domain. Namely, our model exploits, as input, summary information about the items (and item attributes) selected by users, and, as output, builds individual-level user profiles that respect the provided input. As a key contribution, we utilise discrete choice behavioural model to conjoin (via chi-square divergence minimisation) the choices made by the synthesised population of users with the choices observed in the real data. To showcase our idea, we release a code and a dataset that includes synthesised profiles of 10,000 users that interacted with circa 200 items.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;population synthesis</kwd>
        <kwd>aggregated data</kwd>
        <kwd>dataset</kwd>
        <kwd>user modelling</kwd>
        <kwd>tourist profiles</kwd>
        <kwd>operations research</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>2. Related work</title>
      <p>
        Our research on user profiles synthesis relates to the class of Synthetic Reconstruction techniques
[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and the class of Copula-based Population Generation techniques [
        <xref ref-type="bibr" rid="ref4 ref5">4, 5</xref>
        ]. According to the
literature, a typical population reconstruction model goes through a two-step process. At the
ifrst step, a joint distribution of attributes is fitted to match known marginal sums, generally
requiring a small real sample of data. At the second step, simulated users and items are sampled
from an estimated joint distribution. Overview of reconstruction methods is presented in a
survey [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Our research also relates to the area of user behaviour (choice) models. Knowledge
about how a user chooses can be exploited to enrich the population synthesis process; user
behaviour, items visit popularity distribution, and user profile are jointly dependent. Choice
models are typically based on the assumption that the behaviour of the decision maker maximises
the own utility [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In pursue to answer a question on how to generate high-fidelity tourist
profiles, our approach links together (1) reconstruction methods with (2) user behaviour models.
We apply utility maximisation framework and solve the matching problem between predicted
and marginal sums. Technical details are provided in the next section.
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Mathematical model</title>
      <p>Our model requires structured input that can be tweaked depending on target constraints of
the tourism environment. In general, the computational model relies on (1) prior knowledge
about the environment presented in a form of summary tables, (2) POI attributes model, and (3)
choice model that determines which POIs a tourist with a given profile will visit. As output, the
computational model generates tourist profiles that set tourist preferences towards POIs. We
discuss the algorithm that links input and output together in a unified optimisation framework.</p>
      <sec id="sec-3-1">
        <title>3.1. Summary tables of tourist visits</title>
        <p>The computational model by design relies on two marginal distributions that provide a summary
of tourist behaviour. The first marginal sum is a POIs visit popularity distribution q∗ . We model
a distribution q∗ as a long-tail with probabilities q∗j ∝ 1/rj, where rj is an assigned rank for
j-th POI and the most popular one has rank 1. In a population of N users and J POIs on average
q∗j N users visit the j-th POI. Importantly, probabilities do not sum to 1, as users can visit more
than one POI. Second marginal sum is a tourist level of activity a∗ . This is the percentage of
tourists who visit a given number of POIs during a trip. We model a discrete distribution a∗
as a non-negative probability mass vector over possible number of visited POIs. Similarly, we
assume that on average a∗tN users visit exactly t POIs during a trip (see Figure 1 and Table 1).</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. POI profile</title>
        <p>
          Each POI j has a unique representation fj that we model as a vector with d components
(fj1, fj2, . . . , fjd) ∈ [
          <xref ref-type="bibr" rid="ref1">0, 1</xref>
          ]d that describes a given POI. Each component determines (on a
scale of 0 to 1) how much each attribute (POI category or feature) is present in this POI. By
design, if POI profile fj information is available from domain experts, it can be used as-is in our
computational model. Otherwise, we run a procedure to create POI profile from scratch. While
there is freedom on which attributes to use, the joint distribution of attributes is not arbitrary.
First, we assume that each POI should belong to one or more categories that inherit similarities:
all POIs within one category share common attributes. Second, a POI profile tend to be sparse,
reflecting the presence of only a few attributes. In our case study we generated POI attributes
that respect established assumptions, corresponding correlation structure is shown in Figure 2.
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. Tourist profile</title>
        <p>
          Each tourist n has a unique representation zn that we model as a vector with d components
(zn1, zn2, . . . , znd) in the same vector space as POIs. Components of this vector represent
preferences towards corresponding POI attributes. From tourism literature, tourists can be
grouped on the basis of their preferences [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. In our case study we assume that tourists can be
divided in G groups, such that tourists within a group are more look alike rather than between
groups: preferences within a group are distributed (no correlation between preferences) Gaussian
around group centroid. Looking ahead, optimised tourist profiles – the output of computational
model and the outcome of our case study – are shown in Figure 2.
        </p>
      </sec>
      <sec id="sec-3-4">
        <title>3.4. Choice model</title>
        <p>Each user, choosing an items, tries to maximise their own utility. Choice protocol is as follows,
user n estimates a linear utility unj = zTnfj for each item j in the collection of POIs and then
selects top t (in terms of utility) items from this collection. Parameter t reflects how many items
will be selected by the user during his/her trip (in our example Figure 1 it can be from 1 to
5). This parameter usually depends on available time budget, time required to visit a POI, and
distances between POIs. Even this simple choice model makes synthesis of tourist profiles – our
main goal in this study – very dificult, since user decisions are based on a non-diferentiable
operator arg max. In the next section we discuss an approach to relax this operator and, as a
consequence, simplify the synthesis problem.</p>
      </sec>
      <sec id="sec-3-5">
        <title>3.5. Link model</title>
        <p>The aim of this research is to synthesise a population of N users {zn} that interact with a
collection of J items {fj} in accordance with utility unj = zTnfj maximisation framework. It can
be considered as an optimisation problem over dN parameters. Namely, we are searching for
user profiles such that user choices are compatible with POIs visit popularity distribution q∗ :
popular items appear more often in the top choices because the utility of popular items should
be higher than the utility of long-tail items. To fit the population we optimise the quadratic loss:</p>
        <p>J
Lz = ∑︂(pj − q∗j )2/q∗j + Rz →− min
j=1 z1,z2,...,zN</p>
        <p>G N G
Rz = ∑︂ λ wg ∑︂ 1{n∈g} · ∥ zn − z¯g∥2 + λ bg ∑︂ cossim(z¯g, z¯h).</p>
        <p>g=1 n=1 h&gt;g
pj is the probability that the j-th item is chosen. We approximate pj as the fraction of users who
prefer the j-th item based on utility maximising choice model. Regularisation Rz contains two
parts: the first part imposes Gaussian prior on user profiles within each cluster g with centroid
z¯g, and the second part penalises for similarities between each two cluster centroids z¯g and z¯h.
To optimise this quadratic loss with standard gradient-based techniques we re-parameterise (to
relax arg max structure of choice model) probability vector for each component pk as:</p>
        <p>N T
pk = N1 ∑︂ ∑︂ a∗t · (︂ 1 +
un(j) means that the sum is taken over an ordered in decreasing order subsequence of
un(1), un(2), . . . , un(J) starting from index t + 1. For high β values, this estimates the share
of users for whom item k belongs to top-t choices, i.e., unk &gt; un(t+1). Expectation over
distribution a∗ (over a possible number of visits t) reflects the fact that users, even with the same
preferences zn, may visit diferent number of POIs during a trip depending on the available
time budget.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Experimental setup</title>
      <p>To showcase our approach, we synthesised tourist profiles. Table 1 summarises experimental
setup. Figure 2 shows correlation structure of the synthesised tourist profiles. Figure 3 shows
reconstructed tourist choices: each black dot is a POI (choice) favoured by a particular tourist
according to his/her utility model, while the right side portrays marginalised over all tourists
choices. Marginalised fit – our measure of goodness of fit – is consistent: proposed
computational model learned tourist profiles in such a way that corresponding tourist choices match
with the ground truth visit popularity distribution, small deviations are due to substitution
of combinatorial hard-argmax optimisation problem (that is intractable) with a diferentiable
problem with soft-argmax indicators. The source code is available on Github1.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusions</title>
      <p>We have proposed a computational model to synthesise tourist profiles from aggregated data and
released a synthetic dataset with a source code to generate it. Table 1 shows our configuration,
which can be tweaked based on the target tourism environment. Our model exploits
gradientbased optimisation, making it scalable to very large environments (millions of tourists and
thousands of POIs). Further extensions require the close collaboration with experts in the
domain to expand knowledge about the tourist population: improve user generation process
(enforce correlation structure), and support context-aware user behaviour.
1https://github.com/pashaPASHaa/tourist-profiles-data-generation</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>D.</given-names>
            <surname>Massimo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricci</surname>
          </string-name>
          ,
          <article-title>Building efective recommender systems for tourists</article-title>
          ,
          <source>AI Mag</source>
          .
          <volume>43</volume>
          (
          <year>2022</year>
          )
          <fpage>209</fpage>
          -
          <lpage>224</lpage>
          . URL: https://doi.org/10.1002/aaai.12057. doi:
          <volume>10</volume>
          .1002/aaai.12057.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>P.</given-names>
            <surname>Merinov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Massimo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricci</surname>
          </string-name>
          ,
          <article-title>Sustainability driven recommender systems</article-title>
          , in: G. Pasi,
          <string-name>
            <given-names>P.</given-names>
            <surname>Cremonesi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Orlando</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Zanker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Massimo</surname>
          </string-name>
          , G. Turati (Eds.),
          <source>Proceedings of the 12th Italian Information Retrieval Workshop</source>
          <year>2022</year>
          , Milan, Italy, June 29-30,
          <year>2022</year>
          , volume
          <volume>3177</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2022</year>
          . URL: https://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>3177</volume>
          / paper22.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Barthélemy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. L.</given-names>
            <surname>Toint</surname>
          </string-name>
          ,
          <article-title>Synthetic population generation without a sample, Transp</article-title>
          . Sci.
          <volume>47</volume>
          (
          <year>2013</year>
          )
          <fpage>266</fpage>
          -
          <lpage>279</lpage>
          . URL: https://doi.org/10.1287/trsc.1120.0408. doi:
          <volume>10</volume>
          .1287/trsc.1120. 0408.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Fu</surname>
          </string-name>
          ,
          <article-title>Sync: A copula based framework for generating synthetic data from aggregated sources</article-title>
          , in: G. D.
          <string-name>
            <surname>Fatta</surname>
            ,
            <given-names>V. S.</given-names>
          </string-name>
          <string-name>
            <surname>Sheng</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Cuzzocrea</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Zaniolo</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          Wu (Eds.),
          <source>20th International Conference on Data Mining Workshops, ICDM Workshops</source>
          <year>2020</year>
          , Sorrento, Italy,
          <source>November 17-20</source>
          ,
          <year>2020</year>
          , IEEE,
          <year>2020</year>
          , pp.
          <fpage>571</fpage>
          -
          <lpage>578</lpage>
          . URL: https://doi.org/10.1109/ ICDMW51313.
          <year>2020</year>
          .
          <volume>00082</volume>
          . doi:
          <volume>10</volume>
          .1109/ICDMW51313.
          <year>2020</year>
          .
          <volume>00082</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F.</given-names>
            <surname>Benali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Bodenes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Labroche</surname>
          </string-name>
          , C. de Runz,
          <article-title>Mtcopula: Synthetic complex data generation using copula</article-title>
          , in: K. Stefanidis, P. Marcel (Eds.),
          <source>Proceedings of the 23rd International Workshop on Design, Optimization, Languages and Analytical Processing of Big Data (DOLAP) co-located with the 24th International Conference on Extending Database Technology and the 24th International Conference on Database Theory (EDBT/ICDT</source>
          <year>2021</year>
          ), Nicosia, Cyprus, March
          <volume>23</volume>
          ,
          <year>2021</year>
          , volume
          <volume>2840</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2021</year>
          , pp.
          <fpage>51</fpage>
          -
          <lpage>60</lpage>
          . URL: https://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>2840</volume>
          /paper8.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>K.</given-names>
            <surname>Müller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. W.</given-names>
            <surname>Axhausen</surname>
          </string-name>
          ,
          <article-title>Population synthesis for microsimulation: State of the art</article-title>
          ,
          <source>Arbeitsberichte Verkehrs-und Raumplanung</source>
          <volume>638</volume>
          (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>K. E.</given-names>
            <surname>Train</surname>
          </string-name>
          ,
          <article-title>Discrete choice methods with simulation</article-title>
          , Cambridge university press,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>H.</given-names>
            <surname>Gibson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yiannakis</surname>
          </string-name>
          ,
          <article-title>Tourist roles: Needs and the lifecourse</article-title>
          ,
          <source>Annals of tourism research 29</source>
          (
          <year>2002</year>
          )
          <fpage>358</fpage>
          -
          <lpage>383</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>