[ieee 2012 ieee international conference on automation, quality and testing, robotics (aqtr 2012) -...

6
Simulation-Based Evaluation of Robot and Wireless Sensor Network Interaction Gheorghe Sebestyen-Pal, George-Daniel Rus Computer Science Department Technical University of Cluj-Napoca Cluj-Napoca, Romania Emails: [email protected] , [email protected] Abstract - The main goal of the present research is to analyze the interaction scenarios between an autonomous vehicle or robot and a wireless sensor network. This paper presents the design solutions and experimental results for two problems: autonomous navigation guided by a sensor network and environmental data acquisition using a moving robot. In order to evaluate different scenarios and algorithms a simulation application was developed. The application allows random or manual definition of environmental scenarios and implements different algorithms for navigation and data acquisition. The results can be analyzed through a graphical user interface. The application may be used to model and evaluate a given real scenario or to test new algorithms in a randomly generated environment. Keywords - wireless sensor network; navigation algorithms; simulation; robot localization and movement I. INTRODUCTION In the latest years, intensive research activity was performed in the field of wireless sensor networks and autonomous navigation. In the field of wireless sensor networks a great number of communication protocols, routing strategies and embedded hardware solutions were developed. The main objectives were to reduce power consumption and increase the lifetime of the network, to assure informational coverage of a given area, to implement very small, low price and long life sensor nodes or to assure fault tolerance in a harsh environment. In the field of autonomous driving and navigation, the research was focused toward multi-sensorial systems’ fusion in order to obtain higher quality localization and navigation. Today, moving robots or autonomous cars use stereo vision, ultrasound sensors, infrared detectors and GPS receivers in order to identify the elements of a given scenario and to find the optimal path for achieving a given goal. Our goal is to combine the two fields (wireless sensors and robots) in order to find new solutions for navigation and data acquisition. The complexity of the problem is given by the high number of variables which must be taken into consideration, such as: the variety of the environment conditions, the random distribution of sensors, RF propagation conditions or imprecise control of robot movement. Therefore, an analytical approach that takes into consideration all the variable aspects of a given scenario is in most cases unfeasible. For this reason, we considered that a simulation-based approach is a better solution. Rather than obtaining a mathematically optimal solution, we intend to find a reasonable solution for a given problem. In our research, we tried to combine some results reported in a number of articles. Regarding distribution of nodes, in order to maximize the covered area, the authors of [1] take into consideration the idea of potential fields. In this case, onto each node a force F is applied, represented by the gradient of a potential field U. This potential field is divided in two components: a field that is acting upon another nodes, and a field which acts onto obstacles. Authors of paper [2] present an implementation of the localization and navigation problem using the idea of collaboration between the autonomous robot and the nodes of the network. The paper presents a probabilistic approach for the navigation problem. The problem of monitoring an unfriendly environment is treated in [3]. In this case the nodes are mobile robots which communicate with the other nodes through a wireless multi- hope network. Another issue analyzed in our paper was the environmental data gathering using a scenario with a moving robot and a wireless sensor network. Our research was focused toward the evaluation of algorithms regarding optimal path generation. Similar approaches may be found in [8,10]. The rest of the article is organized as follows: the next chapter presents the theoretical background and the modeling aspects of the analyzed scenarios; chapter III presents the implementation issues and solutions and chapter IV contains some experimental tests and results; the last chapter presents the conclusions regarding our work and some future research directions. II. SIMULATION SETUP In order to evaluate different scenarios in which moving robots and wireless sensor nodes are involved we developed a simulation platform. This platform covers the following main functionalities: automatic or pseudo-random environmental scenarios generation

Upload: george-daniel

Post on 18-Mar-2017

216 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: [IEEE 2012 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR 2012) - Cluj-Napoca, Romania (2012.05.24-2012.05.27)] Proceedings of 2012 IEEE International

Simulation-Based Evaluation of Robot and Wireless Sensor Network Interaction

Gheorghe Sebestyen-Pal, George-Daniel Rus Computer Science Department

Technical University of Cluj-Napoca Cluj-Napoca, Romania

Emails: [email protected], [email protected]

Abstract - The main goal of the present research is to analyze the interaction scenarios between an autonomous vehicle or robot and a wireless sensor network. This paper presents the design solutions and experimental results for two problems: autonomous navigation guided by a sensor network and environmental data acquisition using a moving robot. In order to evaluate different scenarios and algorithms a simulation application was developed. The application allows random or manual definition of environmental scenarios and implements different algorithms for navigation and data acquisition. The results can be analyzed through a graphical user interface. The application may be used to model and evaluate a given real scenario or to test new algorithms in a randomly generated environment.

