Top Banner
The Design and Analysis of an Efficient Local Algorithm for Coverage and Exploration Based on Sensor Network Deployment Maxim A. Batalin, Gaurav S. Sukhatme Presented by: Shawn Kristek
31

Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Dec 14, 2015

Download

Documents

Osborn Henry
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

The Design and Analysis of an Efficient Local Algorithm for

Coverage and Exploration Based on Sensor

Network DeploymentMaxim A. Batalin, Gaurav S. Sukhatme

Presented by: Shawn Kristek

Page 2: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

A robot has networked sensor nodes that it can deploy. These static nodes then suggest the least recent direction taken when visited.

i.e. An intelligent breadcrumb trail for robots

The Basic Idea

Page 3: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithmAnalysisSimulationsImplementationConclusions

Outline

Page 4: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithmAnalysisSimulationsImplementationConclusions

Outline

Page 5: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Quick FactsGoals

Coverage Exploration

Based on the deployment of static, communication-enabled, sensor nodes

No localization or mapsUnlimited active nodes assumed

Problem Definition

Page 6: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

The NodesHeart of this workSimple computation

Sensing Small Processor

Simple communication Limited range radio

Forms a sensor network / support infrastructure – the breadcrumb trail

Problem Definition

Page 7: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

The robotUses the nodes to solve the coverage

problemOnly uses local data from closest nodeGoal is to visit least recently visited (LRV)

node

Problem Definition

Robot visiting/dropping node

Forward moving robot

Page 8: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithm

AnalysisSimulationsImplementationConclusions

Outline

Page 9: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

R = receive NODE_INFO messages from nodes in vicinity

if out of SHORT communication range with n then (nclosest, dclosest ) = node and corresponding direction in R with largest signal strength

if n ≠ NULL then

Send(UPDATE_DIR, nclosest, dclosest )Send(UPDATE_DIR, nclosest, Opposite(dclosest ))

else

deploy sensor node n ' with suggested direction d '

(nclosest, dclosest ) = (n ‘, d ‘)

if no obstacles detected in direction dclosest (n ,d ) = (nclosest, dclosest )

else

Send(UPDATE_DIR, nclosest , dclosest )Wait for response, repeat the check

if moving and obstacle detected ≤

OBSTACLE_AVOIDANCE_RANGE then

if obstacle is large and no nodes in vicinity

deploy sensor node n‘ with suggested direction d ‘ (n ,d ) = (n ‘, d ‘)

if obstacles detected in direction d then Send(UPDATE_DIR, n, d ) Wait for response, repeat the check

else

avoid the obstacle

if d = NULL then

Move in direction d

Algorithm

n, d – current node and suggested direction

R – set containing data received from nodes in robot’s vicinity (node id, signal strength, suggested direction);

SHORT – communication range threshold used to determine when to deploy new nodes;

Opposite(d) – function returning direction opposite to d

Robot

Page 10: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Repeat:

if received UPDATE_DIR message from robot with direction dupdate then

W (dupdate ) = W (dupdate ) +1

Send(NODE_INFO, n, ANY_OF(arg min∀ d Є D( i ) W (d )) )

Algorithm

n, d – current node and suggested direction

D(i)– set of direction incident to node i, the possible directions

W(d) – number of times direction d traversed from this node

ANY_OF(G) – function returns member of set G according to arbitrary rule; ex. ordered, or random

Node

What it does:Waits for updates and sends directions, based on updates.

Page 11: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

LRV in Action Initially no nodes

- Robot starts by deployinga node

Next nodes deployed arenetworked to at least one other node

This continues indefinitely or until no new nodes are required

The robot then continually covers the environment

Algorithm

Page 12: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithm

AnalysisSimulationsImplementationConclusions

Outline

Page 13: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Graphs

Trees

Lattice

Note: The algorithm uses none of these. This is for analysis only.

Analysis

Page 14: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

On GraphsTreat nodes as the vertices of a graph even

though no explicit adjacency lists are maintained at each node

Analyze the steady state

Analysis

n – current node the robot is atn’ – next node; the node the robot transitions to

while Cover/Explored the graph = FALSE don’ = ANY_OF(argmin j∀ ϵE(n) W(n, j ))W(n, n’ ) := W(n, n’ ) +1n := n’

Page 15: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

On TreesComplete

The least weight edge is selectedTrees - graphs without cycles

Exploration time Θ(2|E|) or Θ(n)

Analysis

Page 16: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

On a LatticeSpecial case graphWhy is this applicable?

- Implementation utilizes compass with k bits and 2k directions

- Analyze case of several equal W(e)

Analysis

Page 17: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

What they found for a Square LatticeLRV coverage O(V1+Є)

Analysis

Page 18: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

More ComparisonLRV1-LRTA*DFS

Analysis

n – current node the robot is atn’ – next node; the node the robot transitions to

while Cover/Explored the graph = FALSE don’ = ANY_OF(argmin j∀ ϵE(n) W( j ))W(n) := W(n’) +1n := n’

Page 19: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Convergence SpeedRWLRV1-LRTA*

Analysis

Page 20: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Square Lattice Assumptions DFS

All resources available- Nodes- Map- Localization- Perfect navigation

Limited number of simple nodes 1-LRTA*

Graph exploration algorithm Not purely local

Analysis

Page 21: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

On a Cube Lattice

Analysis

Page 22: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Cube/Square LatticeOrdered selection instead of randomTie breakers – optimal time more likely

Analysis

1

2

3

4

Circle

1

23

4

Line

1 2

3

4

Cross

Page 23: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Effects of Order Choices – Cover Time Maps

Analysis

Random Cross

Line

Circle Circle

Darker – more time

Page 24: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithmsAnalysis

SimulationsImplementationConclusions

Outline

Page 25: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Follows Problem DefinitionPlayer / StagePioneer 2DX robots

1.5m,180˚ fov planar laser range finder Wireless communication

Simulations

Differences: Cover time – laser Noise

Page 26: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithmsAnalysisSimulations

ImplementationConclusions

Outline

Page 27: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Nodes Recommend direction The four cardinal directions; i.e. 2 bit compass Each direction - OPEN or EXPLORED OPEN first

Implementation

T – binary state (OPENED, EXPLORED)C – counter for a directionE – possible additional information

Page 28: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

RobotBehavior-based decisions

Obstacles Node locations Node recommendations

Implementation

Page 29: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Problem DefinitionAlgorithmAnalysisSimulationsImplementation

Conclusions

Outline

Page 30: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.

Feasible applications Network repair/maintenance

Questionable Comparisons Graph algorithms???

Overall good results/ideas Coverage times less than O(n ln n) Self healing – dead nodes replaced Simple

Conclusions

Page 31: Maxim A. Batalin, Gaurav S. Sukhatme Presented by:Shawn Kristek.