A PROTOPTYPE TO RECOMMEND TRUSTWORTHY
KNOWLEDGE IN COMMUNITIES OF PRACTICE
Juan Pablo Soto, Aurora Vizcaíno, Javier Portillo-Rodríguez, Mario Piattini
University of Castilla-La Mancha, Alarcos Research Group – Institute of Information Technologies & Systems
Department of Information Technologies & Systems - Escuela Superior de Informática, Ciudad Real, Spain
Oscar M. Rodríguez-Elias
University of Sonora, Department of Mathematics, Hermosillo, Mexico
Keywords: Knowledge Management, Recommendation, multi-agent Systems.
Abstract: Knowledge Management is a key factor in companies which have, therefore, started using strategies and
systems to take advantage of its intellectual capital. However, employees frequently do not take advantage
of the means to manage knowledge that companies offer them. For instance, employees often complain that
knowledge management systems overload them with more work since they have to introduce information
into these systems, or that this kind of tools floods them with too much knowledge which is not always
relevant to them. In order to avoid these problems we have implemented a tool to recommend trustworthy
knowledge sources in communities of practice. This tool is based on a multi-agent architecture in
which agents attempt to help users to find the information which is most relevant to them. In order to do
this, the agents use a trust model to evaluate how trustworthy a knowledge source (which may even be
another agent) is.
1 INTRODUCTION
In recent years Knowledge Management (KM) has
become an important success factor for companies.
The purpose of knowledge management is to help
companies to create, share and use knowledge more
effectively (Davenport and Prusak, 1997).
Information technologies play a key role in
achieving these goals but are only a small
component of an overall system that must integrate
the supporting technology with people-based
business processes. KM is not a technology solution
but rather is primarily about people oriented process,
such as leadership, culture, expertise and learning,
with technology playing a supporting role. Based on
this idea we have studied how people obtain and
increase their knowledge in their daily work. From
this study we have realized that frequently,
employees exchange knowledge with people who
work on similar topics and consequently, either
formally or informally, communities are created
which can be called “communities of practice”, by
which we mean groups of people with a common
interest where each member contributes knowledge
about a common domain (Wenger, 1998).
Communities of practice (CoPs) enable their
members to benefit from each other’s knowledge.
This knowledge resides not only in people’s minds
but also in the interaction between people and
documents. CoPs share values, beliefs, and ways of
doing things. Many companies report that such
communities help reduce problems due to lack of
communication, and save time by “working smarter”
(Wenger et al, 2002). An interesting fact is that
members of a community are frequently more likely
to use knowledge built by their community team
members than those created by members outside
their group (Desouza et al, 2006). Because of this, as
is claimed in (Desouza et al, 2006), knowledge reuse
tends to be restricted within groups. Therefore,
people, in real life in general and in companies in
particular, prefer to exchange knowledge with
“trustworthy people” by which we mean people they
trust. For these reasons we consider important the
implementation of mechanism in charge of
321
Pablo Soto J., Vizcaíno A., Portillo-Rodríguez J., Piattini M. and M. Rodríguez-Elias O. (2008).
A PROTOPTYPE TO RECOMMEND TRUSTWORTHY KNOWLEDGE IN COMMUNITIES OF PRACTICE.
In Proceedings of the Third International Conference on Software and Data Technologies - PL/DPS/KE, pages 321-326
DOI: 10.5220/0001887103210326
Copyright
c
SciTePress
measuring and controlling the confidence level in a
community where the members sharing information.
Bearing in mind that people exchange
information with “trustworthy knowledge sources”
we have designed a prototype in which software
agents try to emulate humans evaluating knowledge
sources with the goal of fostering the use of
knowledge bases in companies where agents provide
“trustworthy knowledge” to the employees.
The remainder of this work is organized as
follows: Section 2 describes the design of a multi-
agent system to recommend CoPs’ members
trustworthy knowledge sources. Then in Section 3
the prototype of the system is presented, in this
section the trust model that we propose to be used in
CoPs is also explained. After that in Section 4 the
preliminary evaluation of the prototype is shown.
Section 5 outlined related works and finally in
Section 6 conclusions are future work are
summarized.
2 DESIGN OF THE
MULTI-AGENT SYSTEM
Due to the importance of knowledge management,
tools which support some of the tasks related to KM
have been developed. Different techniques are used
to implement these tools. One of them, which is
proving to be quite useful, is that of intelligent
agents (van-Elst et al., 2003). Software agent
technology can monitor and coordinate events,
meetings and disseminate information
(Balasubramanian et al., 2001). Furthermore, agents
are proactive in the sense that they can take the
initiative and achieve their own goals. The
autonomous behaviour of these agents is critical to
the goal of this research since agents can act on
behalf of their users by carrying out difficult and
often time-consuming tasks that employees have to
perform when using a KM system. Most agents
today employ some type of artificial intelligence
technique to assist the users with their computer-
related tasks, such as reading e-mails, maintaining a
calendar, and filtering information. The advantages
that agent technology has shown in the area of
information management have encouraged us to
consider agents as a suitable technique by which to
develop a multi-agent system with the goal of
supporting CoPs. To do this, we need to emulate
people’s behavior when they interact with the other
members of a community. For this reason, we have
grouped the agents into communities, thus
attempting to emulate CoPs. Figure 1 represents the
distribution of the multi-agent system where there
are two kinds of agent and where there are different
roles to play.
Figure 1: Multi-Agent System.
One type of agent is the User Agent which is in
charge of representing each person that may consult
or introduce knowledge in a community. The User
Agent can assume three types of behavior or roles
similar to the tasks that a person may carry out in
his/her community. Therefore, the User Agent plays
one role or another depending upon whether the
person that it represents carries out one of the
following actions:
The person contributes new knowledge to the
communities in which s/he is registered. In this
case the User Agent plays the role of Provider.
The person uses knowledge previously stored in
the community. Then, the User Agent will be
considered as a Consumer.
The person helps other users to achieve their
goals, for instance by giving an evaluation of
certain knowledge. In this case the role is that of
a Partner. So, Figure 1 shows that in
Community 1 there are two User Agents
playing the role of Partner (Pa), one User Agent
playing the role of Consumer (Co) and another
being a Provider (Pr).
The second type of agent within a community is
called the Manager Agent (represented in black in
Figure 1) which is in charge of managing and
controlling its community.
Every user agent has been constructed by
following the multi-agent architecture explained in
(Soto et al, 2007), in which the authors present a
three level architecture to support CoPs.
The multi-agent system has been designed by
using the INGENIAS (Pavón and Gómez-Sanz,
2003) methodology because this is considered by
many authors to be one of the most up to date and
complete methodologies.
ICSOFT 2008 - International Conference on Software and Data Technologies
322
3 THE PROTOTYPE
In order to test our multi-agent system, we have
developed a prototype system into which CoPs
members can introduce documents and where these
documents can also be consulted by other people.
The goal of software agents is that of helping
members to discover the information that may be
useful to the CoPs members, thus decreasing the
overload of information which, for instance,
employees often have and strengthening the use of
knowledge in enterprises. This prototype also helps
to discover experts in a community and permits the
detection of fraud when users insert non-valuable
knowledge into the community.
One feature of this system is that when a person
searches for knowledge in a community, and after
having used the knowledge obtained, that person
then has to evaluate the knowledge in order to
indicate whether:
- The knowledge was useful.
- How it was related to the topic of the search.
In this paper, due to space limitations, we shall
only explain how agents recommend documents
when a person is searching for information about a
topic.
In order to make it easier to search for documents
in a community, users can choose one topic from
those which are available in the community and the
user agent will attempt to find documents about this
topic.
The general idea is to consider those documents
which come from trustworthy knowledge sources
according to the user’s opinion or needs. User agents
use a trust model to discover which knowledge
sources are trustworthy. As this trust model will be
used in CoPs then the factors that arise in this kind
of community should be considered, such as:
The number of interactions that an agent will
have with other agents in the community will be low
in comparison with other scenarios such as auctions.
This is very important because we cannot use trust
models which need a lot of interactions to obtain a
reliable trust value; it is more important to obtain a
reliable initial trust value. We use four factors (see
Figure 2) to obtain a trust value:
Position: employees often consider information
that comes from a boss as being more reliable
than that which comes from another employee
in the same (or a lower) position as him/her
(Wasserman and Glaskiewics, 1994). However,
this is not a universal truth and depends on the
situation. For instance in a collaborative
learning setting collaboration is more likely to
occur between people of a similar status than
between a boss and his/her employee or
between a teacher and pupils (Dillenbourg,
1999). Such different positions inevitably
influence the way in which knowledge is
acquired, diffused and eventually transformed
within the local area. Because of this, as will
later be explained, this factor will be calculated
in our research by taking into account a weight
that can strengthen this factor to a greater or to a
lesser degree.
Expertise: This term can be briefly defined as
the skill or knowledge that a person who knows
a great deal about a specific thing has. This is an
important factor since people often trust experts
more than novice employees. In addition,
“individual” level knowledge is embedded in
the skills and competencies of the researchers,
experts, and professionals working in the
organization (Nonaka and Takeuchi, 1995). The
level of expertise that a person has in a
company or in a CoP could be calculated from
his/her CV or by considering the amount of time
that a person has been working on a topic. This
is data that most companies are presumed to
have.
Previous Experience: This is a critical factor in
rating a trust value since, as was mentioned in
the definitions of trust and reputation, previous
experience is the key value through which to
obtain a precise trust value. However, when
previous experience is scarce or it does not exist
humans use other factors to decide whether or
not to trust in a person or a knowledge source.
One of these factors is intuition.
Intuition: This is a subjective factor which,
according to our study of the state of the art, has
not been considered in previous trust models.
However, this concept is very important
because when people do not have any previous
experience they often use their “intuition” to
decide whether or not they are going to trust
something. We have tried to model intuition
according to the similarity between personal
profiles: the greater the similarity between one
person and another, the greater the level of trust
in this person as a result of intuition.
A PROTOPTYPE TO RECOMMEND TRUSTWORTHY KNOWLEDGE IN COMMUNITIES OF PRACTICE
323
Figure 2: Trust Model.
We have classified these four factors into two
groups: objective factors (position and expertise)
and subjective factors (intuition and previous
experience). The former is given by the company or
community and the latter depends on the agent itself
and the agent’s experience in time. There are four
different ways of using these factors, which depend
upon the agent’s situation.
If the agent has no previous experience, for
instance because it is a new user in the
community, then the agent uses position,
expertise and intuition to obtain an initial trust
value and this value is used to discover which
other agents it can trust.
When the agent has previous experience
obtained through interactions with other agents
but this previous experience is low (low number
of interactions), the agent calculates the trust
value by considering the intuition value and the
experience value. For instance, if an agent A has
a high experience value for agent B but agent A
has a low intuition value for agent B (profiles
are not very similar), then agent A reduces the
value obtained through experience. In this case
the agent does not use position and expertise
factors (objective factors) because the agent has
its own experience and this experience is
adjusted with its intuition which is subjective
and more personalized.
When the agent has enough previous experience
to consider that the trust value it has obtained is
reliable, then the agent only considers this
value.
The way to translate the trust model to trust values is
by using the following formula:
n
T
i
j
= w
e
*E
j
+w
p
*P
j
+w
I
*I
i
j
+ ( QC
i
j
)/n
j
=1
where T
ij
is the value of trust of j in the eyes of i, E
j
is the value of expertise which is calculated
according to the degree of experience that the person
upon whose behalf the agent acts has in a domain.
P
j
is the value assigned to a person’s position.
I
ij
denotes the intuition value that agent i has in
the agent j which is calculated by comparing each of
the users' profiles.
In addition, previous experience should also be
calculated. When an agent i consults information
from another agent j, the agent i should evaluate
how useful this information was. This value is called
QC
ij
(Quality of j’s Contribution in the opinion of i).
To attain the average value of an agent’s
contribution, we calculate the sum of all the values
assigned to these contributions and we divide it
between their total. In the expression n represents
the total number of evaluated contributions.
Finally, w
e
, w
p
and w
I
are weights with which the
trust value can be adjusted according to the degree
of knowledge that one agent has about another.
Therefore, if an agent i has had frequent interactions
with another agent j, then agent i will give a low
weight (or even zero) to w
i
since, in this case,
previous experience is more important than intuition.
The same may occur with w
e
, w
p.
So the weights
may have the value of 0 or 1 depending on the
previous experience that an agent has.
In order to illustrate how the prototype works, let
us look at an example. If a user selects a topic and
wants to search for documents related to this topic
his/her user agent will contact other user agents
which have documents about the topic, and the user
agent will then calculate the trust value for each
agent, which means that these agents are considered
to be knowledge sources and the user agent needs to
calculate which “knowledge source” is more
trustworthy. Once these values have been calculated,
the user agent only shows his/her user the
documents which have come from the most
trustworthy agents. In Figure 3 we can see the
results of a search sorted by the trust values, that is,
the first documents on the list come from the most
trustworthy knowledge sources (in this case the most
trustworthy agents with the highest trust values).
There are other possibilities, depending on user
preferences. For instance, as we can see in Figure 3,
the results of the request (sorted by reputation) show
a large amount of results, and the first one on the list
has five stars in the reputation level and four shields
in the position level.
This method of rating trust helps to detect an
increasing problem in companies or communities in
which employees are rewarded if they contribute
with knowledge in the community. Thus, if a person
introduces non-valuable documents with the sole
aim of obtaining rewards, the situation can be
detected since these documents will have low values
and the person will also be considered to be less
ICSOFT 2008 - International Conference on Software and Data Technologies
324
Figure 3: Showing and sorting results.
trustworthy. The agent will, therefore, not
recommend those documents. Moreover, this model
implies the reduction of users’ overload when they
use knowledge management systems, since with this
model the user agent only recommends the most
adequate and trustworthy knowledge.
4 EVALUATION OF THE
PROTOTYPE
Once the prototype has been finished we have
evaluated it. To do this, different approaches can be
followed, from a multi-agent point of view or from a
social one. First of all we have focused on the
former and we are testing the most suitable number
of agents advisable for a community. Therefore,
several simulations have been performed. As result
of them we found that:
The maximum number of agents supported by the
Community Manager Agent when it receives User
Agents’ evaluations is approximately 800. When we
tried to work with 1000 agents for instance, the
messages were not managed conveniently. However,
we could see that the Manager Agent could support
a high number of petitions, at least, using simpler
behavior.
All these results are being used to detect whether
the exchange of messages between the agents is
suitable, and to see if the information that we
propose to be taken into account to obtain a
trustworthy value of the reputation of each agent is
enough, or if more parameters should be considered.
5 RELATED WORKS
This research can be compared with other proposals
that use agents and trust in knowledge exchange.
With regard to Trust, in models such as eBay
(1995) and Amazon (1996), which were proposed to
resolve specific situations in online commerce, the
ratings are stored centrally and the reputation value
is computed as the sum of those ratings over six
months. Thus, reputation in these models is a single
global value. However, these models are too simple
(in terms of their trust values and the way in which
they are aggregated) to be applied in open multi-
agent systems. For instance, in (Zachaira et al, 1999)
the authors present the Sporas model, a reputation
mechanism for loosely connected online
communities where, among other features, new
users start with a minimum reputation value, the
reputation value of a user never falls below the
reputation of a new user and users with very high
reputation values experience much smaller rating
changes after each update. The problem with this
approach is that when somebody has a high
reputation value it is difficult to change this
reputation, or the system needs a high amount of
interactions. A further approach of the Sporas
authors is Histos which is a more personalized
system than Sporas and is orientated towards highly
connected online communities. In (Sabater and
Sierra, 2002) the authors present another reputation
model called REGRET in which the reputation
values depend on time: the most recent rates are
more important than previous rates. Carbó et al
(2003) presents the AFRAS model, which is based
on Sporas but uses fuzzy logic. The authors present
a complex computing reputation mechanism which
handles reputation as a fuzzy set while decision
making is inspired in a cognitive human-like
approach. In (Caballero et al, 2006) the authors
present a trust and reputation model that considers
trust and reputation as emergent properties of direct
interactions between agents, based on multiple
interactions between two parties. In this model, trust
is a belief an agent has about the performance of the
other party to solve a given task, according to own
knowledge.
The main differences between these reputation
models and our approach are that these models need
an initial number of interactions to obtain a good
reputation value and it is not possible to use them to
discover whether or not a new user can be trusted. A
further difference is that our approach is orientated
towards collaboration between users in CoPs. Other
A PROTOPTYPE TO RECOMMEND TRUSTWORTHY KNOWLEDGE IN COMMUNITIES OF PRACTICE
325
approaches are more orientated towards competition,
and most of them are tested in auctions.
6 CONCLUSIONS AND FUTURE
WORK
This paper describes a multi-agent prototype to
support CoPs in which knowledge source are rated
by using a trust model developed to be used solely in
CoPS. In this prototype CoPs members can
introduce documents and the software agents must
decide how trustworthy those documents are for the
user that they represent.
One important contribution of this paper is the
trust model, as it helps to detect experts in a
community, since those knowledge sources with
high trust values are supposed to be people who
contribute with valuable knowledge. The trust model
also helps to detect fraud when users contribute with
non-valuable knowledge. Another important feature
of our trust model, and that which makes it different
from previous models, is that even when a user is
new to the community and other agents do not have
any previous experience of working with him/her,
the trust model allows agents to obtain a preliminary
trust value by considering other factors such as the
new agent’s position, and level of expertise, along
with the intuition that each agent has about the new
member. In this way we attempt to model human
features, since when a person has to evaluate
something and s/he has no previous experience this
person uses other aspects such as his/her intuition in
order to decide whether or not to trust in it.
As future work, we are performing different tests
with the prototype and the trust model in order to see
how they might be improved according to different
domains.
ACKNOWLEDGEMENTS
This work is partially supported by the MELISA
project (PAC08-0142-3315), Junta de Comunidades
de Castilla-La Mancha, Consejería de Educación y
Ciencia, in Spain, partially supported by MECENAS
(PBI06-0024) and ESFINGE project (TIN2006-
15175-C05-05) Ministerio de Educación y Ciencia
(Dirección General de Investigación)/Fondos
Europeos de Desarrollo Regional (FEDER) in Spain
and CONACYT (México) under grant of the
scholarship 206147 provided to the first author.
REFERENCES
Amazon (1996). URL: www.amazon.com
Balasubramanian, S., Brennan, R., Norrie, D., 2001, An
Architecture for Metamorphic Control of Holonic
Manufacturing Systems. Computers in Industry, Vol.
46, No. 1, pp: 13-31.
Caballero, A., Botía, J., Skarmeta, A., 2006, A New
Model for Trust and Reputation Management with an
Ontology Based Approach for Similarity Between
Tasks. In: Fischer, K., Timm, I. J., André, E., Zhong,
N. (eds.) MATES. LNCS 4196, pp: 172-183.
Carbó, J., Molina, M., Davila, J, 2003, Trust Management
through Fuzzy Reputation. International Journal of
Cooperative Information Systems. Vol. 12, No. 1, pp:
135-155.
Davenport, T., Prusak, L., 1997, Working Knowledge:
How Organizations Manage What They Know.
Project Management Institute. Harvard Business
School Press, Boston, Massachusetts.
Desouza, K., Awazu, Y., Baloh, P., 2006, Managing
Knowledge in Global Software Development Efforts:
Issues and Practices. IEEE Software, pp: 30-37.
Dillenbourg, P., 1999, Introduction: What Do You Mean
By "Collaborative Learning"?, Collaborative Learning
Cognitive and Computational Approaches.
Dillenbourg (Ed.). Elsevier Science.
ebay (1995). URL: www.ebay.com
Nonaka, I., Takeuchi, H., 1995, The Knowledge Creation
Company: How Japanese Companies Create the
Dynamics of Innovation, Oxford University Press.
Pavón, J., Gómez-Sanz, J., 2003, Agent Oriented Software
Engineering with INGENIAS. Multi-Agent Systems
and Applications III: CEEMAS 2003, LNCS 2691, pp.
394-403
Sabater, J., Sierra, C., 2002, Social REGRET, a
Reputation Model based on social relations.
Proceedings of the Fifth International Conference on
Autonomous Agents, Vol. 3, No. 1, pp: 44-56.
Soto, J. P.,Vizcaíno, A., Portillo-Rodríguez, J., Piattini,
M., 2007, A Three Level Multi-agent Architecture to
Foster Knowledge Exchange. In 19
th
International
Conference on Software Engineering and Knowledge
Engineering (SEKE), Boston, USA. pp. 565-569.
van-Elst, L., Dignum, V., Abecker, A., 2003, Agent-
Mediated Knowledge Management. International
Symposium AMKM, Stanford, CA, USA, Springer. pp.
1-30
Wasserman, S., Glaskiewics, J., 1994, Advances in Social
Networks Analysis, Sage Publications.
Wenger, E., 1998, Communities of Practice: Learning
Meaning, and Identity, Cambridge University Press.
Wenger, E., McDermott, R., Snyder, W., 2002,
Cultivating Communities of Practice, Harvard
Business School Press.
Zacharia, G., Moukas, A., Maes, P., 1999, Collaborative
Reputation Mechanisms in Electronic Marketplaces. In
32nd Hawaii International Conference on System
Sciences (HICSS).
ICSOFT 2008 - International Conference on Software and Data Technologies
326