abstract arxiv:1811.05929v1 [cs.ro] 14 nov 2018

8
A Scalable Framework For Real-Time Multi-Robot, Multi-Human Collision Avoidance Andrea Bajcsy*, Sylvia L. Herbert*, David Fridovich-Keil, Jaime F. Fisac, Sampada Deglurkar, Anca D. Dragan, and Claire J. Tomlin Abstract— Robust motion planning is a well-studied problem in the robotics literature, yet current algorithms struggle to operate scalably and safely in the presence of other moving agents, such as humans. This paper introduces a novel frame- work for robot navigation that accounts for high-order system dynamics and maintains safety in the presence of external disturbances, other robots, and non-deterministic intentional agents. Our approach precomputes a tracking error margin for each robot, generates confidence-aware human motion predictions, and coordinates multiple robots with a sequential priority ordering, effectively enabling scalable safe trajectory planning and execution. We demonstrate our approach in hardware with two robots and two humans. We also showcase our work’s scalability in a larger simulation. I. I NTRODUCTION As robotic systems are increasingly used for applications such as drone delivery services, semi-automated warehouses, and autonomous cars, safe and efficient robotic navigation around humans is crucial. Consider the example in Fig. 1, inspired by a drone delivery scenario, where two quadcopters must plan a safe trajectory around two humans who are walk- ing through the environment. We would like to guarantee that the robots will reach their goals without ever colliding with each other, any of the humans, or the static surroundings. 1 This safe motion planning problem faces three main challenges: (1) controlling the nonlinear robot dynamics subject to external disturbances (e.g. wind), (2) planning around multiple humans in real time, and (3) avoiding conflicts with other robots’ plans. Extensive prior work from control theory, motion planning, and cognitive science has enabled computational tools for rigorous safety analysis, faster motion planners for nonlinear systems, and predictive models of human agents. Individually, these problems are difficult—computing robust control policies, coupled robot plans, and joint predictions of multiple human agents are all computationally demanding at best and intractable at worst [1, 2]. Recent work, however, has made progress in provably-safe real-time motion planning [3–5], real-time Department of Electrical Engineering and Computer Sciences, UC Berkeley, { abajcsy }@berkeley.edu. This research is sup- ported by an NSF CAREER award, the Air Force Office of Scientific Research (AFOSR), NSF’s CPS FORCES and VeHICal projects, the UC- Philippine-California Advanced Research Institute, the ONR MURI Em- bedded Humans, and the SRC CONIX Center. * Indicates equal contribution. 1 Note that our laboratory setting uses a motion capture system for sensing and state estimation—robustness with respect to sensor uncertainty is an important component that is beyond the scope of this paper. Fig. 1: Hardware demonstration of real-time multi-agent planning while maintaining safety with respect to internal dynamics, external disturbances, and intentional humans. The planned trajectories from the quadcopters are visualized, and the tracking error bound is shown as a box around each quadcopter. The probabilistic distribution over the future motion of the humans are shown in pink in front of each human. probabilistic prediction of a human agent’s motion [6, 7], and robust sequential trajectory planning for multi-robot systems [8, 9]. It remains a challenge to synthesize these into a real-time planning system, primarily due to the difficulty of joint planning and prediction for multiple robots and humans. There has been some work combining subsets of this problem [10–12], but the full setup of real-time and robust multi-robot navigation around multiple humans remains underexplored. Our main contributions in this paper are tractable ap- proaches to joint planning and prediction, while still ensuring efficient, probabilistically-safe motion planning. We use the reachability-based FaSTrack framework [3] for real-time ro- bust motion planning. To ensure real-time feasibility, robots predict human motion using a simple model neglecting future interaction effects. Because this model will be a simpli- fication of true human motion, we use confidence-aware predictions [6] that become more conservative whenever humans deviate from the assumed model. Finally, groups of robots plan sequentially according to a pre-specified priority ordering [13], which serves to reduce the complexity of the joint planning problem while maintaining safety with respect to each other. We demonstrate our framework in hardware, and provide a large-scale simulation to showcase scalability. arXiv:1811.05929v1 [cs.RO] 14 Nov 2018

Upload: others

Post on 07-Jan-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

A Scalable Framework For Real-TimeMulti-Robot, Multi-Human Collision Avoidance

Andrea Bajcsy*, Sylvia L. Herbert*, David Fridovich-Keil,Jaime F. Fisac, Sampada Deglurkar, Anca D. Dragan, and Claire J. Tomlin

Abstract— Robust motion planning is a well-studied problemin the robotics literature, yet current algorithms struggle tooperate scalably and safely in the presence of other movingagents, such as humans. This paper introduces a novel frame-work for robot navigation that accounts for high-order systemdynamics and maintains safety in the presence of externaldisturbances, other robots, and non-deterministic intentionalagents. Our approach precomputes a tracking error marginfor each robot, generates confidence-aware human motionpredictions, and coordinates multiple robots with a sequentialpriority ordering, effectively enabling scalable safe trajectoryplanning and execution. We demonstrate our approach inhardware with two robots and two humans. We also showcaseour work’s scalability in a larger simulation.

