# Chaotic Trajectory Design for Monitoring an Arbitrary Number of Specified Locations Using Points of Interest

Authors: Daniel-Ioan Curiac; Constantin Volosencu
Journal: Mathematical Problems in Engineering
 (2012)

---

## Abstract

The design of unpredictable trajectories for autonomous patrol robots when accomplishing surveillance missions represents, in many situations, a key desideratum.  Solutions to this problem had often been associated with chaotic dynamics. While for area surveillance missions, relevant techniques to produce chaotic motion had been reported, in the case of monitoring a number of precise locations no viable solutions had been proposed. The present paper covers this research gap by offering a complex methodology that involves a mixture of two types of chaotic trajectory segments, based on Lorenz and Chen systems, in obtaining unpredictable trajectories when an arbitrary number of specified locations have to be monitored. The developed path-planning strategy produces trajectories that can cope efficiently with dynamical degradation of chaos or with obstacle avoidance issues.


---

## Body

## 1. Introduction

Autonomous mobile robots are intelligent devices that can perform a variety of tasks in unknown and unstructured environments, without explicit human guidance. Their involvement is required anytime difficult, hazardous, or even mundane operations have to be accomplished. Application examples cover a wide range of fields, from domestic floor-cleaning [1] to hazardous waste disposal [2] or fire-fighting operations [3], and are based on a multidisciplinary research effort. One of the most challenging research topics is nevertheless the design of navigation strategies. Starting from an initial military need to develop patrolling trajectories unpredictable for external observers, various researchers employed chaotic dynamics as a means of accomplishment.Over the last two decades, the chaos theory has spread its applications in a wide variety of areas, from data encryption [4, 5] to random sequence generation [6, 7], biology [8], or mobile autonomous robots. Two basic properties of chaotic systems [9, 10]—sensibility to initial conditions and topological transitivity—are the source of unpredictable trajectories for mobile robots accomplishing area surveillance missions. The solutions found by researchers have the same pattern, which includes two interconnected modules: one for generating the points of the robot’s path using diverse chaotic maps and one that transforms the resulted chaotic point-to-point trajectory in a kinematic motion of the robot. The first papers that tackled the mentioned problem [11, 12] used the Arnold’s equations to obtain chaotic motion and was followed by other relevant researches, which imply the use of Taylor-Chirikov map [13, 14], Chua circuit [15, 16], or other relevant chaotic systems [17, 18]. Thus, the mission of patrolling an area with a mobile robot is properly satisfying its major objectives: unpredictability of the trajectory and high-quality coverage of the entire terrain.While all of the mentioned papers are addressing the chaotic surveillance of an area, our work was devoted to solving a slightly different type of problem: the surveillance of a number of specified locations. As a result, the focus of the patrolling mission is switched from an area with no privileged spots to a set of precise locations that must be carefully monitored. In our previous paper [19], we examined the surveillance problem using unpredictable trajectories in the case of an area containing two points of interest. The trajectory was designed using adjusted Lorenz equations, where the two twin equilibrium points had been moved, using a suitable affine transformation, exactly in the location of the two points of interest.The present paper extends the mentioned approach to an overall methodology by including several new aspects: it generalizes the number of the monitored location; it boosts the unpredictability of the trajectory by introducing synthetic points of interest and by mixing the Lorenz-type trajectory segments with Chen-type segments. Moreover, the new methodology can efficiently cope with the problem of dynamical degradation of chaos induced either by digital computation or by environment in which the robot navigates.The rest of the paper is organized as follows. In Section2, we present the overall methodology for generating chaotic paths based on establishing points of interest inside the investigated area. Section 3 presents the way chaotic trajectory segments are defined based on adjusted Lorenz or Chen systems. In Section 4 some relevant simulation case studies are presented, while Section 5 shows how our methodology solves the inherent problem of dynamical degradation of chaotic properties. Finally, the last section outlines the conclusions and final remarks.


## 2. Basic Methodology

