behavior coordination in structured environments

20
This article was downloaded by: [University of Delaware] On: 05 October 2014, At: 16:15 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK Advanced Robotics Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/tadr20 Behavior coordination in structured environments Philipp Althaus & Henrik I. Christensen Published online: 02 Apr 2012. To cite this article: Philipp Althaus & Henrik I. Christensen (2003) Behavior coordination in structured environments , Advanced Robotics, 17:7, 657-674, DOI: 10.1163/156855303769157009 To link to this article: http://dx.doi.org/10.1163/156855303769157009 PLEASE SCROLL DOWN FOR ARTICLE Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content.

Upload: henrik-i

Post on 18-Feb-2017

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Behavior coordination in structured environments

This article was downloaded by [University of Delaware]On 05 October 2014 At 1615Publisher Taylor amp FrancisInforma Ltd Registered in England and Wales Registered Number 1072954Registered office Mortimer House 37-41 Mortimer Street London W1T3JH UK

Advanced RoboticsPublication details including instructions forauthors and subscription informationhttpwwwtandfonlinecomloitadr20

Behavior coordination instructured environmentsPhilipp Althaus amp Henrik I ChristensenPublished online 02 Apr 2012

To cite this article Philipp Althaus amp Henrik I Christensen (2003) Behaviorcoordination in structured environments Advanced Robotics 177 657-674 DOI101163156855303769157009

To link to this article httpdxdoiorg101163156855303769157009

PLEASE SCROLL DOWN FOR ARTICLE

Taylor amp Francis makes every effort to ensure the accuracy of all theinformation (the ldquoContentrdquo) contained in the publications on our platformHowever Taylor amp Francis our agents and our licensors make norepresentations or warranties whatsoever as to the accuracy completenessor suitability for any purpose of the Content Any opinions and viewsexpressed in this publication are the opinions and views of the authors andare not the views of or endorsed by Taylor amp Francis The accuracy of theContent should not be relied upon and should be independently verified withprimary sources of information Taylor and Francis shall not be liable for anylosses actions claims proceedings demands costs expenses damagesand other liabilities whatsoever or howsoever caused arising directly orindirectly in connection with in relation to or arising out of the use of theContent

This article may be used for research teaching and private study purposesAny substantial or systematic reproduction redistribution reselling loansub-licensing systematic supply or distribution in any form to anyone isexpressly forbidden Terms amp Conditions of access and use can be found athttpwwwtandfonlinecompageterms-and-conditions

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Advanced Robotics Vol 17 No 7 pp 657ndash674 (2003)Oacute VSP and Robotics Society of Japan 2003Also available online - wwwvsppubcom

Full paper

Behavior coordination in structured environments

PHILIPP ALTHAUScurren and HENRIK I CHRISTENSENCentre for Autonomous Systems Numerical Analysis and Computer ScienceRoyal Institute of Technology (KTH) 10044 Stockholm Sweden

Received 10 December 2002 accepted 21 January 2003

AbstractmdashBehavior coordination is a notorious problem in mobile robotics Behaviors are eitherin competition or collaborating to achieve the goals of a system which leads to requirements forarbitration andor fusion of control signals In most systems the arbitration is speci ed in terms oflsquoeventsrsquo that denote positions or sensory input The detection of these events allows discrete switchingbetween groups of behaviors In contrast the fusion of behaviors is often achieved using potential elds fuzzy rules or superposition In most cases the underlying theoretical foundation is rather weakand the behavior switching results in discrete changes in the overall system dynamics In this paperwe present a scheme for behavior coordination that is grounded in the dynamical systems approachThe methodology provides a solid theoretical basis for analysis and design of individual behaviorsand their coordination This coordination framework is demonstrated in the context of a domesticrobot for fetch-and-carry-typetasks It is shown here that behavior coordination can be analyzed asan integral part of the design to facilitate smooth transition and fusion between behaviors

Keywords Behavior coordination non-linear dynamical systems mobile robots robot navigationhybrid deliberative architecture

1 INTRODUCTION

Most recent mobile robotics systems exploit a hybrid deliberative system architec-ture (see Ref [1] for an overview) The deliberative part of such a system is re-sponsible for generating a list of tasks to be accomplished in order to achieve goalsThe actual execution of tasks is monitored by a supervisor while the tasks them-selves are implemented as a composition of behaviors that provide control outputon the basis of sensory input The task switching and behavior coordination in-volves typically a combination of arbitration and fusion across behaviors Thereare many different approaches to the coordination as outlined in Ref [1] The ar-bitration schemes are often based on the use of discrete logic that can be described

currenTo whom correspondence should be addressed E-mail philippnadakthse

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

658 P Althaus and H I Christensen

as discrete event systems [2] Popular arbitration schemes include the subsumptionsystem by Brooks [3] and the task language used in the TCA system [4] In contrastto behavior arbitration which typically signi es a task switch behavior fusion isused for integration of output from multiple behaviors into a single control signalfor the platform By far the most popular method has been the use of potential elds[5] In addition methods such as voting [6] and fuzzy rules [7] have been exploitedA notorious problem in many of these systems is the lack of a solid theoretical foun-dation for weight selection of different behaviors for integration Especially for taskswitches the existing solutions are rather ad hoc

An alternative to these methods is the dynamical systems approach introduced bySchoumlner and Dose [8] Here a nonlinear dynamics approach is adopted to captureboth continuous and discrete integration of behaviors into a uni ed theoreticalframework The approach has so far only been used in simulations [8ndash10] andrelatively simple real-world settings [11ndash13] and with a small number of behaviorsThis paper outlines how the methodology can be used to implement larger-scalereal-world systems and how adoption of such a framework provides the basis fortheoretical design of the behavior coordination system

Initially the dynamical systems approach is introduced (Section 2) Then inSection 3 the overall system design is presented Another bene t of this approachis that it can be designed to provide robust control solutions in the presence of noisethrough adaptation of qualitative representations As such a representation for anavigation task we used a topological map This map is introduced in Section 4The combination of the dynamical systems approach and qualitative maps allowsconstruction of robot systems which have smooth control in the presence of behaviorcoordination task switching while still encompassing facilities for operation inrealistic large-scale environments Finally example results are presented in Section5 while a summary and avenues for future research are outlined in Section 6

2 DYNAMICAL SYSTEMS APPROACH

The conceptual framework of this approach is based on the theory of nonlineardynamical systems [14] In the following we only provide a brief outline of thisframework and refer the interested reader to Ref [9] for a more detailed description

A behavior b emerges from the time evolution of the behavioral variablesdescribed by the vector Ex In a navigation task for example the robot headingand velocity constitute the set of behavioral variables In the dynamical systemdescribed by

PEx D EfbEx (1)

the function Efb can be interpreted as a force acting on the behavioral variables Thisforce is designed such that the desired values of Ex (eg direction of a target) form anattractor and undesired values (eg direction of an obstacle) form a repellor in thedynamics of the behavioral variables The function Efb depends on the relative pose

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 659

between the robot and its environment However the dynamics of Ex takes place ona much faster time scale than the gradual changes that emerge in Efb as a result of therobotrsquos motion This property assures that the dynamic variables remain close to theattractor state at all times Multiple behaviors are aggregated by weighted additionof the individual contributions Efb

PEx DX

b

jwbj EfbEx C noise (2)

The weights wb 2 [iexcl1 1] de ne the strength of each behavior and are computedbased on the perceived context of operation The noise has a small amplitudeand merely ensures that the dynamics escapes unstable x-points (repellors)Coordination among behaviors is modeled by means of an additional competitivedynamics that controls the weights wb which evolve in the following fashion

iquestb Pwb D regbwb iexcl w3b iexcl

X

b0 6Db

degb0bw2b0wb C noise (3)

The rst term constitutes a pitchfork bifurcation ie the dynamics possesses stable x-points at

wb Draquo

sect1 if regb gt 00 if regb lt 0

(4)

The factors regb 2 [iexcl1 1] are called competitive advantages They determine thedegree to which a behavior is appropriate and desirable in the present context Thesecond term in (3) captures the competitive dynamics in that an active behavior b0 ofhigher priority suppresses the activation of another con icting behavior b Hencethe factors degb0b 2 [0 1] are called competitive interactions For jwb0j raquo 1 anddegb0b gt regb the point wb D 0 becomes the new stable x-point of behavior b despitea positive competitive advantage regb gt 0 A detailed analysis of how the stability of x-points varies across different values of competitive advantages and interactionsis given in Ref [10] The time constant iquestb determines the rate at which the behaviorsare switched on and off Similar to the behavioral dynamics the noise term helpsthe system to escape unstable x-points in terms of behavior coordination

3 SYSTEM DESIGN