I. INTRODUCTION

As robotic systems are increasingly used for applicationssuch as drone delivery services, semi-automated warehouses,and autonomous cars, safe and efficient robotic navigationaround humans is crucial. Consider the example in Fig. 1,inspired by a drone delivery scenario, where two quadcoptersmust plan a safe trajectory around two humans who are walk-ing through the environment. We would like to guarantee thatthe robots will reach their goals without ever colliding witheach other, any of the humans, or the static surroundings.1

This safe motion planning problem faces three mainchallenges: (1) controlling the nonlinear robot dynamicssubject to external disturbances (e.g. wind), (2) planningaround multiple humans in real time, and (3) avoidingconflicts with other robots’ plans. Extensive prior work fromcontrol theory, motion planning, and cognitive science hasenabled computational tools for rigorous safety analysis,faster motion planners for nonlinear systems, and predictivemodels of human agents. Individually, these problems aredifficult—computing robust control policies, coupled robotplans, and joint predictions of multiple human agents areall computationally demanding at best and intractable atworst [1, 2]. Recent work, however, has made progressin provably-safe real-time motion planning [3–5], real-time

Department of Electrical Engineering and Computer Sciences, UCBerkeley, { abajcsy }@berkeley.edu. This research is sup-ported by an NSF CAREER award, the Air Force Office of ScientificResearch (AFOSR), NSF’s CPS FORCES and VeHICal projects, the UC-Philippine-California Advanced Research Institute, the ONR MURI Em-bedded Humans, and the SRC CONIX Center.∗Indicates equal contribution.

1Note that our laboratory setting uses a motion capture system for sensingand state estimation—robustness with respect to sensor uncertainty is animportant component that is beyond the scope of this paper.

Fig. 1: Hardware demonstration of real-time multi-agent planning whilemaintaining safety with respect to internal dynamics, external disturbances,and intentional humans. The planned trajectories from the quadcopters arevisualized, and the tracking error bound is shown as a box around eachquadcopter. The probabilistic distribution over the future motion of thehumans are shown in pink in front of each human.

probabilistic prediction of a human agent’s motion [6, 7],and robust sequential trajectory planning for multi-robotsystems [8, 9]. It remains a challenge to synthesize these intoa real-time planning system, primarily due to the difficultyof joint planning and prediction for multiple robots andhumans. There has been some work combining subsetsof this problem [10–12], but the full setup of real-timeand robust multi-robot navigation around multiple humansremains underexplored.

Our main contributions in this paper are tractable ap-proaches to joint planning and prediction, while still ensuringefficient, probabilistically-safe motion planning. We use thereachability-based FaSTrack framework [3] for real-time ro-bust motion planning. To ensure real-time feasibility, robotspredict human motion using a simple model neglecting futureinteraction effects. Because this model will be a simpli-fication of true human motion, we use confidence-awarepredictions [6] that become more conservative wheneverhumans deviate from the assumed model. Finally, groups ofrobots plan sequentially according to a pre-specified priorityordering [13], which serves to reduce the complexity of thejoint planning problem while maintaining safety with respectto each other. We demonstrate our framework in hardware,and provide a large-scale simulation to showcase scalability.

arX

iv:1

811.

0592

9v1

[cs

.RO

] 1

4 N

ov 2

018

Human i-1 Prediction Block

Sensor

Static Obstacles

Environment

Human States

Human i PredictionHuman i

Prediction Block

Human i+1 Prediction Block

Human Predictions Obstacle Maps

Static Environment Map

Human i Obstacle Map

Human i-1 Prediction

Human i+1 Obstacle Map

Human i-1 Obstacle Map

Human i+1 Prediction Sequential Trajectory

Planning

Robot i FaSTrack Block

Robot i+1 FaSTrack Block

Robot i-1 FaSTrack Block

trajectory i-1

trajectory i

trajectories 0:i-2

Robot Planning and Control

Fig. 2: The SCAFFOLD Framework

II. THE SCAFFOLD FRAMEWORK

Fig. 2 illustrates our overall planning framework, calledSCAFFOLD. We introduce the components of the frame-work by incrementally addressing the three main challengesidentified above.

We first present the robot planning and control block(Section III), which is instantiated for each robot. Each robotuses a robust controller (e.g. the reachability-based controllerof [3]) to track motion plans within a precomputed errormargin that accounts for modeled dynamics and external dis-turbances. In order to generate safe motion plans, each robotwill ensure that output trajectories are collision-checked witha set of obstacle maps, using the tracking error margin.

These obstacle maps include an a priori known set ofstatic obstacles, as well as predictions of the future motion ofany humans, which are generated by the human predictionsblock (Section IV). By generating these predictions, eachrobot is able to remain probabilistically safe with respect tothe humans. To ensure tractability for multiple humans, wegenerate predictions using simplified interaction models, andsubsequently adapt them following a real-time Bayesian ap-proach such as [6]. We leverage the property that individualpredictions automatically become more uncertain whenevertheir accuracy degrades, and use this to enable our tractablepredictions to be robust to unmodeled interaction effects.

