Parallel asynchronous control strategy for target ... - Semantic Scholar

2 downloads 0 Views 213KB Size Report
He is currently Lecturer at the School of Electronics and Computer ... fashion. How to move nature-inspired algorithms to parallel, ..... how quickly they can move.
Parallel asynchronous control strategy for target search with swarm robots XUE Songdong Division of System Simulation & Computer Application, Taiyuan University of Science & Technology, Taiyuan 030024, P. R. China E-mail: [email protected]

ZENG Jianchao* Division of System Simulation & Computer Application, Taiyuan University of Science & Technology, Taiyuan 030024, P. R. China E-mail: [email protected] *Corresponding author

ZHANG Jianhua Division of System Simulation & Computer Application, Taiyuan University of Science & Technology, Taiyuan 030024, P. R. China E-mail: [email protected]

Abstract: Upon mapping swarm robots search to particle swarm optimization (PSO), we extend PSO algorithm to model and control swarm robots for target search at an abstract level. At first, we analytically compare the characteristics of different versions of PSO to facilitate design of robots control algorithm by tailoring and transferring parallel asynchronous property of PSO into case of swarm search. Next, a concept of time-varying character swarm is proposed to afford decision-making on the best-found position according to swarm intelligence principles. Based on control principle of expected evolution position of individual robot, an asynchronous communication policy for swarm search is presented. In this case, each robot detects and fuses real-time heterogeneous target signals propagating over search environment in parallel fashion as fitness evaluate in PSO every time step. Accordingly, a series of expected evolution positions of each individual robot can be decided. Thus, each robot moves respectively toward its current expected position, controlled under related control laws. The need for number of time steps depends on kinematics and dynamics constraints of real robot. Meanwhile each robot evaluates those positions in which it is situated every time step, updating its cognition as soon as a better finding of itself has been found, and updating the shared information and broadcasting this message all over the character swarm if a better finding of swarm has been found. At the same time, each robot listens to the change of shared information. Either knowing change caused by certain neighbour or arriving at the current expected position, robot starts to compute new expected position and turn out next round of control at once. Simulation results indicate that the presented evolution position-based asynchronous communication strategy has advantage over the popular control strategy in search efficiency. Keywords: swarm robots; target search; particle swarm optimization algorithm; parallel asynchronous control; communication strategy. Reference to this paper should be made as follows: Xue, S D and Zeng, J C. (2009) ‘Parallel asynchronous control strategy for target search with swarm robots’, Int. J. of BioInspired Computation, Vol. 1, No. 1, pp. xx–xx. Biographical notes: Xue S D received his MSc in System Engineering from Taiyuan University of Science and Technology in 2004. He is currently Associate Professor at the Department of Computer Science and Technology, TUST, Taiyuan, P. R. China. He is now pursuing his PhD degree in Control Theory and Control Engineering at Lanzhou University of Technology. His current research interest includes industrial control, swarm intelligence and swarm robotics.

Zeng J C is a Professor and Tutor of Ph.D. students at the Department of Computer Science and Technology, Taiyuan University of Science and Technology, Taiyuan, P. R. China. He is now a Vice-President of TUST. He received his MSc and PhD in System Engineering from Xi’an Jiaotong University in 1985 and 1990, respectively. His current research focuses on modelling and control of complex systems, intelligent computation, swarm intelligence and swarm robotics. He has published more than 200 international journal and conference papers. From 1990s, he has been an invited reviewer of several famous scientific journals. Zhang J H received his MSc in Applied Computer Technology from North University of China in 2003. He is currently Lecturer at the School of Electronics and Computer Science and Technology, North University of China, Taiyuan, P. R. China. He is now pursuing his PhD degree in Control Theory and Control Engineering at Lanzhou University of Technology. His current research interest includes evolution computation and swarm robotics.

1

INTRODUCTION

Particle swarm optimization (PSO) is a global, stochastic search algorithm and evolutionary computation method first proposed by Kennedy and Eberhart, being derivative-free and population-based (Schutte et al, 2004; Zeng et al, 2004). As one of efficient tools of modelling and control as well as simulation, it can be used to model swam robotic systems at a high abstract level and to control swarm robots cooperatively (Pugh and Martinoli, 2007). Bio-inspiringly, the original version of PSO algorithm works in parallel fashion in nature. As for those traditional parallel algorithms, they can be classified according to granularity (Xu and Zeng, 2005). The same applies to the taxonomy of different versions of PSO. Wang et al (2007) present a parallel version of PSO based on parallel model with controller. The communication cycle of algorithm influences on the speedup significantly. Huang and Fan (2006) propose a version of parallel PSO with island population model. It partitions the evolution group into several sub-groups and places them respectively on different processors to evolve, communicating at any time in the evolution procedures. Zhao et al (2005) introduce an idea of migration into PSO algorithm and present a parallel version based on multigroups. All sub-groups are collected to get the optima by comparison after evolved for several generations. Then the particle having best fitness is transferred into all sub-groups as a migration and used to take place of arbitrary a particle randomly. These above-mentioned algorithms are all attributed to coarse-grained parallelism. To the contrary, the fine-grained parallel algorithms are characteristic with majority advantages, i.e., maintaining diversity of groups, restraining pre-mature and holding the highest degree of parallelism, etc. Therefore, Schutte et al (2004) develop an approach to implement parallel PSO on multi-processors computation environment. In particular, to overcome the communication bottle-neck due to massively increasing in size of fine-grained PSO (Li et al, 2006), Chang et al (2005) design three types of communication strategies according to the degree of correlation between algorithmic parameters. These above-mentioned parallel versions of PSO are all synchronous ones. As for control of swarm robots search, its footstone is attributed to swarm intelligence so that we may deal with in similar way.

