12
Battle Swarm: An Evolutionary Approach to Complex Swarm Intelligence Russel Ahmed Apu and Marina L. Gavrilova Department of Computer Science, University of Calgary 2500 University Drive NW, Calgary, Alberta Canada {[email protected] , [email protected] } Abstract: The paper presents a unique utilization of swarm-based distributed problem solving techniques to evolve effective battle strategies in a computer simulated battle scenario in 3D space. We propose a new method to evolve com- plex and dynamic collective intelligence. Our method is based on a novel behav- ioral Gene-string representation for unit agents and employs bi-sexual mating of genotypes to produce a diverse and complex set of swarm strategies. The method was tested using the Battle-Swarm system developed to simulate Gene-String based agents. Experimental results indicate that our method was able to create complex collective intelligence driven by a competitive and difficult goal. The method can be used in Computer Animation, Evolutionary Swarm Strategies and to simulate various complex biological entities. Keywords: Swarm Intelligence, battle swarm, genetic algorithm, genetic pro- gramming, physical simulation, time step, evolutionary strategy. 1. Introduction Swarm Intelligence (SI) is the property of a system whereby the collective behav- iors of (unsophisticated) agents interacting locally with their environment cause coher- ent functional global patterns to emerge. SI provides a basis with which it is possible to explore collective (or distributed) problem solving without centralized control or the provision of a global model [6]. Agents in an SI based system have limited perception or intelligence and cannot individually carry out the task it intends to. Neverthe- less, by regulating the behavior of the agents in the swarm, one can demonstrate emergent behavior and intelligence as a col- lective phenomenon [8][15]. Although the swarming phenomenon is largely observed in biological organisms such as an ant col- ony, a flock of birds etc., it is recently being used to simulate complex dynamic systems focused towards accomplishing a well- defined objective [13]. The Battle Swarm model presented in this paper is based on an interesting gaming scenario. There are two competitive enti- ties. Firstly, a Battle-ship with a complex 3D structure is deployed in free space. Sec- ondly, a swarm of hundreds of missiles are launched from a distance to attack and de- stroy the battle-ship. The battle-ship has multiple point defense energy cannons that are capable of firing at arbitrary direction at a specific rate of fire (predefined to 600 rounds per minute). The angular coverage of each turret is limited to a threshold (pre- defined to 30 degrees). A single point de- fense cannon is only able to acquire and attack targets that are within its coverage zone (Fig. 1). Choice of the target is ac- quired based on a Threat of Approach func- tion. Once the target is chosen, a firing so- lution for each turret is obtained numeri-

Battle Swarm: An Evolutionary Approach to Complex Swarm Intelligence

Embed Size (px)

Citation preview

Battle Swarm: An Evolutionary Approach to Complex Swarm Intelligence

Russel Ahmed Apu and Marina L. Gavrilova Department of Computer Science, University of Calgary

2500 University Drive NW, Calgary, Alberta Canada [email protected], [email protected]

Abstract: The paper presents a unique utilization of swarm-based distributed problem solving techniques to evolve effective battle strategies in a computer simulated battle scenario in 3D space. We propose a new method to evolve com-plex and dynamic collective intelligence. Our method is based on a novel behav-ioral Gene-string representation for unit agents and employs bi-sexual mating of genotypes to produce a diverse and complex set of swarm strategies. The method was tested using the Battle-Swarm system developed to simulate Gene-String based agents. Experimental results indicate that our method was able to create complex collective intelligence driven by a competitive and difficult goal. The method can be used in Computer Animation, Evolutionary Swarm Strategies and to simulate various complex biological entities.

Keywords: Swarm Intelligence, battle swarm, genetic algorithm, genetic pro-gramming, physical simulation, time step, evolutionary strategy.

1. Introduction Swarm Intelligence (SI) is the property of a system whereby the collective behav-iors of (unsophisticated) agents interacting locally with their environment cause coher-ent functional global patterns to emerge. SI provides a basis with which it is possible to explore collective (or distributed) problem solving without centralized control or the provision of a global model [6]. Agents in an SI based system have limited perception or intelligence and cannot individually carry out the task it intends to. Neverthe-less, by regulating the behavior of the agents in the swarm, one can demonstrate emergent behavior and intelligence as a col-lective phenomenon [8][15]. Although the swarming phenomenon is largely observed in biological organisms such as an ant col-ony, a flock of birds etc., it is recently being used to simulate complex dynamic systems