We have chosen the robot heading Aacute as the behavioral variable of the dynamicalsystem as it offers the advantage that the behaviors can be naturally expressed inthis variable Furthermore the commanded turn rate PAacute can be directly applied asa control action to the robot (Section 4) The translational velocity is regulatedby an external control loop which reduces the robot speed based on two values(i) the proximity of nearby obstacles for safety reasons and (ii) a high turn rate PAacuteto ensure that the robotrsquos heading remains close to an attractor state at all times(see Section 2) In the remainder of this section all values denoting distances are

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

660 P Althaus and H I Christensen

expressed as a multiple of the robot radius This keeps the formulas simpler and theconstants dimensionless

31 Design of the individual behaviors

To provide the functionality of fetch-and-carry in a domestic setting the followingbehaviors were designed motivated by the particular layout of the test environmentGO TO (metric motion to a speci c location) OBSTACLE AVOIDANCE (avoidcollision with any kind of obstruction) CORRIDOR FOLLOWING (drive alongcorridors) WALL AVOIDANCE (stay in the middle of long corridors) and DOOR

PASSING (traversing from a corridor to a room and vice versa) A dynamic systemis designed for each of these basic behaviors We tried to de ne these systems inthe simplest mathematical form possible such that the desired functionality of eachbehavior is achieved

The behavior GO TO is expected to align the robotrsquos heading with the directionAtildegoal of a goal point in a room (eg charging station or a spot in front of a doorto be passed) Hence the behavioral dynamics possesses an attractor at Atildegoal Toguarantee the continuity of the dynamics over the entire range of heading directionthe function fgoto is designed with a periodicity of 2frac14 The simplest form that meetsthese criteria is given by (Fig 1)

PAacute D fgotoAacute D iexclcedilgoto sinAacute iexcl Atildegoal (5)

The strength of the attractor is de ned by cedilgotoThe behavior OBSTACLE AVOIDANCE is expected to turn the robot away from the

direction of nearby obstacles In case of a single obstacle i the dynamics shouldcreate a repellor along the obstacle direction Atildei Since remote obstacles are lessimportant than nearby obstacles the magnitude of the repellor should decrease withincreasing distance to the obstacle An angular decay term captures the observationthat obstacles along the current direction of motion pose a bigger thread than theones on the side All these criteria are met by the following dynamics (Fig 2)

fiAacute D cedilobstAacute iexcl Atildei cent eiexclcobstdi cent eiexcl AacuteiexclAtildei 2

2frac34 2i (6)

The distance to the obstacle is denoted by di The angular range of the repellor isde ned by frac34i cobst de nes the decay of the strength of the repellor with increasingdistance to the obstacle

In case of multiple obstacles the resulting force fobstAacute is computed by addingthe contributions of individual obstacles

PAacute D fobstAacute DX

i

fiAacute (7)

The robot is supposed to pass between two obstacles only if it is able to maintain asafety distance Ds to the obstacles located on either side of the robot In other wordsif the obstacles are too close to each other the dynamics should create a repellor

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 2: Behavior coordination in structured environments

This article may be used for research teaching and private study purposesAny substantial or systematic reproduction redistribution reselling loansub-licensing systematic supply or distribution in any form to anyone isexpressly forbidden Terms amp Conditions of access and use can be found athttpwwwtandfonlinecompageterms-and-conditions

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Advanced Robotics Vol 17 No 7 pp 657ndash674 (2003)Oacute VSP and Robotics Society of Japan 2003Also available online - wwwvsppubcom

Full paper

Behavior coordination in structured environments

PHILIPP ALTHAUScurren and HENRIK I CHRISTENSENCentre for Autonomous Systems Numerical Analysis and Computer ScienceRoyal Institute of Technology (KTH) 10044 Stockholm Sweden

Received 10 December 2002 accepted 21 January 2003

AbstractmdashBehavior coordination is a notorious problem in mobile robotics Behaviors are eitherin competition or collaborating to achieve the goals of a system which leads to requirements forarbitration andor fusion of control signals In most systems the arbitration is speci ed in terms oflsquoeventsrsquo that denote positions or sensory input The detection of these events allows discrete switchingbetween groups of behaviors In contrast the fusion of behaviors is often achieved using potential elds fuzzy rules or superposition In most cases the underlying theoretical foundation is rather weakand the behavior switching results in discrete changes in the overall system dynamics In this paperwe present a scheme for behavior coordination that is grounded in the dynamical systems approachThe methodology provides a solid theoretical basis for analysis and design of individual behaviorsand their coordination This coordination framework is demonstrated in the context of a domesticrobot for fetch-and-carry-typetasks It is shown here that behavior coordination can be analyzed asan integral part of the design to facilitate smooth transition and fusion between behaviors

Keywords Behavior coordination non-linear dynamical systems mobile robots robot navigationhybrid deliberative architecture

1 INTRODUCTION

Most recent mobile robotics systems exploit a hybrid deliberative system architec-ture (see Ref [1] for an overview) The deliberative part of such a system is re-sponsible for generating a list of tasks to be accomplished in order to achieve goalsThe actual execution of tasks is monitored by a supervisor while the tasks them-selves are implemented as a composition of behaviors that provide control outputon the basis of sensory input The task switching and behavior coordination in-volves typically a combination of arbitration and fusion across behaviors Thereare many different approaches to the coordination as outlined in Ref [1] The ar-bitration schemes are often based on the use of discrete logic that can be described

currenTo whom correspondence should be addressed E-mail philippnadakthse

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

658 P Althaus and H I Christensen

as discrete event systems [2] Popular arbitration schemes include the subsumptionsystem by Brooks [3] and the task language used in the TCA system [4] In contrastto behavior arbitration which typically signi es a task switch behavior fusion isused for integration of output from multiple behaviors into a single control signalfor the platform By far the most popular method has been the use of potential elds[5] In addition methods such as voting [6] and fuzzy rules [7] have been exploitedA notorious problem in many of these systems is the lack of a solid theoretical foun-dation for weight selection of different behaviors for integration Especially for taskswitches the existing solutions are rather ad hoc

An alternative to these methods is the dynamical systems approach introduced bySchoumlner and Dose [8] Here a nonlinear dynamics approach is adopted to captureboth continuous and discrete integration of behaviors into a uni ed theoreticalframework The approach has so far only been used in simulations [8ndash10] andrelatively simple real-world settings [11ndash13] and with a small number of behaviorsThis paper outlines how the methodology can be used to implement larger-scalereal-world systems and how adoption of such a framework provides the basis fortheoretical design of the behavior coordination system

Initially the dynamical systems approach is introduced (Section 2) Then inSection 3 the overall system design is presented Another bene t of this approachis that it can be designed to provide robust control solutions in the presence of noisethrough adaptation of qualitative representations As such a representation for anavigation task we used a topological map This map is introduced in Section 4The combination of the dynamical systems approach and qualitative maps allowsconstruction of robot systems which have smooth control in the presence of behaviorcoordination task switching while still encompassing facilities for operation inrealistic large-scale environments Finally example results are presented in Section5 while a summary and avenues for future research are outlined in Section 6

2 DYNAMICAL SYSTEMS APPROACH

The conceptual framework of this approach is based on the theory of nonlineardynamical systems [14] In the following we only provide a brief outline of thisframework and refer the interested reader to Ref [9] for a more detailed description

A behavior b emerges from the time evolution of the behavioral variablesdescribed by the vector Ex In a navigation task for example the robot headingand velocity constitute the set of behavioral variables In the dynamical systemdescribed by

PEx D EfbEx (1)

the function Efb can be interpreted as a force acting on the behavioral variables Thisforce is designed such that the desired values of Ex (eg direction of a target) form anattractor and undesired values (eg direction of an obstacle) form a repellor in thedynamics of the behavioral variables The function Efb depends on the relative pose

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 659

between the robot and its environment However the dynamics of Ex takes place ona much faster time scale than the gradual changes that emerge in Efb as a result of therobotrsquos motion This property assures that the dynamic variables remain close to theattractor state at all times Multiple behaviors are aggregated by weighted additionof the individual contributions Efb

PEx DX

b

jwbj EfbEx C noise (2)

The weights wb 2 [iexcl1 1] de ne the strength of each behavior and are computedbased on the perceived context of operation The noise has a small amplitudeand merely ensures that the dynamics escapes unstable x-points (repellors)Coordination among behaviors is modeled by means of an additional competitivedynamics that controls the weights wb which evolve in the following fashion

iquestb Pwb D regbwb iexcl w3b iexcl

X

b0 6Db

degb0bw2b0wb C noise (3)

The rst term constitutes a pitchfork bifurcation ie the dynamics possesses stable x-points at

wb Draquo

sect1 if regb gt 00 if regb lt 0

(4)