Keywords - wireless sensor network; navigation algorithms; simulation; robot localization and movement

I. INTRODUCTION In the latest years, intensive research activity was

performed in the field of wireless sensor networks and autonomous navigation. In the field of wireless sensor networks a great number of communication protocols, routing strategies and embedded hardware solutions were developed. The main objectives were to reduce power consumption and increase the lifetime of the network, to assure informational coverage of a given area, to implement very small, low price and long life sensor nodes or to assure fault tolerance in a harsh environment.

In the field of autonomous driving and navigation, the research was focused toward multi-sensorial systems’ fusion in order to obtain higher quality localization and navigation. Today, moving robots or autonomous cars use stereo vision, ultrasound sensors, infrared detectors and GPS receivers in order to identify the elements of a given scenario and to find the optimal path for achieving a given goal.

Our goal is to combine the two fields (wireless sensors and robots) in order to find new solutions for navigation and data acquisition. The complexity of the problem is given by the high number of variables which must be taken into consideration, such as: the variety of the environment conditions, the random distribution of sensors, RF propagation conditions or imprecise control of robot movement. Therefore, an analytical approach that takes into consideration all the variable aspects of a given scenario is in most cases unfeasible. For this reason, we

considered that a simulation-based approach is a better solution. Rather than obtaining a mathematically optimal solution, we intend to find a reasonable solution for a given problem.

In our research, we tried to combine some results reported in a number of articles. Regarding distribution of nodes, in order to maximize the covered area, the authors of [1] take into consideration the idea of potential fields. In this case, onto each node a force F is applied, represented by the gradient of a potential field U. This potential field is divided in two components: a field that is acting upon another nodes, and a field which acts onto obstacles. Authors of paper [2] present an implementation of the localization and navigation problem using the idea of collaboration between the autonomous robot and the nodes of the network. The paper presents a probabilistic approach for the navigation problem.

The problem of monitoring an unfriendly environment is treated in [3]. In this case the nodes are mobile robots which communicate with the other nodes through a wireless multi-hope network.

Another issue analyzed in our paper was the environmental data gathering using a scenario with a moving robot and a wireless sensor network. Our research was focused toward the evaluation of algorithms regarding optimal path generation. Similar approaches may be found in [8,10].

The rest of the article is organized as follows: the next chapter presents the theoretical background and the modeling aspects of the analyzed scenarios; chapter III presents the implementation issues and solutions and chapter IV contains some experimental tests and results; the last chapter presents the conclusions regarding our work and some future research directions.

II. SIMULATION SETUP In order to evaluate different scenarios in which moving

robots and wireless sensor nodes are involved we developed a simulation platform. This platform covers the following main functionalities:

• automatic or pseudo-random environmental scenarios generation

Page 2: [IEEE 2012 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR 2012) - Cluj-Napoca, Romania (2012.05.24-2012.05.27)] Proceedings of 2012 IEEE International

• user defined scenarios definition and evaluation

• simulation of different navigation algorithms on given scenarios

• simulation of data acquisition strategies

• graphical representation of simulation results

A simulation scenario is composed of the following elements:

• sensor nodes connected through a wireless network

• a robot with moving, navigation and wireless communication capabilities

• physical obstacles that limit the wireless transmission or the movement of the robot

A sensor node is a microcontroller-based small device that measures one or more environmental parameters (e.g. temperature, pressure, humidity, etc.) and transmits the acquired information through radio transmission. The transmission area of a node is circular, with a radius that depends on the RF power of the emitting circuit. This power is a configuration parameter for the node. Some physical obstacles, present in a scenario such as a forest, lake or a mountain region, may limit the transmission (coverage) area.

If during an automatic scenario generation, a node is dropped in a lake, its functionality is compromised (it does not emit or receive messages). If the node is nearby a forest, the transmission range is limited and if it is in a mountain region, the transmission radius is progressively reduced with the altitude.

In order to assure communication between nodes their coverage range should intersect. A communication between any two nodes or a node and a robot is possible if between them a chain of nodes with intersecting areas exists.

Besides the values measured through sensors, a node may transmit also some information regarding its internal state (e.g. intensity of the receiving RF wave, level of the power supply, quantity of information gathered from the last reading, etc.). This data may be used in the implementation of the communication protocol or in the navigation and data acquisition strategy of the robot.