focused towards accomplishing a well-defined objective [13].

The Battle Swarm model presented in this paper is based on an interesting gaming scenario. There are two competitive enti-ties. Firstly, a Battle-ship with a complex 3D structure is deployed in free space. Sec-ondly, a swarm of hundreds of missiles are launched from a distance to attack and de-stroy the battle-ship. The battle-ship has multiple point defense energy cannons that are capable of firing at arbitrary direction at a specific rate of fire (predefined to 600 rounds per minute). The angular coverage of each turret is limited to a threshold (pre-defined to 30 degrees). A single point de-fense cannon is only able to acquire and attack targets that are within its coverage zone (Fig. 1). Choice of the target is ac-quired based on a Threat of Approach func-tion. Once the target is chosen, a firing so-lution for each turret is obtained numeri-

cally by extrapolating the missiles current trajectory.

This problem was chosen as it presents a highly complex challenge for which an optimum solution is very hard to obtain us-ing traditional computational approach. The dynamic and competitive relationship be-tween missiles and turrets makes it ex-tremely difficult to model using a determi-nistic algorithm. It should also be noted that the problem has an easy evaluation metric that allows us to determine fitness values precisely.

This paper presents a unique evolu-tionary approach where different missile genotypes mate to form complex intelligent behavior. The main contribution of this pa-per is to introduce a behavioral Genotype encoding called the Gene-String. This Gene-string is mutated using a novel Bi-sexual Genetic Algorithm first proposed and utilized in this paper. Experimental re-sults clearly indicate that missiles evolved in this manner not only improve their attack potential but also develop interesting strate-gies and complex formations to strike the intended target. The same algorithm can be effectively applied in other tactical simula-tions, computer games and the simulation of various competitive biological systems.

2. Literature Survey Behavioral studies among social bio-logical entities such as insects were of in-terest for scientists for a long time [6][8][12]. Flight formation of a flock of birds [2], stratification and construction of an ant/termite colony [12] or a school of fish swimming in formation [15] are all surprisingly complex tasks given the intel-ligence of each individual agent. Recently, biologists and computer scientists in the field of artificial life have modeled biologi-cal swarms to understand how social ani-mals interact, achieve goals, and evolve [1][9][8][15]. Engineers also become in-creasingly interested in swarm behavior since the resulting swarm intelligence can be applied in optimization (e.g. in tele-communicate systems) [6][7][11], robotics [14], traffic patterns in transportation sys-tems [8][13] and military applications [4].

The whole concept of swarm intelli-gence is based on the idea of Stigmergy [5]. Researchers have studied how relatively brainless simple organisms (i.e. ants) could create highly sophisticated messaging sys-tems and build extremely complex architec-tural structures [12]. Complexity arises in Stigmergic systems because individuals in-teract not with each other but with a com-mon environment. They interact with the environment by making changes to it. Stigmergy is a valuable concept in a battle-field scenario where all agents are dispersed autonomously acting upon survival instinct and common objectives and yet self organ-ize to accomplish complex mission objec-tives. In biological systems, Stigmergy is carried out either by leaving chemical traces (pheromones) [8] or simple neighborhood cohesion (i.e. Boids flocking [2][15]).

Although applying swarm intelligence into the military is not a novel idea, this topic has not been explored very well.

Figure 1: Space battle tactics simula-tion: missiles versus point defense

Some research has been carried out to study the game of pursuits and/or evasive strate-gies in swarms [3][4]. Swarm intelligence has been applied to robotics in the context of military applications [14]. However to the best of our knowledge, no well-known publication has been found that studied bat-tle swarms (such as swarming missiles) thriving to accomplish a common desig-nated objective and employing Stigmergy to achieve that objective efficiently. All swarm based strategies known in the re-search domain can be divided into two categories. The first category defines a spe-cific behavioral function for which, a num-ber of regulatory parameters are optimized using GA (i.e. Karl Sims virtual creatures [9][10]). Others use genetic programming to modify the agent’s behavioral subroutine to optimize the fitness function [7]. Our ap-proach differs from these methods in two ways. Firstly, we employed a unique Gene-String based behavioral subroutine that can create complex combination of primitive behavioral patterns. Secondly, we applied male and female classification and combine male and female genes to produce offspring that combine both of their unique abilities.