Basically, there are two types of missions for a patrol robot that may require unpredictable paths: (i) to monitor a specified zone, when the robot has to cover all parts of that area to sense and localize possible events or (ii) to monitor a number of precise locations within an area, when the robot has to discover events only in the proximity of the specified positions. The present paper tackles the second kind of assignment, with the problem being formalized as follows:Problem Formulation:Let us consider a two-dimensional Cartesian mapXGOYG in which a mobile robot has to monitor a specified number n of precise locations Li(xGi,yGi), with i=1,…,n. The task is to design the robot’s path, unpredictable for an external observer, which accomplishes the specified mission.For solving this problem we exploited a well-known feature of chaotic systems-sensitivity to initial conditions [9, 20, 21]. This characteristic, also known as “butterfly effect,” signifies that arbitrarily small perturbations of a state at any given moment in time lead quickly to significantly diverging states. In the case of a patrol robot, the unpredictability induced by sensitivity to initial conditions [22] is further amplified by two inherent causes: the influence of random noise and the impact of the environment.Our methodology is based on the Point Of Interest (POI) concept. Generally speaking, a point of interest is a geographically specified location that someone may consider useful or interesting. Two types of POIs are used to design complex chaotic trajectories:(i)
real POIs are related to specific spots in the field that have to be carefully monitored(ii)
synthetic POIs have no relevance in the field but are chosen either for implementation purposes or for boosting the unpredictability of the path.In our approach, the patrol robot will have a piecewise chaotic trajectory, where each trajectory section includes a number of Lorenz and Chen-type segments generated based on a cell containing only two POIs. Thus, the robot will visit the POIs two-by-two, in a scheduled manner, pursuing a chaotic path.The complex chaotic trajectory is designed assuming the following steps.Step 1 (Establishing the POIs).
When a patrol robot has the mission to carefully monitor a set of specified locations, the first step in developing a chaotic trajectory based on our methodology is to establish the POIs. While the set of real POIs (Γreal) match the set of specified locations that will be monitored, the set of synthetic POIs (Γsynthetic) may be chosen, only if needed, either for implementation reasons or to increase the unpredictability of the trajectory:(2.1)Γreal={POIi∣POIi(xGi,yGi)=Li(xGi,yGi),i=1,…,n},Γsynthetic={POIj∣POIj(xGj,yGj)≠Li(xGi,yGi),j=n+1,…,m,i=1,…,n}.
The overall set of POIs (Γ) includes both real and synthetic POIs:
(2.2)Γ=Γreal⋃Γsynthetic.
The methodology is based on the development of chaotic trajectories using two POIs. If we have only one location that needs to be monitored, beside this real POI we will need to add another synthetic POI to meet the requirements of the methodology. Chaotic trajectory design is generalized for an arbitrary number of monitored locations by implying a strategy to switch between different pairs of POIs.
At the end of this step, a map of the area under investigation containing the real and synthetic POIs will be obtained, with respect to a general Cartesian coordinate system.Step 2 (forming and scheduling the cells containing two POIs).
The patrol robot will visit the POIs, previously paired two-by-two in cells, in a scheduled manner. For this, we will construct a setK of cells containing two POIs:
(2.3)K={cellp=(Ap,Bp)∣Ap,Bp∈Γ,Ap≠Bp,p=1,…,m},
assuming that
(2.4)∀POIk∈Γ:∃cellq=(Aq,Bq)withAq=POIkorBq=POIk.
By scheduling the elements from K, we will form a sequence of cells specifying the order in which the POIs will be visited:
(2.5)Scells=(cell(1),cell(2),…,cell(l),…),
where
(2.6)cell(l)∈K.
Each cell(l) has an associated time period, denoted by time(l), which represents the time spent by the mobile robot in that specific cell. Consequently, the sequence of cells (2.5) is strongly connected with a sequence of time periods:
(2.7)Stimes=(time(0),time(1),…,time(l),…).
In order to carefully monitor the two POIs belonging to a cell, choosing the time(l) value has to be related to the robot average speed and to the minimum distance traveled by the robot for an efficient surveillance. This is obviously not a simple task when the trajectory is, like in our case, unpredictable. Based on our simulation analysis, a suitable value for this parameter must satisfy the following experimental formula:
(2.8)time(l)>15·dist(Al,Bl)vrobot,
where dist(Al,Bl) is the Euclidian distance between the two POIs of the cell and vrobot is the average speed of the robot.The pairing of POIs and the schedule for switching from one cell to another must be completed by the human supervisor. This step can be performed in a variety of ways, even using a randomizing procedure in which the cells are formed and scheduled arbitrarily. Besides the use of well-known chaotic systems in generating the trajectory, an intelligent algorithm for pairing the POIs and scheduling the cells may further improve the unpredictability of the robot’s path for an external observer. To illustrate how the cell forming and scheduling can be done, in Figure1 we presented an example with five locations that have to be monitored (POI1,POI2,…,POI5).Figure 1
An example of cell forming and scheduling with five POIs.Step 3 (establishing the local cartesian coordinate system inside each cell).
At every instant in time, the chaotic trajectory design is governed by two POIs (denoted byA and B) that form a cell. Considering the positions of A and B in the general coordinate system—A(xGA,yGA) and B(xGB,yGB) —we can establish the local, cell dependant, Cartesian coordinate system in which the mobile robot will evolve using the following procedure: (i) the origin of the local coordinate system will be the midpoint of the segment AB, or, in global coordinates O((xGA+xGB)/2,(yGA+yGB)/2); (ii) the horizontal axis (X) will be along the vector AB→, while the vertical axis (Y) will be constructed in such a way for the new xOy system to be of Cartesian type; (iii) the norm of the unit vector will remain the same as in general XGOYG Cartesian system. Accordingly, the cell-related coordinate system will match the one presented in Figure 2, where μ=(1/2)·(xGB-xGA)2+(yGB-yGA)2.
Using the mentioned local coordinate system, we can generalize the design of chaotic trajectory segments inside a cell. If we want to find the robot’s path based on the general Cartesian coordinate system (the one related to the entire map of the area under investigation), a combined rotation-translation transform will be used, based on the following formula:(2.9)[xGyG]=[cosα-sinαsinαcosα][xy]+12·[xGA+xGByGA+yGB],
with
(2.10)α=arctg(yGB-yGAxGB-xGA),
where x and y are the coordinates of a trajectory point in the local coordinate system, xG and yG are the coordinates of the same point in the general coordinate system, and the two POIs, A and B, that generate the cell will be represented using their general coordinates: xGA and yGA, respectively xGB and yGB.
Based on the schedule adopted in Step2, the robot passes from a cell to another and the local coordinate system will be modified accordingly.Figure 2
Establishment of the localxOy coordinate system based on the two POIs.Step 4 (generating the trajectory segments inside each Cell).
By knowing the position of the robot when entering under the influence of a new cell, we can generate the chaotic trajectory segments based on the two POIs and the related local coordinate system. For this, we use two types of dynamical systems, Lorenz and Chen, displaying different classes of chaotic behavior. If the patrol robot has the mission to monitor an area with obstacles, an obstacle avoidance algorithm must be included in our methodology. The design of chaotic trajectory segments for each cell is thoroughly presented in the following section.