On the other hand, those evolutionary algorithms carried out in asynchronous manner possess special computation merits. Koh et al (2006) once point out that asynchronous algorithm is capable of improving efficiency in the heterogeneous environment. For instance, the asynchronous PSO proposed by Luo and Zhong (2005) makes each particle acted as an independent individual and the search of population performed asynchronously. Aiming at the differences of heterogeneous computing environments and the time cost of fitness-evaluate, Venter and SobieszczankiSobieksi (2006) introduce asynchronous pattern into PSO to try to enhance the speedup. In like manner, we have to take the problem of asynchronous control over swarm robots into consideration when designing control algorithm because robots in real world communicate asynchronously. In some researchers’ opinion, being special type of multirobotics, swarm robots inevitably involve asynchronous parallel operation too (Henrich and Honiger, 1997). As one of novel tools of modelling and control to swarm robotic systems, PSO can be extended and used to model at an abstract level and control swarm robots cooperatively (Pugh and Martinoli, 2007). No doubt that the above-mentioned extended PSO approach has to take parallelism into account. The individual robots distributing in search space makes cooperation control algorithms parallel in nature. Besides, differences in sampling frequency of sensors independently carried by individual robot and communication delays make it more realistic to control swarm robots in an asynchronous fashion. How to move nature-inspired algorithms to parallel, asynchronous and decentralized environment (Ridge et al, 2005)? There has so far been fairly little research in this area. Within the field of swarm robotic systems, one area that has received more attention is target searching, where a group of autonomous mobile robots work together to localize one or more potential targets. Especially, swarm robots may be used to carry out the dangerous, dirty and dull missions taking the place of human being for search and localize in disaster scenarios, e.g., searching for victims in coal and gas outburst accidents. Operation on the spot can be done massively in parallel, significantly decreasing the time taken to locate the targets and improving robustness against failure of single agents by redundancy as well as individual simplicity. Consequently, the problem of asynchronous parallel control over swarm robots is proposed.

This paper is organized as follows: Section 2 analytically compares the properties of different versions of PSO, indicating that the parallel asynchronous implementation mode is perfect among four modes. Section 3 maps the case of target search with swarm robots to PSO using idealizer. Also, upon extending PSO and simplifying the kinematics and dynamics properties of robot in real world, an abstract mathematical model of swarm robotic system is given. Based on this, an asynchronous communication strategy for interactions among character swarm members is introduced. In Section 4, we show the simulation results and discuss the related implications and draw conclusions on our presented parallel asynchronous communication strategy and control algorithm. Finally, we conclude the paper in Section 5. 2 PROPERTIES OF DIFFERENT VERSIONS OF PARTICLE SWARM OPTIMIZATION ALGORITHM

The standard particle swarm optimization algorithm has a key idea about velocity and position of particle (Zeng et al, 2004), which is used to optimize nonlinear functions at the beginning of development and is expanded to more applications gradually. The algorithm tries to find potential solutions of problem by imitating behaviours of social creature, e.g., birds flying over space. Taking fitness of given function as evaluate metrics, this algorithm adjusts the velocities and positions of particles representing solutions of problem to obtain optimum eventually. PSO is based on possessing many desirable properties that we would like to transfer to our swarm robotic systems. One of them is that PSO operates in parallel and asynchronously (Ridge et al, 2005), which is consistent with the biological significance of swarm algorithm. 2.1

Particle Swarm Optimization

Particle swarm optimization is based on the sociological behaviour associated with bird flocking and other animals’ moving (Zeng et al, 2004). Each particle is capacitated to fly over the space with changeable velocity. And a series of positions in which particles are situated are viewed as potential solutions of problem. Then, the best position of particle itself and swarm respectively having the best fitness can be decided. Farther, the behaviour of particle can be adjusted according to its inertia, individual experience (cognition) and social experience (learn). The velocity and position update equations of standard PSO at time kt+1 are executed as follows: v k +1 = wk v k + c1r1 (p k − x k ) + c2 r2 (p k − x k )

(1)

x k +1 = x k + v k +1

(2)

i

i

i

i

i k

i

i

i

g

i

where x is the position vector of particle i at time kt, and i v k is the corresponding vector of velocity, the subscript k is the abbreviation of time increment kt. Note that the two i vectors have the same dimensional variables. While p k and g p k are the best-found positions of particle i itself and the swarm before time k respectively. They represent history

cognition of particle, i.e., individual experience of particle and social experience respectively. The variable wk is the inertia coefficient which can slow down over time to prevent explosions of the swarm and ensure ultimate convergence. In addition, r1, r2 are sampling of uniformlydistributed random variable in [0, 1]. And c1, c2 are positive cognition and social acceleration constants, respectively. 2.2

Running properties

To explore the characteristics of different versions of PSO, we can start in accordance with some main aspects such as fitness evaluate in a serial or parallel way, sensing and reacting to companions and environment synchronously or asynchronously as well as velocity adjusting and position update, etc. As a consequence, we can divide the different versions of PSO into four modes according to the different combinations of properties to facilitate the comparison of them and draw our conclusions. 2.2.1 Mode I: serial evaluate + synchronous update Particle swarm optimization algorithm is traditionally considered to be implemented serially and synchronously on the single-processor computing environment. The execution procedure can be described with the following pseudo code (Koh et al, 2006): INITIALIZE CONSTANTS INITIALIZE VELOCITIES & POSITIONS PERFORM ALGORITHM For k = 1, num. of iterations For i = 1, num. of particles i Evaluate cost function f ( x k ) End Check convergence i g i i Update p k , p k , v k +1 , x k +1 End OUTPUT RESULT It can be seen that fitness-evaluate of all particles is carried out by sending them to the single-processor environment and calculating one by one in optimization process using cost function. And the best-found positions of particle itself and of swarm are determined by fitness comparison in the same way. The update of all velocities as well as positions occurs simultaneously at each iteration after completing fitness evaluate on all particles. 2.2.2 Mode II: serial evaluate + asynchronous update Similar to Mode I, fitness evaluating in serial manner with cost function. But the update of memory about individual and society occurs asynchronously. Immediately updates on velocity, position of certain particle as well as its history cognition and the best of swarm are carried out as soon as completing fitness evaluate on the cost function of this individual. The procedure can be elaborated with the following pseudo code (Koh et al, 2006). It is clear that fitness evaluation and process of information update on different particles are not completed at the same time.

the asynchronous evolution approach does not need a synchronous point to determine new velocities and positions in the process of iterations, as showed in Figure 2 (Koh et al, 2006). The optimization can proceed to the next iteration without waiting for the completion of all function evaluate from the current.

