Http://robotics.usc.edu/~gaurav1/72 Networked Robotics: From Distributed Robotics to Sensor Networks...

Post on 12-Jan-2016

217 views 1 download

Tags:

Transcript of Http://robotics.usc.edu/~gaurav1/72 Networked Robotics: From Distributed Robotics to Sensor Networks...

http://robotics.usc.edu/~gaurav 1/72

Networked Robotics:From Distributed Robotics to Sensor Networks

Gaurav S. Sukhatme

Center for Robotics and Embedded SystemsCenter for Embedded Networked Sensing

Computer Science DepartmentUniversity of Southern California

gaurav@usc.eduhttp://robotics.usc.edu/resl

http://robotics.usc.edu/~gaurav 2/72

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– …

http://robotics.usc.edu/~gaurav 3/72

Network Deployment

http://robotics.usc.edu/~gaurav 4/72

Deployment Constraints and Tradeoffs

• Connectivity– Final/Intermediate– K-connectedness, K-degree (density)

• Visibility– Communication visibility, sensing

visibility• Efficiency

– How many nodes ? How quickly ?

http://robotics.usc.edu/~gaurav 5/72

Network Repair

http://robotics.usc.edu/~gaurav 6/72

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

http://robotics.usc.edu/~gaurav 7/72

Multi-Robot Task Allocation (MRTA)

B B

http://robotics.usc.edu/~gaurav 8/72

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

http://robotics.usc.edu/~gaurav 9/72

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

http://robotics.usc.edu/~gaurav 10/72

Deployment

• Assumptions– Robotic nodes initially confined to a small

area

– Each node has a finite sensing radius Rs and communication radius Rr

• Goal– Maximize total sensor coverage such that

each node has k neighbors within communication range

• Approach– Repulsive potential field with damping and

switching

http://robotics.usc.edu/~gaurav 12/72

The Deployment Algorithm