## 3. Design of Chaotic Trajectory Segments

The proposed methodology to design chaotic trajectories implies the use of two types of segments: one that is generated using the Lorenz system and one that is generated using the Chen system.


### 3.1. Lorenz and Chen Attractors

In an attempt to describe the atmospheric convection for meteorological purposes, Lorenz discovered the first three-dimensional autonomous system exhibiting chaotic features [23]:
(3.1)dxdt=σ(-x+y),dydt=rx-y-xz,dzdt=-bz+xy,
where the standard values for parameters are the Prandl number σ=10, the Rayleigh number r=28, and the geometric factor b=8/3 (Figure 3).Figure 3
Lorenz attractor.The second chaotic attractor used in our methodology was obtained by Chen (Figure4) exploiting an engineering feedback control method [24]:
(3.2)dxdt=a(-x+y),dydt=(c-a)x-xz+cy,dzdt=-bz+xy,
where the parameters have the following standard values: a=35, b=3, and c=28.Figure 4
Chen attractor.The option to use both Lorenz and Chen attractors in developing chaotic trajectory segments is not random. Our motivation stems from two important facts: (i) thexOy projections of Lorenz and Chen attractors draw chaotic loops around two precise points (Figures 5 and 6), with this observation being the foundation of our methodology and (ii) creating a chain of Lorenz and Chen trajectory segments will increase the unpredictability of the robot’s path due to their different trajectories’ shapes.Figure 5
x
O
y projection of the Lorenz attractor.Figure 6
x
O
y projection of the Chen attractor.In order to thoroughly examine thexOy projections of the two attractors we started from the Vanecek and Celikovsky approach [25] that described both of the systems using the following generalization:
(3.3)[dxdtdydtdzdt]=[a11a120a21a22000a33][xyz]+x·[00000-1010][xyz],
where a11=-10, a12=10, a21=28, a22=-1, and a33=-8/3 for Lorenz attractor and a11=-35, a12=35, a21=-7, a22=28, and a33=-3 for Chen attractor. They demonstrated that the Lorenz and Chen chaotic systems belong to different canonical families [26, 27] based on a condition imposed upon the linear part of (3.3): a12a21>0 for Lorenz and a12a21<0 for Chen. Thus, the two systems are exhibiting different dynamical behaviors [28, 29], offering a higher degree of unpredictability for trajectories designed by our methodology.The generalized system (3.3) has three equilibrium points, obtained by equating the time derivatives with zero:
(3.4)[a11a120a21a22000a33][xyz]+x·[00000-1010][xyz]=[000].
In the case of Lorenz attractor, the group of three equilibrium points are P1=(0,0,0), P2=(62,62,27), and P3=(-62,-62,27), while in the case of Chen attractor areE1=(0,0,0), E2=(37,37,21), and E3=(-37,-37,21).The butterfly-shaped trajectory developed by Lorenz system (Figure3) draws two 3D loops around P2 and P3, having a spiral form of rising amplitude that jumps between the two twin equilibrium points (P2 and P3), at irregular intervals, in an unsystematic manner [30]. Basically, this type of orbit represents an efficient chaotic path to monitor the two equilibrium points, assuring the foundation of our methodology.In the case of the Chen system, even if the trajectory shape is slightly different (Figure4), the conclusion is the same: the Chen orbit can efficiently monitor the E2 and E3 equilibrium points.The way Lorenz and Chen orbits are surveying their twin equilibrium points (P2 and P3, resp. E2 and E3) is highlighted by the xOy projections of the two attractors presented in Figures 5 and 6.In order to develop a chaotic monitoring path around the two POIs,A(-μ,0) and B(μ,0), we have to adapt the Lorenz and Chen systems by moving the xOy projections of their equilibrium points P2, P3 and E2, E3 in the POIs locations using affine transformations to preserve their properties.


