tions, the most repeated attribute values, which are the
ones of most interest to the user, can have its prefer-
ence increased. After evaluating them, they are erased
from the buffer.
Adaptation Mechanism. After the on- and the off-
line stages, many characteristics can be found and the
system can deduce a large amount of changes to do
in the profile. Many of those changes, also named
adaptations, can be incorrect. We have addressed this
problem by restricting the number of adaptations that
can be made to the profile for each execution of the
adaptation process. The parameter pc limits the num-
ber of increases and decreases which can be made to a
profile per adaptation step (a value of 2 allows a total
of 4 changes: 2 increases and 2 decreases).
When a large number of adaptations is being con-
sidered, only the more evident ones are performed.
The ones with more repetitions will be decreased. For
the increases, the evidence is measured by counting
the number of over ranked alternatives which do not
have those characteristics, so the ones with a greater
counter will be increased. A signed counter regulates
the final increase/decrease of the preference of the
profile. When the adaptation process detects an ev-
idence for a possible adaptation, it increases/reduces
a counter, initially set to 0, associated to that attribute
value. When this counter reaches the parameter k, the
increase/reduction is finally performed over the pref-
erence in the profile and the counter is reset to 0.
5 EVALUATION
Web-based Platform. In order to test and evaluate
the recommender framework presented in this paper,
a Web platform has been implemented
1
. It permits
the definition of a problem (set of user criteria, aggre-
gation and adaptation parameters), the definition of an
initial profile, the definition of an ideal profile that we
aim to learn, the random generation of a corpus of al-
ternatives for the problem, the simulation of tests of
user interaction with the system, and the visualisation
of the evolution of the user profile.
The accesses to the platform are regulated by a
user name and a password, allowing the maintenance
of multiple users with different profiles for each rec-
ommendation domain. This approach permits to anal-
yse the variability of results under different circum-
stances in the aggregation and adaptation stages.
Users can upload data files with information about
the alternativesthat must be analysed in order to make
1
Website: http://itaka2-deim.urv.cat/recommender/
a decision. The platform stores that information in a
database, letting users define a decision making prob-
lem on those alternatives.
General Performance. In order to evaluate the
framework, we propose to iteratively measure the dis-
tance between the current user profile and the ideal
profile that we want to learn. Iteratively and automat-
ically, the system selects the alternative that best fits
the ideal profile, which is the one that the user which
we want to have its profile learnt would choose. Then,
the selection and the over ranked alternatives are used
by the adaptation processes to evaluate which changes
should be performed. To compare the results of dif-
ferent tests, several simulations have been performed
taking into account different initial profiles, but main-
taining the ideal user profile. As it can be seen, dis-
tances between both profiles decrease over time.
The distance between the current (P) and the ideal
(I) profiles is calculated as follows:
dist(I, P) = (1)
=
1
n
n
∑
j=1
1
m
j
m
j
∑
k=1
|COG
x
(P( j, k)) −COG
x
(I( j, k))|
|COG
x
(s
0
) −COG
x
(s
T
)|
Here, n is the number of attributes, m
j
is the car-
dinality of the attribute j, COG
x
evaluates the coor-
dinate x of the centre of gravity of a linguistic label
(Isern et al., 2010), P( j, k) and I( j, k) return the lin-
guistic preference value of the attribute j for a given
value k in profiles P and I respectively. With this func-
tion we obtain an average of the distances between
all pairs of labels. The distance is normalised by us-
ing the extreme values of the fuzzy set S = {s
i
}, i ∈
{0, . . . , T}. The distance is 0 when both profiles are
identical. The maximum distance is 1 when all val-
ues contained in the user and the ideal profiles have
just the opposite labels (s
0
and s
T
). Moreover, this
function is commutative (dist(P, I) = dist(I, P)).
The conditions of all tests were the following:
3000 alternatives initialised randomly, blocks of 15
alternatives per iteration (200 iterations), profiles
(ideal and initial) initialised manually, and the term
set of Fig. 2. Although we will analyse the influence
of the main parameters later, these tests havebeen per-
formed using the extraction characteristics threshold t
of 30%, with the level of evidence k +/-5 to consider
a change in a value, allowing only 2 changes (pc) in
each sense in one iteration, storing up to 5 user selec-
tions (h) and needing at least 5 over ranked alterna-
tives (mo) to extract characteristics. In all cases, three
simulations with three initial profiles and sharing the
ideal profile have been conducted.
Fig. 3(a) compares the general performance of the
adaptation algorithm using the on-line process, and
ICAART 2011 - 3rd International Conference on Agents and Artificial Intelligence
340