A Knowledge Representation and Reasoning Module for
a Dialogue System in a Mobile Robot
ıs Seabra Lopes, Ant
onio J. S. Teixeira and Marcelo Quinder
IEETA, Departamento de Electr
onica e Telecomunicac¸
University of Aveiro,
3810-193 Aveiro, Portugal
Abstract. The recent evolution of Carl, an intelligent mobile robot, is presented.
The paper focuses on the new knowledge representation and reasoning module,
developed to support high-level dialogue. This module supports the integration
of information coming from different interlocutors and is capable of handling
contradictory facts. The knowledge representation language is based on classical
semantic networks, but incorporates some notions from UML. Question answer-
ing is based on deductive as well as inductive inference.
1 Introduction
Due to the successive advances in robotics-related technologies, robots are closer to
humans. Intelligent service robots capable of performing useful work in close coopera-
tion/interaction with humans are the next generation of robots.
However, in order to reach that phase, it is necessary to include in their design
such basic capabilities as linguistic communication, reasoning, reactivity and learning.
“Integrated” Intelligence identifies an approach to building intelligent artificial agents
in which the integration of all those aspects is considered [1].
This is the scope of CARL (Communication, Action, Reasoning and Learning in
Robotics), a research project started in our institute in 1999, in the framework of which
a robot prototype was developed, Carl [2]. The software architecture of Carl is based
on a set of Linux processes. One of them handles general perception and action, includ-
ing navigation. Other processes are dedicated to speech processing and touch screen
interaction. An animated face displays appropriate emotions. High-level reasoning and
natural language generation are mostly based on the Prolog engine. The central manager
is an event-driven system.
The human-robot communication process is modeled as the exchange of messages,
much like is done in multi-agent systems. The set of performatives or message types
in our Human-Robot Communication Language (HRCL) is inspired in KQML [3]. The
currently supported set of performatives includes tell, ask, ask
if, and achieve. The Spo-
ken Language Understanding (SLU) module combines a robust parser with memory
based learning and is capable of performing deep analysis - in grammatically correct
sentences (or mostly correct), and shallow analysis - in sentences with severe errors [4].
The current knowledge management system of Carl supports the acquisition of
knowledge obtained from interaction with human interlocutors [2]. The interaction with
Seabra Lopes L., J. S. Teixeira A. and Quinderé M. (2005).
A Knowledge Representation and Reasoning Module for a Dialogue System in a Mobile Robot.
In Proceedings of the 2nd International Workshop on Natural Language Understanding and Cognitive Science, pages 172-177
DOI: 10.5220/0002573901720177
Carl is viewed as a sequence of interaction sessions. All that is done is to associate the
collected information to the respective interaction session. The current system does
not perform any kind of information integration and, in particular, does not attempt to
resolve contradictions between pieces of information obtained from the different inter-
The latest developments of Carl are focused on the knowledge representation and
reasoning (KRR) module, designed to increase the actual dialogue capabilities of the
robot. This new module implements a semantic network and is capable of integrating
information obtained from different interlocutors, even if they are contradictory. When
a question is directed to Carl, inference mechanisms process all the acquired data to
give the best response.
Although there are various works on knowledge representation (KR) for robotics,
few of them are focused on supporting the dialogue system. Skubic et al developed a
framework to use spatial language in human-robot dialogues [5]. However, they are not
focused on acquiring information from different interlocutors and do not consider the
acquisition of non-spatial knowledge.
Kamp and Reyle proposed the Discourse Representation Theory (DRT), which -
like the other theories of dynamic semantics - accounts for the context dependence of
meaning. DRT uses Discourse Representation Structures (DRS) for semantic represen-
tation and a model-theoretic interpretation of those DRSs. The new version of DRT uses
a bottom-up approach in the construction of the representations instead of the top-down
approach of the original version [6].
Benferhat et al presented strategies for conflict resolution developed to deal with ex-
ception handling and iterated belief revision, but which could also be applied in merging
information from different sources [7]. Their work consists on weakening the contra-
dictory data, rather than eliminating them completely.
Brazdil and Torgo have developed a method to construct an integrated knowledge
base from several separated ones [8]. In their method, the knowledge bases used as input
can either be obtained by querying an expert or on the basis of data, using inductive
learning tools.
In this work, all the acquired data is kept on the knowledge base, and the respon-
sibility of resolving contradictions is left to the inference mechanisms. Besides that, it
supports a natural language dialogue system and it was designed to be applied in an
intelligent mobile robot.
The paper is structured as follows. Section 2 describes the KR language. The infer-
ence mechanisms are explained on section 3. The KRR module is presented on section 4
and section 5 concludes the paper with reference to future work.
2 Knowledge Representation Language
Complex domains, like the one of a dialogue system in an intelligent mobile robot,
require a general and flexible KR [9].
The scenario in which the robot must act involves conversation with various inter-
locutors and exchange of information with them. The module should provide function-
alities for knowledge acquisition and question answering. It’s important to note that the
agent should be able to start with no prior knowledge.
Since the robot can acquire data from different sources (interlocutors), the KRR
module must handle contradictory pieces of information.
Semantic networks [10] address the main representation requirements to support
a high level dialogue. It is very easy to represent the entities with them. Inference is
simple, all one has to do is to follow the relations between entities. Semantic networks,
not only provide ways for efficient computing, they also provide a very intelligible
Using semantic networks we can easily apply the rule of inheritance, in which all
properties of the supertype are copied to the subtypes, except if there is a redefinition
of the property in the subtype.
We have based the definition of our KR language on typical definitions of semantic
network and on class and object diagrams of UML [11].
We have used prolog predicates for this, including the declaration of types, objects
(instances of types) and various relationships between them. This language assumes
that objects are identified by system-generated identifiers. In the implementation, when
a new object comes up, a new integer identifier is generated. The predicates that provide
information on specific objects include instance(ObjID, Type), name(ObjID, Name) and
attribute(ObjID, Attribute, Value). Generalization is declared with subtype/2. Standard
UML relations (aggregation, composition, association) are also supported.
3 Basic Inference Mechanisms
There are three main types of inference: deduction, induction and analogy [12]. Take
the logical entailment (1), in which P represents the premise, BK the background
knowledge and C the consequence.
P BK |= C . (1)
Deduction is truth preserving. It derives consequence C from a given premise P
and background knowledge BK. Here, this kind of inference is used when the type has
an attribute with a default value and a question is made about the object’s attribute.
Consider the Fig. 1 and suppose somebody asks “how many legs does John have?”.
Since there is no information about legs in the object John, the module uses deduction
to get answer “2” from the type Human.
Fig.1. Deduction
If there is BK and C, induction can be used to hypothesize a premise P. In this work,
inductive inference is used when the objects of a type have some attribute information
that the type itself does not have. Take the representation in Fig. 2. If the question “what
does a cat like?” is made, induction is used to obtain the answer “milk” from the objects
of the type Cat, since this information is not directly asserted in the type itself.
: Milk
Fig.2. Induction
Finally, analogy is a combination of deduction and induction. Considering the knowl-
edge given in Fig. 3, suppose someone asks “what does Bob like?”. Since this informa-
tion is given neither on the object Bob itself nor on the type Cat, the module has to: first
use induction from the objects Tom and Jim to the type Cat; then use deduction from
the type Cat to the object Bob.
: Milk
Likes : Milk
Fig.3. Analogy
4 The Reasoning System
The functionalities of the KRR module are provided mainly by the procedure tell(Int,
Fact) – the interlocutor Int tells Fact to the system; and ask(Fact, Conf) – the system is
asked about Fact, the confidence in the answer, Conf, is returned.
The procedure tell simply stores the information given by the interlocutors. Infer-
ence is used in ask in order to provide the most suitable answer.
Confidences are calculated as follows. Consider a property of an object or type for
which a certain value is supported by N interlocutors and that a total of T interlocutors
provided values for this property. In this case, the confidence that the mentioned value
is the correct one is given by:
Conf (N, T ) =
T + 1
. (2)
Note that the confidence of answers based on few statements is reduced.
If the question is about an attribute value in a type, Algorithm 1 is used to determine
the value. The tree traversal step of the algorithm computes the frequency of occurrence
of the possible values of the Attribute in the type and all its subtypes (and sub-subtypes,
etc) and respective objects. If there is a supertype, the result of the tree traversal step is
combined with a similar result inherited from the supertype.
Algorithm 1: GET VALUE
input : Type, Attribute
output: ((V
, C
), .., (V
, C
)) in which V stands for Value, C for confidence and k the
number of different values of Attribute
, .., V
possible values of Attribute
In a tree traversal, compute the frequencies of occurrence, N
, .., N
, of each
possible value of Attribute in Type and all its subtypes (and sub-subtypes, etc) and
respective objects
(total number of statements about values of Attribute)
for i 1 to k do
conf (N
, T ) (According to Equation 2)
if Type has no supertype then
return ((V
, C
), .., (V
, C
ST supertype of Type
, C
), .., (V
, C
)) GET
VALUE(ST, Attribute)
for i 1 to k do
+ C
return ((V
, C
), .., (V
, C
If the question is about an attribute value in an object, confidences for all possible
values are computed in the object (equation 2) and in the type (Algorithm 1). The value
with the highest combined confidence is returned.
Although deduction is truth preserving, type information provided by interlocutors
is not necessarily more reliable than object information, so deductive inference does not
have a stronger weight than inductive inference.
The implementation of this module, as described, was done in Prolog.
5 Conclusion and Future Work
In this paper, the recent evolution of the intelligent mobile robot Carl was presented.
The paper focuses on the new KRR module. The KR language is based on semantic
networks and incorporates some notions from UML. The reasoning system combines
deductive and inductive inference.
Some important aspects have not yet been addressed. One of them is induction on
attributes with continuous values. Another problem is that inheritance does not take
into account the confidence on the generalization links (subtype). A third problem is
that when evaluating the values of an attribute it is assumed that only one is correct.
This is a limitation since, in general, an object or type can have several simultaneously
correct values for an attribute or relation.
Besides these limitations, we also plan to allow differentiating the interlocutors.
It would be reasonable to give more value to the information coming from someone
trusted by the robot. We are considering the development of a heuristic to give weight
to the interlocutors in order to have more truthful answers, especially when they involve
contradictory facts.
Current work addresses the development of a module to extract the same semantics
used by the KRR module from the sentences recognized.
1. Seabra Lopes, L. and Connell, J.H. (eds.): Semisentient Robots: special issue of IEEE Intelli-
gent Systems. vol. 16, n. 5. Computer Society (2001) 10-14.
2. Seabra Lopes, L.: Carl: from Situated Activity to Language Level Interaction and Learning.
Proc. IEEE Int’l Conf. on IROS, Lausanne, Switzerland (2002) 890-896
3. Labrou, Y. and Finin, T.: A Proposal for a New KQML Specification. Technical Report CS-
97-03, University of Maryland at Baltimore County, (1997).
4. Rodrigues, M., L. Seabra Lopes, and A. Teixeira, An Hybrid Approach for Spoken Natural
Language Understanding Applied to a Mobile Intelligent Robot. Proc. Natural Language Un-
derstanding and Cognitive Science (NLUCS), (2004) 145-150
5. Skubic, M., D. Perzanowski, et al.: Spatial Language for Human-Robot Dialogs. IEEE Trans-
actions on Systems, Man, and Cybernetics, C 34(2): (2004) 154-167
6. Kamp, Hans, J. van Genabith, U. Reyle Discourse Representation Theory. Chapter in: Hand-
book of Philosophical Logic (2005), D. Gabbay and F. Guenthner (eds.)
7. Benferhat, Salem, et al.: Weakening conflicting information for iterated revision and knowl-
edge integration. Artif. Intell, 153(1-2), (2004) 339–371
8. Brazdil, P. and L. Torgo: Knowledge Acquisition via Knowledge Integration. Current Trends
in AI, B. Wielenga et al.(eds.), (1990) IOS Press, Amsterdam.
9. Russell, Stuart and Peter Norvig Artificial Intelligence: A Modern Approach. Prentice Hall,
1st edition (1995); 2nd edition (2003).
10. Sowa, John F.: Semantic Networks. MIT Encyclopedia of Cognitive Science,
11. Rational Software Corporation: UML Semantics, v1.0. Santa Clara, CA (1997).
12. Michalski, R. S.: Inferential Theory of Learning: Developing Foundations for Multistrategy
Learning. Machine Learning: A Multistrategy Approach, 1994