The factors regb 2 [iexcl1 1] are called competitive advantages They determine thedegree to which a behavior is appropriate and desirable in the present context Thesecond term in (3) captures the competitive dynamics in that an active behavior b0 ofhigher priority suppresses the activation of another con icting behavior b Hencethe factors degb0b 2 [0 1] are called competitive interactions For jwb0j raquo 1 anddegb0b gt regb the point wb D 0 becomes the new stable x-point of behavior b despitea positive competitive advantage regb gt 0 A detailed analysis of how the stability of x-points varies across different values of competitive advantages and interactionsis given in Ref [10] The time constant iquestb determines the rate at which the behaviorsare switched on and off Similar to the behavioral dynamics the noise term helpsthe system to escape unstable x-points in terms of behavior coordination

3 SYSTEM DESIGN

We have chosen the robot heading Aacute as the behavioral variable of the dynamicalsystem as it offers the advantage that the behaviors can be naturally expressed inthis variable Furthermore the commanded turn rate PAacute can be directly applied asa control action to the robot (Section 4) The translational velocity is regulatedby an external control loop which reduces the robot speed based on two values(i) the proximity of nearby obstacles for safety reasons and (ii) a high turn rate PAacuteto ensure that the robotrsquos heading remains close to an attractor state at all times(see Section 2) In the remainder of this section all values denoting distances are

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

660 P Althaus and H I Christensen

expressed as a multiple of the robot radius This keeps the formulas simpler and theconstants dimensionless

31 Design of the individual behaviors

To provide the functionality of fetch-and-carry in a domestic setting the followingbehaviors were designed motivated by the particular layout of the test environmentGO TO (metric motion to a speci c location) OBSTACLE AVOIDANCE (avoidcollision with any kind of obstruction) CORRIDOR FOLLOWING (drive alongcorridors) WALL AVOIDANCE (stay in the middle of long corridors) and DOOR

PASSING (traversing from a corridor to a room and vice versa) A dynamic systemis designed for each of these basic behaviors We tried to de ne these systems inthe simplest mathematical form possible such that the desired functionality of eachbehavior is achieved

The behavior GO TO is expected to align the robotrsquos heading with the directionAtildegoal of a goal point in a room (eg charging station or a spot in front of a doorto be passed) Hence the behavioral dynamics possesses an attractor at Atildegoal Toguarantee the continuity of the dynamics over the entire range of heading directionthe function fgoto is designed with a periodicity of 2frac14 The simplest form that meetsthese criteria is given by (Fig 1)

PAacute D fgotoAacute D iexclcedilgoto sinAacute iexcl Atildegoal (5)

The strength of the attractor is de ned by cedilgotoThe behavior OBSTACLE AVOIDANCE is expected to turn the robot away from the

direction of nearby obstacles In case of a single obstacle i the dynamics shouldcreate a repellor along the obstacle direction Atildei Since remote obstacles are lessimportant than nearby obstacles the magnitude of the repellor should decrease withincreasing distance to the obstacle An angular decay term captures the observationthat obstacles along the current direction of motion pose a bigger thread than theones on the side All these criteria are met by the following dynamics (Fig 2)

fiAacute D cedilobstAacute iexcl Atildei cent eiexclcobstdi cent eiexcl AacuteiexclAtildei 2

2frac34 2i (6)

The distance to the obstacle is denoted by di The angular range of the repellor isde ned by frac34i cobst de nes the decay of the strength of the repellor with increasingdistance to the obstacle

In case of multiple obstacles the resulting force fobstAacute is computed by addingthe contributions of individual obstacles

PAacute D fobstAacute DX

i

fiAacute (7)

The robot is supposed to pass between two obstacles only if it is able to maintain asafety distance Ds to the obstacles located on either side of the robot In other wordsif the obstacles are too close to each other the dynamics should create a repellor

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 3: Behavior coordination in structured environments

Advanced Robotics Vol 17 No 7 pp 657ndash674 (2003)Oacute VSP and Robotics Society of Japan 2003Also available online - wwwvsppubcom

Full paper

Behavior coordination in structured environments

PHILIPP ALTHAUScurren and HENRIK I CHRISTENSENCentre for Autonomous Systems Numerical Analysis and Computer ScienceRoyal Institute of Technology (KTH) 10044 Stockholm Sweden

Received 10 December 2002 accepted 21 January 2003

AbstractmdashBehavior coordination is a notorious problem in mobile robotics Behaviors are eitherin competition or collaborating to achieve the goals of a system which leads to requirements forarbitration andor fusion of control signals In most systems the arbitration is speci ed in terms oflsquoeventsrsquo that denote positions or sensory input The detection of these events allows discrete switchingbetween groups of behaviors In contrast the fusion of behaviors is often achieved using potential elds fuzzy rules or superposition In most cases the underlying theoretical foundation is rather weakand the behavior switching results in discrete changes in the overall system dynamics In this paperwe present a scheme for behavior coordination that is grounded in the dynamical systems approachThe methodology provides a solid theoretical basis for analysis and design of individual behaviorsand their coordination This coordination framework is demonstrated in the context of a domesticrobot for fetch-and-carry-typetasks It is shown here that behavior coordination can be analyzed asan integral part of the design to facilitate smooth transition and fusion between behaviors

Keywords Behavior coordination non-linear dynamical systems mobile robots robot navigationhybrid deliberative architecture

1 INTRODUCTION

Most recent mobile robotics systems exploit a hybrid deliberative system architec-ture (see Ref [1] for an overview) The deliberative part of such a system is re-sponsible for generating a list of tasks to be accomplished in order to achieve goalsThe actual execution of tasks is monitored by a supervisor while the tasks them-selves are implemented as a composition of behaviors that provide control outputon the basis of sensory input The task switching and behavior coordination in-volves typically a combination of arbitration and fusion across behaviors Thereare many different approaches to the coordination as outlined in Ref [1] The ar-bitration schemes are often based on the use of discrete logic that can be described

currenTo whom correspondence should be addressed E-mail philippnadakthse

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

658 P Althaus and H I Christensen

as discrete event systems [2] Popular arbitration schemes include the subsumptionsystem by Brooks [3] and the task language used in the TCA system [4] In contrastto behavior arbitration which typically signi es a task switch behavior fusion isused for integration of output from multiple behaviors into a single control signalfor the platform By far the most popular method has been the use of potential elds[5] In addition methods such as voting [6] and fuzzy rules [7] have been exploitedA notorious problem in many of these systems is the lack of a solid theoretical foun-dation for weight selection of different behaviors for integration Especially for taskswitches the existing solutions are rather ad hoc

An alternative to these methods is the dynamical systems approach introduced bySchoumlner and Dose [8] Here a nonlinear dynamics approach is adopted to captureboth continuous and discrete integration of behaviors into a uni ed theoreticalframework The approach has so far only been used in simulations [8ndash10] andrelatively simple real-world settings [11ndash13] and with a small number of behaviorsThis paper outlines how the methodology can be used to implement larger-scalereal-world systems and how adoption of such a framework provides the basis fortheoretical design of the behavior coordination system

Initially the dynamical systems approach is introduced (Section 2) Then inSection 3 the overall system design is presented Another bene t of this approachis that it can be designed to provide robust control solutions in the presence of noisethrough adaptation of qualitative representations As such a representation for anavigation task we used a topological map This map is introduced in Section 4The combination of the dynamical systems approach and qualitative maps allowsconstruction of robot systems which have smooth control in the presence of behaviorcoordination task switching while still encompassing facilities for operation inrealistic large-scale environments Finally example results are presented in Section5 while a summary and avenues for future research are outlined in Section 6

2 DYNAMICAL SYSTEMS APPROACH

The conceptual framework of this approach is based on the theory of nonlineardynamical systems [14] In the following we only provide a brief outline of thisframework and refer the interested reader to Ref [9] for a more detailed description

A behavior b emerges from the time evolution of the behavioral variablesdescribed by the vector Ex In a navigation task for example the robot headingand velocity constitute the set of behavioral variables In the dynamical systemdescribed by

PEx D EfbEx (1)

the function Efb can be interpreted as a force acting on the behavioral variables Thisforce is designed such that the desired values of Ex (eg direction of a target) form anattractor and undesired values (eg direction of an obstacle) form a repellor in thedynamics of the behavioral variables The function Efb depends on the relative pose

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 659

between the robot and its environment However the dynamics of Ex takes place ona much faster time scale than the gradual changes that emerge in Efb as a result of therobotrsquos motion This property assures that the dynamic variables remain close to theattractor state at all times Multiple behaviors are aggregated by weighted additionof the individual contributions Efb

PEx DX

b

jwbj EfbEx C noise (2)