INITIALIZE CONSTANTS INITIALIZE VELOCITIES & POSITIONS PERFORM ALGORITHM For k = 1, num. of iterations For i = 1, num. of particles i Evaluate cost function f ( x k ) Check convergence i i i g Update p k , p k , v k +1 , x k +1 End End OUTPUT RESULT

2.2.5 Comparison of running efficiency

2.2.3 Mode III: parallel evaluate + synchronous update The most popular implementation of parallel PSO is to simplify fitness evaluate on particles within iteration in parallel, without changing the overall logic of the algorithm itself (Venter and Sobieszczanki-Sobieksi, 2006). And the property of synchronous refers to all particles being sent to parallel computation environment and moving from the current iteration to the next only if the fitness of all particles has been gotten (Schutte et al, 2004). To demonstrate the internal relationship of algorithmic logic better, we illustrate with flow chart rather than pseudo code, as showed in Figure 1 (Koh et al, 2006). In this case, the existence of load imbalance in computation environment may significantly influence on its parallel performance. These impacting factors include: (1) a heterogeneous distributed computing environment where processors with varying computational speed are combined into a parallel computing environment; (2) time spent in fitness evaluation, i.e., using a numerical simulation to evaluate each particle, where the required simulation elapsed time depends on the particle being analyzed; (3) the number of particles cannot be equally distributed among the processors in the computation environment, i.e., having a swarm size that is not an integer multiple of the number of processors (Koh et al, 2006). Initialize

As stated above, different versions of PSO have different algorithmic properties in implementation. But the most desirable properties that we would like to transfer to our swarm robotic systems may be controlling in parallel and asynchronously (Ridge et al, 2005). Indeed, as one of nature-inspired algorithms, parallel asynchronous version of PSO makes algorithm more efficient and parallel running in performing. In order to illustrate this useful aspect, we can analytically compare the different properties obtained in previous sub-sections on their efficiency of time operations in single generation of evolution. Consider the need of elapsing time for one generation of evolution and the completed tasks within this time duration. Assume that the process of one generation of evolution consists of fitness evaluate, waiting for update and update, whose required time be t , teval , t wait and tupd , respectively. But the update time may nearly be considered to be 0, that is tupd ≈ 0 . The following formula thereupon can be gotten ti = ti _ eval + ti _ wait , i = 1, 2, " , N

(3)

Suppose that particle k consumes the maximum evaluate time and the synchronous update assigned on basis of time tk_eval. And then t k _ wait = 0

(4)

But t j _ wait > 0 ( j ≠ k )

(5)

t k _ eval  max ti _ eval = t k , i , k = 1, 2, " , N

(6)

# of Particles

# of Iterations

f(x)

f(x)



f(x)

Check Convergence

Update

Figure 1 Parallel synchronous PSO

2.2.4 Mode IV: parallel evaluate + asynchronous update Parallel asynchronous implementations can enhance running efficiency (Venter and Sobieszczanki-Sobieksi, 2006). Also,

Upon holding the above definitions, we can compare the four modes on their algorithm efficiency, i.e., required time and amount of completed tasks within one single generation of particle evolution. 1) Mode I. The required time of evolving for only one generation is as follows N

k −1

i =1

i =1

t ss = ∑ ti _ eval = ∑ ti _ eval +

N

∑t

i _ eval

+ tk

(7)

i = k +1

The completed tasks consists of fitness evaluate and update of this generation. And the average elapsing time of all particles from completing evaluate to update is as follows N

t ss _ wait =

N

∑∑t

j _ eval

/N

(8)

i =1 j = i +1

2) Mode II. The required time of evolving for only one generation is as follows

Table 1 Comparison of Properties of four modes

Initialize

Mode

# of Particles

Required Time

Completed Tasks

N

∑t

I

i _ eval

> tk

N × (Eva+Upd)

i _ eval

> tk

N × (Eva+Upd)

i =1 N

f(x)

f(x)



i =1

f(x)

III

Check Convergence & Update

IV

f(x)

2.3

Figure 2 Parallel asynchronous PSO N

(9)

i =1

The completed tasks consists of fitness evaluate and update of this generation. Clearly, this mode eliminates the waiting time in Mode I. However, the required fitness evaluate in the next generation is not able to be done in a singleprocessor computing environment when this processor is used to the tasks of current generation. 3) Mode III. The required time of evolving for only one generation is as follows t ps = tk < t ss

(10)

The completed tasks in this generation of evolution consists of fitness evaluate and update of this generation. Of all particles, N-1 individuals except particle k have to wait for update at some synchronous point. The average waiting time of N-1 particles is as follows k −1

∑ (t

i =1

i = k +1 N

N

k

− ti _ eval )) / N

(11)

= t k − ∑ ti _ eval / N = t k − t ss / N i =1



+α × ( N − 1) × Εva2

Mapping swarm search to PSO

The swarm intelligence is inspired from the phenomena of individuals in social creature following simple behaviour rules and emerging intelligence by local interactions. In general, PSO is viewed as a useful tool to optimize nonlinear functions. The virtual particles are guided by the best-found positions having optimal fitness, iterating the velocities and positions and approaching step by step to the optima of given functions. Here, particles have perfect information about itself and neighbours’ positions. Based on actual background, swarm robots study extends the swarm intelligence and its optimization algorithms. The individuals follow the simple behaviour rules too, searching for one or more potential targets by local interactions. The difference between PSO and swarm robots search lies in the conditions of environment and the complexity caused by idealizing degrees or extents. Consider the effect factors, we can get the mapping between the two cases, see Figure 3. These factors are as follows (Pugh and Martinoli, 2007): 2.3.1 Physical property In PSO, particles have infinite acceleration and no intrinsic limitations on velocity. In real world, robots have limits to how quickly they can move. In most robot search scenarios, it would take a substantial amount of time for a robot to cross the search environment at maximum velocity. 2.3.2 Search space

4) Mode IV. The required time of evolving for only one generation is as follows

t pa = t k < t sa

tk

N × (Eva+Upd) N × (Eva+Upd)







f(x)

t sa = ∑ ti _ eval

tk

Note: 0 < α < 1 , and Eva2 in the last row and column represents part of fitness evaluate task that the next generation needs.

f(x)