Finally, to guarantee safety with respect to other robots,we carry out sequential trajectory planning (Section V) byadapting the cooperative multi-agent planning scheme [8]to function in real time with the robust trajectories fromthe planning and control block. The robots generate plansaccording to a pre-specified priority ordering. Each robotplans to avoid the most recently generated trajectories fromrobots of higher priority, i.e. robot i must generate a planthat is safe with respect to the planned trajectories fromrobots j, j < i. This removes the computational complexityof planning in the joint state space of all robots at once.

III. ROBOT PLANNING AND CONTROL

In this section we begin with the canonical problem ofplanning through a static environment. Efficient algorithmssuch as A∗ or rapidly-exploring random trees (RRT) [14,15] excel at this task. These algorithms readily extendto environments with deterministically-moving obstacles bycollision-checking in both time and space.

We now introduce robot dynamics and allow the environ-ment to have external disturbances such as wind. Kinematicplanners such as A∗ and RRT do not consider these factorswhen creating plans. In practice, however, these plannersare often used to generate an initial trajectory, which maythen be smoothed and tracked using a feedback controllersuch as a linear quadratic regulator (LQR). During execution,the mismatch between the planning model and the physicalsystem can result in tracking error, which may cause therobot to deviate far enough from its plan to collide withan obstacle. To reduce the chance of collision, one canaugment the robot by a heuristic error buffer; this inducesa “safety bubble” around the robot used when collisionchecking. However, heuristically generating this buffer willnot guarantee safety.

Several recent approaches address efficient planningwhile considering model dynamics and maintaining robust-ness with respect to external disturbances. Majumdar andTedrake [4] use motion primitives with safety funnels, whileRakovic [16] utilizes robust model-predictive control, andSingh et. al. [17] leverage contraction theory.

In this paper, we use FaSTrack [3, 18], a modular frame-work that computes a tracking error bound (TEB) via offlinereachability analysis. This TEB can be thought of as arigorous counterpart of the error-buffer concept introducedabove. More concretely, the TEB is the set of states capturingthe maximum relative distance (i.e. maximum tracking error)that may occur between the physical robot and the currentstate of the planned trajectory. We compute the TEB byformulating the tracking task as a pursuit-evasion game

Generating Occupancy Grid

Update Parameters

Motion Prediction

Infer Human Action

Model Confidence, Predicted Human Goal

Human Action

Human State

Human i Prediction

Obstacle Maps

Tracking Model

Planning Model

Tracking State

Planning StateNext

Planning State

Tracking Control

FaSTrack Controller

Planning Block

Fig. 3: FaSTrack Block

Fig. 4: Top-down view of FaSTrack applied to a 6D quadcopter navigatinga static environment. Note the simple planned trajectory (changing colorover time) and the tracking error bound (TEB) around the quadcopter. ThisTEB is a 6D set that has been projected down to the position dimensions.Because we assuem the quadcopter moves independently in (x, y, z), thisprojection looks like a box, making collision-checking very straightforward.

between the planning algorithm and the physical robot.We then solve this differential game using Hamilton-Jacobireachability analysis. To ensure robustness, we assume (a)worst-case behavior of the planning algorithm (i.e. beingas difficult as possible to track), and (b) that the robotis experiencing worst-case, bounded external disturbances.The computation of the TEB also provides a correspondingerror-feedback controller for the robot to always remaininside the TEB. Thus, FaSTrack wraps efficient motionplanners, and adds robustness to modeled system dynamicsand external disturbances through the precomputed TEB anderror-feedback controller. Fig. 4 shows a top-down view ofa quadcopter using a kinematic planner (A∗) to navigatearound static obstacles. By employing the error-feedbackcontroller, the quadcopter is guaranteed to remain within theTEB (shown in blue) as it traverses the A∗ path.

A. FaSTrack Block

Requirements: To use FaSTrack, one needs a high-fidelitydynamical model of the system used for reference tracking,and a (potentially simpler) dynamic or kinematic modelused by the planning algorithm. Using the relative dynamicsbetween the tracking model and the planning model, theTEB and safety controller may be computed using Hamilton-Jacobi reachability analysis [3], sum-of-squares optimization[5], or approximate dynamic programming [19].

Implementation: Fig. 3 describes the online algorithm forFaSTrack after the offline precomputation of the TEB andsafety controller. We initialize the planning block to startwithin the TEB centered on the robot’s current state. The

planner then uses any desired planning algorithm (e.g. A∗,or model predictive control) to find a trajectory from thisinitial state to a desired goal state. When collision-checking,the planning algorithm must ensure that the tube defined bythe Minkowski sum of the TEB and the planned trajectorydoes not overlap any obstacles in the obstacle map.