### 3.2. Adapted Formulas for Lorenz and Chen Systems

In order to place the two projections of the equilibrium pointsP2 and P3 symmetrically to the origin, in the required points of interest, A(-μ,0) and B(μ,0), we have to compute a combined 3D affine transformation that includes a rotation with an angle θ=-π/4 radians (θ is the anticlockwise rotation angle) and a scale transformation:
(3.5)[x^y^z^]=22[μ2b(r-1)00010001][110-110002][xyz].The modified Lorenz attractor, after applying this affine transformation, becomes(3.6)dx^dt=-12(r-1)x^-12α(r-2σ+1)y^-12x^z^+12αy^z^,dy^dt=α2(r-1)x^-12(r+2σ+1)y^-α2x^z^+12y^z^,dz^dt=-bz^+α22x^2-12y^2,
where α=2b(r-1)/μ.In order to place the two projections of Chen’s twin equilibrium pointsE2 and E3 symmetrically to the origin O(0,0) and to move them in the required points A(μ,0), B(-μ,0), we must compute a similar compound 3D affine transformation that includes the same rotation with θ=-π/4 radians and a scale transformation but with a different scale factor:
(3.7)[x^y^z^]=22[μ2b(2c-a)00010001][110-110002][xyz].Applying the transformation (3.7) to (3.2), the modified Chen attractor is obtained:
(3.8)dx^dt=12(2c-a)x^+3a2βy^-12x^z^+12βy^z,^dy^dt=β2(2c-a)x^-a2y^-β2x^z^+12y^z^,dz^dt=-bz^+β22x^2-12y^2,
where β=2b(2c-a)/μ.Using thexOy projections of the attractors described by (3.6) and (3.8) and presented in Figures 7 and 8, we are now able to generate a chaotic trajectory represented by a chain of Lorenz and Chen segments.Figure 7
Chaotic trajectory using adapted Lorenz system forμ=5.Figure 8
Chaotic trajectory using adapted Chen system forμ=5.


## 3.1. Lorenz and Chen Attractors

In an attempt to describe the atmospheric convection for meteorological purposes, Lorenz discovered the first three-dimensional autonomous system exhibiting chaotic features [23]:
(3.1)dxdt=σ(-x+y),dydt=rx-y-xz,dzdt=-bz+xy,
where the standard values for parameters are the Prandl number σ=10, the Rayleigh number r=28, and the geometric factor b=8/3 (Figure 3).Figure 3
Lorenz attractor.The second chaotic attractor used in our methodology was obtained by Chen (Figure4) exploiting an engineering feedback control method [24]:
(3.2)dxdt=a(-x+y),dydt=(c-a)x-xz+cy,dzdt=-bz+xy,
where the parameters have the following standard values: a=35, b=3, and c=28.Figure 4
Chen attractor.The option to use both Lorenz and Chen attractors in developing chaotic trajectory segments is not random. Our motivation stems from two important facts: (i) thexOy projections of Lorenz and Chen attractors draw chaotic loops around two precise points (Figures 5 and 6), with this observation being the foundation of our methodology and (ii) creating a chain of Lorenz and Chen trajectory segments will increase the unpredictability of the robot’s path due to their different trajectories’ shapes.Figure 5
x
O
y projection of the Lorenz attractor.Figure 6
x
O
y projection of the Chen attractor.In order to thoroughly examine thexOy projections of the two attractors we started from the Vanecek and Celikovsky approach [25] that described both of the systems using the following generalization:
(3.3)[dxdtdydtdzdt]=[a11a120a21a22000a33][xyz]+x·[00000-1010][xyz],
where a11=-10, a12=10, a21=28, a22=-1, and a33=-8/3 for Lorenz attractor and a11=-35, a12=35, a21=-7, a22=28, and a33=-3 for Chen attractor. They demonstrated that the Lorenz and Chen chaotic systems belong to different canonical families [26, 27] based on a condition imposed upon the linear part of (3.3): a12a21>0 for Lorenz and a12a21<0 for Chen. Thus, the two systems are exhibiting different dynamical behaviors [28, 29], offering a higher degree of unpredictability for trajectories designed by our methodology.The generalized system (3.3) has three equilibrium points, obtained by equating the time derivatives with zero:
(3.4)[a11a120a21a22000a33][xyz]+x·[00000-1010][xyz]=[000].
In the case of Lorenz attractor, the group of three equilibrium points are P1=(0,0,0), P2=(62,62,27), and P3=(-62,-62,27), while in the case of Chen attractor areE1=(0,0,0), E2=(37,37,21), and E3=(-37,-37,21).The butterfly-shaped trajectory developed by Lorenz system (Figure3) draws two 3D loops around P2 and P3, having a spiral form of rising amplitude that jumps between the two twin equilibrium points (P2 and P3), at irregular intervals, in an unsystematic manner [30]. Basically, this type of orbit represents an efficient chaotic path to monitor the two equilibrium points, assuring the foundation of our methodology.In the case of the Chen system, even if the trajectory shape is slightly different (Figure4), the conclusion is the same: the Chen orbit can efficiently monitor the E2 and E3 equilibrium points.The way Lorenz and Chen orbits are surveying their twin equilibrium points (P2 and P3, resp. E2 and E3) is highlighted by the xOy projections of the two attractors presented in Figures 5 and 6.In order to develop a chaotic monitoring path around the two POIs,A(-μ,0) and B(μ,0), we have to adapt the Lorenz and Chen systems by moving the xOy projections of their equilibrium points P2, P3 and E2, E3 in the POIs locations using affine transformations to preserve their properties.


