Distributed Algorithms for Guiding Navigation across a Sensor Network Qun Li, Michael DeRosa, and Daniela Rus Dartmouth College MOBICOM 2003 Issue Find an optimal path to guide a user through a region or to a goal, and avoid dangerous area through cooperation among sensors Sensors in dangerous area Overview of the proposed solution Basic idea Model detected dangerous events as obstacles in dynamic robot motion planning problem Static robot motion planning problem Guiding a robot from a source to a destination location while avoiding all encountered obstacles Dynamic robot motion planning : Dynamic path planning is required when only partial a priori information is available about the obstacles, and the environment is unpredictable and time-varying Overview of the proposed solution Apply potential field theory to the navigation problem The goal has the lowest potential to attract moving object (attractive force) Obstacles (area with detected danger) raise potential values to repulse moving object (repulse force) Moving object follows the gradient of the artificial potential field (from high potential level to low potential level) Design issue: local minima Some specific types of potential function, e.g., harmonic function, are used to avoid local minima repulse force attractive force Areas of detected dangerous events in a (100,100) grid Artificial potential field Algorithm Algorithms to solve the navigation problem Algorithm 1: establish potential field according to the detected dangerous events in the network Algorithm 2; establish potential integration field toward the goal Guarantee no local minimal Algorithm 3: guide moving object’s next step movement based on gradient of the potential field established through Algorithm 2 Assumption Distance between sensors are measured through hop-count The moving object is equipped with a device that can talk to the field sensors The moving object queries the nearby sensors for next moving direction periodically Sensors know their location All sensor has the same transmission range R Sensors detect information of dangerous event in the area they cover E.g. a sensor detect high temperature caused by fire in the nearby area Algorithm 1: Potential Field Algorithm 1: establish an artificial potential field based on detected dangerous events Three steps of Algorithm 1 1. 2. Broadcast of initial potential value (max) from source sensors detecting danger Update of received potential values at the neighbors based on hop distance to the source The potential value received at sensor i from a source j is inverse of the square of the shortest hop distance from i to j Potential = 1 2 hop 3. Potential values from all sources are added up at each sensor i Flooding of received potential values with updated hop distance at each hop Algorithm 1: Potential Field (1) Source ID= B (2) Potential = Hop count=0 1 hop 2 EX: hopB=hop+1 = 0+1=1 potB=1/(hopB)2=1 Node ID Potential potC= potC+ potB=0+1=1 (A , 0) (B , 0) (C , 0) (D , 0) (E , 0) (F , 0) (D , 0) (E , 0) (F , 0) (D , 0) (E , 1) (F , 0) (G , 0) (H , 0) (I , 0) (G , 0) (H , 0) (I , 0) (G , 0) (H , 0) (I , 0) (B , 0) (C , 0) fire goal goal (a) Initial phase (A , 1) (A , 0) (A , 1) goal (b) one-fire event detected (B , max) (C , 1) From node C: (B , max) (C , 1) (c) (A , 1) (B , max) (C , 1) (E , 1) (F , 1/4) (H , 1/4) (I , 1/9) hopB(C)=hop(C)+1 = 1+1=2 (D , 1/4) (G , 0) (E , 1) (F , 1/4) (H , 1/4) (I , 0) potB(C)=1/(hopB(C))2=1/4 From node E: hopB(E)=hop(E)+1 = 1+1=2 potB(E)=1/(hopB(E))2=1/4 (D , 1/4) (G , 0) goal goal (d) potC= potC+ min(potB(C), potB(C))= 0+1/4=1/4 (d) Final Example : Two Fire Event (A , 1) (B , max) (A , 1) (C , 1) (B , max) EX: (C , 1) hopI=hop+1 = 0+1=1 (D , 1/4) (G , 0) (E , 1) (H , 1/4) (F , 1/4) (E , 1) (D , 1/4) (I , 1/9) (G , 0) potI=1/(hopI)2=1 (F , 5/4) potF= potF+ potI=1/4+1=5/4 (H , 5/4) (I , max) goal goal (a) (A , 1) (D , 1/4) (G , 0) (b) (B , max) (C , 5/4) (A , 1) (E , 5/4) (F , 5/4) (D , 13/36) (H , 5/4) (G , 0) (B , max) (C , 5/4) (E , 5/4) (F , 5/4) (H , 5/4) (I , max) (I , max) goal goal (c) (A , 17/16) (B , max) (D , 13/36) (E , 5/4) (G , 0) (H , 5/4) (F , 5/4) (I , max) goal (d) (C , 5/4) (d) Algorithm 2: Potential Integration Field Algorithm 2: establish potential integration field according to the attraction potential values from the goal G Basic steps of Algorithm 2 1. 2. Broadcast an initialization potential value from the goal sensor G Update each neighbor’s potential value to G A sensor i’s potential value to G is the minimum sum of the potential value potk (established through Algorithm 1) of all nodes on a path from g to I Pg i 3. pot k kp all path p from g to i all node min Flooding the potential value to G to the whole network with updated hop distance at each hop Algorithm 2: Potential Integration Field (A , 1) (B , max) (C , 1) 1/4 (D , 1/4) (G , 0) (E , 1) (F , 1/4) (H , 1/4) (I , 1/9) 1/4 goal (G,G,0,0) PG = received potential + potH = 0+1/4 = 1/4 (b) goal (a) Potential field EX: Goal ID Sender ID Hop count Potential Algorithm 2: Potential Integration Field 5/4 1/4 1/4 5/4 EX: 1/4 1/4 goal PG = received potential + potI = 1/4+1/9 = 13/36 goal (b) 13/36 (c) 58/36 5/4 5/4 EX: 1/4 5/4 22/36 1/4 From node I : 13/36 + 1/4 = 22/36 5/4 22/36 From node E: 5/4 + 1/4 = 6/4 1/4 13/36 1/4 PG = min( 22/36, 6/4) = 22/36 goal goal (d) (e) 13/36 Algorithm 2: Established potential field to target location: goal Artificial potential field established by Algorithm 1 Potential field to goal (80,20) established by Algorithm 2 Algorithm 3: guide the moving object to the goal G The moving object queries the nearby sensors with the goal G Sensors respond with their potential to G (PG), the predecessor priorG, and the hop distance to G (hopG) The moving object chooses the location of priorG with minimum PG and hopG as the next step First choose based on minimum Pg, then use minimum hopg to break ties Improvements to the basic algorithms The basic algorithms assume bi-directional links (e.g. the reverse link to priorg) Solution: each sensor purges unidirectional communication links Sensors keep history of how frequently they receive messages from a neighbor and only keep the links with high frequency Reducing the flooding message Solution: each sensor wait for sometime before rebroadcasting a message out in algorithm 1 and 2 Since only the message with minimum hop distance in Algorithm 1 and the message with minimum potential value to g in Algorithm 2 are necessary to be re-broadcast, allow sensors to wait for the “minimum” message will reduce the message flooding Validation of correctness There is no local minima that will stuck the object Since the potential Pg at sensor i is actually Pg i min pot k all path p from g to i all node kp Proof: for any node k other than g, suppose prior(k) is the sensor that is the predecessor on the minimum path from g to k, Pg = Pprior(k) + potk, where potk> 0. Therefore, for any node k, there at least exist a neighbor prior(k) that has a lower potential to g. Error in distance measurement Assumption used in the algorithm: hop distance = physical distance Analysis model Assume that the neighboring sensor that can make the most progress toward the destination is chosen to be the next hop for routing. Suppose the sensors are deployed as two-dimensional Poisson distribution with density Goal : Find the average progress in each hop S1 See the figure below, assume S is the sender and D is the destination node. The area Probability for a sensor at location A to be chosen as the next hop (1) there is no node to the right of A P1 = probability that no sensors exist in S1 (2) There must be at least one node in that square area P2 = probability that at least one sensor exist at location A 1-e(-N) ~ N as N0 S1 R=2 l-E[l’] R=1 Experiment results Experiment configuration Mote MOT300 series Atmel ATMEGA103 (4Mhz, 128KB memory, and 4K RAM) processor 4Mbit flash memory (storage) RF Monolithic 916.50Mhz transceiver (TR1000) with transmission range at 9 inch TinyOS operating system Sensing units: A photo sensor, a power sensor, and a sound sensor obstacle goal 1. 2. 1 Time for a source to send the obstacle info to the whole network Time for all the sensors to obtain the shortest distances to dangerous sources 3. Time to send the goal info to the whole network 4. Time for all sensors to find their safest paths to the goal 2 3 4 1 2 3 4 The response time : the period from the time when the topology change occurs to the time when the user finds the path to the goal.
© Copyright 2025 Paperzz