nonoi FFUUUF )(

i i

nono rkU

1||

i i

nonor

kF 2||

1

mxFx iii /)(

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.

http://robotics.usc.edu/~gaurav 13/72

Static Deployment using a Potential Field

• Tuning the damping term– Use value that gives critical damping for a two node

system– Rs and Rr not used explicitly

• No control over k

http://robotics.usc.edu/~gaurav 14/72

Modified Potential Field Approach

If degree > kRepel neighbors (increase coverage)

elseAttract neighbors (maintain degree)

Sameera Poduri and Gaurav S. Sukhatme, "Constrained Coverage for Mobile Sensor Networks," IEEE International Conference on Robotics and Automation, 2004

http://robotics.usc.edu/~gaurav 15/72

• d<=2Rs

Coverage depends on d

• d>2Rs

Coverage independent of d

• 2 regimesRr > 2Rs

Rr <= 2Rs

Role of Rr/Rs

d

d

d

d

http://robotics.usc.edu/~gaurav 16/72

Evaluation

• Performance metric

– Coverage: Area covered/ NπRs2

• Compare with

– Regular tilings

– Random Networks (uniformly distributed)

– Centralized iterative approach

http://robotics.usc.edu/~gaurav 17/72

Regular k-Tilings

• Rr <= 2Rs and large N

• Exact formulas for coverage for k = 0,1,2,3,4,6

http://robotics.usc.edu/~gaurav 18/72

Random Networks

• Uniformly distributed random network – Poisson distribution

• Probability of exactly m nodes in an area S :

1( , ) exp

!

m

P m S SS m

• Degree depends on ρ

• For , find ρ such that

2rS R ( , ) 0.95P m K S

1 exp( )Coverage S

http://robotics.usc.edu/~gaurav 19/72

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 Nnew

3. If Nnew also has min. degree k, N=Nnew

4. If Average_degree < k+2, stop, else goto 2

http://robotics.usc.edu/~gaurav 20/72

Results Rr < 2Rs

http://robotics.usc.edu/~gaurav 21/72

Results Rr = 2Rs

Rr=8, Rs=4, n=49

http://robotics.usc.edu/~gaurav 22/72

Results Rr > 2Rs

http://robotics.usc.edu/~gaurav 23/72

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

http://robotics.usc.edu/~gaurav 24/72

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

http://robotics.usc.edu/~gaurav 25/72

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

http://robotics.usc.edu/~gaurav 26/72

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

http://robotics.usc.edu/~gaurav 27/72

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 LocalizationProceedings of the 2003 IEEE International Conference on Robotics and Automation (ICRA'03), Taipei, Taiwan, May 12 - 17, 2003.

Robot LoopIf no beacon within radio range

deploy beaconElse

move in direction suggested by nearest beacon

Beacon LoopEmit least recently visited direction

http://robotics.usc.edu/~gaurav 28/72

Robot deploys network

Network Deployment

http://robotics.usc.edu/~gaurav 29/72

Environment change

Network extension

Adapting to EnvironmentChange

http://robotics.usc.edu/~gaurav 30/72

Graph Cover Times

• Cover time is a measure of exploration speed

• Random walk is O(n2)– 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

http://robotics.usc.edu/~gaurav 31/72

Path to goalcomputed usingdynamic programming

Robot usesnetwork to navigate

Robot Navigation using the Network

http://robotics.usc.edu/~gaurav 32/72

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

Sensornode

startgoal

start

goal

start

goal

http://robotics.usc.edu/~gaurav 33/72

Robot Navigation Using a Sensor Network

http://robotics.usc.edu/~gaurav 34/72

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

http://robotics.usc.edu/~gaurav 35/72

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.

http://robotics.usc.edu/~gaurav 36/72

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

http://robotics.usc.edu/~gaurav 37/72

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.

http://robotics.usc.edu/~gaurav 38/72

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 wi

• Every node computes a suggested direction of travel for a robot in its vicinity

http://robotics.usc.edu/~gaurav 39/72

In-network Computation

• Events are flooded through the network

• Each node receives an event weight wi

and a hop count hi and computes the following

utility(i) = wi /hi

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)

http://robotics.usc.edu/~gaurav 40/72

Results

• Compare aggregate event on-time for ‘exploration/deployment-only’ mode vs. ‘task-allocation’ mode

http://robotics.usc.edu/~gaurav 41/72

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.

http://robotics.usc.edu/~gaurav 42/72

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

http://robotics.usc.edu/~gaurav 43/72

http://robotics.usc.edu/~gaurav 44/72

http://robotics.usc.edu/~gaurav 45/72

http://robotics.usc.edu/~gaurav 46/72

http://robotics.usc.edu/~gaurav 47/72

http://robotics.usc.edu/~gaurav 48/72

http://robotics.usc.edu/~gaurav 49/72

http://robotics.usc.edu/~gaurav 50/72

http://robotics.usc.edu/~gaurav 51/72

http://robotics.usc.edu/~gaurav 52/72

http://robotics.usc.edu/~gaurav 53/72

http://robotics.usc.edu/~gaurav 54/72

http://robotics.usc.edu/~gaurav 55/72

http://robotics.usc.edu/~gaurav 56/72

http://robotics.usc.edu/~gaurav 57/72

http://robotics.usc.edu/~gaurav 58/72

http://robotics.usc.edu/~gaurav 59/72

http://robotics.usc.edu/~gaurav 60/72

http://robotics.usc.edu/~gaurav 61/72

http://robotics.usc.edu/~gaurav 62/72

http://robotics.usc.edu/~gaurav 63/72

http://robotics.usc.edu/~gaurav 64/72

http://robotics.usc.edu/~gaurav 65/72

http://robotics.usc.edu/~gaurav 66/72

http://robotics.usc.edu/~gaurav 67/72

NIMS Node

http://robotics.usc.edu/~gaurav 68/72

NIMS Node in Action

http://robotics.usc.edu/~gaurav 69/72

Results

0.0 1.0 2.0 3.0 4.0 5.0

0.0

1.5

3.0

4.5

2

12

22

32

42

52

62

72

PAR Value

Horizontal Displacement (m)

Vertical Displacement

(m)

0.0 1.0 2

.0 3.0 4.0 5.0

0.0

1.5

3.0

4.5

271217222732

3742

47

52

RH (%)

Horizontal Displacement (m)

Vertical Displacement

(m)

PAR Humidity

http://robotics.usc.edu/~gaurav 70/72

Extensions

• Dealing with thrashing• Explicit task assignments vs. implicit • Further experiments underwater and in the forest

canopy

http://robotics.usc.edu/~gaurav 71/72

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

http://robotics.usc.edu/~gaurav 72/72

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

http://robotics.usc.edu/~gaurav 74/72

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

http://robotics.usc.edu/~gaurav 75/72

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

http://robotics.usc.edu/~gaurav 76/72

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 rb relative to robot

ra at time t, or the measured change in pose of robot r

between times ta and tb.

Find the set of estimates H that maximizes:

http://robotics.usc.edu/~gaurav 77/72

Approach

Equivalently, find the set H that minimizes:

http://robotics.usc.edu/~gaurav 78/72

Gradient-based Estimation

• Each estimate• Each observation • Measurement

uncertainty assumed normal

• Relative Absolute

),,ˆ( trqh

),,,,,( bbaa trtro

)ˆ,ˆ(ˆ ba qq

)ˆ()ˆ(2

1)|( THoU

http://robotics.usc.edu/~gaurav 79/72

Gradient Descent

U(o|H)μh

μU(O|H)h Oo ˆ

ˆ

•Compute set of poses q that minimizes U(O|H)•Gradient-based algorithm

http://robotics.usc.edu/~gaurav 80/72

SLAM: Simultaneous Localization and Mapping

http://robotics.usc.edu/~gaurav 82/72

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. 1055 - 1060, Wailea, Hawaii, Oct 2001.