We also suppose that every node can determine its own position. In practice, this information may be given (e.g. nodes are placed manually), it can be obtained using a GPS receiver or by measuring the transmission intensity of the neighbor nodes. The last solution is less precise and it requires a higher density of nodes on the same area.

For a given environmental and sensor distribution scenario the simulation module tries to build a graph that connects all the nodes of the system in a single network. The logical connections between nodes are established in accordance with the routing rules of a given protocol. The user may select from a number of available routing strategies.

In order to make the simulation more realistic the graph is built step by step through communication between nodes and not considering a globally known nodes distribution.

The robot or autonomous vehicle can communicate with the sensor nodes through the same wireless protocol. In our setup, the robot is a special node in the network, which can formulate requests to the sensor nodes in order to identify the existing scenario. It may request the nodes’ sensing capabilities, position or transmission range. The robot may also play the role of an access point in case of a data acquisition scenario. The environmental data acquired by sensor nodes are downloaded into the robots’ storage.

In our approach, we suppose that the robot can move freely in any direction as long as there is no obstacle in the selected direction. Usually the navigation strategy tries to find the shortest path so that all the time or most of the time the robot can communicate with at least one node (e.g. it is in the transmission range of a node). This requirement is imposed in order to establish an approximate position of the moving robot.

The robot can determine its actual position based on the movements made and on the connectivity with the nodes. For a more realistic simulation, we consider that there is a small random deviation between the movement commands given to the robot and its actual movement. In practice, this deviation is caused by the fact that the robot may slip on the terrain or the movement control is not perfectly accurate.

The last components of the simulation scenario are the obstacles. These elements are regions in the simulation area where some restrictions or limitations are imposed. Some regions limit the transmission range, others the movement of the robot or both. In our experiments, we considered the following obstacles:

• regions with water (lake, river) – where the nodes dropped in are invalidated, but no transmission limitation occurs for nodes near but outside the region

• region with forest – where the movement of the robot is denied and the transmission range is cut

• region with mountain – where the transmission range is reduced in correlation with the altitude

The simulation platform is composed of a number of reconfigurable modules. Every module implements a given functionality of the system. In order to test multiple scenarios and algorithms for the same functionality we implemented a number of modules. In a given simulation scenario we use a sensor distribution module, a network infrastructure generation module, a robot positioning module, an automatic navigation and localization module and a number of data acquisition tasks. Fig. 1 presents the logical structure of a simulation scenario setup.

In order to reduce the execution time of the simulation a number of approximations were made. We consider that the simulation space and time is discrete. The positioning of nodes and the movements of the robot are related to a grid, which has a minimum step. The resolution for node positioning and robot movement may be different (e.g. the last one may have a

Page 3: [IEEE 2012 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR 2012) - Cluj-Napoca, Romania (2012.05.24-2012.05.27)] Proceedings of 2012 IEEE International

higher resolution). The number of simulated nodes is now limited to 50 mainly because of graphical visibility, but it may be extended.

A possible simulation scenario is presented in Fig. 6. The simulation process considers lakes, mountains and forests as elements of the environment that may influence the navigation through the considered area.

One may observe that the nodes situated into the lake have no signal emission, and the ones located onto the mountain have the intensity range reduced. A possible goal of a robot is to go from a point A to a point B using most of the time the connectivity of the sensor network.

Figure 1. Process Block Diagram

III. IMPLEMENTATION ASPECTS

A. Environment Map Generation The first step of a simulation is the generation of

environment elements, such as: forests, lakes and mountains. These elements are treated as shapes that cover part of the map.

Figure 2. Shape Generation Diagram

Through the graphical interface, and using specialized tools, the user specifies different types and shapes of regions. The graphical engine, based on the user’s specification builds a structural representation of the environment. This

representation is rendered in order to display the specified elements onto the screen (Fig. 2).

The map generation process determines the usable range of the nodes with respect to the elements of the environment. The area covered by nodes is computed with a procedural module, which transmits the results to an encoding system and to a map generation module.

The representational model of the map is created and represented onto the user interface.

B. Nodes Deployment (distribution) Deployment of the sensor nodes may be done in two

modes: automatic and manual; in the last case the user manually selects the location where the nodes will be deployed.

