Active Modular Environment for Robot Navigation
Shota Kameyama, Keisuke Okumura, Yasumasa Tamura, Xavier Défago
AActive Modular Environment for Robot Navigation
Shota Kameyama , Keisuke Okumura, Yasumasa Tamura and Xavier D´efago Abstract — This paper presents a novel robot-environmentinteraction in navigation tasks such that robots have neithera representation of their working space nor planning function,instead, an active environment takes charge of these aspects.This is realized by spatially deploying computing units, calledcells, and making cells manage traffic in their respectivephysical region. Different from stigmegic approaches, cellsinteract with each other to manage environmental informationand to construct instructions on how robots move.As a proof-of-concept, we present an architecture called
AFADA and its prototype, consisting of modular cells androbots moving on the cells. The instructions from cells arebased on a distributed routing algorithm and a reservationprotocol. We demonstrate that AFADA achieves efficient robotmoves for single-robot navigation in a dynamic environmentchanging its topology with a stochastic model, comparing to self-navigation by a robot itself. This is followed by several demos,including multi-robot navigation, highlighting the power ofoffloading both representation and planning from robots to theenvironment. We expect that the concept of AFADA contributesto developing the infrastructure for multiple robots because itcan engage online and lifelong planning and execution.
I. I
NTRODUCTION
Representation, planning, execution, and their smoothintegration are essential factors for developing intelligentsystems. In particular, representation, i.e., how to abstractand model the world, has been a central issue for AI androbotics [1]; however, there is room to consider whetherrobots themselves should have a representation of theirworking environment. As famously argued by Brooks [2],another view is to “use the world as its own model”.
Navigation:
We can see derivative concepts, directuse of the world as the representation, in navigation tasks.Navigation is a fundamental robotics challenge that enablesautonomous robots to reach their destinations. In general,robots use internal maps as a representation of the envi-ronment; however, this entails some serious difficulties, stillmaking navigation challenging [3], e.g., accurate and robustself-localization, working in a dynamic environment wheremaps are updated frequently, the necessity of a map when-ever robots enter a new workspace, and lack of consistencybetween the internal maps of different robots in multi-robotscenarios. Such problems mostly stem from discrepanciesbetween external physical objects and internal representation.
Passive environment:
The use of the environment itselfas the representation can be a powerful tool for navigation.This is realized by spatially deploying sensors or tags. Insuch workspaces, robots without explicit internal maps can The authors are with School of Computing, Tokyo Institute of Technol-ogy, Tokyo, Japan. { kameyama.s, okumura.k, tamura.y, defago.x } @coord.c.titech.ac.jp . Cell Robot
Fig. 1:
AFADA prototype. navigate individually. For instance, in the early develop-ment of self-driving cars, they were guided by electronicdevices embedded in roadways [4]. Sensor networks canhelp navigation, e.g., Verma et al. [5] used a static sensornetwork to guide a robot in an unknown environment.Signals from RFID tags surrounding the environment havebeen used to navigate a robot [6], [7], [8]. In nature, stig-mergy [9], a mechanism of indirect coordination through theenvironment between agents, achieves unexpected collectivebehaviors such as coordination in social insects [10]. Stig-mergic approaches in multi-robot systems have been popular,e.g., navigating robots by artificial pheromones dropped intothe environment, taking the form of chemical compounds,embedded RFID tags, etc [11], [12], [3]. These studies canalso be seen as examples of spatial computing [13].
Active environment:
This paper aims at offloading notonly the representation that robots have of the environment,but also the planning function, aiming at a smooth integrationof representation, planning, and execution. In navigationtasks, the offloading is embodied as follows. A robot hasa destination but does not know the environment or its ownposition. Instead, the environment actively and repeatedlyissues instructions, i.e., planning, instructing the robot whereto move. This is realized by deploying static computingunits (neither simple sensors nor tags) and by coordinatingbetween these units.
Rationale:
The rationale of this concept addresses thefollowing three aspects: 1) functional separation : Robots arerelieved from the burden of collecting relevant informationand planning their trajectories, letting them focus on othertasks. This also implies that even robots lacking expensivesensors can navigate the environment. 2) response to dynamicenvironment : The system allows for faster response to unex-pected environmental changes because the environment itself a r X i v : . [ c s . R O ] F e b oes planning. E.g., if a road is blocked by some accident,detours can be computed at an early timing, saving wastedtime for robots. 3) multi-robot coordination : When severalrobots are working in the same space, robots have to payattention to each others to prevent collisions. In our system,the environment manages the robots’ locations in real-timeand can plan collision-free trajectories.Without the direct use of the environment as the repre-sentation, it is common to separate agents between planningand execution, especially in multi-agents/robots scenarios.Centralized approaches are often used in cooperative multi-agent planning to give plans to distributed agents [14]. In thefield of intersection management for autonomous vehicles,one major approach is that a coordination unit managestrajectories in the intersection [15], [16]. In an automatedwarehouse with hundreds of robots conveying packages [17],planning problems where a centralized unit plan paths for allagents have been actively studied [18], [19]. Contributions:
As a proof-of-concept of offloading bothrepresentation and planning function from robots to theenvironment, we present
AFADA and its prototype; anarchitecture that consists of mobile robots that evolve overan active environment made of flat cells each equipped witha computing unit (see Fig. 1). The prototype consists ofmodular cells designed from scratch and robots built around aZumo robot base. Each cell can communicate with adjacentcells and a robot on the cell. Using local communication,cells collectively manage the environmental information suchas locations of robots or routing information for navigation,despite the addition, removal, or even after the failureof cells. In multi-robot scenarios, collision avoidance isachieved by coordination between cells. Robots just followinstructions from the cells, i.e., robots necessitate neitherrepresentation nor planning. We empirically demonstrate thatAFADA achieves efficient robot moves through single-robotnavigation in a dynamic environment changing its topologyaccording to a stochastic model. Several demos, includingmulti-robot navigation, highlight the benefits of offloading. Other related work:
Closer to our aspirations, the Kilo-grid [20] is a modular environment consisting of computingnodes arranged in a grid with centralized control, makingit easier to experiment to collect data with large groupsof robots, Kilobot [21]. Johnson and Mitra [22] studied atheoretical model of distributed traffic control where a fixedenvironment consists of cells that guide mobile entities frompredetermined sources to targets.
Paper organization:
The paper is structured as follows.Section II states system assumptions and formulates the nav-igation problem. Section III presents main logical aspects ofAFADA: construction of routing tables, as well as integratedplanning and execution. Section IV presents the hardwarearchitecture. Section V evaluates single-robot navigation ina dynamic environment. This is followed by several demosin Section VI. Finally, Section VII concludes the paper witha discussion of future directions. AFADA: Adaptive Fully Automated Decentralized Architecture.
II. S
YSTEM A SSUMPTIONS AND P ROBLEM
The system consists of two kinds of actors: cells and robots . The system assumes no prior knowledge of robotsor cells, even in a dynamic environment or in multi-robotsscenarios. This section explains the assumptions and formu-lates the problem of navigation in AFADA.
Cells: are computing units deployed spatially whichcollectively form the environment in two ways: a) as atwo-dimensional physical grid and b) as a communicationnetwork. All cells are shaped identically and each cellmanages its own square area, such that areas never overlapbut borders can be shared (i.e., when two cells are in physicalcontact). Cells can communicate with adjacent cells, thusforming a network. Cells constitute a graph G , representingboth the physical grid and the communication network. Weassume that cells have a unique id but are otherwise identical. Robots: evolve over G . Their size is smaller thanone cell. A robot can move on cells along edges, i.e, therobot occupies at most two cells simultaneously. Two robotsoccupying the same cell are regarded as colliding; a situationwhich must be avoided. When a robot is on a single cell,it can communicate with the cell wirelessly and request orreceive instructions.Neither cells nor robots know G and or the set of robots R a priori . Furthermore, we assume that G changes dynam-ically, in response to the addition, removal, or crash of cells.The set of robots R is also dynamic, in the sense that, robotscan enter or leave the system. Navigation:
Each robot is assigned a list of destinationcells. The navigation problem consists in making robots visitall destinations in their list. The problem has many variants,such as, whether it requires to visit the destinations in thegiven sequence, or whether all goal must initially exist in G .Note that, because it is common to use a discrete rep-resentation of the environment in conventional navigationproblems, the problem defined here is adaptive to a widerange of problems by regarding a cell as just a vertex.III. E LEMENTS OF
AFADAThis section presents two key logical aspects of AFADA: representation and its maintenance, and integration of plan-ning and execution.
A. Representation
In AFADA, the representation of the environment is storedand maintained collectively in cells, in the form of routingtables maintained at each cell. Similar to packet routing in communication networks, each intermediate cell guidesthe robot to the neighbor cell that will bring it closer toits final destination. Routing tables maintain the informationnecessary to make these decisions.At each cell, the routing information is constructed andmaintained by communicating only with adjacent cells. Sincethe environment is initially unknown and can also change dy-namically, it is essential to properly maintain this informationthroughout the lifetime of the system.entralized routing algorithms are obviously inadequate,so most known routing algorithms are inherently distributed,such as, distributed dynamic programming [23], [24], orNetChange [25], [26] to name just a few.In this context, the notion of self-stabilization [27], [28]is particularly attractive due to its inherent robustness. Self-stabilizing algorithms are designed in a way that, startingfrom any possible global state (valid or invalid), the systemis always guaranteed to reach a global valid state (or a cycleof valid states) after a finite number of transitions and thenpermanently remain in valid states in the absence of externalinfluence (e.g., failures, state corruptions, topology changes).In self-stabilizing routing [26], [22], a valid global stateis one in which the combination of all routing tables definesa path from any cell to any other cell. Such algorithms areattractive because of their inherent adaptivity and robustness.Since AFADA is fully decentralized and entails many sourcesof uncertainty (e.g., cell addition/removal, message loss,crashes), its routing algorithm (Algo. 1) is designed to beself-stabilizing. The algorithm is inspired from classical self-stabilizing routing [26], [22] but additionally copes with theaddition/removal of cells at runtime.
Algorithm 1
Update routing table (for cell i ) dist i : the estimated distance table next i : the next-cell table D : maximum diameter of G , constant value ( repeat followings periodically ) broadcast dist i to i ’s neighbors clear dist i , next i , then dist i [ i ] ← , next i [ i ] ← i for each neighbor j and each key k in dist j do if dist j [ k ] ≥ D then continue if k (cid:54)∈ dist i . keys or dist j [ k ] + 1 < dist i [ k ] then dist i [ k ] ← dist j [ k ] + 1 , next i [ k ] ← j end if end for In Algo. 1, each cell i maintains two tables: dist i estimatesthe distance to other cells, and next i determines the nextneighbor cell on the path to other cells. Cell i periodicallybroadcasts dist i to its neighbors [line 2] (with periodin our prototype), then updates both tables according tothe minimal estimated distance of neighbor cells to targetcells [lines 3–9].If G remains unchanged for long enough, and cells i and j are connected in G , then dist i [ j ] eventually holds thelength of the shortest path connecting i and j . Furthermore,for every cells i, j, k , if i (cid:54) = j and k = next i [ j ] then dist k [ j ] = dist i [ j ] − . This implies that the routing tablescorrectly guide the robots. The formal model and the proofsare beyond this paper. B. Integrated Planning and Execution
Planning must ensure that robots’ movements arecollision-free, for which routing tables alone are insufficient.To this end, it is important to also consider how the robotsinteract with the cells. We present the basic behavior of robots and cells andtheir interaction, based on the time-independent model [29]that copes with multiple agents on a graph moving towardstheir destinations without any timing assumptions. The modelis event-based in the sense that any change in the envi-ronment (e.g., start/end of movement, cell addition/removal,cell or robot failure, variable change) defines a new con-figuration (or global state). In a distributed environmentsuch as AFADA, the notion of “simultaneity” is difficult torealize [30]. Robots should not rely on timings , rather shouldrely on events such as receiving messages or arriving at a newcell, and this justifies the use of a time-independent model.Typically, the system repeats the following steps. Beforea robot can move, the cell requests and reserves the nextcell on the path to the destination on behalf of the robot.The robot moves upon receiving confirmation from the cell,which is released by the next cell upon arrival of the robot.The reservation prevents collisions with other robots.More precisely, assume that a robot r is on a cell i andits destination is g . The procedure is as follows;1. r requests instructions from i on how to go to g .2. After receiving the request, i enquires a neighbor cell j about its availability (e.g., occupied, unoccupied).3. j replies its availability to i , according to whetheranother robot occupies j . If available, j becomes reserved by r .4. If j was unoccupied, continue from Step 6 where i instructs r to move to j .5. Otherwise, go back to Step 2 with another j or withthe same j but after waiting for some arbitrary time.6. When r receives the instruction from i , it starts movingtowards j .7. When r arrives at j , it notifies j which sends a releasemessage to i which is thus released .8. Repeat from Step 1 with j as the new i .In Step 2, j is typically selected based on the routingtable next i [ g ] . Alternatives include selecting j randomly,in an attempt to break cycle of requests and thus potentialdeadlocks.Variants can be considered, such as the multi-step reserva-tion seen in the demo section (§VI-B.1). A comparison withother protocols is outside the scope of this paper.IV. H ARDWARE P ROTOTYPE
This section describes the hardware implementation ofrobots (§IV-A) and cells (§IV-B). The architecture is shownin Fig. 2. The robots use line tracing to move from acell to the next. The cells communicate with each othervia a serial interface and with the robots via NFC (NearField Communication) to avoid radio interference. Cells candynamically be attached or detached thanks to magneticconnectors. Connections between cells supply power.
A. Robot1) Requirements:
Robots need to identify an area of eachcell to move from one cell to another cell correctly. Robotsneed to communicate with underlying cells. oltageRegulatorLEDsButtonsNFC ControllerNFCAntenna LED-NFC-AntennaSerial PortExpanderESP32OLED DisplayESP32-Board Power Source24VCH0Cell-Main-BoardCell A d j a c en t C e ll ( CH ) A d j a c en t C e ll ( CH ) Adjacent Cell (CH0) CH2CH1CH3CH0 CH CH CH2Adjacent Cell (CH2)
ESP32 OLED DisplaySignal Level Shifter LEDs Buttons NFC ControllerATmega 32U4 (Arduino inside)
Sensors (IMU, line sensor, rotary encoder)
Actuators (Motor, Buzzer)
Battery NFCAntennaZumo 32U4 RobotRobot-Main-BoardESP32-Board
Acrylc BoardABS Case Connection-BoardMagnetic Connector
Fig. 2:
Structures and block diagrams of a robot (left) and a cell (right).
2) Structure:
A robot consists of a Zumo 32U4 robot(Zumo) as a base with an interface board (Robot-Main-Board) holding an ESP32 microcontroller (ESP32-Board),an NFC controller (PN7150 chip), and LEDs. An NFCantenna is placed under the robot. The dimensions are × ×
42 mm , and the weight is about
290 g .Functionally, the ESP32 works as the main controlling unitand runs FreeRTOS to support multi-tasking. The robot’smotion is controlled by the ATmega microcontroller locatedon the Zumo. Upon receiving instructions from the ESP32,the Zumo uses the line sensor array to follow patterns drawnon the cells and guide the robot to an adjacent cell.
B. Cell1) Requirement:
A cell needs to communicate with robotson it. It also communicates with adjacent cells, including aconnection detection protocol to judge whether its neighborexists or not. It has sufficient space that stores one robot. It isalso critical to establish the power supply serving numerouscells while keeping the platform safe.
2) Structure:
A cell consists of several printed circuitboards (Cell-Main-Board, LED-NFC-Antenna, Connection-Board), magnetic connectors, plastic parts (ABS Case), andan acrylic roof patterned for line tracing. The mainboard(Cell-Main-Board) is equipped with the same ESP32 mi-crocontroller as the robots, an NFC controller, and a serialport expander supporting four serial channels. Magneticconnectors, which are installed on each side of the cell andconnected to the mainboard via cables, are used for bothcommunication between cells and shared power supply. Thecell has a size of × × . and weighs about
440 g . The average power consumption of a cell is about .
25 W . We now consider the functional aspects of cells. a) Cell-Cell Communication:
To send a messagefrom one cell to another, first, the ESP32 microcontrollersends a message to a PIC (Peripheral Interface Controller;PIC24FJ64GA306-I/PT) in the cell, through SPI (SerialPeripheral Interface). Then, the PIC relays the messageto the adjacent cell via UART (Universal AsynchronousReceiver/Transmitter) communication. Both UART and SPIare bidirectional serial interfaces. b) Connection Detector:
Cells must detect the additionor removal of other cells on running to update the envi-ronmental information. To monitor connection, the proto-type uses two-stage detection: physical and virtual . Physicaldetection uses an adapted version to UART from that ofUSB (Universal Serial Bus), detecting the connection by thevoltage switching on the signal line as a trigger [31]. Virtualdetection uses heartbeats [32]. When two cells are actuallyconnected, they exchange heartbeats periodically (period of in the demo). When the cell fails to receive heartbeats fora certain time (timeout
10 s in the demo) from some channel,the cell regards this channel as disconnected. c) Power:
There are two ways to power a cell: a) con-necting the cell directly to a power adapter (supply voltage:
24 V ), or, b) connecting the cell to a powered cell. Thesystem can be powered from several power adapters (e.g.,6 adapters for 100 cells). The
24 V line is connected to anonboard DC/DC converter, which provides a line usedto supply power to the components in the cell. For safety,the prototype includes a switching circuit with relays so thatthe
24 V line, dangerous to humans, is not live unless anadjacent cell is connected.V. E
VALUATION
To evaluate the idea of offloading representation and plan-ning, we first consider a single robot navigating in a dynamicenvironment. As baseline, we used a robot navigating byitself while collecting information about the environment.
A. Task
The task consists of multiple round-trips between twocells. To emulate a dynamic environment, several cellsstochastically switch their status between correct and failed .Failed cells cease to communicate and robots cannot passthrough them. Surrounding cells of the failed cell recognizea disconnection to the cell, resulting in an update of therouting tables. Every second, correct cells change their statusto failed with a probability p if no robot is present. Failedcells change their status to correct with a recovery probability q . The metric counts the total number of steps taken by the imple-loop q=0.01 q=0.05 s t e p s AFADAself-nav two-bridge q=0.01 q=0.05 s t e p s AFADAself-nav two-loop q=0.01 q=0.05 s t e p s AFADAself-nav
Fig. 3:
The results of navigation tasks in a dynamic environment.
Target cells (“s” and “g”) are identified by a solidcircle, and potentially failed cells are identified by a dashed circle and highlighted in red when their status is actually failed.robot (a step is a movement from a cell to a neighbor). Fewersteps is better and means less overhead.Three carefully designed fields ( simple-loop , two-bridge ,and two-loop ) were used, shown in Fig. 3, which includesannotations of target cells and potentially failed cells. Thenumbers of round trips are three times both in simple-loop and in two-bridge , and two times in two-loop . Even thoughone cell crashes, all fields have detours for round trips,hence moves approaching failed cells result in unnecessarysteps. In two-bridge and two-loop , target cells are potentiallydisconnected by two failed cells; the robot should not moveduring disconnection to avoid unnecessary steps. We fixed p = 0 . but set q in two conditions, . or . , then runthe robot with 30 repetitions for each condition. B. Comparison
As a baseline for comparison, we tested a robot navigatingitself according to its internal map, using the Zumo robotbase. Assume that the robot does not know the availabilityof locations until it approaches. In this experiment, the robotcan detect failed cells only when adjacent to them. The statusof cells is simulated in the robot.The robot first plans the path for the trip (outward orreturn) using the shortest path algorithm, then moves. Whenit meets a failed cell on its way, it replans the path around it,and resumes movement. Herein, we call this style as self-nav .Note that self-nav never interacts with active cells.
C. Results
The results are summarized in Fig 3. In general, AFADAachieved efficient robot moves compared to self-nav whenthe recovery probability q was small, i.e., failed cells existedfrequently. We describe the analysis as follows. The statisti-cal significance threshold was set to . .
1) simple-loop:
AFADA failed to complete the task fourtimes when q = 0 . and three times when q = 0 . dueto message loss of the reservation protocol between cells. When q = 0 . , median scores were both in AFADA and self-nav ; the distributions in the two groups did not differsignificantly (Mann–Whitney U = 362 . , n = 26 , n = 30 , P = 0 . , two-tailed). When q = 0 . , median scores were in AFADA and in self-nav ; we observed significantdifference ( U = 283 . , n = 27 , n = 30 , P = 0 . ).
2) two-bridge:
AFADA failed several times. When q =0 . , median scores were in AFADA and in self-nav ;the distributions did not differ significantly ( U = 298 . , n = 25 , n = 30 , P = 0 . ). When q = 0 . , medianscores were in AFADA and in self-nav ; there wasa significant difference ( U = 258 . , n = 27 , n = 30 , P < . ).
3) two-loop:
In this case, AFADA failed in almost halfof the trials; 12 times when q = 0 . and 14 times when q = 0 . . When q = 0 . , median scores were both in AFADA and in self-nav ; the distributions did not differsignificantly ( U = 269 . , n = 18 , n = 30 , P = 0 . ).When q = 0 . , median scores were in AFADA and in self-nav ; we observed significant difference ( U = 135 . , n = 16 , n = 30 , P < . ). D. Discussion
AFADA can achieve efficient robot moves because theenvironment “knows” which cells are available before therobot moves. Note that the environmental update also re-quires time; we observed that AFADA did not always resultin optimal moves.AFADA failed sometimes due to message loss. Our proto-type allows operations of cell addition or removal physically,however, as a disadvantage, the connection might be faulty.As seen in two-loop , when the number of cells increases, thisproblem cannot be neglectable. Solutions include developingrobust message channels or self-stabilizing planning andexecution protocols, which we plan for future work.I. C
ASE S TUDIES
This section presents demos showing the potential ofAFADA. A supplementary movie presents them as well asother demos. A. Navigation in Reconfigurable Environment
As illustrated in Fig. 4, cells can guide robots correctlyin spite of environmental changes due to adding/removingcells. A task is a round trip between two cells s and g .Cells are added or removed during the execution. At first, g is unreachable and the cell informs the robot to wait inplace. The robot starts moving after the cells detect theconnection of g . Next, we added a new cell to create a newpath, while removing a cell previously used by the robot.The environment immediately updates the routing tables, andsuccessfully guides the robot back to s via the new path. Thisillustrates the self-reconfiguration of the system in the faceof physical changes in the environment. B. Multi-robot Navigation
In multi-robot scenarios, colliding is fatal; AFADA pro-vides collision-free moves of robots.
1) Multi-robot Path Finding and Execution:
Initially, allrobots have distinct locations and destinations. Fig. 5 shows aconfiguration used in the demo. A solution is to make robotsmove to their destinations. In addition to the single-stepreservation protocol in Section III-B, this demo uses a multi-step reservation; let cells reserve multiple cells ahead beforea robot moves. When vacant cells receive a request fromneighbors, they forward the request to the next adjacent cells.This forwarding of the request continues until the requestis rejected by an occupied cell. Upon receiving a rejection,these cells then relay acknowledgments in the reverse order.As a result, a robot reserves several cells ahead and releasesthem one-by-one as it moves. Both single-step and multi-step reservation styles used a random choice of cells whenreceiving a rejection of the request to break deadlocks.
2) Automated Parking:
As an application, we emulatean automated parking system (Fig. 5). The parking lot ismodeled as a × grid. Cells in the leftmost/rightmostcolumns are parking space, and the two center columns areaisle. Robots can enter or leave the parking lot from thebottom row of the environment. These cells and the aisleare programmed to guide robots in one-way traffic using thereservation protocol to avoid collisions. The robot greedilylooks for a vacant parking space following the one-waytraffic. If the robot successfully enters a vacant parking space,it waits for a while (corresponding to the driver running anerrand). Then, the robot leaves the parking lot, heads to theexit, and leaves the environment.VII. D ISCUSSION AND C ONCLUSION
We presented a novel fully decentralized scheme withrobot-environment interactions for robot navigation, withAFADA and its implementation as proof-of-concept. The Available on https://dfg-lab.github.io/afada/ gs Fig. 4:
Demo of navigation in a reconfigurable environ-ment.
Two cells are disconnected initially (left) . The robotmoves once the bottom one is connected (center) , and thenreturns via a different route (right) . s1g3 s3g1s2g4s4g2 ParkingSpace
Fig. 5:
Demo of navigation for multiple robots. (left) thepathfinding and execution task are shown, with start (“s”)and goal (“g”) locations. (right) automated parking is shownwith red arrows corresponding to the one-way aisle. The cellswith yellow tapes are parking lot.key concept consists in offloading both representation andplanning from robots to the environment with cells as com-puting units embedded spatially. Robots do not plan theirmoves alone, rather, cells communicate with neighboringcells and collectively take charge of robots’ movements. Inthe experiment, we demonstrated that AFADA achieved ef-ficient robot moves using the navigation task in the dynamicenvironment, followed by several demos such as pathfindingand execution for multiple robots. We expect that the conceptcan be applied to many domains of multi-robot systems asinfrastructure, such as automated warehouses, smart parking,and the cooperative behavior of autonomous cars.Quite a few challenges remain to apply the concept torealistic scenarios, e.g., introducing an active environmenton a large scale is costly. One important issue is that thesystem is inherently distributed and fully decentralized. Thisimplies that we cannot expect a perfect execution devoidof any unexpected events such as the failure of or anincrease in system components. An example can be seenin navigation experiments of two-loop in Section V. This iswhere paradigms and principles of distributed computing areattractive, just like we used self-stabilizing algorithms.Future work includes the following. 1)
Develop cell-drivenpath planning algorithms . We only presented a basic protocolto prevent collisions between robots, however, it does notyet ensure desirable properties such that all robots alwaysreach their destinations within a finite time. Furthermore,there is considerable room for improvement in the efficiencyof trajectories for multiple robots. 2)
Address large robots .We currently limit the size of robots to be smaller than a cellfor simplicity. Addressing large robots that occupy severalcells simultaneously, is fruitful for coordination betweenheterogeneous robots. This is closely related to diagonal orany-angle moves of robots in a grid environment.
CKNOWLEDGMENTS
This work was partly supported by the NTT FACILITIESCollaborative Research Project. The authors thank MattiasEvaldsson, Daniel Gst¨ohl, and Shoma Mori for their supportin the early phases of development; as well as KazuyaIimuro, Haruka Katahira, Wataru Kinota, and Xin Cen, fortheir help with building the numerous cells.R
EFERENCES[1] R. Davis, H. Shrobe, and P. Szolovits, “What is a knowledge repre-sentation?”
AI magazine , vol. 14, no. 1, pp. 17–17, 1993.[2] R. A. Brooks, “Intelligence without representation,”
Artificial intelli-gence , vol. 47, no. 1-3, pp. 139–159, 1991.[3] A. A. Khaliq and A. Saffiotti, “Stigmergy at work: Planning andnavigation for a service robot on an rfid floor,” in . IEEE,2015, pp. 1085–1092.[4] K. Bimbraw, “Autonomous cars: Past, present and future a reviewof the developments in the last century, the present scenario andthe expected future of autonomous vehicle technology,” in , vol. 1. IEEE, 2015, pp. 191–198.[5] A. Verma, H. Sawant, and J. Tan, “Selection and navigation of mobilesensor nodes using a sensor network,” in
Third IEEE InternationalConference on Pervasive Computing and Communications . IEEE,2005, pp. 41–50.[6] W. Gueaieb and M. S. Miah, “An intelligent mobile robot navigationtechnique using rfid technology,”
IEEE Transactions on Instrumenta-tion and Measurement , vol. 57, no. 9, pp. 1908–1917, 2008.[7] M. Kim and N. Y. Chong, “Direction sensing rfid reader for mobilerobot navigation,”
IEEE Transactions on Automation Science andEngineering , vol. 6, no. 1, pp. 44–54, 2008.[8] S. Park and S. Hashimoto, “Autonomous mobile robot navigation usingpassive rfid in indoor environment,”
IEEE Transactions on industrialelectronics , vol. 56, no. 7, pp. 2366–2373, 2009.[9] G. Theraulaz and E. Bonabeau, “A brief history of stigmergy,”
Artifi-cial life , vol. 5, no. 2, pp. 97–116, 1999.[10] S. Camazine, J.-L. Deneubourg, N. R. Franks, J. Sneyd, E. Bonabeau,and G. Theraula,
Self-organization in biological systems . Princetonuniversity press, 2003.[11] R. Johansson and A. Saffiotti, “Navigating by stigmergy: A realizationon an rfid floor for minimalistic robots,” in . IEEE, 2009, pp. 245–252.[12] R. Fujisawa, S. Dobata, K. Sugawara, and F. Matsuno, “Designingpheromone communication in swarm robotics: Group foraging behav-ior mediated by chemical substance,”
Swarm Intelligence , vol. 8, no. 3,pp. 227–246, 2014.[13] F. Zambonelli and M. Mamei, “Spatial computing: An emergingparadigm for autonomic computing and communication,” in
Workshopon Autonomic Communication . Springer, 2004, pp. 44–57.[14] A. Torre˜no, E. Onaindia, A. Komenda, and M. ˇStolba, “Cooperativemulti-agent planning: A survey,”
ACM Computing Surveys (CSUR) ,vol. 50, no. 6, pp. 1–32, 2017.[15] K. Dresner and P. Stone, “A multiagent approach to autonomousintersection management,”
Journal of artificial intelligence research ,vol. 31, pp. 591–656, 2008.[16] L. Chen and C. Englund, “Cooperative intersection management: Asurvey,”
IEEE Transactions on Intelligent Transportation Systems ,vol. 17, no. 2, pp. 570–586, 2015.[17] P. R. Wurman, R. D’Andrea, and M. Mountz, “Coordinating hundredsof cooperative, autonomous vehicles in warehouses,”
AI magazine ,vol. 29, no. 1, pp. 9–9, 2008.[18] H. Ma, W. H¨onig, L. Cohen, T. Uras, H. Xu, T. S. Kumar, N. Ayanian,and S. Koenig, “Overview: A hierarchical framework for plan gener-ation and execution in multirobot systems,”
IEEE Intelligent Systems ,vol. 32, no. 6, pp. 6–12, 2017.[19] O. Salzman and R. Stern, “Research challenges and opportunitiesin multi-agent path finding and multi-agent pickup and deliveryproblems,” in
Proceedings of the 19th International Conference onAutonomous Agents and MultiAgent Systems , 2020, pp. 1711–1715. [20] G. Valentini, A. Antoun, M. Trabattoni, B. Wiandt, Y. Tamura, E. Hoc-quard, V. Trianni, and M. Dorigo, “Kilogrid: a novel experimentalenvironment for the kilobot robot,”
Swarm Intelligence , vol. 12, no. 3,pp. 245–266, 2018.[21] M. Rubenstein, A. Cornejo, and R. Nagpal, “Programmable self-assembly in a thousand-robot swarm,”
Science , vol. 345, no. 6198,pp. 795–799, 2014.[22] T. T. Johnson and S. Mitra, “Safe and stabilizing distributed multi-path cellular flows,”
Theoretical Computer Science , vol. 579, pp. 9–32,2015.[23] D. Bertsekas, “Distributed dynamic programming,”
IEEE transactionson Automatic Control , vol. 27, no. 3, pp. 610–616, 1982.[24] Y. Shoham and K. Leyton-Brown,
Multiagent systems: Algorithmic,game-theoretic, and logical foundations . Cambridge University Press,2008.[25] W. D. Tajibnapis, “A correctness proof of a topology information main-tenance protocol for a distributed computer network,”
Communicationsof the ACM , vol. 20, no. 7, pp. 477–485, 1977.[26] G. Tel,
Introduction to distributed algorithms . Cambridge universitypress, 2000.[27] E. W. Dijkstra, “Self-stabilizing systems in spite of distributedcontrol,”
Commun. ACM , vol. 17, no. 11, p. 643–644, Nov. 1974.[Online]. Available: https://doi.org/10.1145/361179.361202[28] K. Altisen, S. Devismes, S. Dubois, and F. Petit, “Introduction to dis-tributed self-stabilizing algorithms,”
Synthesis Lectures on DistributedComputing Theory , vol. 8, no. 1, pp. 1–165, 2019.[29] K. Okumura, Y. Tamura, and X. D’efago, “Time-independent planningfor multiple moving agents,” arXiv preprint arXiv:2005.13187 , 2020.[30] J. Sheehy, “There is no now,”
Communications of the ACM , vol. 58,no. 5, pp. 36–41, 2015.[31] U. S. B. Specification, “Universal serial bus specification, revi-sion 2.0,”
Compaq, Hewlett-Packard, Intel, Lucent, Microsoft, NEC,Phillips, Revision , vol. 2, 2000.[32] M. Pasin, S. Fontaine, and S. Bouchenak, “Failure detection in largescale systems: a survey,” in