The paper is organized as followed. Section three outlines the mission objective in detail. Section four illustrates the basic genotype encoding. This is followed by the description of the GA applied to solve the problem. Finally, the experimental results are presented followed by summary and conclusion.

3. The Battle Game Scenario The game is based on attack, evasion and defense. While the missile sets strategy to strike the target, the battle ship prepares to shoot down as many missiles as possible. Each attempt to destroy the target is called an Attack-Run. The effectiveness of an At-tack-Run equals to the number of missiles

hitting the target. Therefore the outcome of the game is easily quantifiable.

On the other hand, the interaction be-tween missiles and the battleship is com-plex and nontrivial. As a result, war strate-gies may emerge in which a local penalty (i.e. sacrificing a missile) can optimize global efficiency (i.e. deception strategy).

The following sub section clearly iden-tifies the objects and the context of the game.

3.1. The Missile The limited capability of a missile

makes it an excellent candidate for a swarm-based agent. Each missile has a pool of basic actions (Fig. 2) it can carry out (i.e. roll and pitch). The sensory capabilities of a missile are limited. Each missile is autono-mous and decides its course of action based on the location of the target, incoming fire and other missiles within the limited sen-sory range. Each missile has to choose be-tween following other missiles or the target. In addition, it has to take evasive actions when there are incoming fires.

3.2. The Battle Ship Defense The Battle-ship defense is prepro-grammed in this game and therefore. The attack parameters such as speed and rate of fire and coverage as well as missile dynam-ics (i.e. acceleration, top speed) are finely tuned in such a way that a random fire (fir-ing at arbitrary direction) and a random choice of missile navigation would elimi-nate all missiles. After the first stage of evolution, we employed a more powerful strategy. Each turret evaluates all visible targets within range using a threat function and selects the missile that poses the high-est threat. Then it computes a firing solu-tion based on the trajectory of the missile. A divergence probability is estimated by analyzing the last few actions of the missile and a region of uncertainty is determined

(Fig. 1). Then a random point is chosen in the region of uncertainty at which the turret is aimed and fired. We experimented with many defense strategies and found the aforementioned technique to be the most effective.

4. Encoding the Missile Genotype A missile has a very limited naviga-tional control. It has a constant thrust and has no other option but to propel towards its heading (Fig. 1). There are four possible actions to choose from: #roll-left, #roll-right, #pitch-up and #pitch-down (Fig. 2). It would be incredibly difficult to encode a string of actions using only these four commands to carry out a complex maneu-ver. For example, what sequence of these four actions would allow a missile to per-form evasive maneuvers to avoid incoming fire? The answer is not simple. We need to consider various variables such as location of the missile and the target, as well as the direction and distance of incoming fire. This would require a fairly sophisticated control program that somehow considers all these factors. Using GP [7], it would be hard even to teach the missile to approach the target in a straight consistent trajectory. This approached certainly proved to be highly inefficient to program complex be-haviors into battle swarms.

We propose that a pool of basic actions be devised. The action pool is designed and integrated into the system in layers of com-plexity. Each layer of encoding integrates a specific aspect of the problem. The purpose of the gene-string is to maintain a pattern of behavior. When the missile is launched, it linearly executes each command in the Gene-String and loops back. This process is carried out rapidly to form a blend of be-haviors. Decision making and interaction with the environment are ingrained in spe-cific actions and carried out implicitly by the Gene-String execution. The following

sub-sections illustrate how this encoding is integrated.

4.1. Basic Navigation The basic navigational encoding in-cludes the implementation of the four pos-sible course of action for a missile during each time step. We define the Action set Σ such that:

L,R,U,DL= Roll LeftR= Roll RightU= Pitch UpD= Pitch Down

Σ ⊇

In addition to these basic movements, we define additional basic actions included in Σ such that:

N,X,MΣ ⊇ Here,

( )

N= No OperationX= Select a random operation

from X

M= Memory/Repeat

Σ −

These operations provide a mean to evolve the system at greater ease. The movement tagged as N allows a missile to maintain its current heading. Similarly,

Figure 2: The control mechanism for missile navigation

an M command allows the missile to re-peat its last action. An action string S is a string of symbols such that S ∗∈Σ .

4.2. Target Relative Navigation By instinct a missile is attracted to-wards the target. When attacked, it is driven by an opposite urge to diverge from the tar-get and maintain a course that maximizes its chance of survival. Using basic naviga-tion to describe this behavior is hard.