t ps _ wait = ( ∑ (t k − ti _ eval ) +

∑t

II

(12)

The completed tasks in the generation of evolution consists of fitness evaluate and update of this generation. In addition, this mode eliminates the waiting time in Mode III. At the same time, those N-1 particles having completed evaluate tasks prior to particle k have also carried out part of evaluate task of the next generation before moment t k in advance. In a sense, Mode IV possesses the most desirable advantages among all four modes. In summary, we can numerically compare the serial/ parallel and synchronous/asynchronous properties for four modes (see Table 1).

Robot moving depends on both its sense and the best experience among its neighbours. That is, there is no fitness function in our algorithm. In the first step of our work, we simply assume each robot has a sensor to detect the intensity of the target signals, which has computational significance only but has nothing to do with the third party fitness function in the process of target search. 2.3.3 Fitness evaluate PSO algorithm works by having particles to update their positions within the closed search space when iteration of algorithm occurs. Robot search operates in continuous time. We can approximate this jump by having the robot to move for a fixed amount of time (time step) at the proper velocity towards its desired position.

3 Swarm Search

Idealize continuous

discrete

relative

absolute

robot

particle

local

global

signal

fitness update





plan

TARGET SEARCH WITH SWARM ROBOTS

PSO

Figure 3 Mapping swarm robots search to PSO

2.3.4 Discrete iteration & continuous control The particles in PSO have perfect knowledge about space positions. They can also get positions of other particles via virtual communication, i.e., the localization mechanism is global there. Although robot can localize itself and its neighbours in global fashion, it is more reasonable to localize both itself and obstacles in environment by making use of systems similar to Spears et al (2006). In particular, those global localization systems similar to GPS mechanism usually fail in indoor environment. 2.3.5 Neighbourhood The standard neighbourhood structure in PSO requires particles to share swarm information with others anywhere in search space. Robots often have strict limitations on their maximum communication range, power consuming and so on. In this context, it makes more sense to pre-define a neighbourhood structure based on their mutual positional relationship in the search space, where vicinal robots belong to the same neighbourhood and corresponding interactions are conformed to itself neighbourhood. Upon that we will give a concept of time-varying character swarm in the next section to facilitate decision-making on the best-found positions. Now, we define at first a robot’s neighbourhood as all other robots within some fixed geometrical distance (see Figure 4, this distance may be the maximum communication range R). Because robots are constantly in motion for search, this means that the neighbourhood structure is dynamic at different time moments. This is the reason why we call the character swarm ‘time-varying’ in the next section.

Figure 4 Neighborhood structure of swarm robotic system

When working miners are confronted with natural forces or man-made disasters, e.g., gas outburst accidents in closed laneways, they would be likely to lose touch with outside and be trapped underground. Unfortunately, such search operations here tend to be very difficult. Swarm robots may therefore be used to carry out missions taking the place of human beings. Extending PSO to model swarm robotic systems, Pugh and Martinoli (2007) investigate the problem of target search. However, robot there is assumed to have only one sensor to detect the intensity (concentration) of the ideal signal emitted by potential target. This is of theoretical significance only because the work is based on the assumption of continuous sense to one source signal. As a matter of fact, there are real-time multiple types of signals in search environment. As for the control swarm robots in search-and-rescue operation in coal mines, there exist several heterogeneous signals, including continuous gas, intermittent cry-for-help as well as periodic RF waves. To accomplish the search task, there is need to fuse the realtime heterogeneous signals appropriately to determine the decision sensor under different sensory conditions (Xue and Zeng, 2008c). In addition, the inherent parallel property caused by spatial interspersed of robots in search space, differences in sampling frequency of sensors independently carried by individual robots and communication delays make it practical to control swarm robots in asynchronous fashion. As a consequence, we try to move the parallel asynchronous properties of PSO to control swarm robots after tailoring or modifying. 3.1

Simplifying target signals detection

Imagine that a single victim is situated in a large-scale area. The extent of this 2-D surface enclosed within a boundary is 150 x 150 unit (see Table 2). A swarm of homogeneous robots are deployed into this area to search for the victim, moving about according to the swarm intelligent principles. Each robot is equipped with an appropriate electronic sensor, assuming it cannot always read the correct intensity value everywhere and sensor errors are considered as a kind of random noise. Compared with the scale of the search area, communication range of robots is related narrow. We also assume that no robot in target searching has capability of global communication. Based on the assumptions, parallel asynchronous communication strategy is designed and control algorithm is developed as well as simulation experiments are conducted to evaluate effects. To compare the results, we initialize a target at a fixed scope in the environment. In addition, the environment is ‘static’, there is no obstacle in the environment, and the intensity of signals at each point depends on the distance from the target. The farther is away from the target, the lower the intensity of the signal. In order to simplify simulation, we use the following mathematical model to generate the intensity of each position in which each robot is situated in the environment (Pugh and Martinoli, 2007).

I (d ) =

d >r ⎧0, ⎨ 2 ⎩ P /d + η (), d ≤ r

(13)

where P is signal power, d is the distance from robot to target, r is the radius of detection of sensor and η() is a sampling of additive Gaussian noise, which satisfying distance inverse square law within the reaction range of the sensor. Therefore, if the distance from target to robot is greater than the sensor reaction range then I (d) = 0. 3.2

Modelling swarm robotic system

Upon mapping PSO to swarm robotic systems (Xue and Zeng, 2008a), the swarm robotic system can be modeled with extended particle swarm optimization approach (Pugh and Martinoli, 2007; Xue and Zeng, 2008b): v k +1 = wk v k + c1r1 (p k − x k ) + c2 r2 (p k − x k )

(14)

v k +Δk = v k + ( v k +1 − v k ) Δk

(15)

i

i

i

i

i

i

i

g

i

i

i

where x k +1 is the expected velocity vector of robot i at time

k+1. ∆k is a factor to decrease the step taken when robots move about in the search space. By the way, we add the ∆k factor in order to make individual robots have a ‘smoother’ displacement, and therefore a more refined search may be desirable. More importantly, this factor reflects the kinematics properties of real robot because robot may have to take several time steps to move to an evolution position from the previous evolution one. In addition, the parameter ∆k is somehow different from the others, as it is not related to the physical nature of the problem. However, we can also understand it in this fashion: robot in real world has inertia due to its mass (Xue and Zeng, 2008b). In fact, the moving speed of robot has to be limited to the locomotion capacity of robot, i.e., the kinematics and dynamics constraints of robot must be satisfied. The following is simplifying process based on this principle. Where, vmax stands for the maximum velocity of robot.

v ik +Δk

⎧ v max , v ik +Δk > v max ⎪ = ⎨0 , v ik +Δk < 0 ⎪ i i ⎩ v k +Δk , 0 ≤ v k +Δk ≤ v max

(16)

Upon that each robot moves toward the current expected evolutionary position for a little distance every time step according to the above speed limitations. x k + Δk = x k + Δkv k + Δk i

i

i

(17)

Formulas (14) - (17) constitute our mathematical swarm robotic system model. 3.3

Time-varying character swarm

Cooperative control over swarm robots can be carried out after system modeling. But such control algorithm works on the base of signals detection and fusion. While the relative independency of individual robots demands the evaluation

on signals being complemented in their on-board processors rather than in processing centre. And the limitations to hardware and power supply make it impossible that robots interact successfully beyond communication range of robot. Apparently, the swarm that each robot dwells in differs from others, since every robot selects itself and all other robots within certain distance (usually communication range here) in the search space as its evolving swarm. Accordingly, we present a concept of time-varying character swarm for signals comparison and decisionmaking on the best-found positions. Take the position of one robot at time k as the centre, the communication range as radius to construct a limited circle neighbourhood. The set of those robots covered by this neighbourhood is named as the character swarm of this robot at time k. This results in a variable of number of neighbours, as a robot may be close to very few or very many other robots at different times. As a consequence, the size of character swarm depends on the communication range of robots and the relationship of relative positions at time k. This implies the property of time-varying in character swarm of our swarm system. 3.4 Moving parallel asynchronous characteristics to swarm robots control

Assume each robot is equipped with different types of sensors, including sound, odor and radio frequency sensors. The fusion of detected heterogeneous signals can be used to make decision on the best-found position (Xue and Zeng, 2008c). But we simplify the fusion with (13). The control over robots should be done in a fine-grained way, as individual robots detect target signals independently at the same time and fuse them as fitness evaluate to determine the best-found position by intensity (concentration) comparison (Xue and Zeng, 2008b). Due to heterogeneous hardware caused by parameter distribution of sensors and actuators, difference of detecting and fusing time required among different positions because of multi-sources heterogeneous signals diffusing, part of swarm robots having completed signals detection and fusing have to wait for update at a synchronous point. The reason is that the update depends on the slowest robot (Schutte et al, 2004). As shown in Figure 5, to get an insight into the mechanism, we select randomly processes of four robots from the related swarm and make use of their behaviors to illuminate (Kolda and Torczon, 2003). Of all line-types in Figure 5, horizontal real line represents detecting & fusing time and horizontal grey line represents wait-for-processing time. By this means, velocities and positions of all robots are updated at the same time point until evaluate task having fully completed. The update occurs at synchronous time k = 2, 5, 8 respectively. As mentioned above, update of velocity vector of particle is the key in particle swarm optimization algorithm. To update the velocity of particle in an asynchronous way, the velocity and individual history cognition should be updated directly after the completion of single particle. While the best-found position can be pg and should keep it until the next iteration occurs. As for the swarm robotic system, the

built-in each robot in parallel, which fusion of signals is immediately compared with the best-found of robot itself and swarm. The individual information is updated every time step, while the shared information within swarm is updated in an asynchronous way according to the following communication strategy. 3.5

Figure 5 Part of robots wait for synchronous update

key to asynchronous implementation of control algorithm is to partition the individual update behavior from the group update behavior to take the different property into account. These update behaviors include updating the individual information and the shared information. Similarly, as for the asynchronous particle swarm optimization, the update action starts after fitness evaluating, while the update of shared information starts in the last at each iteration (Venter and Sobieszczanki-Sobieksi, 2006). For the case of target search with swarm robots, detection and fusion of target signals depends only on their own on-board processor rather than so called ‘processing centre’. The processors work independently and in parallel between one another. The individual robot updates its velocity, position and history cognition as soon as completing the detection and fusion of target signals and making decision on the best-found positions by comparison with the best of its character swarm (Zhao et al, 2005). But the update of the shared information of swarm should start in accordance with asynchronous control strategy. Before describing our asynchronous strategy and corresponding control algorithm, we present several notions about the communication policy in advance to understand better.

3.4.1 Real & expected velocity As for PSO, velocity vector of particle is the key to this algorithm. In order to update the velocity asynchronously, position of particle must be updated and history experience about the best-found of itself and of its swarm must be remembered. As for asynchronous control over target search with swarm robots, however, the first key is to make a difference between individual information and the shared information update. The second is that the update behavior of individual robot has to confine to its real capability, which involves real velocity and expected velocity. The former has practical sense, depending on real design and implementation of robot, but the latter has an algorithmic sense only. Individual information includes the best history and expected velocity and position, while the shared information includes the best-found position of swarm and the corresponding signal intensity.

3.4.2 Individual & shared inf. update As for asynchronous PSO, update of individual information occurs as soon as completing fitness evaluate. But as for asynchronous control of swarm robots search, target signals are detected and fused independently by on-board processor

Asynchronous communication strategy

The difference between synchronous and asynchronous control pattern lines in their update types (Zhao et al, 2005). Differing from the ideal particles in PSO, robot possesses mass in real world that causes it to have inertia when moves about in the search environment. Therefore, as for same an evolution position of certain particle, it is unlimited to reach at any speed in PSO case, while robot may arrive at the same position in several time steps due to constraint of kinematics and dynamics as the evolution position is only expected (Pugh and Martinoli, 2007). These factors should be taken consideration when we design the asynchronous communication or interaction strategies. According to this control principle, update of the shared information cannot be carried out in the current iteration before the previous evolution position having not reached. That is to say, robots communicate when they arrive at the decided expected or desired evolution positions regardless of the iteration history and the requirement for next iteration. Robot does not communicate with each other between two continuous evolution expected positions every time step, which makes robot moving continuously, saving power and decreasing communication time-consuming.

3.5.1 Monitor Each robot detects and fuses the multi-source heterogeneous target signals and updates its cognition every time step. Also, robot tries to find a better position than the best-found positions within its character swarm. At the same time, robot listens in the change of the shared information of its swarm. And this robot computes its next expected position and starts new round of control as soon as having known the update of shared information by certain neighbour. By this way, we consider two sub-processes of communication as monitor and broadcast to describe interactions among robots clearly.

3.5.2 Broadcast After the current expected position is decided, each robot moves toward its destination. The process may consume some time steps, which depends on its locomotion ability with kinematics and dynamics constraints because it can only move a limited distance in one time step. But this robot will compute the next expected evolution position, update the shard information of swarm and broadcast this message all over the character swarm at once. Those neighbours listening in the change of the shared information will terminate the current process that moving toward the current expected position and turn out compute the next expected position and move toward the new destination.

3.5.3 A better position be or not be found In the process of moving toward the current evolution expected position, each robot detects and fuses the target signals to decide the best-found position and updates its own cognition every time step. Therewith, they listen in the change of the shared information. The robot will compute new expected evolution position, broadcast this message all over the character swarm, and move toward the new expected position at once as soon as its finding excels the best-found, regardless of not reaching the current expected position. That is to say, knowing update of the shared information will trigger new round of control process whichever its state, in spite of such trigger caused by itself or by its certain neighbour. To visualize the relationship of terms about several expected positions, we can reveal them with Figure 6. Where, numbered circles stand for the expected positions. The real and grey lines represent passing path of robot and planned but not passing path, respectively. Suppose robot i is at certain point on the real line segment that joins the previous expected position and the current expected point. According to the strategy, robot i moves toward the current expected position along planned straight line from the previous expected. It turns out the next expected position as soon as having found a better position or known the change of the shared information updated by some neighbor at the trigger point. While the real line segment that joins early expected position and the previous expected would be considered that robot i neither finds a better position nor knows change of the shared information. Therefore, this robot decides its current expected position when it arrives at the previous expected position by communicating with its neighbors and computing with corresponding conditions. In addition, robot may move from an expected position toward the successive expected one for several time steps, which depends on the locomotion capability.

I max ← I k ; //remember best-found sig. i

i

p k ← x k ; //remember best-found pos. i

i

INITIALIZE SHARED INF. g i I max ← I k ; //best-found sig. p k ← x k ; //best-found pos. g

i

CONFIRM INDEX OF BEST INDIVIDUAL; While (1) k ← k +1; INTERACTIONS AMONG SWARM CONFIRM NEIGHBORHOOD; For j=1; j< num. of neighbours; j++ j COMPUTE I k ; I max ← max( I k , I k ) ; g

i

j

p k ← x k , arg max{I ( x k ), m ∈ (i , j ) } ; g

m

m

m

COMPUTE EXPECTED VEL. & POS. v k +1 ← wk v k + c1 r1 (p k − x k ) + c2 r2 (p k − x k ) ; i

i

i

i

g

i

x k +1 ← x k + v k +1 ; i

i

i

wk ← c3 wk ; // 0 < c3 < 1

compute ρ expec = || x k − x k +1 || ; i

i

COMPUTE REAL VEL. v k + Δk ← v k + ( v k +1 − v k ) / T ; i

i

i

i

CONSTRAINTS PROCESS; n ← 0 ; // counter of time step do //move toward current expected pos. n ← n +1; x k + n×Δk ← x k + n × Δkv k + Δk ; i

Trigger Point 2

INITIALIZE CONSTANTS; i i INITIALIZE VEL. v k & POS. x k ; INITIALIZE TGT. POS.; INITIALIZE INDIVIDUAL COGNITION i COMPUTE SIG. INTENSITY I k ;

3

i

i

COMPUTE ρ now = || x k + n×Δk − x k +1 || ; i

i

i

1

4

1. Early expected pos. 2. Previous expected pos. 3. Current expected pos. 4. Next expected pos. Figure 6 Sequential expected evolution positions of Robot i

COMPUTE SIG. INTENSITY I k + n×Δk ; LISTEN UPDATE OF SHARED INF.; i g If I k + n×Δk > I max then; //capture better finding I max ← I k + n×Δk ; //update cognition value i

i

x k +1 ← x k + n×Δk ; //update cognition pos. i

i

I max ← I k + n×Δk ; //update shared inf. g

x k +1 ← x k + n×Δk ; g

3.6

Algorithm description

Based on the above, an asynchronous control algorithm for target searching with mobile swarm robots is proposed. This distributed algorithm can be carried out on each individual robot in parallel. Without loss of generality, we can describe the algorithm run on robot i as follows: INITIALIZE k ← 0 ; //counter of time step

i

i

BROADCAST ALL OVER THE SWARM; break; If shared inf. updated by neighbour then; COMPUTE NEXT EXPECTED POS. while ρ now > 0.1 × ρ expec ; //reach expected pos. If succeed in search break; OUTPUT RESULTS

4

SIMULATION AND DISCUSSION

The performed simulation experiments depend on the multithread technology. In simulation, the main thread initiates all control algorithmic constants, velocities and positions of individual robots as well as the shared information within character swarm. Then each robot is derived to independent thread object respectively. These thread objects hold a referral to same a shared information object (Luo and Zhong, 2005). When the swarm robots start to search for a static potential target in parallel, each individual detects and fuses independently target signals at the same time as fitness evaluate in PSO (Xue and Zeng, 2008b). Comparing the signals value with the best-found within its character swarm at time k, robot makes decision on the best value and bestfound position it intends to move toward in the successive time steps. If the current finding (fusion of target signals) by robot has advantage over the best of itself, then the velocity and position of robot are updated immediately at any time step. But the shared information is not updated according to the aforementioned asynchronous control principle until the finding of some robot is superior to the best-found of swarm. At the same time, each robot listens in the change of shared information. It is being ready to compute next expected position and start new round of control at any time. In the process of target search, the main thread is also responsive for the iteration-counting and judgement of terminate criteria. Hence, the experiment will be terminated as soon as the search turns out to be successful or the pre-established searching time elapsed. Because the simulation involves updating operation to the same shared information object, we have to take synchronous visit among different threads into account carefully (Luo and Zhong, 2005). 4.1

Simulation

We can programme and simulate algorithm presented in the previous section to validate the parallel asynchronous communication strategy. During the runs, trajectories of all robots are recorded in formatted data files. And the common configuration of parameters used in experiments is shown in Table 2. Note that these parameters here have mathematical meaning rather than physical significance. Aiming at test of our parallel asynchronous communication strategy and corresponding control algorithm, we compare them with the following three communication strategies: 4.1.1 Asynchronous communication strategy based on fixed communication cycle principle As for this asynchronous pattern, communication cycle is named as number of evolution iterations. Similar to the coarse-grained parallel particle swarm optimization, we can make robot i interact every n time steps to decide the bestfound position within its character swarm (Wang et al, 2007; Huang and Fan, 2006; Zhao et al, 2005), regardless of whenever updating of the shared information. To improve systematic running efficiency, a communication cycle can be assigned to several fixed multiple of time steps. Let

communication cycle be T and time step be t, then we can set T = nt (n = 1, 2, 3,…). Besides, different robots can be allowed to have different sampling frequencies or time steps. On the other hand, the best-found signals value and position of character swarm should be remembered before the next iteration starts. 4.1.2 Asynchronous communication strategy based on absolute evolution position principle According to this control principle, the shared information is not updated before having reached the current evolution position, regardless of any better signals reading appearing in the process of moving toward the current evolution position. That is to say, robots only communicate when they arrive at the decided expected evolution positions rightly, regardless of signals reading. In a sense, this asynchronous communication strategy can be called ‘static’ expected position-based and the presented strategy in the above section can be ‘dynamic’ position-based. Though it is impossible for each robot reaching respective current expected position at the same time step, all members communicate synchronously. The main difference between this strategy and the topic of this paper is whether robot may act under different conditions before having arrived at the current expected position. No communication between two ideal evolution positions makes robot moving continuously, saving power and decreasing required time for search. However, this control strategy may cause missing bestfound position having better signals reading than previous best positions in the process of moving toward the current evolution position. 4.1.3 Synchronous communication strategy To compare the running properties of algorithm, we directly cite the results of synchronous version of swarm robots search. In this case, all individual robots detect and fuse target signals independently on each on-board processor in parallel and interact with neighbours to make decision on the best-found position and the evolution position. When iteration occurs every time step, each robot computes its expected position, updates its history cognition (signals intensity and best-found position) and updates the shared information (signals value, best-found position and index of the individual having the best signal) within swarm in which it is situated (Xue and Zeng, 2008b). We perform the experiments of four strategies for 50 runs repeatedly and respectively to research success rate of searching and efficiency with statistics. Here, we define the success of searching as the best position of swarm is away from target coming in the range of vision sensor (suppose each robot is also equipped with vision sensor, but keep switched off in the course of nature-inspired search) (Kowadlo et al, 2006). That is to say, if one or more robots are close to the target enough, the run is considered to be successful. Further, success rate is defined as successful running-times to total search times. In addition, we define search efficiency factor as reciprocal of the mean evolution generations required in one successful search. In fact, the

metric of concerning efficiency is elapsed time, which indicates the iterations in simulation indirectly. In a sense, this metric makes the mathematic meaning conform to physical significance of problem. In summary, the former metric is to examine convergence of algorithm and the latter is to examine the speed of target search. Based on the presented asynchronous communication strategy and corresponding algorithm as well as simulation settings, we can show the results in next sub-section. Table 2 Simulation experiment settings

Symbol E R r N vmax t 4.2

Meaning

Value

Search Space Max Comm. Range Detect Radius Num. of Robots Max Vel. Time Step

150 x 150 unit 50 unit 50 unit 9 2 unit/s 100 ms

Results

To make the comparison clear and facilitate our analysis, we can assign Roman numerals I, II, III and IV respectively to the above mentioned communication strategy, see Table 3. Further, the concerned statistics can be found there. Table 3 shows the trial times, success rate of trials and required mean generations for one successful search, depending on our asynchronous communication strategy and its counterparts. In particular, the simulations going with varying values of some parameters result in a relational graph between communication and search efficiency. As shown in Figure 7, the search efficiency varies when communication principle is adopted in search mission. The collected data demonstrate that all control algorithms can approach to very high success rate. But the search efficiency differs from with each other. 1) The communication cycle-based asynchronous control algorithm runs more efficiently than the ‘static’ evolution position-based one. But the value of communication-cycle T must be set appropriately. 2) As for the communication cycle-based asynchronous control principle, the required communication times and the time-consuming for a successful target search increases as communication cycle decreases. 3) As for the synchronous strategy, the corresponding algorithm runs efficiently. But it is impractical for control over swarm robots in the real world because there is no such synchronization mechanism to ensure interactions.