## 3.2. Adapted Formulas for Lorenz and Chen Systems

In order to place the two projections of the equilibrium pointsP2 and P3 symmetrically to the origin, in the required points of interest, A(-μ,0) and B(μ,0), we have to compute a combined 3D affine transformation that includes a rotation with an angle θ=-π/4 radians (θ is the anticlockwise rotation angle) and a scale transformation:
(3.5)[x^y^z^]=22[μ2b(r-1)00010001][110-110002][xyz].The modified Lorenz attractor, after applying this affine transformation, becomes(3.6)dx^dt=-12(r-1)x^-12α(r-2σ+1)y^-12x^z^+12αy^z^,dy^dt=α2(r-1)x^-12(r+2σ+1)y^-α2x^z^+12y^z^,dz^dt=-bz^+α22x^2-12y^2,
where α=2b(r-1)/μ.In order to place the two projections of Chen’s twin equilibrium pointsE2 and E3 symmetrically to the origin O(0,0) and to move them in the required points A(μ,0), B(-μ,0), we must compute a similar compound 3D affine transformation that includes the same rotation with θ=-π/4 radians and a scale transformation but with a different scale factor:
(3.7)[x^y^z^]=22[μ2b(2c-a)00010001][110-110002][xyz].Applying the transformation (3.7) to (3.2), the modified Chen attractor is obtained:
(3.8)dx^dt=12(2c-a)x^+3a2βy^-12x^z^+12βy^z,^dy^dt=β2(2c-a)x^-a2y^-β2x^z^+12y^z^,dz^dt=-bz^+β22x^2-12y^2,
where β=2b(2c-a)/μ.Using thexOy projections of the attractors described by (3.6) and (3.8) and presented in Figures 7 and 8, we are now able to generate a chaotic trajectory represented by a chain of Lorenz and Chen segments.Figure 7
Chaotic trajectory using adapted Lorenz system forμ=5.Figure 8
Chaotic trajectory using adapted Chen system forμ=5.


## 4. Patrolling an Area to Monitor a Number of Specified Locations

Starting from the simplest case of monitoring two locations to more complex cases that involve an arbitrary number of monitored locations or the necessity to avoid obstacles, this section particularizes the overall methodology and exemplifies it by Matlab simulations.


### 4.1. Monitoring Specified Locations in an Area without Obstacles

#### 4.1.1. Area with Two Monitored Locations

An area with two monitored locations is considered to be the simplest case for our methodology, representing the basic foundation from which all other more complex cases are derived. The two monitored locations are the two points of interest used to generate the chain of chaotic segments representing the trajectory.The sequence of operations is natural and includes (a) the establishment of the local coordinate system; (b) generating the first chaotic segment based on adapted Lorenz system described by (3.6), where the initial point matches the actual robot’s location; (c) after a chosen time interval has elapsed, the robot will stop pursuing the Lorenz-type trajectory and will switch to the Chen-type trajectory segment formularized by (3.8), where the initial point of this segment matches the last point of Lorenz-type segment; and (d) switching back to a Lorenz-based segment when the time interval for pursuing Chen-type segment has elapsed and so on. This process is illustrated by Figure 9, where a sequence of four chaotic segments (two Lorenz and two Chen-type segments) is developed based on a cell of two POIs (A(-5,0) and B(5,0)).Figure 9
Monitoring two locations within an area without obstacles.


#### 4.1.2. Area with an Arbitrary Number of Monitored Locations

