cooperate upon well-specified business models,
which may efficiently carry out diverse processes.
This paper focuses on the features and
functionalities of a new module integrated in the
above system, namely the recommendation module,
which aims at enhancing the quality of the
associated decisions. Recommender systems have
been described as systems that produce
individualized recommendations as output or have
the effect of guiding the user in a personalized way,
in environments where the amount of on-line
information vastly outstrips any individual’s
capability to survey it (Burke, 2002). Alternative
techniques have been also proposed in the literature
in order to handle the above issues. Having
thoroughly considered their pros and cons, our
approach follows a hybrid recommendation
technique.
The remainder of this paper is structured as
follows. Section 2 discusses approaches and related
work from the area of recommender systems.
Section 3 describes the basic aspects of our
approach, namely transportation plan selection,
alternative solution evaluation and recommendation
methodology. Section 4 deals with the evaluation of
a transaction and the exploitation of agent
technologies. Finally, Section 5 concludes the paper.
2 RECOMMENDER SYSTEMS
Recommender systems apply data analysis
techniques to assist users finding the items they need
by producing a predicted likeness score or a list of
top-N recommended items. Two of the most widely
adopted recommendation techniques are
Collaborative Filtering (CF) and Knowledge Based
Recommendation (KBR), each one possessing its
own strengths and weaknesses. Collaborative
Filtering (CF) (Resnick et al., 1994) is the most
commonly used recommendation technique to date.
The basic idea of CF-based algorithms is to provide
item recommendations or predictions, based on the
opinion of other like-minded users. In a typical CF
scenario, there is a list of m users U = {u
1
,u
2
,…,u
m
}
and a list of n items I = {i
1
,i
2
,…,i
n
}. Each user u
i
is
associated with a list of items I
Ui
, for which the user
has expressed his/her opinion. Opinions can be
explicitly given by the user as a rating score,
generally within a certain numerical scale, or can be
implicitly derived from transaction records, by
analyzing timing logs, mining web hyperlinks and so
on. For a particular user U
a
, the task of a
collaborative filtering algorithm is to find an item
likeness that can be of two forms:
• Prediction: this is a numerical value, P
a,j
,
expressing the predicted likeness of item i
j
(i
j
does not belong in I
Ua
) for the user. The
predicted value is within the same scale
(e.g. 1 to 5) as the opinion values provided
by U
a
.
• Recommendation: this is a list of N items I
r
(I
r
is a subset of I) that the user will like
most (the recommended list must contain
items not already selected by the user). This
outcome of CF algorithms is also known as
Top-N recommendation. (Sarwar et al.,
2000).
On the other hand, Knowledge-Based
Recommendation attempts to suggest objects based
on inferences about a user’s needs and preferences.
In some sense, all recommendation techniques could
be described as doing some kind of inference.
Knowledge-based approaches are distinguished in
that they utilize functional knowledge: that is, they
have knowledge about how a particular item meets a
particular user need, and can therefore reason about
the relationship between a need and a possible
recommendation. The user profile can be any
knowledge structure that supports this inference. In
the simplest case, as in Google (www.google.com),
it may simply be the query that the user has
formulated. The Entrée system and several other
recent systems (for an overview, see (Schmitt &
Bergmann, 1999)) employ techniques from case-
based reasoning for knowledge-based
recommendations.
The knowledge used by a knowledge-based
recommender system can also take many forms.
Google uses information about the links between
web pages to infer popularity and authoritative value
(Brin & Page, 1998). Entrée uses knowledge of
cuisines to infer similarity between restaurants.
Utility-based approaches calculate a utility value for
objects to be recommended; in principle, such
calculations could be based on functional
knowledge. However, existing systems do not use
such inference mechanisms, thus requiring users to
do their own mapping between their needs and the
features of products, either in the form of preference
functions for each feature, as in the case of Tête-à-
Tête, or answers to a detailed questionnaire, as in the
case of PersonaLogic (Burke, 2002). Knowledge-
based recommender systems are prone to the
drawback of all knowledge-based systems: the need
for knowledge acquisition. More specifically, there
ICEIS 2006 - SOFTWARE AGENTS AND INTERNET COMPUTING
88