Table 4 Required iterations for strategy II

Comm. Cycle

Trial Runs

1 3 5 10 20 30 40

50 50 50 50 50 50 50

Success Rate (%) 100 100 100 100 98 100 100

Required Iterations 193.58 206.12 204.42 182.92 188.24 194.00 184.76

4) The ‘dynamic’ position-based asynchronous strategy presented in this paper possesses the most efficient running effect among three asynchronous communication strategies, see Figure 8. 4.3

Discussions

The analysis of interest is finding control strategy which is consistently more efficient. 1) As for the relationship between communication cycle and efficiency. The more frequent the velocity adjusts, the more time-consuming is required, the more inefficient the search algorithm runs because more communicating times is required when smaller cycle is assigned in target searching. 2) As for the modification to evolution position-based principle (including ‘static’ and ‘dynamic’). Robots may not arrive at some decisive evolution positions accurately. Then we modify the position-arriving principle to the positionapproaching principle, i.e., we decide the update time step depending on the degree of approach to the current evolution position from the previous one (e.g. 90 to 110 percent of distance between two adjacent evolution expected positions). 3) As for adjacent evolution expected positions. Consider an arbitrary individual robot, the distance between adjacent evolutional expected positions is related to the inertia of robot itself. Such distance increases as the inertia decreases in the course of search. 4) As communication cycle and time step or sampling period. Here, a communication cycle may consist of several sampling periods. Therefore, each-iteration-update approach is not taken in asynchronous control. Clearly, the best value should be remembered in those steps that update does not occurs.