The weights wb 2 [iexcl1 1] de ne the strength of each behavior and are computedbased on the perceived context of operation The noise has a small amplitudeand merely ensures that the dynamics escapes unstable x-points (repellors)Coordination among behaviors is modeled by means of an additional competitivedynamics that controls the weights wb which evolve in the following fashion

iquestb Pwb D regbwb iexcl w3b iexcl

X

b0 6Db

degb0bw2b0wb C noise (3)

The rst term constitutes a pitchfork bifurcation ie the dynamics possesses stable x-points at

wb Draquo

sect1 if regb gt 00 if regb lt 0

(4)

The factors regb 2 [iexcl1 1] are called competitive advantages They determine thedegree to which a behavior is appropriate and desirable in the present context Thesecond term in (3) captures the competitive dynamics in that an active behavior b0 ofhigher priority suppresses the activation of another con icting behavior b Hencethe factors degb0b 2 [0 1] are called competitive interactions For jwb0j raquo 1 anddegb0b gt regb the point wb D 0 becomes the new stable x-point of behavior b despitea positive competitive advantage regb gt 0 A detailed analysis of how the stability of x-points varies across different values of competitive advantages and interactionsis given in Ref [10] The time constant iquestb determines the rate at which the behaviorsare switched on and off Similar to the behavioral dynamics the noise term helpsthe system to escape unstable x-points in terms of behavior coordination

3 SYSTEM DESIGN

We have chosen the robot heading Aacute as the behavioral variable of the dynamicalsystem as it offers the advantage that the behaviors can be naturally expressed inthis variable Furthermore the commanded turn rate PAacute can be directly applied asa control action to the robot (Section 4) The translational velocity is regulatedby an external control loop which reduces the robot speed based on two values(i) the proximity of nearby obstacles for safety reasons and (ii) a high turn rate PAacuteto ensure that the robotrsquos heading remains close to an attractor state at all times(see Section 2) In the remainder of this section all values denoting distances are

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

660 P Althaus and H I Christensen

expressed as a multiple of the robot radius This keeps the formulas simpler and theconstants dimensionless

31 Design of the individual behaviors

To provide the functionality of fetch-and-carry in a domestic setting the followingbehaviors were designed motivated by the particular layout of the test environmentGO TO (metric motion to a speci c location) OBSTACLE AVOIDANCE (avoidcollision with any kind of obstruction) CORRIDOR FOLLOWING (drive alongcorridors) WALL AVOIDANCE (stay in the middle of long corridors) and DOOR

PASSING (traversing from a corridor to a room and vice versa) A dynamic systemis designed for each of these basic behaviors We tried to de ne these systems inthe simplest mathematical form possible such that the desired functionality of eachbehavior is achieved

The behavior GO TO is expected to align the robotrsquos heading with the directionAtildegoal of a goal point in a room (eg charging station or a spot in front of a doorto be passed) Hence the behavioral dynamics possesses an attractor at Atildegoal Toguarantee the continuity of the dynamics over the entire range of heading directionthe function fgoto is designed with a periodicity of 2frac14 The simplest form that meetsthese criteria is given by (Fig 1)

PAacute D fgotoAacute D iexclcedilgoto sinAacute iexcl Atildegoal (5)

The strength of the attractor is de ned by cedilgotoThe behavior OBSTACLE AVOIDANCE is expected to turn the robot away from the

direction of nearby obstacles In case of a single obstacle i the dynamics shouldcreate a repellor along the obstacle direction Atildei Since remote obstacles are lessimportant than nearby obstacles the magnitude of the repellor should decrease withincreasing distance to the obstacle An angular decay term captures the observationthat obstacles along the current direction of motion pose a bigger thread than theones on the side All these criteria are met by the following dynamics (Fig 2)

fiAacute D cedilobstAacute iexcl Atildei cent eiexclcobstdi cent eiexcl AacuteiexclAtildei 2

2frac34 2i (6)

The distance to the obstacle is denoted by di The angular range of the repellor isde ned by frac34i cobst de nes the decay of the strength of the repellor with increasingdistance to the obstacle

In case of multiple obstacles the resulting force fobstAacute is computed by addingthe contributions of individual obstacles

PAacute D fobstAacute DX

i

fiAacute (7)

The robot is supposed to pass between two obstacles only if it is able to maintain asafety distance Ds to the obstacles located on either side of the robot In other wordsif the obstacles are too close to each other the dynamics should create a repellor

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 4: Behavior coordination in structured environments

658 P Althaus and H I Christensen

as discrete event systems [2] Popular arbitration schemes include the subsumptionsystem by Brooks [3] and the task language used in the TCA system [4] In contrastto behavior arbitration which typically signi es a task switch behavior fusion isused for integration of output from multiple behaviors into a single control signalfor the platform By far the most popular method has been the use of potential elds[5] In addition methods such as voting [6] and fuzzy rules [7] have been exploitedA notorious problem in many of these systems is the lack of a solid theoretical foun-dation for weight selection of different behaviors for integration Especially for taskswitches the existing solutions are rather ad hoc

An alternative to these methods is the dynamical systems approach introduced bySchoumlner and Dose [8] Here a nonlinear dynamics approach is adopted to captureboth continuous and discrete integration of behaviors into a uni ed theoreticalframework The approach has so far only been used in simulations [8ndash10] andrelatively simple real-world settings [11ndash13] and with a small number of behaviorsThis paper outlines how the methodology can be used to implement larger-scalereal-world systems and how adoption of such a framework provides the basis fortheoretical design of the behavior coordination system

Initially the dynamical systems approach is introduced (Section 2) Then inSection 3 the overall system design is presented Another bene t of this approachis that it can be designed to provide robust control solutions in the presence of noisethrough adaptation of qualitative representations As such a representation for anavigation task we used a topological map This map is introduced in Section 4The combination of the dynamical systems approach and qualitative maps allowsconstruction of robot systems which have smooth control in the presence of behaviorcoordination task switching while still encompassing facilities for operation inrealistic large-scale environments Finally example results are presented in Section5 while a summary and avenues for future research are outlined in Section 6

2 DYNAMICAL SYSTEMS APPROACH

The conceptual framework of this approach is based on the theory of nonlineardynamical systems [14] In the following we only provide a brief outline of thisframework and refer the interested reader to Ref [9] for a more detailed description

A behavior b emerges from the time evolution of the behavioral variablesdescribed by the vector Ex In a navigation task for example the robot headingand velocity constitute the set of behavioral variables In the dynamical systemdescribed by

PEx D EfbEx (1)

the function Efb can be interpreted as a force acting on the behavioral variables Thisforce is designed such that the desired values of Ex (eg direction of a target) form anattractor and undesired values (eg direction of an obstacle) form a repellor in thedynamics of the behavioral variables The function Efb depends on the relative pose

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 659

between the robot and its environment However the dynamics of Ex takes place ona much faster time scale than the gradual changes that emerge in Efb as a result of therobotrsquos motion This property assures that the dynamic variables remain close to theattractor state at all times Multiple behaviors are aggregated by weighted additionof the individual contributions Efb

PEx DX

b

jwbj EfbEx C noise (2)

The weights wb 2 [iexcl1 1] de ne the strength of each behavior and are computedbased on the perceived context of operation The noise has a small amplitudeand merely ensures that the dynamics escapes unstable x-points (repellors)Coordination among behaviors is modeled by means of an additional competitivedynamics that controls the weights wb which evolve in the following fashion

iquestb Pwb D regbwb iexcl w3b iexcl

X

b0 6Db

degb0bw2b0wb C noise (3)

The rst term constitutes a pitchfork bifurcation ie the dynamics possesses stable x-points at

wb Draquo

sect1 if regb gt 00 if regb lt 0

(4)

The factors regb 2 [iexcl1 1] are called competitive advantages They determine thedegree to which a behavior is appropriate and desirable in the present context Thesecond term in (3) captures the competitive dynamics in that an active behavior b0 ofhigher priority suppresses the activation of another con icting behavior b Hencethe factors degb0b 2 [0 1] are called competitive interactions For jwb0j raquo 1 anddegb0b gt regb the point wb D 0 becomes the new stable x-point of behavior b despitea positive competitive advantage regb gt 0 A detailed analysis of how the stability of x-points varies across different values of competitive advantages and interactionsis given in Ref [10] The time constant iquestb determines the rate at which the behaviorsare switched on and off Similar to the behavioral dynamics the noise term helpsthe system to escape unstable x-points in terms of behavior coordination

3 SYSTEM DESIGN

We have chosen the robot heading Aacute as the behavioral variable of the dynamicalsystem as it offers the advantage that the behaviors can be naturally expressed inthis variable Furthermore the commanded turn rate PAacute can be directly applied asa control action to the robot (Section 4) The translational velocity is regulatedby an external control loop which reduces the robot speed based on two values(i) the proximity of nearby obstacles for safety reasons and (ii) a high turn rate PAacuteto ensure that the robotrsquos heading remains close to an attractor state at all times(see Section 2) In the remainder of this section all values denoting distances are

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