When an arbitrary number of monitored locations are considered, we have to design a strategy to allocate real or synthetic POIs and to switch from one pair of POIs to another.In the case that we have only one imposed location that has to be monitored, we will allocate a synthetic POI and follow the same operations we pursued in the case of two real POIs. Of course, in order to amplify the uncertainty of the trajectory for an outside observer, the location of the synthetic POI can be modified from time to time.If the mobile robot has to monitor more than two locations, we will start the methodology by allocating POIs to every single monitored location. Supplementary, synthetic POIs may be added for boosting the unpredictability. After pairing the POIs to form the cells, we must develop a strategy to swap between cells. In Figure10 we presented the Matlab simulation of the chaotic path where the five imposed monitored locations (POI1(-5,0), POI2(5,0), POI3(5,10), POI4(12.5,17.5), and POI5(18.5,12.5)) are covered using the following strategy: we started with a cell that includes POI1 and POI2 as the POIs to develop chaotic trajectories and, after a while, we switched to the second cell containing POI2 and POI3 (practically we replaced POI1 with POI3, POI2 being kept), and so on until the fourth cell made of POI4 and POI5. After developing chaotic path based on the fifth cell, we can return to the first cell and follow the same procedure.Figure 10
Chaotic trajectory for monitoring five imposed locations.The related POIs scheduler is obtained easily, using Pseudocode1.Pseudocode 1:Example for scheduling the POIs.
void function_POIs_scheduling (intn-number of locations to be monitored)
{for (i=1; i<n; i++) {
cell(i) includes POI(i) and POI(i+1)}}


### 4.2. Monitoring Precise Locations in an Area with Obstacles

The general case, when the area under investigation contains known or unknown obstacles that can affect the robot’s trajectory, requires the enhancement of our methodology with an obstacle avoidance algorithm.Obstacle avoidance algorithms are developed to shape the robot’s trajectory toward overcoming unexpected obstacles. The resultant motion depends on the current position of the robot and on the analysis of sensory data. The rich variety of obstacle avoidance algorithms includes the Bug’s algorithm [31] or methods based on artificial potential fields [32], vector field histograms [33], elastic bands [34], or dynamical approaches [35].In our methodology, we included an obstacle avoidance algorithm that redesigns the Bug’s algorithm to the goal of developing chaotic trajectory. Accordingly, the mobile robot will follow its chaotic trajectory until it encounters an obstacle. In this circumstance the chaotic path will be replaced by an obstacle avoidance trajectory that will contour the obstacle until chaotic motion is again possible. Immediately after the obstacle is left behind, the robot will recompute the chaotic trajectory, based on its current position, to accomplish its mission.In order to exemplify our methodology in the case of an area with obstacles, we simulated an obstacle avoidance algorithm based on an ultrasonic sensor: when the mobile robot discovers an obstacle within a specified distance, it will rotate to the left until the obstacle disappears from its view (Figure11). Immediately after this, the robot will return to its chaotic motion.Figure 11
Obstacle detection and robot rotation until the obstacle disappears from its view.Enhanced with an obstacle avoidance algorithm, our methodology can accomplish the robot’s mission to monitor defined locations in an area with obstacles pursuing a chaotic trajectory. A Matlab simulation example for the robot’s path developed to monitor two POIs (A(-5,0) and B(5,0)) in an area with four obstacles is presented in Figure 12.Figure 12
Chaotic trajectory in an area with obstacles.


## 4.1. Monitoring Specified Locations in an Area without Obstacles

### 4.1.1. Area with Two Monitored Locations

An area with two monitored locations is considered to be the simplest case for our methodology, representing the basic foundation from which all other more complex cases are derived. The two monitored locations are the two points of interest used to generate the chain of chaotic segments representing the trajectory.The sequence of operations is natural and includes (a) the establishment of the local coordinate system; (b) generating the first chaotic segment based on adapted Lorenz system described by (3.6), where the initial point matches the actual robot’s location; (c) after a chosen time interval has elapsed, the robot will stop pursuing the Lorenz-type trajectory and will switch to the Chen-type trajectory segment formularized by (3.8), where the initial point of this segment matches the last point of Lorenz-type segment; and (d) switching back to a Lorenz-based segment when the time interval for pursuing Chen-type segment has elapsed and so on. This process is illustrated by Figure 9, where a sequence of four chaotic segments (two Lorenz and two Chen-type segments) is developed based on a cell of two POIs (A(-5,0) and B(5,0)).Figure 9
Monitoring two locations within an area without obstacles.


### 4.1.2. Area with an Arbitrary Number of Monitored Locations

