Connectivity Awareness in Networked Robotic Systems

chestpeeverIA et Robotique

13 nov. 2013 (il y a 8 années et 3 mois)

399 vue(s)

Connectivity Awareness in
Networked Robotic Systems
Van Tuan Le
∗ † ‡
,Noury Bouraqadi

,Serge Stinckwich
† ‡
,and Victor Moraru

Ecole des Mines de Douai,France,

GREYC,CNRS UMR 6072,Universit´e de Caen,France

AbstractMaintaining the Network Connectivity in Mobile
Multi-Robot Systems (MRSs) is a key issue in many robotics
applications.In our view,the solution to this problem consists
of two steps:(i) making robots aware of the network connectivity;
and (ii),making use of this knowledge in order to plan robots
tasks without compromising the connectivity.We propose a novel
distributed algorithm that will be executed on individual robots
to make robot be aware of the network connectivity (i).We
also rigorously formalize the problem of checking the robustness
of a wireless network based on the conception of Connectivity-
Awareness.The algorithm featured with very low communication
overhead in comparison with existing works.
Index TermsMANET,Multi-Robot Systems,Dynamic
Graph,Connectivity Maintenance.
In our work,we are interested in communication between
robots in a MRS relying on Wireless Network technologies
such as Mobile Ad Hoc Network (MANET) [1].Consider a
robot team being sent out to explore and build the map of
some unkown area.To speed up the exploration,the robots
should spread out as large as possible in the ground.On
the other hand,they must keep in touch with each others
for map sharing (to avoid exploration overlaps).An efcien t
exploration algorithm has to nd out a good compromise
between these two conicting constraints.Each robot has to
plan its moves in a way to remain within the communication
range of its teammates.That is robots should move while
maintaining the the MRS network connectivity.
In our previous work [2],we proposed solution that should
be decomposed into two main steps:(i) making robots acquire
a sufcient knowledge on the network connectivity;and (ii),
exploiting this knowledge in order to preserve the network
connectivity while performing other tasks.We further argue
that the rst step can be viewed as an application-independe nt
abstraction.That is,the awareness of the network connectivity
should be provided to robots as a basic networking service
like routing in MANETs for example.This vision leads to
the distinction between our approach with that of existing
works ([3],[4] for example) tackling issues of maintaining
the network connectivity from application-specic viewpo int.
This paper presents our continuation on this track.As
compared to [2],the contributions in this paper are twofold.
First,a revised version of the algorithm for making robot
connectivity aware that lowers the communication overhead
from O(n
) to O(2n),whilst the view of robot is more com-
plete.Second,a rigorous formalization of robust connectivity
in the network (referred as biconnectivity in [2]) based on
the Connectivity Awareness is introduced.This formalization
sets up a sound theoretical foundation for our novel,and
much more efcient algorithm of verifying the connectivity
robustness of the network.The rest of the paper is organized
as follows.Section II introduces some denitions and set
up the background for upcoming discussions.Section III
presents a distributed algorithm suitable to make robots in
MRS connectivity-aware thanks to a partial knowledge of the
robots network connectivity.The concept of connectivity is
further extended to robust connectivity in section IV.This
extension includes also an efcient distributed algorithm for
critical nodes detection.Section V concludes the paper.
We model a networked robots system by an undirected
graph G = (V,E),where V is the set of robots,each one
has a unique id,in the network,E = V × V.There is an
edge e = {u,v} ∈ E if and only if u and v can mutually
receive each other's transmission,hence {u,v} = {v,u},and
we say u and v are neighbors.The edge is also referred as
a communication link between the two robots.Note that the
graph can change in time as nodes are moving.The term node
is used to indicate a robot,or vice versa interchangeably.
Denition 1 (Communication path).In the graph G,a loop-
free sequence of nodes taking part in the process of relaying
data from u to v is called a communication path,denoted by
p(u,v) = (u
We also write k ∈ p or k 6∈ p to specify that the path p
includes node k or not,respectively.
Denition 2 (Connected graph).A graph G is said to be
connected iff ∀u,v ∈ V,there exists a path p(u,v).
Denition 3 (Referentially Connected Graph).Given a Refer-
ence Node r ∈ V,the graph Gis called referentially connected
iff ∀u ∈ V,u 6= r,there exists a path p(u,r).
Denition 4 (Access Robot and Access Path).Given the
Reference Robot r,and two different robots u,v ∈ V,v
is called an access robot for u iff there exists an edge
e{u,v} ∈ E and there exists a path p(v,r) such that u 6∈ p.
We call p an access path.
Note that the denition 2 and 3 are equivalent.Thus,
providing that the Reference Robot and the access robots are
known,non-reference robots can nd out which neighbors
they should depend on for maintaining the connectivity with
the whole network.We term this knowledge Connectivity-
Awareness and it is materialized as a Connectivity Table (or
Table for short if there is no confusion) stored on robot.This
Table contains a set of access paths representing a partial view
of the network connectivity (See [2] for example on tables).
The main concerns in making robots network connectivity
aware now turn out to be the problems of selecting the
Reference Robot,and building the Tables.The following
section presents our algorithmto build the Connectivity Table.
A.Selecting a Reference Node.
Choosing a Reference Node can be application-dependent
and might involve multiple criteria such as the energy level,
the number of neighbors,hardware requirements,etc.In some
situations the choice might be easier than others,such as
for leader-follower systems,the leader is a good candidate
for becoming the reference;or when the robot team need to
maintain the connectivity with a base station,then the latter
will be chosen to be the Reference Node naturally.Another
option to generalize the approach is to employ a market-like
bidding mechanism to select the Reference Node.
In this paper,we adopt that the Reference Node is chosen
B.Building Connectivity Tables.
Once chosen,the Reference Robot will broadcast to all its
one-hop neighbors a New-Access-Path message,which
encodes the new access path.In the case of the Reference
Node,the access path is composed of its own ID.The access
path also refers to the message's sender as the access robot.
We consider two forwarding message strategies in algorithm
1 and algorithm 2 for building Connectivity Tables.
Proposition 1 (Correctness of algorithm 1).The process of
initializing the network is loop-free,and will terminate within
l steps,where l is the length,in term of hop-count,of the
longest access path in the network.
Proof:On receiving a New-Access-Path message,a
robot extracts the access path encoded in the message's cont ent
(see algorithm 1).By mean of this information,robot is able
to check whether this message has been already received by
itself or not.This check step ensures that the path is loop-
free.If the message has been already processed,it is simply
ignored.Otherwise,robot will add the path to its table and
re-broadcasts a New-Access-Path message (with its own
Algorithm1:Algorithmto be executed upon the reception
of a New-Access-Path message.
Input:The New-Access-Path Message M
Output:The Connectivity Table T of robot is updated
p ← the access path in M;2
if 6∈ p then3
add the path p to the Connectivity Table T;4
update and forward the message to all neighbors;5
ID added to the access path sent along with the message),
to its neighbors.Hence,the message incrementally spreads
out in the network.As long as nodes are reachable from the
Reference Node,they will receive the message and build up
their own Connectivity Table.
For simplicity,we could make assumption that the network
is synchronous,and the process of network initialization
started by the Reference Robot and spreads out in the network
step by step.As there is no loop in its execution,the procedure
will terminate within l step,where l is the length in term of
hop-count of the longest access path.
Proposition 2 (Communication Complexity of algorithm 1).
In the worst case (when the graph is complete),the space
complexity for saving a Connectivity Table,and the message
complexity of the algorithm 1 are both O(n!).
Proof:When the graph is complete,any robot has n−1
neighboring robots.For robot R
,the message issued by the
Reference Robot reaches it through all non-acyclic paths.In a
complete graph,there are such (n−2)![1+
paths.The space complexity for saving the Connectivity Table
is thus O(n!)
Now we count the number of messages.First,the Reference
Robot rst sends out the message to n −1 other robots.The
next step,all n − 1 robots will forward the message to all
their neighbors,hence there are n −1 messages.A message
will stop being forwarded when it gets back to the node that
has sent it out before.Thus,at k
step,there are n −k −1
robots that still send out message.As consequent,we have
totally 1 +(n−1)!messages or in other words,the messages
complexity of the algorithm is of O(n!).
In the algorithm 1,robots retransmit all the non-acyclic
paths they receive.This message forwarding strategy builds
a complete view on individual robot,also introduces a huge
number of messages when the network is highly connected.
It is worth noting that the information stored in the Con-
nectivity Table is to help robot recognize the access robots
among its neighbors.The access paths just serves to avoid
looping in message retransmission and to deal with to mobility
in MRSs [2].Furthermore,we notice that after a robot,namely
,forwards the rst path it receives from robot R
all R
's neighboring robots except R
will receive,continue
Algorithm 2:Algorithm to be executed upon the reception of
a New-Access-Path message.
Input:The New-Access-Path Message M
Output:The Connectivity Table T is updated
p ← the access path in M;2
if 6∈ p then3
add p into the Connectivity Table T;4
if already forwarded two messages then5
if this is the rst message to forward6
OR( 6∈ p) then
firstAccessor ← M's sender;7
mark the path as forwarded;8
update and re-broadcast the message;9
Fig.1.A network conguration that results in an incomplete access
robots list for robots 2.Robot 1 is the Reference Node.
forwarding the message.Thus they should consider R
as one
of their access robot.And because robot R
knows that after
the rst time it forwards a message,R
is not present in the
access path of only robot R
,a second message to forward
is the message whose the access list does not contain R
Therefore,if a robot can become an access node for all of
its neighbors,it needs merely forward two messages.In this
new version (algorithm 2),robots still store all the path they
receive,but only two messages will be forwarded.
Consider the network as depicted ingure 1.The Reference
Robot is robot 1.Then,the Connectivity Table of some robots
should look like in Table I.
Proposition 3 (Communication Complexity of algorithm 2).
The message complexity of the algorithm 2 is 2(n −1) +1,
and there are 2d paths in the Connectivity Table,where d is
the number of robot's neighbors.
Proof:The proposition can be easily proven by arguments
similar to those in the proof of proposition 2.
C.Dealing with Dynamic Topology
Please refer to [2] for details on update mechanism in order
to keep the information in Connectivity Tables coherent with
the actual network conguration.
(a) robot 4's
Access Robots
Access Paths
(b) robot 5's
Access Robots
Access Paths
Number of Robots with
incomplete access list
Network Size
D.Simulation and Discussion
The algorithm 1 builds a complete list of the access robots
for every non-reference robots in the network.However,it
issues a huge amount of messages when the network graph is
complete.In the optimized version,the number of messages
travelling in the network is signicantly reduced,having
message complexity of O(2n).Nevertheless,this precious
reduction comes at the price:the access list of robots is not
ensured to be complete for some cases.For example in the
gure 1,robot 5 might receive and forward two paths (4,2,1)
and (3,2,1) before the reception of any path through robot 6
fromthe other direction,resulting in no any path following the
long path (represented by the curved-dot line) reaches robots
3 or 4.Thus these two robots forward only one path,making
the access robot list of robot 2 incomplete.
In order to nd out the number of robots in network whose
the access list is not completed (referred hereafter incomplete
nodes for short),we realized series of simulations for random
networks with various size (c.f.table II),and different network
density (ranging from 3 to 18).From these simulations,
we can deduce that the ratio of the incomplete nodes on
average (calculated by the median statistics function) is lower
than 10%.Therefore,for many purposes (like multi-robot
exploration presented in [2]),the list built by the algorithm
2 is sufcient.Although,a remedy for this shortcoming is
also proposed in section IV.
Denition 5 (Critical Node and Critical Link).A node u ∈ V,
or a link e ∈ E of the graph Gis critical if its removal fromthe
graph will disconnect the graph into two connected subgraphs
or more.Otherwise,it is called non-critical.
Denition 6 (Robust Connected Network).A wireless net-
work is said to have a robust connectivity ⇔ ∀u ∈ V,u is
non-critical,and ∀e ∈ E,e is non-critical.
For referentially connected graph G with the Reference
Robot r,let N(v) be the set of the neighboring robots of
robot v,A(v) ⊆ N(v) be the set of access robots,and
NA(v) ⊆ N(v) the set of non-access robots of robot v.
Proposition 4.Any non-reference node u ∈ V is critical ⇔
A(u) ⊂ N(u).
Proof:Firstly,note that A(u) ∩ NA(u) = ∅ and A(u) ∪
NA(u) = N(u) by denition.
Now,if node u is critical,then its removal from G will
disconnect some other nodes in NA(u) with the Reference
Robot.That is,NA(u) 6= ∅,or A(u) ⊂ N(u).
If A(u) ⊂ N(u) and suppose that node u is not critical,then
after its removal,the nodes in NA(u) 6= ∅ are still connected,
meaning that these nodes have other access node than u.Thus
node u can consider these nodes as its access nodes.This leads
to a contradiction with the hypothesis.Therefore,node u is
Proposition 5.Any link e(u,v) ∈ E is critical ⇔A(u) = {v}
or A(v) = {u}.
Proof:If e(u,v) ∈ E is a critical link,then when the
link is broken,either node u or v will be disconnected from
the reference node.If the disconnected node is u,then u must
have no other access robot than v (A(u) = {v}).Likewise,if
the disconnected node is v,then A(v) = {u}.
In the case where A(u) = {v},then the breakage of this
link will separate the nodes connecting to the reference node
through u from the sub-component with the reference node.
Therefore,e(u,v) is a critical link.Similarly for the case
where A(v) = {u}.
These two propositions with the so-called referentially con-
nected set up a sound theoretical foundation for an efcient
criticalness detection.The next subsections will introduce
our proposed algorithm for criticalness detection in wireless
A.Completing the Access List
The algorithm 2 does not ensure that the access list is
completed.However,this completion is required in order to
apply the propositions presented in section IV in critical node
detection.To overcome this shortage,rst we note that if th e
access robots list on one node is incompleted,that is because
of some of its neighbors did forward only one path.The
solution for completing the access list should be solved with
such neighbors.
We make use of a mechanism similar to the RREQ (Route
Request) and RREP (Route Reply) in the DSR routing proto-
col [5] to complete the access list.After the reception of the
rst New-Access-Path message,robot will wait for a pe-
riod of time (dened by Complete-Waiting-Time-Out
constant).When the time out passed and if the list
has not yet been completed,robot will send a message
Complete-Request to its neighbors from whom it has
received only one New-Access-Path message.
The Complete-Request message contains:
• The id of the message used to avoid the duplication in
processing the same request.
• A reverse path begining with the id of the original
message's issuer.When it is forwarded by a robot,the
sender's id will be added to the path.
Upon the reception of a Complete-Request message,
if the message is already treated (robot recognizes this by
mean of the id of the message and those it has stored),the
message will be ignored.Otherwise,robot looks up in its
table to nd a path that does not go through any node in the
reverse path,if found,it broadcasts a Complete-Response
message that contains the complementary path.On receiving
a Complete-Response message,a robot will add the
complementary path to its table.If its ID is in the reverse
path,it will remove the ID from this path and add it to the
complementary path.Then,it will forward the message with
the updated paths (i.e.the complementary path and the reverse
path).This solution is fruitful with least extra message.
B.Checking the Connectivity Robustness
The criticalness determination of any non-reference robot is
based on the two propositions 4,and 5 (in section IV).For the
reference node,after sending the rst New-Access-Path
message,it will receive and register all the paths back from
its neighbors.From these paths,the reference node constructs
a graph and deduces that whether it is critical or not.Now the
detection of critical nodes in network can be carried out simply
by waiting for some period of time so that the knowledge
converges to the stabilized status,and then apply the above-
proven propositions to identify the critical nodes.
We presented in this paper a novel approach toward main-
taining the connectivity in networked robotics system.The
knowledge on the connectivity is built by mean of a distributed
algorithm which results in very low communication overhead.
The theoretical results of this paper have been conrmed
by simulation of various robot network congurations.Fur-
thermore,in the proposed solution we consider the con-
nectivity awareness as a separated concern.This abstraction
can be (re)used in various robotic applications with different
application-dependent strategies for connectivity maintenance.
[1] C.Perkins,Ad Hoc Networking.Addison-Wesley,2001.
[2] V.T.Le,N.Bouraqadi,S.Stinckwich,V.Moraru,and A.Doniec,
Making networked robotic connectivity aware, in Proceeding of IEEE
International Conference on Robotics and Automation (ICRA09),2009, appear.
[3] W.Sheng,Q.Yang,J.Tan,and N.Xi,Distributed multi-r obot coordi-
nation in area exploration, Robotics and Autonomous Systems,vol.54,
no.12,pp.945955,Dec 2006.
[4] M.N.Rooker and A.Birk,Multi-robot exploration under the constraints
of wireless networking, Control Engineering Practice,vol.15,no.4,pp.
[5] D.B.Johnson,D.A.Maltz,and J.Broch,DSR:The Dynamic Source
Routing Protocol for Multi-Hop Wireless Ad Hoc Networks.Addison-