The planning block provides the current planned referencestate to the FaSTrack controller, which determines therelative state between the tracking model (robot) and plannedreference (motion plan). The controller then applies thecorresponding optimal, safe tracking control via an efficientlook-up table.

B. FaSTrack in the SCAFFOLD Framework

In the robot planning and control section of Fig. 2,each robot uses FaSTrack for robust planning and control.FaSTrack guarantees that each robot remains within its TEB-augmented trajectory.

IV. HUMAN PREDICTIONS

Section III introduced methods for the fast and safenavigation of a single robot in an environment with deter-ministic, moving obstacles. However, moving obstacles—especially human beings—are not always best modeledas deterministic. For such “obstacles,” robots can employprobabilistic predictive models to produce a distribution ofstates the human may occupy in the future. The qualityof these predictions and the methods used to plan aroundthem determine the overall safety of the system. Generatingaccurate real-time predictions for multiple humans (and,more generally, uncertain agents) is an open problem. Partof the challenge arises from the combinatorial explosion ofinteraction effects as the number of agents increases. Anysimplifying assumptions, such as neglecting interaction ef-fects, will inevitably cause predictions to become inaccurate.Such inaccuracies could threaten the safety of plans that relyon these predictions.

Our goal is to compute real-time motion plans thatare based on up-to-date predictions of all humans in theenvironment, and at the same time maintain safety whenthese predictions become inaccurate. The confidence-awareprediction approach of [6] provides a convenient mecha-nism for adapting prediction uncertainty online to reflectthe degree to which humans’ actions match an internalmodel. This automatic uncertainty adjustment allows us tosimplify or even neglect interaction effects between humans,because uncertain predictions will automatically result inmore conservative plans when the observed behavior departsfrom internal modeling assumptions.

A. Human Prediction Block

Requirements: In order to make any sort of collision-avoidance guarantees, we require a prediction algorithm thatproduces distributions over future states, and rapidly adjuststhose predictions such that the actual trajectories followedby humans lie within the prediction envelope. There aremany approaches to probabilistic trajectory prediction in the

literature, e.g. [7, 20–22]. These methods could be used toproduce a probabilistic prediction of the i-th human’s statexi ∈ Rni at future times τ , conditioned on observations2

z: P (xτi |z0:t). These observations are random variables anddepend upon the full state of all robots and humans x untilthe current time t. However, by default these distributionswill not necessarily capture the true trajectories of eachhuman, especially when the models do not explicitly accountfor interaction effects. Fisac et. al. [6] provide an efficientmechanism for updating the uncertainty (e.g., the variance)of distributions P (xτi |z0:t) to satisfy this safety requirement.

Implementation: Fig. 5 illustrates the human predictionblock. We use a maximum-entropy model as in [6, 23, 24],in which the dynamics of the i-th human are affected byactions uti drawn from a Boltzmann probability distribu-tion. This time-dependent distribution over actions impliesa distribution over future states. Given a sensed state xti ofhuman i at time t, we invert the dynamics model to inferthe human’s action, uti. Given this action, we perform aBayesian update on the distribution of two parameters: θi,which describes the objective of the human (e.g. the set ofcandidate goal locations), and βi, which governs the varianceof the predicted action distributions. βi can be interpretedas a natural indicator of model confidence, quantifying themodel’s ability to capture humans’ current behavior [6].Were we to model actions with a different distribution, e.g.a Gaussian process, the corresponding parameters could belearned from prior data [7, 23, 24], or inferred online [6, 25]using standard inverse optimal control (inverse reinforcementlearning) techniques.

Once distributional parameters are updated, we producea prediction over the future actions of human i through thefollowing Boltzmann distribution:

P (uti | xt;βi, θi) ∝ eβiQi(xt,ut

i;θi) . (1)

This model treats each human as more likely to chooseactions with high expected utility as measured by the (state-action) Q-value associated to a certain reward function,ri(x, ui; θi). In general, this value function may depend uponthe joint state x and the human’s own action ui, as well asthe parameters θi, βi. Finally, combining (1) with a dynamicsmodel, these predicted actions may be used to generate adistribution over future states. In practice, we represent thisdistribution as a discrete occupancy grid. One such grid isvisualized in Fig. 6.

By reasoning about each human’s model confidence as ahidden state [6], our framework dynamically adapts predic-tions to the evolving accuracy of the models encoded in theset of state-action functions, {Qi}. Uncertain predictions willforce the planner to be more cautious whenever the actionsof the humans occur with low probability as measured by(1).

2For simplicity, we will later assume complete state observability:zt = xt.

Generating Occupancy Grid

Update Parameters

Motion Prediction

Infer Human Action

Model Confidence, Predicted Human Goal

Human Action

Human State

Human i Prediction

Obstacle Maps

Tracking Model

Planning Model

Tracking State

Planning StateNext

Planning State

Tracking Control

FaSTrack Controller

Planning Block

Fig. 5: Human Prediction Block