When an arbitrary number of monitored locations are considered, we have to design a strategy to allocate real or synthetic POIs and to switch from one pair of POIs to another.In the case that we have only one imposed location that has to be monitored, we will allocate a synthetic POI and follow the same operations we pursued in the case of two real POIs. Of course, in order to amplify the uncertainty of the trajectory for an outside observer, the location of the synthetic POI can be modified from time to time.If the mobile robot has to monitor more than two locations, we will start the methodology by allocating POIs to every single monitored location. Supplementary, synthetic POIs may be added for boosting the unpredictability. After pairing the POIs to form the cells, we must develop a strategy to swap between cells. In Figure10 we presented the Matlab simulation of the chaotic path where the five imposed monitored locations (POI1(-5,0), POI2(5,0), POI3(5,10), POI4(12.5,17.5), and POI5(18.5,12.5)) are covered using the following strategy: we started with a cell that includes POI1 and POI2 as the POIs to develop chaotic trajectories and, after a while, we switched to the second cell containing POI2 and POI3 (practically we replaced POI1 with POI3, POI2 being kept), and so on until the fourth cell made of POI4 and POI5. After developing chaotic path based on the fifth cell, we can return to the first cell and follow the same procedure.Figure 10
Chaotic trajectory for monitoring five imposed locations.The related POIs scheduler is obtained easily, using Pseudocode1.Pseudocode 1:Example for scheduling the POIs.
void function_POIs_scheduling (intn-number of locations to be monitored)
{for (i=1; i<n; i++) {
cell(i) includes POI(i) and POI(i+1)}}


## 4.1.1. Area with Two Monitored Locations

An area with two monitored locations is considered to be the simplest case for our methodology, representing the basic foundation from which all other more complex cases are derived. The two monitored locations are the two points of interest used to generate the chain of chaotic segments representing the trajectory.The sequence of operations is natural and includes (a) the establishment of the local coordinate system; (b) generating the first chaotic segment based on adapted Lorenz system described by (3.6), where the initial point matches the actual robot’s location; (c) after a chosen time interval has elapsed, the robot will stop pursuing the Lorenz-type trajectory and will switch to the Chen-type trajectory segment formularized by (3.8), where the initial point of this segment matches the last point of Lorenz-type segment; and (d) switching back to a Lorenz-based segment when the time interval for pursuing Chen-type segment has elapsed and so on. This process is illustrated by Figure 9, where a sequence of four chaotic segments (two Lorenz and two Chen-type segments) is developed based on a cell of two POIs (A(-5,0) and B(5,0)).Figure 9
Monitoring two locations within an area without obstacles.


## 4.1.2. Area with an Arbitrary Number of Monitored Locations

When an arbitrary number of monitored locations are considered, we have to design a strategy to allocate real or synthetic POIs and to switch from one pair of POIs to another.In the case that we have only one imposed location that has to be monitored, we will allocate a synthetic POI and follow the same operations we pursued in the case of two real POIs. Of course, in order to amplify the uncertainty of the trajectory for an outside observer, the location of the synthetic POI can be modified from time to time.If the mobile robot has to monitor more than two locations, we will start the methodology by allocating POIs to every single monitored location. Supplementary, synthetic POIs may be added for boosting the unpredictability. After pairing the POIs to form the cells, we must develop a strategy to swap between cells. In Figure10 we presented the Matlab simulation of the chaotic path where the five imposed monitored locations (POI1(-5,0), POI2(5,0), POI3(5,10), POI4(12.5,17.5), and POI5(18.5,12.5)) are covered using the following strategy: we started with a cell that includes POI1 and POI2 as the POIs to develop chaotic trajectories and, after a while, we switched to the second cell containing POI2 and POI3 (practically we replaced POI1 with POI3, POI2 being kept), and so on until the fourth cell made of POI4 and POI5. After developing chaotic path based on the fifth cell, we can return to the first cell and follow the same procedure.Figure 10
Chaotic trajectory for monitoring five imposed locations.The related POIs scheduler is obtained easily, using Pseudocode1.Pseudocode 1:Example for scheduling the POIs.
void function_POIs_scheduling (intn-number of locations to be monitored)
{for (i=1; i<n; i++) {
cell(i) includes POI(i) and POI(i+1)}}


## 4.2. Monitoring Precise Locations in an Area with Obstacles

The general case, when the area under investigation contains known or unknown obstacles that can affect the robot’s trajectory, requires the enhancement of our methodology with an obstacle avoidance algorithm.Obstacle avoidance algorithms are developed to shape the robot’s trajectory toward overcoming unexpected obstacles. The resultant motion depends on the current position of the robot and on the analysis of sensory data. The rich variety of obstacle avoidance algorithms includes the Bug’s algorithm [31] or methods based on artificial potential fields [32], vector field histograms [33], elastic bands [34], or dynamical approaches [35].In our methodology, we included an obstacle avoidance algorithm that redesigns the Bug’s algorithm to the goal of developing chaotic trajectory. Accordingly, the mobile robot will follow its chaotic trajectory until it encounters an obstacle. In this circumstance the chaotic path will be replaced by an obstacle avoidance trajectory that will contour the obstacle until chaotic motion is again possible. Immediately after the obstacle is left behind, the robot will recompute the chaotic trajectory, based on its current position, to accomplish its mission.In order to exemplify our methodology in the case of an area with obstacles, we simulated an obstacle avoidance algorithm based on an ultrasonic sensor: when the mobile robot discovers an obstacle within a specified distance, it will rotate to the left until the obstacle disappears from its view (Figure11). Immediately after this, the robot will return to its chaotic motion.Figure 11
Obstacle detection and robot rotation until the obstacle disappears from its view.Enhanced with an obstacle avoidance algorithm, our methodology can accomplish the robot’s mission to monitor defined locations in an area with obstacles pursuing a chaotic trajectory. A Matlab simulation example for the robot’s path developed to monitor two POIs (A(-5,0) and B(5,0)) in an area with four obstacles is presented in Figure 12.Figure 12
Chaotic trajectory in an area with obstacles.