Automatic deployment consists in implementing an algorithm that will simulate a custom distribution of the nodes such as the coverage area to be maximized. The process tries to reproduce a natural distribution, in order to obtain as realistic as possible results.

The node distribution is a combination between a raster (grid) positioning and random positioning approach. The first step is to generate a grid of possible positions for nodes. The number of intersections in the grid is slightly greater than or equal to the number of nodes that must be deployed. A random function will select the positions for the nodes. Then in the second step the position of every node is altered on two directions (x and y) with an amount computed as a random number between 0 and half the distance between the intersections of the grid. This kind of node distribution corresponds to the real case when the nodes are randomly spread on a given area. For a uniform distribution the second step may be repeated. The representation of the map is combined with the results of the node deployment module, resulting into a structure that will be rendered by the graphical engine.

C. The Navigation System The robot must determine an acceptable path between a

starting position and a final one. We consider an acceptable path one that minimizes the length of the path and assures connectivity with nodes (all the time the robot will “see” at least one node).

Figure 3. Navigation System Diagram

Page 4: [IEEE 2012 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR 2012) - Cluj-Napoca, Romania (2012.05.24-2012.05.27)] Proceedings of 2012 IEEE International

The inputs of the navigation module are represented by the start position, desired destination, and a navigation method. In the present implementation the simulator supports two navigation methods: direct navigation and maximum intensity based navigation. After the initialization of the navigation system, the areas covered by RF transmission are computed. The regions where the robot has no access are eliminated. For example, it is hard for the robot to navigate through a forest and impossible in case of a lake. Then, for each node the module will determine points of interest from the curves describing the usable signal range of the nodes, in order to detect which are the optimal ones for the navigation. All the information is transmitted to the navigation unit that will process the optimal navigation path.

Based on the nodes’ coordinates, denoted by Point(xp, yp), and transmission intensity (an integer value) the navigation module computes the range curves and the usable range curves (denoted rangeCurve and nodeUsableRangeCurve in the algorithm description). These data structures store information in order to generate geometrical curves represented onto the graphical interface. The usable range curves are obtained from the range curves by subtracting the regions that represent obstacles. Given the resulted geometrical shape, the algorithm will retain those points from the geometrical structure that correspond to the selected navigation method. For example, in the case of Maximum Intensity Based Navigation method, described in the following algorithm, if there are no obstacles between the last coordinates of the robot position and the destination sensor node, it will consider only the points from the geometrical line connecting robot position coordinate and sensor node coordinate. In the case of Direct Navigation method, described in section D, the points considered will be along the geometrical shape generated by the algorithm such that the energy transfer is minimized, and the obstacle avoidance is maximized.

The following pseudo code describes the algorithm used for determining the sensor node points of interest:

ComputeNodePointsOfInterest Point p := nodeCoordinate Integer intensity := computeNodeIntensity Curve rangeCurve := generateNodeIntensityCurve Curve nodeUsableRange := null If rangeCurve is intersecting (LakeCurve or MountainCurve or ForestCurve) Then nodeUsableRange := rangeCurve substract area intersecting (LakeCurve or MountainCurve or ForestCurve) Else nodeUsableRange := rangeCurve List nodeValidPoints := points from nodeUsableRange and points delimitated by the nodeUsableRange nodeValidPoints := remove the points that do not correspond to the selected navigation method End ComputeNodePointsOfInterest

Computation of the navigation path makes use of the points of interest generated by the algorithm described above.

The first step of the process generates a list of sensor nodes, representing the shortest path between a start position and a

final one. This strategy is based on the fact that all the time the robot must be guided by at least one node. This path is generated taking into account the connections between nodes. A connection is established if the range of Sensor Node A is intersecting with the range of Sensor Node B. The algorithm checks if there is a path between any two nodes. In this way, the algorithm generates a weighted graph. The weight of an edge is given by the distance between points.

Using an optimal path search algorithm, we select a chain of nodes that connect the starting node (where the robot is) with the destination node (where the robot must arrive).

The next step is the selection of the most significant point for a node. This selection is made based on the navigation strategy. For Direct Navigation method, the most significant point is elected as the point where the transmission energy is minimum along the geometrical curve denoted by the sensor node’s usable range. In the case of Maximum Intensity Based Navigation method, this point represents the location where the transmission intensity of the node is maximal (in our case the position of the node).