Table 3 Results of running parallel control algorithms

Comm. Strategy

Trial Runs

I II III IV

50 50 50 50 x 7

Success Rate (%) 100 100 100 99.9

Efficiency Factor (x 10-3) 12.31 4.794 5.780 5.170

I : synchronous comm. strategy II : ‘static’ position-based asynchronous comm. strategy III: ‘dynamic’ position-based asynchronous comm. strategy IV: fixed comm. cycle-based asynchronous comm. strategy

Figure 7 Iterations-comm. cycle of strategy IV

Figure 8 Iterations-comm. cycle of strategy IV

5) As for different communication cycles between any two of swarm robots. There is no absolute homogeneity between any two robots. Besides, difference in sampling frequency of sensors, communication delays and processing speed imply different time step or sampling period. Therefore, different number of evolutionary generations is required by different individual robot when search succeeds. As a result, the average iterations are taken as the search efficiency statistics.

5

CONCLUSION AND FUTURE WORK

Extend particle swarm optimisation to be tool of model and control as well as simulation to model swarm robotic system, develop control algorithms and simulate in parallel and asynchronously. Introduce asynchronous control strategies into controlling individual robots in time-varying character swarm to update the shared information, depending on different communication principles respectively. The statistics of above experiments show that all communication strategies and their control algorithms are capable of searching target successfully. In the future work, we are going to take localization into consideration and explore the control strategy with real robots.