## 5. Dealing with the Dynamical Degradation of Chaotic Properties

Chaos degradation is an unwanted and sometimes an inevitable phenomenon [36–38] that can affect practical implementation of chaotic systems. Proficient dealing with this phenomenon requires the discovery of its sources and identifying efficient strategies to cope with it. Two sources of chaos degradation are encountered in the case of patrol robots monitoring an unknown area: (a) finite computing precision and (b) obstacles that prevent the robot from following its chaotic trajectory.It is generally acknowledged that only an infinite precision implementation can preserve the ideal dynamical properties of chaotic systems. In practice, when chaos is represented digitally, the finite computing precision inevitably leads to the dynamical degradation of chaotic behavior [38–40]. This may turn chaotic trajectories into periodic ones, thus jeopardizing their unpredictability. In order to mitigate the problem of digital degradation of chaos, various solutions have been proposed [4, 41–44]. Our proposed technique solves the problem by leaving the possible periodic trajectory automatically when the preset time to navigate along a Lorenz or Chen chaotic segment expired. This approach is in line with other methodologies that tackled this issue [45, 46].Besides the digital degradation of chaotic dynamics, another type of chaos degradation may appear: due to the obstacles position in the field, the trajectory can be forced to be periodic. This situation may be solved by our technique, the robot leaving its possible periodic trajectory during the switching from Lorenz to Chen-type segment, or vice versa, occurs. To exemplify this situation, in Figure13 we presented how a chaotic trajectory, developed only by using Lorenz equations, can become periodic with only two strategically placed obstacles blocking the normal chaotic path. By switching to Chen-type chaotic segment, the problem will be overcome (Figure 14).Figure 13
Two obstacles constraining a Lorenz-type trajectory to become periodic.Figure 14
Leaving the periodic trajectory using two chaotic systems.If the problem (periodic trajectory) still persists, we can escape from this situation by adding a synthetic POI and form two new cells that both include this synthetic POI and one of the two original POIs. Moving inside these new cells may reestablish the required chaotic movement.A special particular case of chaotic degradation that attracted our interest due to its awful consequences is represented by the possibility that the robot’s trajectory ends in one of the equilibrium points of the two chaotic attractors. By equalizing the derivatives in (3.6) and (3.8) with zero, we will obtain the local coordinates of the equilibrium points for the adapted Lorenz system (P^1=(0,0,0), P^2=(μ,0,27), andP^3=(-μ,0,27)) and the ones of the modified Chen system (E^1=(0,0,0), E^2=(μ,0,21), andE^3=(-μ,0,21)). Because of the two already mentioned reasons of digital computation with finite precision and the obstacle placement in the field, the mobile robot may get stuck in one of these locations for some moments in time in the case ofP^2,P^3, E^2, and E^3 (by switching from Lorenz to Chen-type trajectory segments, or vice versa, the robot will start moving again) or indefinitely in case ofP^1=E^1. The solution that we found to be appropriate in all these cases was to introduce a small jump for the z-coordinate (the one irrelevant for the xOy projection where the robot is moving) (see Pseudocode 2).Pseudocode 2:Implementation of the jump for z-coordinate in case of falling into one of the equilibrium points.
If (((local_coordinates of the robot correspond toP^1, P^2 or P^3) and (present trajectory segment is
Lorenz-type)) or
((local_coordinates of the robot correspond toE^1, E^2 or E^3) and (present trajectory segment is
Chen-type)))
thenz^=z^+0.001;By this, the unpredictability of the trajectory is preserved.


## 6. Conclusions

Autonomous patrol robots are ideal support solutions for different types of reconnaissance and surveillance missions. In this context, the unpredictability of their trajectory for external observers is often considered to be a key issue. This paper presented a novel approach for carefully monitoring a number of specified locations using a path planning methodology that involves the design of trajectory segments based on two chaotic systems with dissimilar dynamics: Lorenz and Chen attractors. The specified locations are visited in a two-by-two scheduled succession that can further improve the unpredictability of the robot motion. Moreover, the methodology offers efficient solutions to cope with maintaining the chaotic behavior when the robot is moving in an area with obstacles or cope with inherent chaotic system dynamics degradation due to the digital computation or to the environment in which the robot evolves.



---

*Source: 940276-2012-12-30.xml*