In the next step, the algorithm will find paths between most significant points of consecutive nodes. The algorithm will select a straight line between the two points excepting the case when an obstacle is detected. In this case the robot will follow the curve that delimits the obstacle(s). Through concatenation of these paths we obtain the path between the starting point and the destination of the robot. A second degree Spline interpolation may be used to smooth the path in the neighborhoods of the significant points. Below is a description of the algorithm in pseudo-code.

ComputeNavigationPath List<SensorNode> sensorNodePath := get all nodes that are communicating along the path from startNode to the destinationNode List<point> path Foreach sensorNode from sensorNodePath Do List<Point> currentNodeValidPoints := ComputeNode PointsOfInterest List<Point> nextNodeValidPoints := ComputeNode PointsOfInterest Graph graph := create a weighted graph using the currentNodeValidPoints and nextNodeValidPoints Point startPoint := most significant point from currentNodeValidPoints(depending on navigation method) Point destinationPoint := most significant point from nextNodeValidPoints(depending on navigation method) List<Point> pathBetweenTwoNodes := generate the optimal path between startPoint and destinationPoint path.Add(pathBetweenTwoNodes) End Foreach End ComputeNavigationPath

D. Direct Navigation The Direct navigation method follows a path that optimizes

the transmission energy between the robot and the sensor nodes. The algorithm will generate path points situated at the edge of the signal coverage area. In the case an obstacle is

Page 5: [IEEE 2012 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR 2012) - Cluj-Napoca, Romania (2012.05.24-2012.05.27)] Proceedings of 2012 IEEE International

situated at the signal limit point, or at the intersection between signal ranges, the robot will follow the contour of the obstacle shape until the path will be free of obstacles. Following these rules, the transmission energy is minimized, saving the power supplies of the network components. This navigation method becomes very useful in energy-constrained situations.

The navigation system gets information from the representational map model and the node distribution model. Using the information supplied by the navigation system, the simulation process may be started.

E. Maximum Intensity Based Navigation The process flow of this method is similar with the one

presented for the Direct Navigation (see Fig. 6) excepting the most significant point selection.

In this case, the main factor taken into account is the signal intensity of the node. The robot tries to make a center-to-center navigation if there are no obstacles involved in the path. The point of maximum intensity of a node is computed, and this will represent the next destination of the robot from the current position.

When obstacles are involved in the path, the navigation module will automatically switch the method to the Direct Navigation one.

F. Data Gathering Algorithm In this case, the goal of the navigation module is to

establish a path for the robot, which assures in a period of time an RF contact with any node of the network. The contact is needed in order to collect the information gathered in a node from the last visit of the robot. As strategies we may select a uniform coverage approach, where in a given period all the nodes are visited, or an adaptive one in which the order of collecting the data is imposed by the urgency of a data present in nodes. The urgency may be given by the importance of the data (e.g. a significant change in the measured value occurred), by the quantity of information gathered in a node or the time elapsed from the last visit. For a uniform coverage, a classical traveling salesman algorithm may be used.

For the adaptive approach, we propose a method based on the idea that a node with more urgent data will attract the robot with a higher force. The force also depends on the distance between the robot and a given node. As navigation strategy, the robot will decide its moving direction based on the orientation of the sum of all attraction forces exercised by all the nodes in the system. When a node is visited (e.g. its the data is collected) the attraction exercised on the robot becomes zero.

The challenge in this case is to model the attraction force function so that in a given (reasonable) time interval all the nodes are visited.

In order to find the best path we propose three methods. The first method consists in generating a list of nodes to be visited, prioritized by the magnitude of the attraction vector. The second method is an improvement of the first one by optimizing the collecting path using the Travelling Salesman Problem. The third method will use A+ genetic algorithm in

order to find a sub-optimal path in a shorter time. The implementation and the testing of these algorithms are still in progress.

In order to compare the obtained results, an evaluation function is implemented. This function will take into consideration the delay in collecting the data weighted with their urgency factor.

IV. EXPERIMENTAL RESULTS This chapter presents the functionalities of the simulator

and some experimental results in different scenarios.

The simulator allows the user to draw the map of the environment in which the network will be deployed. It also provides windows with useful information for the user to analyze a given scenario, such as: transmission range of nodes, accessible range, valid path points that are to be considered into the path generation, nodes involved in the navigation route, costs involved, etc.

In Fig. 4 one can observe that the environment created contains a forest, one region covered by mountains, and one lake.

An automatic deployment of the network nodes may also be observed in Fig. 4. One can see that the nodes deployed in the lake have no signal emission, while the ones deployed onto a mountain region have a decrease in the range covered. As mentioned before, the intensity of the network element decreases as the altitude increases.