Fig. 6: Our environment now has a human (red square). The robot modelsthe human as likely to move north. Visualized on top of the human is thedistribution of future states (pink is high, blue is low probability). Since thehuman is walking north and matching the model, the robot’s predictions areconfident that the human will continue northward and remain collision-free.

B. Human Prediction in the SCAFFOLD Framework

The predicted future motion of the humans is generatedas a probability mass function, represented as time-indexedset of occupancy grids. These distributions are interpreted asan obstacle map by the FaSTrack block. During planning, astate is considered to be unsafe if the total probability masscontained within the TEB centered at that state exceeds apreset threshold, Pth. As in [6], we consider a trajectory tobe unsafe if the maximum marginal collision probability atany individual state along it exceeds Pth.

When there are multiple humans, their state at any futuretime τ will generally be characterized by a joint probabilitydistribution P (xτ1 , ..., x

τN ).

Let sτ be the planned state of a robot at time τ . We writecoll(sτ , xτi ) to denote the overlap of the TEB centered at sτ

with the ith human at state xτi . Thus, we may formalize theprobability of collision with at least one human as:

P(coll(sτ , {xτi }Ni=1)

)= (2)

1−N∏i=1

P(¬coll(sτ , xτi ) | ¬coll(sτ , {xτj }i−1

j=1)),

Intuitively, (2) states that the probability that the robotis in collision at sτ is one minus the probability that therobot is not in collision. We compute the second term bytaking the product over the probability that the robot isnot in collision with each human, given that the robot isnot in collision with all previously accounted for humans.Unfortunately, it is generally intractable to compute the termsin the product in (2). Fortunately, tractable approximationscan be computed by storing only the marginal predicted

distribution of each human at every future time step τ ,and assuming independence between humans. This way,each robot need only operate with N occupancy grids. Theresulting computation is:

P(coll(sτ , {xτi }Ni=1)

)≈ 1−

N∏i=1

(1− P

(coll(sτ , xτi )

)).

(3)Here we take the product over the probability that the robotis not in collision with each human (one minus probability ofcollision), and then again take the complement to computethe probability of collision with any human. Note that whenthe predictive model neglects future interactions betweenmultiple humans, (2) reduces to (3). If model confidenceanalysis [6] is used in conjunction with such models, wehypothesize that each marginal distribution will naturally be-come more uncertain when interaction effects are significant.

Once a collision probability is exactly or approximatelycomputed, the planner can reject plans for which, at anytime τ > t, the probability of collision from (3) exceedsPth. Thus, we are able to generate computationally tractablepredictions that result in Pth-safe planned trajectories for thephysical robot.

V. SEQUENTIAL TRAJECTORY PLANNING

Thus far, we have shown how our framework allows asingle robot to navigate in real-time through an environmentwith multiple humans while maintaining safety (at a proba-bility of approximately Pth-safe) and accounting for internaldynamics, external disturbances, and humans. However, inmany applications (such as autonomous driving), the envi-ronment may also be occupied by other robots.

Finding the optimal set of trajectories for all robots inthe environment would require solving the planning problemover the joint state space of all robots. This very quickly be-comes computationally intractable with increasing numbersof robots. Approaches for multi-robot trajectory planningoften assume that the other vehicles operate with specificcontrol strategies such as those involving induced velocityobstacles [26–29] and involving virtual structures or poten-tial fields to maintain collision [30–32]. These assumptionsgreatly reduce the dimensionality of the problem, but maynot hold in general.

Rather than assuming specific control strategies of otherrobots, each robot could generate predictions over the futuremotion of all other robots. Successful results of this typetypically assume that the vehicles operate with very simpledynamics, such as single integrator dynamics [33], differen-tially flat systems [34], linear systems [35].

However, when robots can communicate with each other,methods for centralized and/or cooperative multi-agent plan-ning allow for techniques for scalability [36–38]. One suchmethod is sequential trajectory planning (STP) [13], whichcoordinates robust multi-agent planning using a sequentialpriority ordering. Priority ordering is commonly used inmany multi-agent scenarios, particularly for aerospace ap-plications. In this work, we merge STP with FaSTrack toproduce real-time planning for multi-agent systems.

A. Sequential Trajectory Planning

Requirements: To apply STP, robots must be able tocommunicate trajectories and TEBs over a network.

Implementation: STP addresses the computational com-plexity of coupled motion planning by assigning a priorityorder to the robots and allowing higher-priority robots toignore the planned trajectories of lower-priority robots. Thefirst-priority robot uses the FaSTrack block to plan a(time-dependent) trajectory through the environment whileavoiding the obstacle maps. This trajectory is shared acrossthe network with all lower-priority robots. The i-th robotaugments the trajectories from robots 0 : i − 1 by theirrespective TEBs, and treats them as time-varying obstacles.The i-th robot determines a safe trajectory that avoids thesetime-varying tubes as well as the predicted state distributionsof humans, and publishes this trajectory for robots i+1 : n.This process continues until all robots have computed theirtrajectory. Each robot replans as quickly as it is able; in ourexperiments, this was between 50–300 ms.

