3 OUR APPROACH
3.1 Recommendation’s Module
Overview
Our system retrieves all possible transportation
routes that can be constructed for a given transaction
request. These routes are presented to the user
through an appropriate designed webpage. This
webpage gives to the user the opportunity either to
select one of the proposed routes (in this case he will
be asked to complete the transaction), or to be
redirected to an evaluation webpage where he can
access the whole number of routes and the
evaluation will be based on specific criteria. The
evaluation takes place in a transactions and
popularity rating web page and is based on various
criteria, such as:
• Cost, Duration, Safety and Reliability;
• Average scores on the above carriers’
elements that will be used;
• Average scores on the above sub-routes’
elements that will be used;
• The number of times that a specific route has
been selected by other customers;
• Customer’s preferences;
• Number of sub-routes (assuming that
transloadings are associated to a negative
factor).
A final score is extracted for each route with the
help of a mathematical formula which includes
weight factors for the above criteria. At the
beginning, the system renders the five best routes
according to the final score without any further
details. Though, the user is given the opportunity, if
he wishes, to see the subroutes and the particular
score details. The user can also compare a sub-route
with an alternative which is provided by one of the
ten best carriers. In this case, if a user chooses one of
the alternatives, apart from the selected carriers the
difference in the cost, time and score of the carrier is
presented. When the user selects the desired
itinerary, he is transferred to the transaction
confirmation page.
Having executed the optimal routes retrieval
algorithm (Lazanas et al., 2006; Crauser et al.,
1998), the user is prompted by the system to press
the Recommendation command button, in order to
be transferred to the itineraries’ evaluation webpage,
where results are presented. Furthermore, this
triggers the execution of the itineraries evaluation
algorithm (executed in the website’s server). The
recommendation process is based on an evaluation
algorithm, which applies to both the carrier and the
itinerary participating in a proposed solution. More
specifically, for every solution that the optimal route
algorithm has retrieved for the requested transaction,
we analyze the sub routes; for each of them, we
calculate the average score that the carrier has
received for its reliability during the transaction, as
well as the average score that the specific route has
for the duration of the transaction. During the
calculation of the above average grades, the scores
that each carrier or each route has received are
multiplied by the user’s reliability factor (through
the User_Reliability table which is upgraded every
time that a user evaluates a route). This is performed
in order to add a level of significance into a reliable
user’s opinion compared with a less reliable one.
This certain reliability is calculated by the number of
times that a user has rated an itinerary and not by the
fact that his evaluation was considered strict or not.
Additional to the above duration reliability
evaluation, there is a similar procedure for the safety
and the general carrier’s reliability during the
transaction. So, taking into consideration the
priorities (preferences) that the user has indicated
(cost, safety, duration, reliability), we calculate the
average of the carrier and the route under
consideration (relying on the sum of the particular
elements multiplied by gravity factors depending on
the priorities of the user).
Both the average of the specific criteria
(duration, reliability, safety, general reliability) and
the general average are stored in the database, in the
fields which correspond to the specific sub route.
When this procedure is completed for all the sub-
routes of the selected itinerary, the average of all the
scores which were stored for each sub route is
calculated in order to get the overall score for the
carriers and the sub-routes, which will be used for
the complete itinerary. The final score of the
itinerary is the sum of the overall grade for the
carriers and the overall grade for the subroutes,
normalized by a percentage of the sum according to
the overall cost and the number of transloadings for
the specific itinerary. The overall and the particular
grades are stored in tables corresponding to the
current itinerary. When this procedure is performed
for all itineraries, the user gets transferred to the
popularity calculation webpage, where it is
calculated whether each of the above itineraries has
been completed and its correspondent frequency.
Aim of this procedure is to observe if a specific
itinerary is particularly popular for the selected
transaction. The popularity of each route is an
element which is presented later to the user, in order
APPLYING HYBRID RECOMMENDATION POLICIES THROUGH AGENT-INVOKED WEB SERVICES IN
E-MARKETS
163