660 P Althaus and H I Christensen

expressed as a multiple of the robot radius This keeps the formulas simpler and theconstants dimensionless

31 Design of the individual behaviors

To provide the functionality of fetch-and-carry in a domestic setting the followingbehaviors were designed motivated by the particular layout of the test environmentGO TO (metric motion to a speci c location) OBSTACLE AVOIDANCE (avoidcollision with any kind of obstruction) CORRIDOR FOLLOWING (drive alongcorridors) WALL AVOIDANCE (stay in the middle of long corridors) and DOOR

PASSING (traversing from a corridor to a room and vice versa) A dynamic systemis designed for each of these basic behaviors We tried to de ne these systems inthe simplest mathematical form possible such that the desired functionality of eachbehavior is achieved

The behavior GO TO is expected to align the robotrsquos heading with the directionAtildegoal of a goal point in a room (eg charging station or a spot in front of a doorto be passed) Hence the behavioral dynamics possesses an attractor at Atildegoal Toguarantee the continuity of the dynamics over the entire range of heading directionthe function fgoto is designed with a periodicity of 2frac14 The simplest form that meetsthese criteria is given by (Fig 1)

PAacute D fgotoAacute D iexclcedilgoto sinAacute iexcl Atildegoal (5)

The strength of the attractor is de ned by cedilgotoThe behavior OBSTACLE AVOIDANCE is expected to turn the robot away from the

direction of nearby obstacles In case of a single obstacle i the dynamics shouldcreate a repellor along the obstacle direction Atildei Since remote obstacles are lessimportant than nearby obstacles the magnitude of the repellor should decrease withincreasing distance to the obstacle An angular decay term captures the observationthat obstacles along the current direction of motion pose a bigger thread than theones on the side All these criteria are met by the following dynamics (Fig 2)

fiAacute D cedilobstAacute iexcl Atildei cent eiexclcobstdi cent eiexcl AacuteiexclAtildei 2

2frac34 2i (6)

The distance to the obstacle is denoted by di The angular range of the repellor isde ned by frac34i cobst de nes the decay of the strength of the repellor with increasingdistance to the obstacle

In case of multiple obstacles the resulting force fobstAacute is computed by addingthe contributions of individual obstacles

PAacute D fobstAacute DX

i

fiAacute (7)

The robot is supposed to pass between two obstacles only if it is able to maintain asafety distance Ds to the obstacles located on either side of the robot In other wordsif the obstacles are too close to each other the dynamics should create a repellor

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 5: Behavior coordination in structured environments

Behavior coordination in structured environments 659

between the robot and its environment However the dynamics of Ex takes place ona much faster time scale than the gradual changes that emerge in Efb as a result of therobotrsquos motion This property assures that the dynamic variables remain close to theattractor state at all times Multiple behaviors are aggregated by weighted additionof the individual contributions Efb

PEx DX

b

jwbj EfbEx C noise (2)

The weights wb 2 [iexcl1 1] de ne the strength of each behavior and are computedbased on the perceived context of operation The noise has a small amplitudeand merely ensures that the dynamics escapes unstable x-points (repellors)Coordination among behaviors is modeled by means of an additional competitivedynamics that controls the weights wb which evolve in the following fashion

iquestb Pwb D regbwb iexcl w3b iexcl

X

b0 6Db

degb0bw2b0wb C noise (3)

The rst term constitutes a pitchfork bifurcation ie the dynamics possesses stable x-points at

wb Draquo

sect1 if regb gt 00 if regb lt 0

(4)

The factors regb 2 [iexcl1 1] are called competitive advantages They determine thedegree to which a behavior is appropriate and desirable in the present context Thesecond term in (3) captures the competitive dynamics in that an active behavior b0 ofhigher priority suppresses the activation of another con icting behavior b Hencethe factors degb0b 2 [0 1] are called competitive interactions For jwb0j raquo 1 anddegb0b gt regb the point wb D 0 becomes the new stable x-point of behavior b despitea positive competitive advantage regb gt 0 A detailed analysis of how the stability of x-points varies across different values of competitive advantages and interactionsis given in Ref [10] The time constant iquestb determines the rate at which the behaviorsare switched on and off Similar to the behavioral dynamics the noise term helpsthe system to escape unstable x-points in terms of behavior coordination

3 SYSTEM DESIGN

We have chosen the robot heading Aacute as the behavioral variable of the dynamicalsystem as it offers the advantage that the behaviors can be naturally expressed inthis variable Furthermore the commanded turn rate PAacute can be directly applied asa control action to the robot (Section 4) The translational velocity is regulatedby an external control loop which reduces the robot speed based on two values(i) the proximity of nearby obstacles for safety reasons and (ii) a high turn rate PAacuteto ensure that the robotrsquos heading remains close to an attractor state at all times(see Section 2) In the remainder of this section all values denoting distances are

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

660 P Althaus and H I Christensen

expressed as a multiple of the robot radius This keeps the formulas simpler and theconstants dimensionless

31 Design of the individual behaviors

To provide the functionality of fetch-and-carry in a domestic setting the followingbehaviors were designed motivated by the particular layout of the test environmentGO TO (metric motion to a speci c location) OBSTACLE AVOIDANCE (avoidcollision with any kind of obstruction) CORRIDOR FOLLOWING (drive alongcorridors) WALL AVOIDANCE (stay in the middle of long corridors) and DOOR

PASSING (traversing from a corridor to a room and vice versa) A dynamic systemis designed for each of these basic behaviors We tried to de ne these systems inthe simplest mathematical form possible such that the desired functionality of eachbehavior is achieved

The behavior GO TO is expected to align the robotrsquos heading with the directionAtildegoal of a goal point in a room (eg charging station or a spot in front of a doorto be passed) Hence the behavioral dynamics possesses an attractor at Atildegoal Toguarantee the continuity of the dynamics over the entire range of heading directionthe function fgoto is designed with a periodicity of 2frac14 The simplest form that meetsthese criteria is given by (Fig 1)

PAacute D fgotoAacute D iexclcedilgoto sinAacute iexcl Atildegoal (5)

The strength of the attractor is de ned by cedilgotoThe behavior OBSTACLE AVOIDANCE is expected to turn the robot away from the

direction of nearby obstacles In case of a single obstacle i the dynamics shouldcreate a repellor along the obstacle direction Atildei Since remote obstacles are lessimportant than nearby obstacles the magnitude of the repellor should decrease withincreasing distance to the obstacle An angular decay term captures the observationthat obstacles along the current direction of motion pose a bigger thread than theones on the side All these criteria are met by the following dynamics (Fig 2)

fiAacute D cedilobstAacute iexcl Atildei cent eiexclcobstdi cent eiexcl AacuteiexclAtildei 2

2frac34 2i (6)

The distance to the obstacle is denoted by di The angular range of the repellor isde ned by frac34i cobst de nes the decay of the strength of the repellor with increasingdistance to the obstacle

In case of multiple obstacles the resulting force fobstAacute is computed by addingthe contributions of individual obstacles

PAacute D fobstAacute DX

i

fiAacute (7)

The robot is supposed to pass between two obstacles only if it is able to maintain asafety distance Ds to the obstacles located on either side of the robot In other wordsif the obstacles are too close to each other the dynamics should create a repellor

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 6: Behavior coordination in structured environments

660 P Althaus and H I Christensen

expressed as a multiple of the robot radius This keeps the formulas simpler and theconstants dimensionless

31 Design of the individual behaviors

To provide the functionality of fetch-and-carry in a domestic setting the followingbehaviors were designed motivated by the particular layout of the test environmentGO TO (metric motion to a speci c location) OBSTACLE AVOIDANCE (avoidcollision with any kind of obstruction) CORRIDOR FOLLOWING (drive alongcorridors) WALL AVOIDANCE (stay in the middle of long corridors) and DOOR

PASSING (traversing from a corridor to a room and vice versa) A dynamic systemis designed for each of these basic behaviors We tried to de ne these systems inthe simplest mathematical form possible such that the desired functionality of eachbehavior is achieved

The behavior GO TO is expected to align the robotrsquos heading with the directionAtildegoal of a goal point in a room (eg charging station or a spot in front of a doorto be passed) Hence the behavioral dynamics possesses an attractor at Atildegoal Toguarantee the continuity of the dynamics over the entire range of heading directionthe function fgoto is designed with a periodicity of 2frac14 The simplest form that meetsthese criteria is given by (Fig 1)

PAacute D fgotoAacute D iexclcedilgoto sinAacute iexcl Atildegoal (5)

The strength of the attractor is de ned by cedilgotoThe behavior OBSTACLE AVOIDANCE is expected to turn the robot away from the