The simplest form of information known to each missile is its position and orientation and the location of the target. We transform these attributes into a target relative coordinate ( , , )R H B so that it represents the Range, Heading and Bearing of the missile with respect to the target. Us-ing vector mathematics these attributes can be computed as followed:

i iR xτ= − (1)

( )i iH f xτ= −i (2)

( )1cos Proj ( )

CCW( , Proj ( ), )ur i

ur i i

B u xu x f

ττ

−= −

× −

i (3)

( , , )

1 :if ab to ac is counter clockwise1 :otherwise

CCW a b c+⎧

= ⎨−⎩

Here, τ is the center of gravity of the ship, if and ix is the direction vector and the position of missile i respectively.

The heading of an object is directly re-lated to the pitch of the missile. In order to follow a target a missile has to pitch so that the heading becomes close to the value 1 (Fig. 3). A negative heading means that the missile is moving away from the target a positive heading means that the missile is getting closer to the target (Fig. 3). A head-ing is zero if the missile is moving tangen-tially with respect to the designated target.

On the other hand, Bearing is directly related to the roll control of a missile. That is if a missile has negative bearing the tar-get is to its left. In addition lower magni-tude of the bearing indicates that the up vector of the missile is in alignment with the target so that a simple pitch up opera-tion can restore its heading.

Target-relative coordinate allows us to integrate the pursuit/evasion maneuvers into the genome of the missile. Therefore, we added the following encoding to Σ :

Figure 4: Basic Maneuvers for a mis-sile using the Gene String Figure 3: Target Relative Coordi-

nate: Heading of a missile

F,A

F= Follow Target A= Avoid Target

ττ

Σ ⊇

The following algorithm is used to imple-ment these two actions:

Method 1: Follow_Target(i) // i is index of // the missile

( , , ) Target_Rel( , , )i iR H B x x τ←

if B>0 then RollRight(i)

Else RollLeft(i) If abs(H)<ε and abs(B)>=1-ε PitchUp(i) Method 2: Avoid_Target(i) // i is index of // the missile

( , , ) Target_Rel( , , )i iR H B x x τ←

if B>0 then RollLeft(i)

Else RollRight(i) If abs(H)>ε then PitchUp(i)

The aforementioned navigation com-mands or its combination can form a variety of navigation patterns (Fig. 4). #Follow is equivalent to seeking and destroying the

target. It is a full frontal offensive approach without consideration to anything else. Ac-cording to method 2, #Avoid_Target means fly away in a trajectory so that the missile has the least velocity with respect to the designated target. As a result, the majority of the velocity component lies along the tangent. This makes the missile a hard tar-get to shoot down (from the turrets point of view).

4.3. Swarm Relative Navigation The decision of a missile’s navigation

is influenced by its neighborhood and envi-ronment. A missile is a highly decentralized system; there is no hierarchy or no means of peer communication. It has a very lim-ited level of intelligence. In nature, simple organisms make changes to the environ-ment to communicate and accomplish com-plex goals [5][8]. An ant or a termite for example, leaves pheromone trail that other ants can easily pick up and collaborate [12].

A missile cannot leave pheromone, but it does leave a gas discharge on its trail that other missiles can detect easily (local sens-ing). Similarly, energy weapon (if there is such a thing) leaves an ionization trail in the dust/debris when it is fired. A missile can sense this information very easily. In addition, a missile can see its neighbor and extract this information in their location. We implemented a revised version of Boids flocking (Fig. 5) into the missile us-ing the following rules:

Figure 5: Boids flocking: From left to right rules of cohesion, separation and align-ment [2].

1. Missiles have a radius of neighborhood awareness called the outer radius

2. Missiles have an inner radius to avoid collision with other missile

3. Missiles may decide to choose between following its own course of action (Based on gene pattern) or to flock with peers based on a probability function inherent to the type of the missile.

4. If missile chooses to flock with peers then a resultant flock vector iϕ is com-puted based on the following formula (similar to Fig. 5):

( ) 1

j iji j NB i

j j ix xα

ϕβ∈

⎛ ⎞⎛ ⎞ Ρ⎜ ⎟= ⎜ ⎟⎜ ⎟⎜ ⎟+ −⎝ ⎠⎝ ⎠

∑ (4)

( ) :if in inner radius

:otherwisej i j

ijj i

x x xP

x x− −⎧

= ⎨ −⎩