Another capability of the system is to display the usable range of the nodes. This feature is very important in the computation of the navigation route. These areas are generated by subtracting from the node range that part that is intersected by a certain obstacle (forest, mountain, lake). Fig. 4 shows the resulting shape considered an accessible range.

Figure 4. Automatic Distribution and Nodes Usable Range

General path points are a very important part in the navigation computation process. These points are generated along the curve of the usable range area. With the use of this feature the system tries to generate a route as short as possible taking into account also the navigation method used (Fig. 5).

Page 6: [IEEE 2012 IEEE International Conference on Automation, Quality and Testing, Robotics (AQTR 2012) - Cluj-Napoca, Romania (2012.05.24-2012.05.27)] Proceedings of 2012 IEEE International

Figure 5. General Path Points

Given an environment specification, the next figure illustrates the results obtained when the user selects the Direct Navigation method. The red line represents the path followed by the robot in the navigation process from the vicinity of a start node to a final node. Fig. 6 is presenting the results for the Direct Navigation method.

Figure 6. Direct Navigation Method

Fig. 7 illustrates the results for the other navigation algorithm, the Maximum intensity based navigation. As the figures show, the generated paths are acceptable but they are not optimal. Further work is needed in order to refine the navigation algorithms for a more efficient path generation.

Figure 7. Maximum Intensity Based Navigation Method

V. CONCLUSIONS This paper presents some preliminary results regarding the

implementation of a simulation platform, that allows the study of wireless sensor networks and moving robot interaction. The simulator offers flexible tools for close-to-reality environment definition and sensor network deployment. Through simulation, the user can analyze real scenarios from coverage and navigation point of view. The simulation platform allows the integration of different navigation and data gathering algorithms in order to compare and select the best strategy.

The simulator may be used for testing real scenarios before their actual deployment, or for educational purposes, for better understanding of sensor network behavior.

Future work will focus on data gathering strategies, energy aware communication and more efficient navigation algorithms.

REFERENCES

[1] Andrew Howard, Maja J. Mataric and Guarav S. Sukhatme, “Mobile sensor network deployment using potential fields: A distributed, scalable solution to the area coverage problem”, 6th International Symposium on Distributed Autonomous Robotics Systems (DARS02) Fukuoka, Japan, June 25-27, 2002.

[2] Maxim A. Batalin, Gaurav S. Sukhatme and Myron Hattig, “Mobile robot navigation using a sensor network”, IEEE International Conference on Robotics and Automation, pp. 636-642, New Orleans, LA, April 26 - May 1, 2004.

[3] Guangming Song, Yaoxin Zhou, Fei Ding and Aiguo Song, “A mobile sensor network system for monitoring of unfriendly environments”, Sensors, vol. 8, pp. 7259-7274, 2008.

[4] Lingxuan Hu and David Evans, “Localization for mobile sensor networks”, Tenth Annual International Conference on Mobile Computing and Networking (MobiCom 2004). Philadelphia, 26 September - 1 October 2004.

[5] Gabriel M. Hoffmann and Claire J. Tomlin, “Mobile sensor network control using mutual information methods and particle filters”, 2008.

[6] Lasse Klingbeil, Tim Wark, “A wireless sensor network for real-time indoor localization and motion monitoring”, International Conference on Information Processing in Sensor Networks, 2008.

[7] Claudiu Popirlan and Mihai Dupac, “An optimal path algorithm for autonomous searching robots”, Mathematics and Computer Science Series, vol. 36, no. 1, 2009.

[8] Delia Ciullo, Guner D. Celik and Eytan Modiano, “Minimizing transmission energy in sensor networks via trajectory control”, WiOpt'10: Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks, pp. 259-268, 2010.

[9] Yuan Yuan Li and Lynne E. Parker, “Detecting and monitoring time-related abnormal events using a wireless sensor network and mobile robot”, IEEE International Conference on Intelligent Robots and Systems, Nice, France, 2008.

[10] Damon J. Gulczynski and Jeffrey W. Heath, Carter C. Price, “The Close Enough Traveling Salesman Problem: A discussion of several heuristics”, 2006.

[11] Sylvia C. Wong and Bruce A. MacDonald, “A topological coverage algorithm for mobile robots”, IEEE/RSJ International Conference on Intelligent Robots and Systems, vol. 2, pp. 1685 – 1690, 2003.