direction of nearby obstacles In case of a single obstacle i the dynamics shouldcreate a repellor along the obstacle direction Atildei Since remote obstacles are lessimportant than nearby obstacles the magnitude of the repellor should decrease withincreasing distance to the obstacle An angular decay term captures the observationthat obstacles along the current direction of motion pose a bigger thread than theones on the side All these criteria are met by the following dynamics (Fig 2)

fiAacute D cedilobstAacute iexcl Atildei cent eiexclcobstdi cent eiexcl AacuteiexclAtildei 2

2frac34 2i (6)

The distance to the obstacle is denoted by di The angular range of the repellor isde ned by frac34i cobst de nes the decay of the strength of the repellor with increasingdistance to the obstacle

In case of multiple obstacles the resulting force fobstAacute is computed by addingthe contributions of individual obstacles

PAacute D fobstAacute DX

i

fiAacute (7)

The robot is supposed to pass between two obstacles only if it is able to maintain asafety distance Ds to the obstacles located on either side of the robot In other wordsif the obstacles are too close to each other the dynamics should create a repellor

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 7: Behavior coordination in structured environments

Behavior coordination in structured environments 661

Figure 1 The dynamics of GO TO An attractor is generated at the direction Atildegoal in which the goalpoint lies

Figure 2 The dynamics of OBSTACLE AVOIDANCE for a single obstacle A repellor is generated atthe direction Atildei of the obstacle

along the direction of the gap (Fig 3) On the other hand if the gap is suf cientlywide the dynamics should instead generate an attractor (Fig 4) By analyzing the x-points of (7) it can be seen that this property can be achieved by an appropriatechoice of the angular range frac34i of each individual obstacle contribution in (6)

frac34i D arcsin

sup31 C Ds

1 C di

acute (8)

The behaviors CORRIDOR FOLLOWING and WALL AVOIDANCE navigate the robotalong an empty corridor CORRIDOR FOLLOWING is expected to align the robotsheading with the corridor direction Atildecorr the robot is supposed to follow Hence thebehavioral dynamics has the same form as for GO TO (5)

PAacute D fcorrAacute D iexclcedilcorr sinAacute iexcl Atildecorr (9)

WALL AVOIDANCE is supposed to guide the robot towards the center of the corridorThus for each wall the dynamics contains a repellor located at the direction ofthe wall Atildewall-1 Atildewall-2 respectively and an attractor along the opposite directionThe magnitude of the repellor should decrease with increasing distance to the wallat a rate determined by a gain cwall The stronger contribution of the closer walldominates the repulsive force of the remote wall in a way that results in a repellorgenerated along the direction of the former Again we require the function fwall to

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 8: Behavior coordination in structured environments

662 P Althaus and H I Christensen

Figure 3 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo does not allow the robot to stay a safety distance Ds away from them a repellor is created

Figure 4 The dynamics in the case of two obstacles i and j (dashed curves) If the gap between thetwo allows the robot to stay a safety distance Ds away from them an attractor in the middle of the twois created

be 2frac14 -periodic These criteria are met by a dynamics of the following form (Fig 5)

PAacute D fwallAacute D cedilwall

2X

lD1

poundsinAacute iexcl Atildewall-l cent eiexclcwalldwall-l

curren (10)

dwall-1 and dwall-2 denote the distances between the robot and the two walls Theparameters cwall and cedilwall are chosen such that the robot can only pass a gap betweena wall and an obstacle if it is wide enough (similar to the case of two obstaclesin (8))

The behavior DOOR PASSING is supposed to lead the robot through a door Thisis in principle the same as moving towards a goal in the direction of the door AtildedoorTherefore the same functional form as for GO TO (5) has been chosen

PAacute D fdoorAacute D iexclcedildoor sinAacute iexcl Atildedoor (11)

Since all fbAacute introduced in this section do not explicitly depend on time and thetemporal changes of its parameters (eg Atildegoal) happen on a much slower timescalethan the dynamics of Aacute it is straightforward to show stability for each individualbehavior

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 9: Behavior coordination in structured environments

Behavior coordination in structured environments 663

Figure 5 The dynamics of WALL AVOIDANCE Each wall provides a contribution (dashed curves)with an attractorndash repellor pair The sum of the two contributions forms a repellor in the direction ofthe closer wall (Atildewall-1 in this case) An attractor occurs at the opposite direction Atildewall-2

32 Design of the behavior coordination

The overall dynamics of the system is obtained from the weighted summation ofindividual behaviors based on (2)

PAacute DX

b

jwbjfbAacute C noise (12)

with b 2 fgoto obst corr wall doorg For the coordination of the behaviorsthe competitive advantages regb the competitive interactions degb0b and the timeconstants iquestb in (3) have to be chosen appropriately Due to the theoretical basisbifurcation analysis and identi cation of stable x-points can be done for theresulting system which allows prediction of performance for all situations

321 Competitive advantages The competitive advantages re ect the relevanceand applicability of a behavior in a particular context Obviously GO TO should beactivated whenever the agent nds itself in a room and is supposed to approach agoal otherwise it is turned off For reggoto 2 0 1] the behavior GO TO is switchedon To have the possibility for any competitive interaction degbgoto 2 [0 1] to begreater or smaller than reggoto a value of 05 is chosen for the competitive advantageHence

reggoto Draquo

05 if in a room

iexcl05 otherwise(13)

Equivalently CORRIDOR FOLLOWING and WALL AVOIDANCE are relevant if therobot is in a corridor

regcorr D regwall Draquo

05 if in corridor

iexcl05 otherwise(14)

The competitive advantage of DOOR PASSING is set to a positive value as soon asthe door we want to pass is detected (Section 42)

regdoor Draquo

05 if door detected

iexcl05 otherwise(15)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 10: Behavior coordination in structured environments

664 P Althaus and H I Christensen

Figure 6 Fusion of GO TO (dotted curve) and OBSTACLE AVOIDANCE (dashed curve) The overalldynamics (solid curve) creates an attractor which lies to the left of the goal direction Atildegoal

The relevance of OBSTACLE AVOIDANCE depends on the number and proximityof the obstacles currently surrounding the robot The competitive advantage ofOBSTACLE AVOIDANCE is related to the obstacle density

frac12 DX

i

eiexcldi (16)

and is computed according to

regobst D tanhfrac12 iexcl frac120 (17)

The constant frac120 determines the density above which obstacle avoidance becomesrelevant (ie regobst gt 0) The tangent hyperbolic ensures that the magnitude of regobst

is limited to the interval [iexcl1 1]Choosing the parameters in this way depending on sensory and topological

context incorporates both behavior arbitration and fusion Arbitration is achievedbetween GO TO and CORRIDOR FOLLOWING for example Only one of the two isactivated depending on the location of the robot Fusion occurs between GO TO andOBSTACLE AVOIDANCE for example by adding the two contributions (12) In casean obstacle is blocking the way towards the goal point the overall dynamics guidesthe robot around the obstruction (Fig 6)

322 Competitive interactions The competitive interaction degb0b re ects thedegree to which an active behavior b0 suppresses another behavior b In fact thereare situations where behaviors would interfere with each other in an undesirablecounterproductive manner

A door that is half-blocked by an obstacle might still be detected as a dooralthough the gap to pass is actually too narrow Hence we want OBSTACLE

AVOIDANCE to suppress DOOR PASSING in the presence of a high obstacle density

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 11: Behavior coordination in structured environments

Behavior coordination in structured environments 665

Figure 7 The contributionof two close obstacles i and j (dashed line) has a repellor in the middle ofthem (cf Fig 3) However this rather weak repellor is dominated by the attractor of GO TO (dottedline see Fig 1) Hence the sum of the two (solid line) would ignore the obstructions An arbitrationscheme is needed to prioritize OBSTACLE AVOIDANCE

Furthermore if two obstacles lie close to each other the dynamics of Aacute generates aweak repellor in the middle of them This repellor however could be dominated byan attractor of another behavior which would inevitably lead to collision (Fig 7)Consequently a behavior arbitration mechanism is needed where OBSTACLE

AVOIDANCE ought to suppress GO TO and CORRIDOR FOLLOWING as well if theobstacle density (16) exceeds a critical threshold frac12c This prioritization is achievedby appropriately choosing the competitive interactions

degobstgoto D degobstcorr D degobstdoor D1

21 C tanhfrac12 iexcl frac12c (18)

The constant frac12c determines the density at which obstacle avoidance suppresses theother behaviors (degobstb gt 05) The functional form of the term is chosen such thatdegobstb 2 [0 1]

Since there exist no potential con icts among any other pair of behaviors all othercompetitive interactions degb0b are set to zero