B. Sequential Trajectory Planning in the SCAFFOLDFramework

By combining this method with FaSTrack for fast individ-ual planning, the sequential nature of STP does not signifi-cantly affect overall planning time. In our implementation allcomputations are done on a centralized computer using theRobot Operating System (ROS), however this method caneasily be performed in a decentralized manner. Note thatSTP does depend upon reliable, low-latency communicationbetween the robots. If there are communication delays,techniques such as [39] may be used to augment each robot’sTEB by a term relating to time delay.

VI. IMPLEMENTATION AND EXPERIMENTAL RESULTS

We demonstrate SCAFFOLD’s feasibility in hardwarewith two robots and two humans, and its scalability insimulation with five robots and ten humans.

A. Hardware Demonstration

We implemented the SCAFFOLD framework in C++ andPython, using Robot Operating System (ROS) [40]. Allcomputations for our hardware demonstration were doneon a laptop computer (specs: 31.3 GB of memory, 216.4GB disk, Intel Core i7 @ 2.70GHz x 8). As shown inFig. 1, we used Crazyflie 2.0 quadcopters as our robots,and two human volunteers. The position and orientation ofrobots and humans were measured at roughly 235 Hz by anOptiTrack infrared motion capture system. The humans wereinstructed to move towards different places in the lab, whilethe quadcopters planned collision-free trajectories in threedimensions (x, y, z) using a time-varying implementationof A∗. The quadcopters tracked these trajectories using theprecomputed FaSTrack controller designed for a 6D near-hover quadcopter model tracking a 3D point [18]. Humanmotion was predicted 2 s into the future. Fig. 7 shows severalsnapshots of this scene over time. Note that the humansmust move around each other to reach their goals—this is

a b c d eFig. 7: Birds-eye Robot Operating System (ROS) visualization of hardware demonstration from Fig. 1. (a) Two humans (red and blue) start movingtowards their respective goals (also red and blue). Robot in lower right-hand corner has first priority, and robot in upper left-hand corner has second. Thetime-varying predictions of each human’s future motion are visualized. (b) Robots plan trajectories to their goals based on the predictions, priority order,and are guaranteed to stay within the tracking error bound (shown in blue). (c) When the humans begin to interact in an unmodeled way by moving aroundeach other, the future predictions become more uncertain. (d) The robots adjust their plans to be more conservative–note the upper-left robot waiting asthe blue human moves past. (c) When the humans pass each other and the uncertainty decreases, the robots complete their trajectories.

.an unmodeled interaction affect. The predictions become lesscertain during this interaction, and the quadcopters plan moreconservatively, giving the humans a wider berth. The fullvideo of the hardware demonstration can be viewed in ourvideo submission.

B. SCAFFOLD Framework Simulation Analysis

Due to the relatively small size of our motion capturearena, we demonstrate scalability of the SCAFFOLD frame-work through a large-scale simulation. In this simulation,pedestrians are crossing through a 25× 20m2 region of theUC Berkeley campus. We simulate the pedestrians’ motionusing potential fields [41], which “pull” each pedestriantoward his or her own goal and “push” them away from otherpedestrians and robots. These interaction effects betweenhumans and robots are not incorporated into the state-actionfunctions {Qi}, and lead to increased model uncertainty (i.e.,higher estimates of βi) during such interactions. The fleet ofrobots must reach their respective goals while maintainingsafety with respect to their internal dynamics, humans, andeach other. We ran our simulation on a desktop workstationwith an Intel i7 Processor and 12 CPUs operating at 3.3GHz.3 Our simulation took 98 seconds for all robots toreach their respective goals. Predictions over human motiontook 0.15 ± 0.06 seconds to compute for each human.This computation can be done in parallel. Each robot took0.23 ± 0.16 seconds to determine a plan. There was nosignificant difference in planning time between robots ofvarying priority. Robots used time-varying A∗ on a 2-dimensional grid with 1.5 m resolution, and collision checkswere performed at 0.1 m along each trajectory segment. Theresolution for human predictions was 0.25 m and humanmotion was predicted 2 s into the future.

VII. DISCUSSION & CONCLUSION

In this paper, we compose several techniques for robustand efficient planning together in a framework designed forfast multi-robot planning in environments with uncertainmoving obstacles, such as humans. Each robot generatesreal-time motion plans while maintaining safety with respect

3The computation appears to be dominated by the prediction step, whichwe have not yet invested effort in optimizing.

Fig. 8: Simulation of 5 dynamic robots navigating in a scene with 10humans. The simulated humans according to a potential field, which resultsin unmodeled interaction effects. However, SCAFFOLD enables each robotto still reach its goal safely.

to external disturbances and modeled dynamics via the FaS-Track framework. To maintain safety with respect to humans,robots sense humans’ states and form probabilistic, adap-tive predictions over their future trajectories. For efficiency,we model these humans’ motions as independent, and tomaintain robustness, we adapt prediction model confidenceonline. Finally, to remain safe with respect to other robots,we introduce multi-robot cooperation through STP, whichrelieves the computational complexity of planning in thejoint state space of all robots by instead allowing robots toplan sequentially according to a fixed priority ordering.

