Autonomous Robot that Uses Symbol Recognition and Artificial

From: AAAI Technical Report WS-00-09. Compilation copyright © 2000, AAAI (www.aaai.org). All rights reserved.
AutonomousRobot that Uses Symbol Recognition and Artificial
Attend the AAAIConference
Emotion to
Francois
Michaud, Jonathan Audet, Dominic L~tourneau, Luc Lussier,
Catherine Th~berge-Turmel and Serge Caron
LABORIUS
- Research Laboratory on Mobile Robotics and Intelligent Systems
Departmentof Electrical and ComputerEngineering
Universit6 de Sherbrooke, Sherbrooke (Qurbec Canada) J1K 2R1
{michaudf,audj01,1etd01,1usl01,caron}@gel.usherb.ca
http://www.gel.usherb.ca/laborius
In the followingsections, the paper describes the robotic
platform used and its devices, the details of the strategy
implemented,the architectural methodologyused, the symbol recognition technique, our concept of artificial emotion
and the hnman-robot interface developed. The paper also
presents the experimentsdone at the conference, and possible extensions to our design.
Abstract
This paper describesour approachin designingan autonomousrobot for the AAAI
MobileRobotChallenge,
makingthe robot attend the NationalConference
on AI.
Thegoal wasto do a simplified version of the whole
task, by integrating methodologies
developed
in various
researchprojects conductedin our laboratory. Original
contributionsare the use of a symbolrecognitiontechniqueto makethe robotreadsigns, artificial emotionfor
expressingthe state of the robot in the accomplishment
of its goals, a touchscreenfor human-robot
interaction,
anda chargingstation for allowingthe robotto recharge
whennecessary.All of these aspects are influencedby
the different steps to be followedby the robot attendee
to complete
the task fromstart-to-end.
Introduction
LABORIUS
is a youngresearch laboratory interested in designing autonomoussystems that can assist humanin real
life tasks. Todo so, robots needsomesort of "social intelligence", giving themthe ability to interact with various types
of agents (humans,animals, robots and other agents) and
deal with the contingenciesof real life settings. Different research projects are underwayto study aspects related to social robotics, like the ability to read symbolsthat derive useful indications about the world, or the use of artificial emotion for monitoring the progression in the accomplishment
of the goals and intentions of the robot. For human-robot
interaction, we have developed an interface using a touch
screen to display the emotionalstate of the robot and to receive instructions from a person. Wealso have developed a
chargingstation that allow our robots to recharge themselves
autonomously,capability that will be useful in long lasting
group experiments in preparation.
Integration of these approaches fits very well with the
AAAIRobot Challenge, explaining whywe got interested
in this event. The strategy imaginedis to use signs to guide
the robot, to let the robot movearoundin the crowd, recognize dignitaries, possibly recharging itself whenevernecessary, go to a conference roomand give a short presentation
in HTML
about the whole experience.
Copyright©2000, AmericanAssociationfor Artificial Intelligence(www.aaai.org).
All rights reserved.
17
Figure 1: Lolitta H, our Pioneer 2 robot that participated
in the AAAI’2000Mobile Robot Challenge. The robot is
shownnext to the charging station symbol, and is docked
for recharge.
Robotic Platform
and Devices
Wehavesix Pioneer 2 robots to our disposal in our lab, three
indoor and three outdoor models. Each robot is equipped
with 16 sonars, a compass,a gripper, a pan-tilt-zoom (PTZ)
camera with a frame grabber, a RF Ethernet-modemconnection and a Pentium 233 MHzPC-104 onboard computer.
The programmingenvironment is Ayllu (Werger 2000), a developmenttool for multi-agent behavior-based control systems. The robot used for the MobileRobot Challenge is an
indoor version, shownin Figure 1.
The charging station is shownin Figure 2. The station
emits an infrared signal that is detected by a ring of seven
and right arrows indicate that the robot must turn in that
direction. Anup arrow is for continuing in that direction, while a downarrow indicates that the robot should
go the other way. The registration line is identified with
the symbol L. The robot must then wait in line and followthe personin front, until it arrives in front of the line.
Then,the robot starts to search for the appropriate registration desk, identified with its last nameinitial, H. Once
reached, instructions for its presentation (like whereand
when)can be entered using the touch screen. During the
registration phase, symbolsother than arrows, L or H may
be encounteredbut not consideredby the robot. Also, if it
takes too long to find the registration desk, the robot asks
somebody
to guide it to the registration line by following
the person, using the samemechanismfor waiting in line.
¯ Taking the elevator. The next step is to take the elevator, with its location identified by the letter E. Noother
symbolsare considered useful for this phase. The robot
tries to find the elevator by itself, but if it takes too long,
the robot also asks somebody
to guide it to the elevator by
following the person. Oncethe E symbolrecognized, the
robot assumesthat the elevator door is on the right. The
robot turns and waits in front of the elevator, asking for
somebodyto open the doors. Whenthe doors open, the
robot enters and goes to the back of the elevator, makes
a 180 turn, stops, asks to go to the appropriate floor and
to be told whenit is time to leave the elevator. Therobot
then leaves by continuously goingin the direction that is
free of obstacles.
Figure 2: Our charging station.
infrared receivers located at the back of the robot, visible
in Figure 3. The robot docks into the charging station by
backing up so that the charging pins located aboveand below
the infrared ring makecontact with the charging station. The
charging station is designed to adapt the amountof current
generatedto rechargethe batteries as fast as possible.
¯ Sehmooze.If time permits, the robot can schmoozebefore going to the conferenceroom.It does that by tracking
important people using badge color, going toward such
person and interacting using the touch screen. A snapshot
of the person is taken for the HTML
report. The image
taken is based on the position of the arms and face of the
person, derived from skin tone.
¯ Guard. Again, if time permits, the robot can guard an
area if somebodymakes such request using the touch
screen. The robot only stops and tracks people based on
skin color. Snapshots are taken whenappropriate.
¯ Navigate to the conference room. Whenthe robot believes it is time to go to the assigned conferenceroom, it
starts to follow directions given by arrow signs and room
number. Whenit finds the appropriate room number, it
turns in the direction assumedfor the position of the door
(left in our implementation),and wait to be told that it
its turn to present.
Figure 3: Lolitta’s back showingthe infrared ring. The H
sign located in front of the robot is another exampleof a
symbolrecognizable by the robot.
Strategy Implementedfor the Mobile Robot
Challenge
¯ Presentation. Whenits turn comes, the robot starts to
look for the charging station, because that is whereit is
going to makeits presentation. It does so by looking for
the charging symbolor by using its infrared ring. If it
finds the charging symbol,the robot makesa 180 turn and
backs up according to what is perceived by the infrared
ring. The robot then takes a snapshot of the audience and
generate the HTML
report describing what it experienced
duringits journey.
As indicated in the introduction, our goal was to attempt a
simplified version of the wholetask from start-to-end. Here
are the phases of the strategy implemented:
¯ Registration. Weassumedthat the robot starts from the
front door of the conferencecenter, and signs indicate the
direction to take for goingto the registration desk. Left
18
Note that when the robot executes a commandaccording to a symboldetected, it can position itself relative to the
symbol based on the position of the PTZcamera and sonar
readings. Also, the robot maydecide to find the chargingstation whenappropriate (for instance whenthe amountof energy is getting too low) anytimeduring the phases explained
previously. All of the images taken for symbolrecognition
are also memorizedin the HTML
report along with messages describing the decision steps madeby the robot.
EMOTIONS
MOTIVES
Behavior.
I -- -- E’xpioltation -I
I
!?
I
Motive.
Molivet
Aotlvltlon
Enet~
Aotjvation
~
/
EGOISTICAL
l
I
IMF’LICIT
/hd
SoftwareArchitecture
Our design is based on a hybrid reactive-deliberative architectural methodology (Michaud, Lachiver, & Dinh 2001;
Michaud&Vu 1999) that allows to combine various properties associated with intelligent behavior, like reactivity,
reasoning and motivation, while still preserving their underlying principles. The architecture is shownin Figure 4
and is built on top of behaviors connecting sensory information to commands.Behaviors are selected dynamically
according to influences comingfrom Implicit conditions determined only by sensory inputs, from a hierarchical organization of the goals of the robot (managedby the Egoistical
module), and from reasoning done by the Rational module
using knowledgeinnate or acquired about the task. Note that
information can be exchangedbetween the Rational module
and the behaviors. Processes for these three modulesall run
independently and in parallel to derive behavior recommendations d/u, i.e., behavior desirability/undesirability. This
ensures that emergenceis also preserved for the selection of
behaviors. The Behavior Selection modulesimply activates
behaviors that are moredesirable than undesirable. Finally,
Motives are used to managethe robot’s goals, while Emotions are there to monitor the accomplishmentof the goals
of the robot over time. One important source of information for motivesis the observationof the effective use of the
behaviors, whichcan serve as an abstraction of the robot’s
interactions within the environment.This last influence is
related to the link called Behavior.Exploitation. An active
behavior mayor maynot be used to control the robot, according to the sensory conditions it monitors and the arbitration mechanism
used to coordinate the robot’s behaviors.
So, an active behavioris not exploited whenit is not releasing commands
that actually control the robot.
Figure 5 shows our organization of the behaviors using
subsumption (Brooks 1986) arbitration. These fifteen behaviors are activated accordingto the intentions of the robot:
Safe-Velocity makes the robot moveforward without colliding with an object; Random-Turnis used for wandering; Follow-Color
tracks objects of a specific color, like for
schmoozing; Skin-Tracking controls the camera to capture
the face and arms of a person; Follow- Wall makesthe robot
follow walls, whichis useful to help the robot find the charging station; Sign-Trackingtracks, using a PIDcontroller, a
symbolof a specific color (black in our case) surrounded
another color (orange), and zooms in to get the maximum
resolution for the symbolto identify; Wait-in-Line makes
the robot follow the object in front, using its sonars; Direct
change the position of the robot according to specific commands generated by the Rational module; Recharge makes
19
RATIONAL
I;
!I I ;I
~#,d/U’’
1
oommand
et
W
il’, ooo,
il; .... °’
T
PT~.,
’"v
~=i
n n*roQiv*d
g"~
~
[
.,L,o,.
I
,I I,
hotlvation
|
Figure 4: Softwarearchitecture used with our robot.
the robot dock into the charging station; Avoid makesthe
robot moveawayfrom obstacles; Unstall tries to movethe
robot awayfrom a position where it has stalled; Free-Turn
turns the robot in the direction free of obstacles; Backup
makes the robot movebackward; Rest stops the robot; and
Control-Displaycontrols the touch screen interface. The behaviors control the velocity and the rotation of the robot,
and also the PTZcamera. Note that these behaviors can be
purely reactive, can have internal states, can be influenced
by emotions or the Rational module, or can provide information to the Rational module.
Emotion
Rational
Rational
(oommand)
Rational
(oolor)
Camera
.~mo~o,"t
Safe.Velo
oity
Figure 5: Behaviorsused to control the robot.
Thegoals of the robot (e.g., goingto the registration desk,
schmoozing, recharging, etc.) are managedusing internal
activation variables called motives (Michaud&Vu 1999).
Workson motivational systems (Maes 1990; Breazeal 1998)
have shown that a good balance between planning and reactivity for goal-managementcan be achieved by using internal variables that get activated or inhibited by different
factors. So we use a similar approach for motives. Each
motiveis associated with a particular goal of the robot. The
activation level of motives are used by other modulesof the
architecture to affect the overall behavior of the robot. A
motive m is characterized by an energy level E and a mapping function Mthat are used to determine its activation
level A, according to the formula: Am = M(Em). The
energy level and the activation level of a motiverange between 0 and 100%.The energy level can be influenced by
various factors: sensory conditions, exploitation of behaviors associated with the motive, activation of other motives,
Rational influences, emotions, and time. The energy level
is computed by the equation Em=~-’~’=1 wj ¯ fj, where
f represents n influencing factors, weightedby w, affecting
the motive. For factors that occur for long period of time
and that mustnot influence the motivefor the entire period,
we use a habituation function (Staddon 1993) to modulate
its influence. Mappingfrom E to A can be directly transposed, determined using thresholds or triggered according
to the energy level of other motives. For the challenge, the
motives used are Energize to decide whenand for howlong
rechargingis required, Distress to monitor that the robot is
able to movefreely, Schmoozeto interact with people when
time permits, Guard, and other motives based on the different plan states in order to evaluate the progression in the
accomplishmentof these states. Distress is one motivethat
makesefficient use of the observation of behavior exploitation over time. For instance, long exploitation of Avoidis a
sign that the robot is having difficulty movingfreely in the
environment.For their influences in other modulesof the architecture, motivesare prioritize accordingto Maslow’stheory of needs (Maslow1954): physiological, security, social
and accomplishment.
For behavior recommendation, the Implicit module
continuously recommendsthe activation of Safe-Velocity,
Random-Turn,Direct, Avoid, Unstall and Control-Display.
This makesthe robot wandersafely around in the environment, allowing to respond to commandsassociated with
symbol detected whenever appropriate (according to the
plan state) and to interact with the user. The Egoistical
module derives recommendations based on Energize for
Recharge and Wall-Following, on Distress for Free-Turn,
Backupor Rest dependingon the activation level of the motive, and on Schmoozefor Skin-Tracking. Finally, the Rational moduledetermines behavior recommendationsbased
on the different phases the robot has to go through for the
Challenge, as explained in the strategy. Transition between
plan states is derived from symbolsrecognized, situations
perceived or inputs from the touch screen. This moduleis
also responsible for managingthe response of the robot according to a sign perceived and the acceptable symbolsfor
the current plan state. For instance, whenthe robot is search-
2O
ing for the registration line and a L symbolis recognized,the
Rational moduleevaluates the commandsthe robot have to
do to position itself in the line, send these commands
to the
Direct behavior, and changethe plan state to reflect that the
robot is nowwaitingin line to register.
Symbol Recognition
Social interaction in a heterogeneousgroup of robots and
humanscan be done in various ways: gestures, symbols,
speech, sounds, touch, etc. Vision is certainly an interesting sense that can be used to communicateand to get useful
information about the environmentfor cooperative robotics
(Cao, Fukunaga, &Kahng1997). In real life settings,
can find all kinds of signs that help us find our way(like
roomnumber,exit signs, etc.) or provide useful information
about the environment.Withall the research activities involving handwritten or printed symbolrecognition going on
for quite sometime now,we thought that it wouldbe interesting to give this newcapability to a mobilerobot. Making
a robot recognizeprinted signs is an interesting idea because
it can be a methodshared by different types of robots, as
long as they have a vision system. The information is also
accessible by humans,whichis not possible whenelectronic
media are used for deriving information from the environment.
Our symbolrecognition technique is done in four steps:
1) imagesegmentationusing colors, 2) robot positioning,
features extraction of color segmentsand 4) symbolidentification using artificial neural networks. Imagesegmentation is achieved using 32 colors and commodityhardware
(Bruce, Balch, & Veloso 2000). Each recognizable symbol is assumedto be containedin one segment,i.e., all pixels of the same color representing the symbolmust be connected (i.e., by 8 neighbors) together to avoid recombination
of boundaryboxes. The robot positioning phase consists of
stopping the robot and positioning the PTZcamerato get the
image with maximum
resolution for the symbol perceived
(detected by locating black on orange regions, as indicated
in the previous section). Figure 6 is an exampleof an actual
image ready to be used by the robot for the identification
phase. Part of the 320 x 240 image delimitated by the orange region is scaled downto a 13 × 9 image. Symbolidentification can then proceed, using three standard backpropagation neural networks. To design these neural networks,
using Avoid, Sign-Trackingand Safe-Velocity behaviors, the
robot gathered around45 images(30 used for the training set
and 15 used for the testing set) for each of the 25 symbols
that can be recognized by our robot. This ensured that the
imagesreflected correctly the different conditions in which
the robot wouldperceive the symbols. The networks differ
by their numberof hidden units (5, 6 and 7 respectively).
A majority vote (2 out of 3) determines that the symbol
correctly recognizedor not. Wedid not do extensive tests to
justify this design choice yet, but it showedmorerobustness
than using only one neural network.
the emotionscan be used in different contexts (i.e., goals)
according to the motives activated and their priority. This
explains also whymotives are also used to represent the different plan states for accomplishingthe Challenge.
In our design, emotions can be used to change someof
the parametersof behaviors, changingthe waythe robot response to stimulus. They can also change the goals pursued
by the robot. This is related to research conductedby Oatley and Johnson-Laird(Oatley &Johnson-Laird1987), indicating that emotionsprovide a biological solution to certain
problemsof transition betweenplans in systems with multiple goals and in unpredictable environments,by maintaining
these transitions and by communicatingthem to ourselves
and to others. Our modelis a two-dimensionbipolar model,
with four emotions: Joy/Sadness and Anger/Fear. Joy and
Anger are positive emotions, while Sadness and Fear and
negative emotions.
Figure 6: Snapshot of the image used to detect the symbol
3.
Artificial
Emotion
The concept of artificial emotion is increasingly used in
designing autonomous robotic agents, mostly by making
robots respond emotionally to situations experienced in the
world or to interactions with humans (Vel~quez 1998;
Breazeal 1998). However,they can also play an important
role in solving what are called universal problemsof adaptation (Plutchik 1980): hierarchy, territoriality, identity and
temporality. For the Challenge, the artificial emotions required are related to temporality, i.e., they allowto take into
considerationthe limited duration of an individual’s life. Artificial emotioncan help a robot manageits ownlimitations
in interacting with the world, interact socially with others
and establish a shared meaningfor interpersonal communication (Michaudet al. 2000). It is towardthis goal that our
research is conducted.
As shownin Figure 4, the emotionalcapability is incorporated into the control architecture like a global background
state, allowingemotionsto influence and to be influenced by
all of the architecture’s modules.However,our goal is to derive an emotionalmodelthat is generic and not specifically
configured for a particular task. Wewouldlike the mechanisms that derive emotional states to be the same whatever
the goals pursued by the robot. For instance, we wouldnot
like to makea direct connection with an emotionlike pain
and the event of havingthe robot collide with an obstacle, if
in somecases makingcontact with an object is desired. This
could be done using a cognitive approach (Strongman1987)
to emotion,to specify explicitly what influences can be considered in specific conditions. For our research and trying to
complementother research works on artificial emotion, we
are interested in finding a modelthat allow emotions to be
influencedby all possible situations, and not specifically to
particular states and conditions.
To do so, the energy level of motives is used as an abstraction of the progression toward the accomplishmentof
the goal associated with activated motives. Monitoring the
energy level of motives makethe approach generic, since
21
¯ Joy. Monitora decrease in the energy level, indicating
the accomplishmentof the goal associated with the motive. For instance, whenthe robot is recharging, the energy level of Energizedecreases and generates an increase
of this emotion.
¯ Sadness. Monitoran increase in the energy level, indicating difficult progress in the accomplishmentof the goal
associated with the motive. A high level of this emotion
maysuggest to the robot that it is unable to accomplish
its goal, and it should try to get somehelp or to do something else. This can be done by deactivating the motivein
question. For instance, whenthe robot is looking for the
registration line and that no symbolsare seen, eventually
this emotionmakesthe robot prompta person for helping
it find the registration line.
¯ AngerMonitoroscillations in the energy level, indicating
difficult progress in the accomplishmentof the goal associated with the motive. This emotionis used to change
the waybehaviors like Backupand Safe- Velocity reacts by
modifying their velocity commands.
¯ Fear Monitor constant energy level, indicating no
progress in the accomplishmentof the goal associated
with the motive. This emotionis used to also decrease the
speed generated by Safe-Velocity to increase the chance
of picking up an infrared reading whenthe robot passes
in front of the chargingstation.
The influences from the analysis of the motive’s energy
level are also based on the amountof energy level and the
priority of the motives. Note that we are not excluding the
possibility of having direct influences on emotions, instead
of only relying on analysis of energy level of motives. However, we wanted to study how such generic mechanismcan
benefit the robot in makingself-assessmentof its situation in
the environmentand of the accomplishmentof its goals. The
Challenge provided a goodsetup for doing that, even though
not all emotionsplayed a critical part for accomplishingthe
task. Their role will be moreimportantin long lasting experiments involving group of robots and validation of concepts
related to social robotics (Dantenhalm1999), experiments
under preparation for the Fall 2000.
Human-Robot Interaction
To interact with people, we installed a touch screen monitor
on top of the robot, as shownin Figure 1. The touch screen
monitor is used for two purposes: generate simple facial expressions to monitor the emotional states of the robot, and
interact with people using menuscreens.
Figure 8: First menudisplayed after touching the screen.
Figure 7: Face use to express the emotional state of the
robot.
The face is represented in Figure 7. To generate facial
expressions, inspired by (Scheeff et al. 2000), we used the
followingsettings: the orientation and the size of the mouth
are determined by Joy~Sadness, while Fear~Angerare used
for the eyebrows.The color of the face is determinedbased
on a comparisonbetween the amplitude of Joy~Sadnesswith
Anger~Fear:if both groups have the samebig amplitude, the
resulting color is black; if Anger~Fearis predominant,the
face is read; if Joy~Sadnessprevails, the face is green. We
also associated the position and the size of the eyes with the
position of the PTZcamera.
For interaction using menus, the Control-Display behavior is programmed
so that touching the screen whenthe face
is displayed makesthe robot stop. Figure 8 showsthe options then made available: to makethe robot guard or do
a specific rotation, or to go to the maincontrol panel. The
main control panel is shownin Figure 9. It allows us to
deliberately changethe state of the robot, facilitating debugging of the different parts of our strategy. Figure 10
illustrates the type of display generated by the robot to receive specific input from people, accordingto the plan state.
Groupof sub-menuscan be associated with a particular plan
state, like generating the sequence of messagesfor receiving the instructions for the presentation at the registration
desk. Finally, Figure 11 showsthe display generated when
the robot wants to interact with people. The robot maycontinue to movewhendisplaying this messageuntil somebody
touches the screen.
22
Results
As indicated in the introduction, our approachfor the Challenge results from the integration of research projects going on in our laboratory. Projects on symbol recognition and artificial emotionsstarted seven monthsbefore the
AAAI’2000Mobile Robotic event, while the Human-Robot
Interface project started three monthsbefore the event. Preliminarydesign of the decision processes required in the different modulesof the software architecture was completed
by the end of May,leaving two months for the implementation and testing. The hardest part revealed to be the adjustmentsof the influence factors of the motives, whichrequired
a lot of fine tuning. Eventhoughit wasa difficult task, it was
obviously not an impossible one.
Necessarily, like manyother teams, we were still making
adjustments to our code at the conference. But we got all
of the different phases of the strategy workingcorrectly. We
madeseveral successful tests in the exhibition hall, in a constrained area and with constant illumination condition. We
also ran two completetrials in the convention center, with
peopleand in the actual setting for the registration, the elevator and the conference rooms. Here are someobservations
madefrom these two trials:
The robot was able to identify symbolscorrectly in real
life settings. Identification performanceis around 83 %
(i.e., 17 %of the images used for symbolidentification
were identified as unrecognizable), with no symbolincorrectly identified. Remember
that the symbolsused for the
challenge are the arrow signs, the charging symbol, the
letters L, H and E, and the numbers1, 2 and 3. The most
difficult part was to adjust color segmentationfor the orange and the black for different illumination conditions
in the convention center: someareas were illuminated by
the sun, while others (like the entrance of the elevator)
were very dark. Even though the superposition of two
color regions for the localization of a symbolgave more
robustnessto the approach,it wasstill difficult to find the
Figure 9: Maincontrol panel for changing the state of the
robot.
Figure 10: Messagedisplayed whenthe robot arrives at the
registration desk.
appropriate color segmentation that workedin so diverse
illumination conditions. So in somecases like for the elevator, we slightly changethe vertical angle of the symbol
to get moreillumination.
¯ The robot was able to take the elevator correctly, following the guidelines described in the strategy. Thephysical
limitations of the robot wouldnot allowed itself to take
the elevator autonomously.So we were satisfied that our
strategy for entering and for leaving the elevator revealed
to be adequate.
¯ With the limited amountof knowledgeexploited by the
robot about its environment,it took a relatively long time
to makethe robot go through the phases of the Challenge
from start-to-end, compareto a humanfor instance. It all
dependedon the amountof symbols encountered to go to
a particular place and on interactions with people. For
instance, it took 8 minutes for the robot to go from the
entrance of the conventioncenter to the registration desk.
Note that we helped the robot going toward symbols when
it was going in a direction with no indications. Also, it
took 5 minutes to take the elevator, considering that the
robot followed somebodyto guide it toward the E symbol for the elevator. Considerations of the time required
by the robot for going throughthe different phases of the
Challenge have a direct impact on the energy level of the
robot. Our two trials lasted around one hour and a half
each, and considering that we did somecolor adjustments
before the trials, it wasinevitable that the robot neededto
recharge along the way. Our charging station revealed to
be greatly valuablein that regard, as for the ability of the
robot to autonomouslydecide whenit neededto recharge.
Even during fine tuning of our approach the robot surprised us by suddenly starting to back up when we expected it to read a symbol, to then understand that the
robot sensed the charging station at its back and needed
to recharge.
¯ Our approach to position the camerato get an image of
the face and upper body of a person during schmoozing
needs to be improved, since it confused arms with legs.
The Skin-Traclang behavior was rapidly implementedat
the conference, and the first and only test was done the
sameday, during the secondtrial in the conventioncenter.
23
Overall, we are satisfied by the robot performance
since it corresponds to what was specified in our design. The actual HTMLreport of the second trial in
the convention center is available on the web (URL:
http://www.gel.usherb.ca/laborius/AAAI2000).
Conclusion
In participating to the AAAI’2000
MobileRobot Challenge,
our goal was to design an autonomousrobot capable of going througha simplified version of the entire task fromstartto-end. Webelieve we were able to reach this goal by having
the robot interpret printed symbolsto get useful information
from the environment,interact with people using visual cues
(like badge color and skin tone) and using a touch screen
with menusand facial expressions to indicate the emotional
state of the robot, memorizeinformation along the way in
a HTML
report, and recharge itself when necessary. We
foundthat the integration of all of these capabilities gives a
real sense that the robot is autonomousin its decision making for accomplishingthe Challenge, running for hours and
even helping us for debuggingit by using the mainconsole
panel and the HTML
report.
In fact, integration of different mechanisms
required for
intelligent decision makingis fundamentalto the design of
autonomoussystems that have to work in real life settings.
The architectural methodologyfollowed in our design contributed greatly in that regard, makingit possible to combine
behavior-basedconcepts with planning capabilities, motivation and emotion. Obviouslyour approach is not sufficient
for accomplishingefficiently the entire task, but we have
References
Breazeal, C. 1998. Infant-like social interactions between
a robot and a humancaretaker. Adaptive Behavior, special
issue on Simulation Modelsof Social Agents.
Brooks, R. A. 1986. A robust layered control system for
a mobile robot. IEEEJournal of Robotics andAutomation
RA-2(1): 14-23.
Bruce, J.; Balch, T.; and Veloso, M. 2000. Fast color image
segmentation using commodityhardware. In Proc. Work.
Interactive Robotics and Entertainment, 11-15.
Cao, Y. U.; Fukunaga, A. S.; and Kahng, A. B. 1997. Cooperative mobilerobotics: antecedents and directions. AutonomousRobots 4:1-23.
Dautenhahn, K. 1999. Embodimentand interaction in socially intelligent life-like agents. In Nehaniv,C., ed., Computation for Metaphors,Analogy and Agent. Lecture Notes
in Artificial Intelligence, volume1562. Springer-Verlag.
102-142.
Maes, P. 1990. Situated agents can have goals. In Maes,
P., ed., Designing AutonomousAgents: Theory and Practive form Biology to Engineeringand Back. The MITPress,
Bradford Book. 49-70.
Maslow,A. H. 1954. Motivation and Personality. Harper
and Row.
Michaud, F., and Vu, M.T. 1999. Managingrobot autonomyand interactivity using motives and visual communication. In Proc. AutonomousAgents Conference, 160-167.
Michaud,F.; Prijanian, P.; Audet, J.; and L6tourneau, D.
2000. Artificial emotionand social robotics. In Proc. 5th
Int. Symp. Distributed AutonomousRobotic Systems.
Michaud,F.; Lachiver, G.; and Dinh, C. T. L. 2001. Architectural methodologybased on intentional configuration of
behaviors. ComputationalIntelligence 17(1).
Oatley, K., and Johnson-Laird, P. N. 1987. Towardsa cognitive theory of emotions. Cognitionand Emotion1 (1):2950.
Plutchik, R. 1980. A general psychoevolutionarytheory of
emotion.In Plutchik, R., and Kellerman,H., eds., Emotion:
Theory, Research, and Experience, volume 1. Academic
Press. chapter 1, 3-33.
Scheeff, M.; Pinto, J.; Rahardja, K.; Snibbe, S.; and Tow,
R. 2000. Experienceswith Sparky, a social robot. In Proc.
Work. Interactive Robotics and Entertainment, 143-150.
Staddon, J. E. 1993. Onrate-sensitive habituation. Adaptive Behavior 1(4):421-436.
Strongman, K. T. 1987. The Psychology of Emotion. John
Wiley &Sons, Third Edition.
Vel~squez, J.D. 1998. A computational framework for
emotion-based control. In Proc. Work. Grounding Emotions in Adaptive Systems, Conference on Simulation of
Adaptive Behavior.
Werger, B.B. 2000. Ayllu: Distributed port-arbitrated
behavior-basedcontrol. In Proc. 5th Int. Symp.Distributed
AutonomousRobotic Systems.
Figure 11: Messagedisplayed when the robot wants to interact with people.
demonstratedthat the RobotChallenge is a task that can be
addressed as a whole. For us, with the time available and
our ongoingresearch projects, it provided a nice setup for
demonstrating and integrating newcapabilities for designing autonomousmobile robots working in the real world.
In addition, the architecture will facilitate the addition of
useful mechanismsto improve the decision process of the
robot. Othercapabilities like the use of a speech interface,
a planner, a mapand a representation of the environment
that wouldallow to avoid exploring the same area repetitively could be useful. Thesecapabilities are mostly based
on the use of knowledgeabout the environment and would
be implementedin the Rational moduleof the architecture.
The current implementationis surely a nice starting point
for such projects, and the actual capabilities can makeinteresting additions to these newones. For instance, coupling
the cues derived from symbols detected in the environment
with a mapwouldsurely improvethe robot’s localization capabilities. Whileit maybe anticipated that a robot like our
Pioneer 2 will always have inherent limitations that makes
it less efficient than humansin a task such as the Challenge,
the idea is to make an autonomousrobot do as muchas it
can with its capabilities. Suchintegration will certainly be
a step toward someform of intelligent decision makingrequired for robots operatingin real life settings.
Acknowledgments
Research conducted by LABORIUS
is supported financially
by the Natural Sciences and Engineering Research Council
of Canada (NSERC),the Canadian Foundation for Innovation (CFI) and the Fonds pour la Formation de Chercheurs
et l’Aide h la Recherche (FCAR)of Qu6bec. Wealso want
to thank AAAIfor traveling support to the conference, and
Activmedia and the SwartmoreCollege team for lending us
sometools during the conference.
24