ACKNOWLEDGEMENT

The authors XUE Songdong, ZENG Jianchao and ZHANG Jianhua are currently sponsored by a National Natural Science Foundation of China grant (contract No. 60674104).

REFERENCES

Chang J. F., Chu S. C., Roddick J. F. and et al. (2005) ‘A Parallel Particle Swarm Optimization Algorithm with Communication Strategies’, J. of Information Science and Engineering, no. 21, 809-818. Henrich D. and Honiger T. (1997) ‘Parallel Processing Approaches in Robotics’, in Proc. of IEEE Int. Symposium on Industrial Electronics, Guimaraes, Portugal, July 7-11.

Huang F. and Fan X. P. (2006) ‘Parallel Particle Swarm Optimization Algorithm with Island Population Model’, J. of Control and Decision, vol. 21, no. 2, pp. 175-179+188. (in Chinese) Koh B., George A. D., Haftka R. T. and et al. (2006) ‘Parallel Asynchronous Particle Swarm Optimization’, Int. J. Numer. Meth. Engng., vol. 67, pp. 578-595. Kolda T. G. and Torczon V. J. (2003) ‘Understanding Asynchronous Parallel Pattern Search’, High Performance Algorithm and Software for Nonlinear Optimization, pp. 316335. Kowadlo G., Rawlinson D., Russell R. A. and et al. (2006) ‘Bimodal search using complementary sensing (olfaction/vision) for odour source localization’, in Proc. of the IEEE Int. Conf. on Robotics and Automation, Orlando. Li J. M., Wan D. L., Chi Z. X. and et al. (2006) ‘A Parallel Particle Swarm Optimization Algorithm Based on Fine-Grained Model with GPU-Accelerating’, J. of Harbin Institute of Technology, vol. 38, no. 12, pp. 2162-2166. (in Chinese) Luo J. H. and Zhong Z. N. (2005) ‘Research on the Parallel Simulation of Asynchronous Pattern of Particle Swarm Optimization’, Computer Simulation, vol. 22, no. 6, pp. 6870+78. (in Chinese) Pugh, J. and Martinoli, A. (2007) ‘Inspiring and Modeling MultiRobot Search with Particle Swarm Optimization’, Proc. of the 4th IEEE Swarm Intelligence Symposium, Honolulu, Hawaii, USA, April, 1-5. Ridge E., Kudenko D., Kazakov D. and et al. (2005) ‘Moving Nature-Inspired Algorithms to Parallel, Asynchronous and Decentralised Environment’, Frontiers in Artificial Intelligence and Applications, Vol. 135, pp. 35-49. Schutte J. F., Reinbol J. A., Fregly B. J. and et al. (2004) ‘Parallel Global Optimization with the Particle Swarm Optimization’, Int. J. Numer. Meth. Engng, vol. 61, no. 13, pp. 2296-2315. Spears, W. and et al. (2006) ‘Where are you?’, SAB Swarm Robotics Workshop. Venter G. and Sobieszczanki-Sobieksi J. (2006) ‘A Parallel Particle Swarm Optimization Algorithm Accelerated by Asynchronous Evaluations’, J. of Aerospace Computing, Information, and Communication, no. 3, pp. 123-137. Wang Y. Y., Zeng J. C. and Tan Y. (2007) ‘Parallel Particle Swarm Optimization Based on Parallel Model with Controller’, J. of System Simulation, vol. 19, no.10, pp. 2171-2176. (in Chinese) Xu Y. Z. and Zeng W. H. (2005) ‘The Development of Parallel Evolutionary Algorithms’, Pattern Recognition and Artificial Intelligence, vol. 21, no. 2, pp. 183-192. (in Chinese) Xue S. D. and Zeng J. C. (2008a) ‘Using Relative Localization Observations for Swarm Robots Search’, in Int. Conf. on Modelling, Identification and Control, Shanghai, China, June 29-July 2. Xue S. D. and Zeng J. C. (2008b) ‘Control over Swarm Robots Search with Swarm Intelligence Principles’, J. of System Simulation, vol. 20, no. 13, July 5, 2008, pp. 3449-3454. Xue S. D. and Zeng J. C. (2008c) ‘Swarm Robots Search under Conditions of Heterogeneous Sensory Signals Fusion’, in Proc. of the 2008 Int. Conf. on Genetic and Evolutionary Methods, Las Vegas, Nevada, USA, July 14-17. Zeng J. C., Jie J. and Cui Z. H. (2004) ‘Particle Swarm Optimization’, Beijing: Science Press. (in Chinese) Zhao Y., Yue J. G., Li G. Y. and et al. (2005) ‘A Parallel Particle Swarm Optimization Algorithm Based on Multigroup for Solving Complex Functions Optimization’, J. of Computer Engineering and Applications, vol. 41, no. 16, pp. 58-60+64. (in Chinese)

Suggest Documents