We demonstrate our framework in hardware with twoquadcopters navigating around two humans. We also presenta larger simulation of five quadcopters and ten humans.

To further demonstrate our framework’s robustness, weare interested in exploring (a) non-grid based methods ofplanning and prediction, (b) the incorporation of sensoruncertainty, (c) optimization for timing and communicationdelays, and (d) recursive feasibility in planning. We are alsointerested in testing more sophisticated predictive models forhumans, and other low-level motion planners.

ACKNOWLEDGMENTS

The authors would like to thank Joe Menke for hisassistance in hardware and motion capture systems, andDaniel Hua and Claire Dong for their help early on.

REFERENCES

[1] I. M. Mitchell, A. M. Bayen, and C. J. Tomlin. “A time-dependent Hamilton-Jacobi formulation of reachable sets forcontinuous dynamic games”. IEEE Transactions on Auto-matic Control 50.7 (2005). URL: http://ieeexplore.ieee . org / lpdocs / epic03 / wrapper . htm ?arnumber=1463302.

[2] M. Chen, S. L. Herbert, M. S. Vashishtha, et al. “A GeneralSystem Decomposition Method for Computing ReachableSets and Tubes”. IEEE Transactions on Automatic Control(to appear) (2016).

[3] S. L. Herbert*, M. Chen*, S. Han, et al. “FaSTrack: aModular Framework for Fast and Guaranteed Safe Mo-tion Planning”. IEEE Conference on Decision and Control(2017).

[4] A. Majumdar and R. Tedrake. “Funnel libraries for real-timerobust feedback motion planning”. Int. J. Robotics Research(June 2017).

[5] S. Singh, M. Chen, S. L. Herbert, et al. “Robust Trackingwith Model Mismatch for Fast and Safe Planning: an SOSOptimization Approach”. arXiv preprint arXiv:1808.00649(2018).

[6] J. F. Fisac, A. Bajcsy, S. L. Herbert, et al. “ProbabilisticallySafe Robot Planning with Confidence-Based Human Predic-tions”. Robotics: Science and Systems. 2018.

[7] B. D. Ziebart, N. Ratliff, G. Gallagher, et al. “Planning-basedprediction for pedestrians”. Intelligent Robots and Systems,2009. IROS 2009. IEEE/RSJ International Conference on.IEEE. 2009.

[8] S. Bansal, M. Chen, J. F. Fisac, and C. J. Tomlin. “Safesequential path planning of multi-vehicle systems underpresence of disturbances and imperfect information”. Proc.Amer. Control Conf. 2017.

[9] M. Chen, J. C. Shih, and C. J. Tomlin. “Multi-vehicle col-lision avoidance via hamilton-jacobi reachability and mixedinteger programming”. Decision and Control (CDC), 2016IEEE 55th Conference on. IEEE. 2016.

[10] R. A. Knepper and D. Rus. “Pedestrian-inspired sampling-based multi-robot collision avoidance”. RO-MAN, 2012IEEE. IEEE. 2012.

[11] P. Trautman and A. Krause. “Unfreezing the robot: Navi-gation in dense, interacting crowds”. Intelligent Robots andSystems (IROS), 2010 IEEE/RSJ International Conferenceon. IEEE. 2010.

[12] T. Kruse, A. K. Pandey, R. Alami, and A. Kirsch. “Human-aware robot navigation: A survey”. Robotics and Au-tonomous Systems 61.12 (2013).

[13] M. Chen, J. F. Fisac, S. Sastry, and C. J. Tomlin.“Safe sequential path planning of multi-vehicle systems viadouble-obstacle Hamilton-Jacobi-Isaacs variational inequal-ity”. Control Conference (ECC), 2015 European. IEEE.2015.

[14] P. E. Hart, N. J. Nilsson, and B. Raphael. “A formal basis forthe heuristic determination of minimum cost paths”. IEEEtransactions on Systems Science and Cybernetics 4.2 (1968).

[15] S. Karaman and E. Frazzoli. “Sampling-based algorithmsfor optimal motion planning”. The international journal ofrobotics research 30.7 (2011).

[16] S. V. Rakovic. “Set theoretic methods in model predictivecontrol”. Nonlinear Model Predictive Control. Springer,2009.

[17] S. Singh, A. Majumdar, J.-J. Slotine, and M. Pavone.“Robust online motion planning via contraction theory andconvex optimization”. Proc. IEEE Int. Conf. Robotics andAutomation. 2017.

[18] D. Fridovich-Keil*, S. L. Herbert*, J. F. Fisac*, et al. “Plan-ning, Fast and Slow: A Framework for Adaptive Real-Time

Safe Trajectory Planning.” IEEE Conference on Roboticsand Automation (2018).