323 Time constants The time constants iquestb determine the time scale at whichthe behaviors are switched on and off respectively iquestobst is chosen very small suchthat the robot reacts almost immediately if a new obstacle is perceived The sameholds for iquestwall As soon as a door is detected the robot should turn towards it beforedriving out of detection range again Consequently iquestdoor is also chosen to be smallThe dynamics of wgoto and wcorr evolve at a slower rate iquestgoto D iquestcorr Agrave iquestobst OnceOBSTACLE AVOIDANCE becomes less relevant eg after the robot circumnavigatesan obstacle the other behaviors switch on gradually rather than causing jitter amongthemselves and OBSTACLE AVOIDANCE

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 12: Behavior coordination in structured environments

666 P Althaus and H I Christensen

4 IMPLEMENTATION OF THE SYSTEM

To verify the design outlined above a system has been designed around a Scoutrobot from Nomadic Technologies (Fig 8) The platform has a cylindrical shapewith a diameter of 38 cm and moves at a speed of up to 1 ms The robot isequipped with a ring of 16 evenly spaced ultrasonic sensors Other robots in thelaboratory have more comprehensive sensing capabilities but for the application athand sonars are adequate to demonstrate the basic principles The robot possessesa two-wheel differential drive located at the geometric center which allows omni-directional steering at zero turning radius The odometric information is obtainedfrom encoders on the two wheels Further the power system has been extendedwith two electric contacts at the rear of the robot This enables the platform toautonomously dock with a power supply in order to recharge its batteries withouthuman interaction In addition for basic navigation in an indoor environment ourinstitute (70 pound 20 m) in this case a topological map is used

41 The topological map and its use

The topological map allows both basic task decomposition for selection of aroute and provides an identi cation of places used for the behavior coordination(Section 32) This map consists of nodes and edges that connect these nodes Nodesstand for important places in the environment There has to be one in front of eachdoor at each corridor crossing and at other places of interest (eg goal locationsand charging station) Each node has a location in a xed coordinate system Theedges that connect these nodes can be of three different types room corridor doorFigure 9 shows the topological map of our institute

The starting location for a trial is at one of the recharging stations which meansthat the initial position and orientation of the robot are known From there odometry

Figure 8 The Scout robot used in the experiments

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 13: Behavior coordination in structured environments

Behavior coordination in structured environments 667

Figure 9 The topological map of our institute the circles depict nodes Edges are of three differenttypes corridor (thick line) room (dashed line) and door (thin line) Additional nodes for goal pointsand starting positions can be added arbitrarily The nodes denoted with lsquostartrsquo and lsquogoalrsquo correspondto the initial (charging station) and nal location of the trial described in the results (Section 5) Thenodes in grey are the ones used to execute this plan

is used to determine the robotrsquos location This introduces errors in the estimationof the exact position of the robot but is totally suf cient to determine if the systemis in the vicinity of a node However on long trials over a great distance the errorwould grow bigger than desired To avoid this the odometry values are correctedbased on detected features (Section 42) In a corridor the robotrsquos orientation andits position relative to the corridor walls are adjusted Every time a door is passedorientation and position relative to the door posts can be updated correctly

42 Extracting geometric representations from raw sensor data

For navigation in an indoor environment using the behaviors described in Sec-tion 31 it is necessary to equip the robot with facilities for obstacle extractionwall detection and recognition of doorways

Due to the limited angular resolution of sonar sensors the geometric represen-tation of obstacles is rather simple and closely linked to the actual perception ofthe robot Out of the 50 most recent sonar readings that do not belong to detectedwalls the ones in the frontal half plane of the current robot heading are consideredfor obstacle reconstruction Obstacles are reconstructed from the detected echos inascending order of their distance to the robot The echo closest to the robot de- nes the rst obstacle which orientation in the robot frame is given by the axis ofthe sensor that received the echo A new obstacle is recorded for every subsequentecho which orientation differs by an angle of at least 225plusmn from any previouslyidenti ed obstacle New obstacles are added in an incremental fashion until thesonar buffer contains no further echos Obstacle reconstruction is invoked at everycontrol cycle of the robot Notice that our representation only considers the dis-

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 14: Behavior coordination in structured environments

668 P Althaus and H I Christensen

tance to an obstacle but ignores its shape or size Despite its simplicity the chosenrepresentation is powerful enough to successfully navigate the robot around obsta-cles

In order to estimate the orientation and distance of the two parallel walls that forma corridor the 200 most recent sonar readings are kept in a FIFO buffer A Houghtransform [15] is invoked on the sonar data every few seconds in order to extractthe pair of parallel lines (one on either side of the robot) that coincide with thelargest number of sonar echos The corridor behavior is based on the orientationand distance to these lines relative to the robot to navigate along the corridor

In order to nd a door when the robot nds itself in a corridor the directionto the detected corridor wall is used The 25 most recent sonar readings that liein the direction of the wall and not more than 50 cm behind the wall are kept ina FIFO buffer The largest angular segment (from the robotrsquos point of view) thatdoes not contain any sonar reading is determined If this segment is greater than15plusmn we consider a door to be detected and its direction Atildedoor (11) is de ned as thecenter of the free segment This process is invoked at every control cycle of therobot Note that this door detector is very crude due to the simplicity of the sensorsused In particular half-blocked doors with passages that are too small to passwill still be detected as doors However situations like this are resolved by thecoordination between a door passing and an obstacle avoidance behavior (see thedesign in Section 32) If the robot is in a room the same strategy to detect a door isapplied However rst the wall at which the door is located has to be detected Inorder to do this a Hough transform is invoked on the 100 most recent sonar echos

Each of the above detectors keeps a certain number of the most recent sonarreadings in a FIFO buffer While collecting these readings the robot is driving ashort distance Odometry is used to calculate the relative location of sonar readingstaken at different robot positions which introduces further uncertainty in the sonardata These errors however are comparatively small and hardly in uence theperformance of the behaviors

The topological map is used to determine which detectors should be invokedThe information about the exact location of its nodes and the odometry valuesdetermine if the robot nds itself in a corridor or in a room andor close to a doorNo sensors are used yet to detect a goal point Its location is de ned by a nodein the topological map In combination with odometry this information providesan estimate of Aacute iexcl Atildegoal (5) ie the direction of the goal relative to the robotrsquosorientation

5 RESULTS

Figure 10 shows the trajectory of the robot during a typical task driving from thecharging station in the living room to a goal point in the manipulator lab Theinteresting parts of the trial in terms of behavior coordination are in the areas of therectangles denoted by 1 and 2 These regions are shown enlarged in Figs 11 and 13

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 15: Behavior coordination in structured environments

Behavior coordination in structured environments 669

Figure 10 The trajectory of the robot in a typical task driving through our institute (from left toright) The rectangle denoted by 1 is shown enlarged in Fig 11 the one denoted by 2 in Fig 13

Figure 11 The trajectory of the robot starting at the charging station (A) and leaving the roomtowards the corridor (G) The black obstacles denote chairs two shelves a table and a waste bin Thesituations labeled by the symbols AndashG are explained in the text The circles at these points depict thesize of the robot

In these gures different situations are denoted by the symbols AndashO which aredescribed in the text below Figures 12 and 14 depict the evolution of the weights ofthe behaviors The labeled ties on the time axis refer to the corresponding locationsof the robot During this trial the robot covered a distance of about 50 m Thecorresponding track through the topological map can be seen in Fig 9

(A) The robot at its starting position immediately after driving off OBSTACLE

AVOIDANCE was switched on It stayed on at all times while moving around inthe room since the obstacle density (16) was always above frac120 (17) (B) GO TOwhich evolves on a slower time scale than OBSTACLE AVOIDANCE was graduallyswitched on the robot started turning towards the position of the node in front of thedoor (C) The way towards the door was blocked the obstacle density exceeded the

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 16: Behavior coordination in structured environments

670 P Althaus and H I Christensen

Figure 12 Time plot of the absolute values of the weights jwobstj (dotted curve) jwgotoj (solidcurve) and jwdoorj (dashed curve) (12) The time instances labeled by the symbols AndashG correspondto the situations in Fig 11

Figure 13 The trajectory of the robot from the corridor (H) to a goal point in a room (O) The greyellipse denotes a person that was leaving the room when the robot was at location K The situationslabeled by the symbols HndashO are explained in the text The circles at these points depict the size ofthe robot

critical value frac12c and GO TO was turned off (18) The robot turned around to avoidthe obstacles (D) GO TO was turned on again the obstacle density dropped andjwgotoj increased on a slow time scale The robotrsquos heading was directed towardsthe location of the node in front of the door (E) OBSTACLE AVOIDANCE controlledthe robot the gap was big enough for the robot to pass hence it stayed in themiddle between the two obstacles (cf Fig 4) GO TO was off due to a highobstacle density (F) The vicinity of the next node was reached the direction

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 17: Behavior coordination in structured environments