Here jα and jβ are the gas discharge and ionization traces respectively (sensed by the missile j ). The vector is then used to orient the missile (target relative encoding with respect to iϕ ) towards the swarm direction. If the in-ner radius is breached with a neighbor, then direction of the vector component becomes opposite (fly away).

5. Each missile has a probability ρ of choosing this flocking tendency.

6. If there are no peers to flock with, then approach the target.

The purpose of the gene string is to provide a mechanism to regulate the prob-ability ρ . We assert that ρ will fall-off unless replenished over a period of time (using the inverse dissipation). We define two swarm-relative encoding as followed:

Y,Z

Y= Flock and Increase tendencyZ= Diverge from flock and decrease tendency

Σ ⊇

Each time these actions are carried out, it not only moves in or out of the flock, but also implicitly effects flocking tendency (i.e. add a constant to ρ ).

4.4. Execution of the Gene-string The execution of the Gene-String is simple even though its behavior can be un-predictable. It is a powerful notation to con-struct various complex maneuvers.

Gene string should not be seen as a course of action, but a pattern of behavior. We have already, outlined the necessary complement of actions to reach the target or interact with the environment. The basic building block of missile navigation is al-ready present. The gene string reflects the complexity with which such courses of ac-tion could be chosen. For example a simple string [F] represents a full frontal assault towards the target (Fig. 5). On the other hand, [A] is a simple evasive tactic. How-ever, from a Turrets point of view, both are predictable. If a missile chose a combina-tion of these two (i.e. [FFAFFAAFFFF], then it is a different story. All on a sudden a missile just created a new kind of maneuver that is neither a pursuit, nor an evasion. It is a new kind of maneuver altogether. The particular gene string mentioned above is an approach towards the target with a com-plex trajectory.

Each encoded action in Σ have a com-plimentary peer. For example, U is the op-posite of D, F is the opposite of A and Y is the opposite of Z. Therefore, in a gene string conflicting interests are expressed and they all converge into a pattern of be-havior which is a blend of those interests.

Gene string is a powerful mechanism to generate complex maneuvers and naviga-tions. For example, a sinusoidal trajectory could be generated by [UXUMMDMMX]. The string [UMMNUMNDDXDXUX] pro-duces a complex swinging trajectory.

Allowing swarm relative encoding into the gene string makes it implicitly respon-sive to external stimuli. This is the key to missiles’ collective intelligence.

4.5. Maneuvers and strategies

From a collective point of view it is possible to identify or label a swarm behav-ior. In fact, we discovered that there are ex-actly six distinct general strategies. These strategies are classified as followed: 1. Retaliation: A full frontal assault. 2. Evasive Action: Avoids incoming fire

at all cost. 3. Convergent Approach: Missiles ap-

proach the target from a particular di-rection (Fig. 6c). This makes the swarm of missile vulnerable to fire; however, the missiles are exposed to less number of turrets.

4. Divergent Approach: Missiles sur-rounds the target and then approach to confuse the defense system (Fig. 6d). In this approach, each missile has less chance of getting hit, however the entire swarm is exposed to more turrets.

5. Trail Wind Approach: One missile leads the other in the pursuit. The de-fense system engages the leading mis-siles, this buys time to the missiles that are behind and they approach safely (Fig. 6b). Trail wind approach has all the strengths of convergent approach and at a given time, less number of mis-siles is exposed to fire. However, the missiles have a temporal dispersion meaning that, it gives the ship more time to defend itself.

6. Distraction: Some missiles can distract the defense while others appear at high velocity and hit the target (Fig. 6a).

5. Evolution of the Gene-String The fitness of the missile gene can be described in terms of its collective perform-ance. The effectiveness is the total number of missiles hitting the target. However, mis-siles evolved in this manner are not interest-ing. We want to observe a full spectrum of strategies (See section 4.5) through the process of evolution.

After investigating various possibili-ties, we successfully used a two dimen-sional fitness function to evolve the strains in one evolutionary system. We defined that the Fitness iW as:

,i iiW Ω= (5) Here,

# of missile hitting the target# of missiles launched

# of gunshots successfully evaded# of missiles destroyed+1

i

i

Ω =

=

Figure 6: Different class of battle tac-tics for missile approach: (a) Diversion (b) Trail Wind Flocking (c) Conver-

gence (d) Divergence

We say that iΩ is the masculine com-ponent of the fitness function and i is the feminine component of the fitness value. This fitness function has worked remarka-bly well with the trial run and it is flexible enough to encompass different strategies under one evolutionary cycle.

6. Analysis of the Results It is said that offense is the best de-fense. This was in particularly true in our case. We have observed that a full frontal attack [F] and some near cousins (i.e. [FFYF] in Fig. 7) are one of the most effi-cient battle strategies (Fig. 8). However, it is certainly not the most interesting of ma-neuvers. Blind approach towards the target would not be successful if defense parame-ters are changed (i.e. rapid fire). In particu-lar, we were looking out for strains with overall fitness strength (both male and fe-male component). We found out that most of the interesting behaviors and sophisti-cated maneuvers are generated by such strains.

After evolving the system, we classi-fied the interesting strains into classes of behaviors outlined in previous section.

Then we plot a fitness graph in the 2 di-mensional space (scatter XY chart). We identified that different classes of behaviors are clustered together. The clusters are shown in Fig. 8. We noticed that by chang-ing the physical properties and the defense strategy, one could defeat the strains that are on other extreme ends of the fitness space. Dispersion and assaults (Conver-gence) are therefore not good strategies. We have managed to defeat assault missiles by randomizing the firing vector towards the center of the swarm. The divergence ap-proaches are quite vulnerable to small changes in the environment (cluster is more scattered in the fitness space). By far, Dis-traction and trail wind are the two most adaptive and intelligent strategy.

In order to measure adaptability we tested each strain with large spatial varia-tions and environmental changes. For ex-ample we randomized the number of mis-siles in the swarm, the initial dispersion of the swarm, initial distance and bearing of the missiles and randomized initial direc-

Figure 7: The Defense strategy [FFYF]: attacks all at once and beats the defense

Figure 8: Fitness level of the most suc-cessful missiles. There is a clearly visi-ble clustering of different kinds of strat-

egy as indicated in the figure.

tion. However, we have not altered any physical properties (i.e. missile speed).

The number of strains generated by the evolutionary algorithm is overwhelming. Not all of them are interesting nevertheless. We filtered the strains for adaptability. Each successful (have a qualifying fitness threshold) strain generated by GA is exe-cuted 15 times with different randomized spatial parameters as well as different swarm population. Thus, we were able to filter the best 342 strains that are quite adaptable. They have a good average fitness and their standard deviation σ is within a given threshold and each member satisfies the following test:

( )stability 3ii W W σ= ∀ − ≤

The following subsection discusses some of the interesting complex maneuvers we discovered from this project.

6.1. Some Interesting and Effective Mis-sile Strains

It should be noted that interesting pat-terns emerges not only within the strains having good fitness but also strains with lesser fitness value. Due to the sheer num-ber of strains, we only monitored the best 342 genes and report the following interest-ing behaviors: • Funnel Shape: Seen mostly in the trail

wind and assault class missiles (Fig. 7). • Parachute Shape: The gas trail of the

missiles looks like a parachute being deployed. First forms a bubble, emerges from the bubble towards the target. Looks similar to funnel, however more curvature could be seen (Fig 9b-e).

• Complex pattern: Forms complex or-ganic looking pattern that is hard to predict (Fig. 9i).

• Distraction: Some missiles in the swarm approach the target, and starts evading and drawing fire. Other ap-proaches at high velocity and carries out

the main assault (Fig 9g-h). • Organic: Some missiles tend to move

in a very organic motion pattern. Some-times their patterns are similar to a school of fishes. They also have a very circular organic looking motion pattern.

• Deception: This is perhaps the most intelligent strategy we evolved using our method. The swarm of missile sends leading agents. They fly past the target. As the majority part arrives closer to the target, they suddenly turn around and attack the ship from a different direc-tion. This strategy is very successful (Fig 9j-l).

These patterns emerge due to the com-petition between the defense matrix and the missiles. Some interesting results (as ren-dered image) are given in Fig. 9. The im-plementation of the simulation engine was built to maximize speed. Adaptive hierar-chical k-d trees were constructed for neighborhood, collision detection and effi-cient storage and retrieval of ionization traces. We were able to achieve approxi-mately 715FPS with rendering turned off. At this rate, we were able to evolve a 1000 generations in less than 5 hours on a single Pentium IV workstation.

7. Conclusion In this paper, we investigated a unique way to evolve complex battle tactics for a swarm of missiles designated to destroy a target. Our novel gene string based missile genotype encoding allows an evolution of a highly complex battle swarm. The system was highly adaptive to spatial changes. Us-ing the concepts presented in this paper we were able to evolve sophisticated missile swarms that thrive to increase battle effi-ciency as a collective. The evolutionary system automatically demonstrated several different battle strategies and used them effectively in a game of pursuit and eva-sion.

Figure 9: Various Formation and attack patterns of the Battle Swarm

(a) Funnel Shaped Assault (b) Parachute Phase 1: Forming a moth ball

(c) Parachute Phase 2: Dis-persing

(d) Parachute Phase3: Forming a Head

(e) Parachute Phase 4: Trail Wind Attack

(f) Divergent Attack

Figure 11: Formation of Distraction, Organic and Deception pattern

(h) Distraction 2: Assault in progress

(g) Distraction 1: Early missiles draw fire

(i) Organic motion pattern

(j) Deception 1: Lead As-sault

(k) Deception 2: Over-shooting the target

(l) Deception 3: Come about and attack

This novel method can easily be ex-tended for applications such as Multi-agent Search and Rescue Missions, Military Infil-tration and Reconnaissance, Combat strate-gies and other strategic systems. The sys-tem can also be used to model and simulate collective intelligence such as ant colonies from an evolutionary point of view. Last but not the least, the system can be used to demonstrate complex strategies for team sports and goal based coordinated systems.

8. Acknowledgement We would like to thank Dr. Christian Jacob for his help and guidance during the project. This project was funded partially by the NSERC and the GEOIDE grant.

9. References [1] C. Rosin and R. Belew. New methods

for competitive co-evolution. Evolu-tionary Computation, vol. 5(1): 1--29. MIT Press, 1997.

[2] C. W. Reynolds. Flocks, Herds, and Schools: A Distributed Behavioral Model, in Computer Graphics, 21(4) (SIGGRAPH '87 Conference Proceed-ings), 1987, pp. 25-34.

[3] D. Cliff and G. F. Miller. Co-evolution of Pursuit and Evasion II: Simulation Methods and Results. In: From Animals to Animals IV: 4th Int. Con. On Simula-tion of Adaptive Behavior, 506--514. MIT Press, USA, 1996.

[4] D. Cliff and G. F. Miller. Protean be-havior in dynamic games: Arguments for the co-evolution of pursuit-evasion tactics. In: From Animals to Animats III: 3rd Int. Con. on Simulation of Adaptive Behavior, 411--420. Bradford Books, Cambridge, USA.

[5] E. Bonabeau, Stigmergy (special issue). Artificial Life, 5(2).

[6] E.Bonabeau, M.Dorigo, and G. Therau-laz, Swarm Intelligence: From Natural to Artificial Systems, NY: Oxford Univ. Press, 1999

[7] H. Iba. Emergent cooperation for mul-tiple agents using genetic programming. Parallel Problem Solving from Nature. Berlin, 1996.

[8] J. A. Sauter, R. Matthews, H. V. D. Parunak and S. A. Brueckner. Perform-ance of digital pheromones for swarm-ing vehicle control. Proceedings of the fourth international joint conference on Autonomous agents and multiagent sys-tems AAMAS, 2005.

[9] K. Sims, Evolving 3D Morphology and Behavior by competition, Artificial Life IV Proceedings, Ed. By Brooks & Maes, MIT Press, 1994, pp 28 – 39.

[10] K. Sims, Evolving Virtual creatures, Computer Graphics (Siggraph ’94 pro-ceedings), July 1994, pp. 15-22.

[11] M. Kass. Introduction to physically based modeling, SIGGRAPH course Notes, ACM SIGGRAPH, 1995.

[12] M. Resnick, Turtles, Termites, and Traffic Jams Explorations in Massively Parallel Microworlds. MIT Press, 1997

[13] S. Raupp and D. Thalmann. Hierarchi-cal Model for Real Time Simulation of Virtual Human Crowds, IEEE Transac-tions on Visualization and Computer Graphics 7(2) (2001) 152-164

[14] W. M. Shen, P. Will, A. Galstyan, C. M. Chuong. Hormone-Inspired Self-Organization and Distributed Control of Robotic Swarms, Autonomous Robots, Volume 17 Issue 1, 2004.

[15] X. Tu and D. Terzopoulos. Artificial fishes: physics, locomotion, perception, behavior, Proceedings of SIGGRAPH’94, ACM, New York (1994) 309-318