[19] V. R. Royo, D. Fridovich-Keil, S. Herbert, and C. J. Tomlin.“Classification-based Approximate Reachability with Guar-antees Applied to Safe Trajectory Tracking”. arXiv preprintarXiv:1803.03237 (2018).

[20] H. Ding, G. Reißig, K. Wijaya, et al. “Human arm motionmodeling and long-term prediction for safe and efficienthuman-robot-interaction”. Robotics and Automation (ICRA),2011 IEEE International Conference on. IEEE. 2011.

[21] K. P. Hawkins, N. Vo, S. Bansal, and A. F. Bobick. “Prob-abilistic human action prediction and wait-sensitive plan-ning for responsive human-robot collaboration”. HumanoidRobots (Humanoids), 2013 13th IEEE-RAS InternationalConference on. IEEE. 2013.

[22] P. A. Lasota and J. A. Shah. “Analyzing the effects ofhuman-aware motion planning on close-proximity human–robot collaboration”. Human factors 57.1 (2015).

[23] C. Finn, S. Levine, and P. Abbeel. “Guided cost learning:Deep inverse optimal control via policy optimization”. In-ternational Conference on Machine Learning. 2016.

[24] B. D. Ziebart, A. L. Maas, J. A. Bagnell, and A. K. Dey.“Maximum entropy inverse reinforcement learning”. AAAI.2008.

[25] D. Sadigh, S. Sastry, S. A. Seshia, and A. D. Dragan.“Information Gathering Actions over Human Internal State”.International Conference on Intelligent Robots and Systems(IROS) (2016).

[26] A. Wu and J. P. How. “Guaranteed infinite horizon avoid-ance of unpredictable, dynamically constrained obstacles”.Autonomous robots 32.3 (2012).

[27] P. Fiorini and Z. Shiller. “Motion planning in dynamicenvironments using velocity obstacles”. The InternationalJournal of Robotics Research 17.7 (1998).

[28] G. C. Chasparis and J. S. Shamma. “Linear-programming-based multi-vehicle path planning with adversaries”. Amer-ican Control Conference, 2005. Proceedings of the 2005.IEEE. 2005.

[29] J. Van den Berg, M. Lin, and D. Manocha. “Reciprocalvelocity obstacles for real-time multi-agent navigation”.Robotics and Automation, 2008. ICRA 2008. IEEE Inter-national Conference on. IEEE. 2008.

[30] R. Olfati-Saber and R. M. Murray. “Distributed cooperativecontrol of multiple vehicle formations using structural po-tential functions”. IFAC world congress. Vol. 15. Citeseer.2002.

[31] Y.-L. Chuang, Y. R. Huang, M. R. D’Orsogna, and A. L.Bertozzi. “Multi-vehicle flocking: scalability of cooperativecontrol algorithms using pairwise potentials”. Robotics andAutomation, 2007 IEEE International Conference on. IEEE.2007.

[32] D. Zhou, Z. Wang, and M. Schwager. “Agile Coordinationand Assistive Collision Avoidance for Quadrotor SwarmsUsing Virtual Structures”. IEEE Transactions on Robotics34.4 (2018).

[33] D. Zhou, Z. Wang, S. Bandyopadhyay, and M. Schwager.“Fast, On-line Collision Avoidance for Dynamic Vehiclesusing Buffered Voronoi Cells”. IEEE Robotics and Automa-tion Letters (RA-L) 2 (2017).

[34] F.-L. Lian and R. Murray. “Real-time trajectory generationfor the cooperative path planning of multi-vehicle systems”.Decision and Control, 2002, Proceedings of the 41st IEEEConference on. Vol. 4. IEEE. 2002.

[35] A. Ahmadzadeh, N. Motee, A. Jadbabaie, and G. Pappas.“Multi-vehicle path planning in dynamically changing envi-ronments”. Robotics and Automation, 2009. ICRA’09. IEEEInternational Conference on. IEEE. 2009.

[36] F. L. Lewis, H. Zhang, K. Hengster-Movric, and A. Das.Cooperative control of multi-agent systems: optimal andadaptive design approaches. Springer Science & BusinessMedia, 2013.

[37] A. Torreno, E. Onaindia, A. Komenda, and M. Stolba. “Co-operative multi-agent planning: a survey”. ACM ComputingSurveys (CSUR) 50.6 (2017).

[38] T. Mylvaganam, M. Sassano, and A. Astolfi. “A differentialgame approach to multi-agent collision avoidance”. IEEETransactions on Automatic Control 62.8 (2017).

[39] A. Desai, I. Saha, J. Yang, et al. “Drona: A framework forsafe distributed mobile robotics”. Proceedings of the 8thInternational Conference on Cyber-Physical Systems. ACM.2017.

[40] M. Quigley, K. Conley, B. P. Gerkey, et al. “ROS: an Open-Source Robot Operating System”. ICRA Workshop on OpenSource Software. 2009.

[41] M. A. Goodrich. “Potential fields tutorial”. Class Notes 157(2002).