Behavior coordination in structured environments 671

Figure 14 Time plot of the absolute values of the weights jwcorr j (upper plot solid curve) jwwallj(upper plot dotted curve) jwdoorj (upper plot dashed curve) jwobstj (lower plot dotted curve) andjwgotoj (lower plot solid curve) (12) The time instances labeled by the symbols HndashO correspond tothe situations in Fig 13

of the door was extracted from the sonar data (see Section 42) DOOR PASSING

was turned on almost immediately and the robot turned towards the door (G) Therobot passed the door due to a high obstacle density DOOR PASSING was actuallyturned off Nevertheless OBSTACLE AVOIDANCE guided the robot out of the roomAfter following the corridor the robot reached point (H) where the robot was stillin the corridor CORRIDOR FOLLOWING and WALL AVOIDANCE were switchedon the other behaviors were switched off (I) An obstacle appeared OBSTACLE

AVOIDANCE was turned on for a short time and the obstruction was circumnavigated(cf Fig 6) (J) The vicinity of the next node was reached and the door detectedDOOR PASSING was switched on and guided the robot towards the door CORRIDOR

FOLLOWING was turned off on a slower time scale than WALL AVOIDANCE (K) Thedoor was blocked by a person leaving the room the robot still detected the smallopening and considered it to be a door However the obstacle density was above frac12c

and DOOR PASSING was switched off (18) The robot turned away from the door(L) The door was detected again the person had left the door passage and DOOR

PASSING was switched on (M) The robot passed the door due to the high obstacledensity DOOR PASSING was switched off again and OBSTACLE AVOIDANCE guidedthe robot through the door (N) The vicinity of the next node was reached GO TO

was gradually turned on and the robot was heading for the goal point (O) The goalpoint was reached the robot arrived at the node of the goal point and the task wascompleted

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 18: Behavior coordination in structured environments

672 P Althaus and H I Christensen

6 DISCUSSION

We presented a control scheme which successfully navigates a mobile robotthrough a cluttered large-scale real-world of ce environment The dynamicalsystems approach provided a suitable means for the design of robotic behaviorsand their coordination The behaviors rely on an approximate simple geometricrepresentation of the environment that directly anchors on the information providedfrom low-level sensors The activation dynamics to coordinate the behaviors alsomakes use of these representations and a simple topological map combined withodometry The continuous nature of signals controlling the robot (behaviors)and the discrete nature of task switching (coordination) have been expressed ina uni ed framework This framework comprises a mathematically sound basiswhere behaviors are gradually turned on and off on different time scales Furtherarbitration and fusion of individual behaviors are captured in a single scheme

The presented system has just recently been implemented with a different robotperforming human interaction tasks in a domestic environment [16] This robot isbuilt on a different platform and has a different sensor con guration Neverthelessthe system as described in this paper could be implemented without changing anyof its parameters (except the safety distance Ds in (8) due to the large upper body ofthe robot) Preliminary results suggest that the same performance is displayed as inthe implementation described here

There are other successful indoor navigation systems using a topological map de-scribed in the literature eg Xavier [17] and Dervish [18] to name just two Theseapproaches use assumptions on probabilities of detecting features and progressingto the next node (state) In our approach the robot only roughly knows its positionand also the detection of features is not entirely reliable However the dynamic co-ordination scheme allows the robot to navigate safely and cope with unforeseen orcomplex situations such as blocked passages and partially closed or miss-detecteddoors in a exible manner

The use of sonars as the only sensors restricts our system in different ways Therepresentations of the environment are rather simple which can lead to problems(eg if two doors are right next to each other) Future research in this project will bedirected towards integration of more accurate sensors (eg laser) to obtain a morereliable representation of the environment Also the problem of global localization(neglected in this paper) using just a simple topological map can only be solved withmore sophisticated sensing capabilities

Once the tasks are more complex (eg longer missions with multiple goals) orthe environment poses unexpected constraints (eg closed doors or permanentlyblocked corridors) observation of the current plan execution status becomes anecessity We are considering integrating this into a coherent framework that alsoallows the robot to explore alternative strategies to achieve a particular task

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 19: Behavior coordination in structured environments

Behavior coordination in structured environments 673

Acknowledgements

This research has been sponsored by the Swedish Foundation for Strategic Re-search The support is gratefully acknowledged

REFERENCES

1 R C Arkin Behavior-Based Robotics MIT Press Cambridge MA (1998)2 Y C Ho Introduction to Discrete Event Systems IEEE Press New York (1991)3 R A Brooks A robust layered control system for a mobile robot IEEE J Robotics Automat 2

(1) 14ndash23 (1986)4 R G Simmons Structured control for autonomous robots IEEE Trans Robotics Automat 10

(1) 34ndash43 (1994)5 O Khatib Real-time obstacle avoidance for manipulators and mobile robots Int J Robotics

Res 5 (1) 90ndash98 (1986)6 P Pirjanian H I Christensen and J A Fayman Application of voting to fusion of purposive

modules an experimental investigationRobotics Autonomous Syst 23 (4) 253ndash 266 (1998)7 A Saf otti K Konolige and E Ruspini A multi-valued logic approach to integrating planning

and control Artif Intell 76 (1-2) 481ndash526 (1995)8 G Schoumlner and M Dose A dynamical systems approach to task-level system integrationused to

plan and control autonomous vehicle motion Robotics Autonomous Syst 10 253ndash 267 (1992)9 G Schoumlner M Dose and C Engels Dynamics of behavior theory and applications for

autonomous robot architecturesRobotics Autonomous Syst 16 (2-4) 213ndash245 (1995)10 E W Large H I Christensen and R Bajcsy Scaling the dynamic approach to path planning and

control competition among behavioral constraints Int J Robotics Res 18 (1) 37ndash58 (1999)11 E Bicho and G Schoumlner The dynamic approach to autonomous robotics demonstrated on a

low-level vehicle platform Robotics Autonomous Syst 21 (1) 23ndash35 (1997)12 E Bicho P Mallet and G Schoumlner Target representation on an autonomous vehicle with low-

level sensors Int J Robotics Res 19 (5) 424ndash447 (2000)13 P Althaus H I Christensen and F Hoffmann Using the dynamical system approach to navigate

in realistic real-world environments in Proc IEEE RSJ Int Conf on Intelligent Robots andSystems Mani HI pp 1023ndash1029 (2001)

14 L Perko Differential Equations and Dynamical Systems Springer New York (1991)15 J Forsberg U Larsson and Aring Wernersson Mobile robot navigation using the range-weighted

hough transform IEEE Robotics Automat Mag 2 (1) 18ndash26 (1995)16 T Kanda H Ishiguro M Imai T Ono and K Mase A constructive approach for developing

interactive humanoid robots in Proc IEEERSJ Int Conf on Intelligent Robots and SystemsLausanne pp 1265ndash1270 (2002)

17 S Koenig and R G Simmons Xavier a robot navigation architecture based on partiallyobservable markov decision process models in Arti cial Intelligence and Mobile Robots CaseStudies of Successful Robot Systems D Kortenkamp R P Bonasso and R Murphy (Eds)pp 91ndash122 MIT Press Cambridge MA (1998)

18 I Nourbakhsh Dervish an of ce-navigating robot in Arti cial Intelligence and MobileRobots Case Studies of SuccessfulRobot Systems D Kortenkamp R P Bonasso and R Murphy(Eds) pp 73ndash90 MIT Press Cambridge MA (1998)

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4

Page 20: Behavior coordination in structured environments

674 P Althaus and H I Christensen

ABOUT THE AUTHORS

Philipp Althaus is a PhD student at the Centre for Autonomous Systems atthe Royal Institute of Technology (KTH) in Stockholm Sweden He graduatedin 1998 in Physics from the Federal Institute of Technology (ETH) in ZurichSwitzerland Until 1999 he worked as a Research Assistant at the Instituteof Neuroinformatics at the University of Zurich His research interests includebehavior-basedrobotics navigation and mobile robots in general

Henrik I Christensen is a Professor of Computer Science at the Royal Instituteof Technology (KTH) and director of the Centre for Autonomous Systems aninterdisciplinary research facility He received his MSc and PhD degrees fromAalborg University in 1987 and 1989 respectively He has since then heldpositions at Aalborg University the University of Pennsylvaniaand KTH He doesresearch on service robotics cognitive vision and control He has published morethan 150 papers on robotics vision and AI He is on the editorial board of IEEEPAMI IJRR MVA AI Magazine and IJPRAI He is also the Founding Chairmanof the European Robotics Network mdash EURON

Dow

nloa

ded

by [

Uni

vers

ity o

f D

elaw

are]

at 1

615

05

Oct

ober

201

4