Networked Robotics: From Distributed Robotics to Sensor Networks Gaurav S. Sukhatme Center for Robotics and Embedded Systems Center for Embedded Networked Sensing Computer Science Department University of Southern California
Introduction Synoptic sensing: sense everywhere in parallel Enablers: small computers, sensors, radios Role of robotics: Deploy sensors, Localize sensors, Replenish and repair network Potential Applications: –Ecosystem bio-complexity monitoring –Marine microorganism monitoring –Structural health monitoring –…
Network Deployment
Deployment Constraints and Tradeoffs Connectivity –Final/Intermediate –K-connectedness, K-degree (density) Visibility –Communication visibility, sensing visibility Efficiency –How many nodes ? How quickly ?
Network Repair
Repair Constraints Minimal Intervention –Smallest number of nodes are subjected to small displacements –Small number of new nodes deployed Speed –Faster than (re)deployment Preserve connectivity/visibility
Multi-Robot Task Allocation (MRTA) B B
MRTA Constraints Speed of event detection –‘Robot only’ solution could be slow –Network effectively extends sensing range Speed of response Simple vs. complex robots –Computation on the robots vs. in-network
Today Network deployment of robotic nodes –Sensor coverage and line-of-sight connectivity –Sensor coverage and k-neighbor connectivity Network deployment of static nodes using mobile robots –Sensor coverage and fast exploration, no environment map Network repair using mobile robots –Speed, no map of the environment Multi-robot task allocation using a network –Navigation: No central planning, no constraints on adding robots dynamically –Adaptive sampling
Deployment Assumptions –Robotic nodes initially confined to a small area –Each node has a finite sensing radius R s and communication radius R r Goal –Maximize total sensor coverage such that each node has k neighbors within communication range Approach –Repulsive potential field with damping and switching
Deployment Stages
The Deployment Algorithm Each robot is controlled according to virtual forces Andrew Howard, Maja J. Mataric and Gaurav S. Sukhatme, "Mobile Sensor Network Deployment using Potential Fields: A Distributed, Scalable Solution to the Area Coverage Problem," in Proceedings of the International Symposium on Distributed Autonomous Robotic Systems, 2002.
Static Deployment using a Potential Field Tuning the damping term –Use value that gives critical damping for a two node system –R s and R r not used explicitly No control over k
Modified Potential Field Approach If degree > k Repel neighbors (increase coverage) else Attract neighbors (maintain degree) Sameera Poduri and Gaurav S. Sukhatme, "Constrained Coverage for Mobile Sensor Networks," IEEE International Conference on Robotics and Automation, 2004
d<=2R s Coverage depends on d d>2R s Coverage independent of d 2 regimes R r > 2R s R r <= 2R s Role of R r /R s d d d d
Evaluation Performance metric –Coverage: Area covered/ NπR s 2 Compare with –Regular tilings –Random Networks (uniformly distributed) –Centralized iterative approach
Regular k-Tilings R r <= 2R s and large N Exact formulas for coverage for k = 0,1,2,3,4,6
Random Networks Uniformly distributed random network – Poisson distribution Probability of exactly m nodes in an area S : Degree depends on ρ For, find ρ such that
A Centrally Computed Baseline Generate a configuration prior to deployment (assumes an environment map) Loop: 1.Start with a network N of min. degree k 2.Randomly displace a node to get N new 3.If N new also has min. degree k, N=N new 4.If Average_degree < k+2, stop, else goto 2
Results Rr < 2Rs
Results Rr = 2Rs Rr=8, Rs=4, n=49
Results Rr > 2Rs
Potential Field-based Deployment Distributed algorithm No map of the environment Need range and bearing to neighbors – impractical on small sensor-constrained nodes Experimental results: –Reasonably good coverage –Connectivity > 97% –#nodes with degree at least k > 95% –Converges quickly
Today Network deployment of robotic nodes –Sensor coverage and line-of-sight connectivity –Sensor coverage and k-neighbor connectivity Network deployment of static nodes using mobile robots –Sensor coverage and fast exploration, no environment map Network repair using mobile robots –Speed, no map of the environment Multi-robot task allocation using a network –Navigation: No central planning, no constraints on adding robots dynamically –Adaptive sampling
Robot-based Deployment Its hard to make small mobile network nodes Not clear if its energetically feasible Alternate regime: –Deployment: Single ‘capable’ robot drops off nodes at their places –Repair: Robot ‘plugs holes’ in the resulting network using the same algorithm
What’s in it for the Robot(s) ? An efficient deployment strategy (linear in the network size), is also an efficient exploration strategy for the robot Once the network is emplaced –any robot can use it to navigate (path planning is done ‘in-network’) –in-network (de-centralized) task allocation can coordinate the actions of multiple robots
Approach M. Batalin, G. S. Sukhatme, Coverage, Exploration and Deployment by a Mobile Robot and Communication Network, Telecommunications Systems, April 2004 M. Batalin, G. S. Sukhatme, Efficient Exploration Without Localization Proceedings of the 2003 IEEE International Conference on Robotics and Automation (ICRA'03), Taipei, Taiwan, May , Robot Loop If no beacon within radio range deploy beacon Else move in direction suggested by nearest beacon Beacon Loop Emit least recently visited direction
Robot deploys network Network Deployment
Environment change Network extension Adapting to Environment Change
Graph Cover Times Cover time is a measure of exploration speed Random walk is O(n 2 ) –on a regular graph of n nodes DFS is O(n) and requires –passive markers –a topological map –markers of 3 colors Our algorithm is O(n ln n) and requires –infinite active markers, no map
Path to goal computed using dynamic programming Robot uses network to navigate Robot Navigation using the Network
Robot Navigation using a Sensor Network Mica2 mote-based sensor network Mobile robot navigates based solely on network directives Results include over 1 km robot traverses in experiments robot Sensor node start goal start goal start goal
Robot Navigation Using a Sensor Network
Robot Navigation to Contours Use sensor network to navigate robot towards a contour of interest Variant on the previous approach Karthik Dantu and Gaurav S. Sukhatme, "Detecting Level Sets of Scalar Fields Using Actuated Sensor Networks," Submitted to IROS 2004
From the Air Peter I. Corke, Stefan E. Hrabar, Ron Peterson, Daniela Rus, Srikanth Saripalli, and Gaurav S. Sukhatme, "Autonomous Deployment and Repair of a Sensor Network using an Unmanned Aerial Vehicle," IEEE International Conference on Robotics and Automation, 2004.
Today Network deployment of robotic nodes –Sensor coverage and line-of-sight connectivity –Sensor coverage and k-neighbor connectivity Network deployment of static nodes using mobile robots –Sensor coverage and fast exploration, no environment map Network repair using mobile robots –Speed, no map of the environment Multi-robot task allocation using a network –Navigation: No central planning, no constraints on adding robots dynamically –Adaptive sampling
Multi-Robot Task Allocation Problem: Events in the environment, robot needed in vicinity of each event to observe it Given a pre-deployed sensor network, no environment map, no assumptions about a static environment Solution: Augment the deployment/exploration algorithm based on event occurrence M. Batalin, G. S. Sukhatme, Sensor Network-based Multi-robot Task Allocation, Proceedings of the 2003 IEEE International Conference on Intelligent Robots and Systems (IROS '03), Las Vegas, Oct 27-31, 2003.
Outline Pre-computation: In the exploration phase compute P(s’|s,a) transition probability from node s to s’ for action a Every event i in the environment is assumed to have a weight w i Every node computes a suggested direction of travel for a robot in its vicinity
In-network Computation Events are flooded through the network Each node receives an event weight w i and a hop count h i and computes the following utility(i) = w i /h i current alarm = argmax utility(i) V(s’) = C(s,a) + max Σ P(s’|s,a) V(s) Π(s) = argmax Σ P(s’|s,a) V(s)
Results Compare aggregate event on-time for ‘exploration/deployment-only’ mode vs. ‘task-allocation’ mode
Task Allocation Application I Marine microorganism monitoring Adaptive sampling of the underwater environment based on physical and chemical measurements Bin Zhang, Gaurav S. Sukhatme, and Aristides A. Requicha, "Adaptive Sampling for Marine Microorganism Monitoring," IROS 2004.
TA Application II: Networked Infomechanical Systems Networked mobile nodes –Sensing –Sampling –Energy logistics –Communication Infrastructure –Enables deterministic and precise motion –Enables proper elevation –Enables mass transport at low energy System Ecology –Fixed nodes –Mobile nodes –Infrastructure
NIMS Node
NIMS Node in Action
Results PARHumidity
Extensions Dealing with thrashing Explicit task assignments vs. implicit Further experiments underwater and in the forest canopy
Today Network deployment of robotic nodes –Sensor coverage and line-of-sight connectivity –Sensor coverage and k-neighbor connectivity Network deployment of static nodes using mobile robots –Sensor coverage and fast exploration, no environment map Network repair using mobile robots –Speed, no map of the environment Multi-robot task allocation using a network –Navigation: No central planning, no constraints on adding robots dynamically –Adaptive sampling
Conclusion Symbiotic relationship between mobile robots and sensor networks –Actuation enables us to focus sensing where it is needed when it is needed –Networks extend the effective sensing range of robots and offload some processing
Localization Stationary sensor network with some ‘GPS-enabled’ nodes Three algorithms (all based on rigid graphs): –Range only (high accuracy requires high density) –Range and bearing (high accuracy requires very few neighbors but bearing is difficult to measure on small nodes) –Range and sectoring (high accuracy with moderate number of neighbors) K.Chintalapudi, A. Dhariwal, R. Govindan and G. Sukhatme, Adhoc Localization using Ranging and Sectoring, Proceeeding of Infocomm, March 2004
Cooperative Localization System contains beacons and beacon detectors Assumptions: beacons are unique, beacon detectors determine correct identity. Determine the relative pose of each pair of beacons/detectors
Team Localization using MLE Construct a set of estimates H = {h} where: h is the pose of robot r at time t. Construct a set of observations O = {o} where o is either: the measured pose of robot r b relative to robot r a at time t, or the measured change in pose of robot r between times t a and t b. Find the set of estimates H that maximizes:
Approach Equivalently, find the set H that minimizes:
Gradient-based Estimation Each estimate Each observation Measurement uncertainty assumed normal Relative Absolute
Gradient Descent Compute set of poses q that minimizes U(O|H) Gradient-based algorithm
SLAM: Simultaneous Localization and Mapping
Sensor Network Calibration
Team Localization Runs on any platform as long as it can compute its motion via inertial sensing Unique beacons: robots, people, fixed locations etc. Global communications No model of the environment Indifferent to changes in the environment Robust to sensor noise Centralized Andrew Howard, Maja J. Mataric´, and Gaurav S. Sukhatme, "Relaxation on a mesh: a formalism for generalized localization," In IEEE/RSJ International Conference on Intelligent Robots and Systems, pp , Wailea, Hawaii, Oct 2001.