[IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. -...

8
A ProtoG Algorithm Applied to the Traveling Salesman Problem Iloneide C. O. Ramos UFRN [email protected] Marco C. Goldbarg UFRN [email protected] Elizabeth F. G. Goldbarg UFRN [email protected] Adrião D. Dória Neto UFRN [email protected] João P. F. Farias UFRN [email protected] Abstract This work reports the application of a transgenetic algorithm, called ProtoG, to the Traveling Salesman Problem. ProtoG is an evolutionary algorithm based on the Computational Transgenetics approach. The computational experiment considers twenty TSP instances and compares the performance of ProtoG with a hybrid simulated annealing algorithm. A descriptive and inferential statistical analysis based on survival functions shows that the transgenetic algorithm finds better solutions and runs in less time than the hybrid simulated annealing algorithm. 1. Introduction Given a set of n nodes and distances for each pair of nodes, the Traveling Salesman Problem, TSP, consists in finding a closed path of minimal total length visiting each node exactly once. This problem has been an important testing ground for most algorithms and a number of works has been dedicated to its investigation. Gutin and Punnen [17], Jünger et al. [19], Lawler et al. [24] and Reinelt [39] present surveys of the TSP. The size of a TSP instance solved by an exact algorithm evolved from 318 [11] to 15112 [4]. In the last decades a number of algorithms based on metaheuristic approaches were presented to the TSP, such as Simulated Annealing [1], [8], [31]; Neural Networks [34]; Tabu Search [14]; Hybrid Genetic Algorithms [22], [35], [36], [41]; Ant System [9]; Scatter Search [10]; and Variable Neighborhood Search [18]. Recently a hybrid implementation of the Simulated Annealing (with Local Search) reported high quality results for the TSP [21]. This work reports the application of a heuristic algorithm, called ProtoG, based on a new metaheuristic approach, the Computational Transgenetics. The Computational Transgenetics is an evolutionary approach that aims at speeding up an evolutionary search by inserting information in the genetic context. The methodology of Computational Transgenetics is based on current paradigms of Biology and on the use of the reproductive strategies of prokaryotes [5], [13], [28]. To manipulate the evolutionary process, the Computational Transgenetics obtains information from several sources that can include theoretical knowledge, other heuristics, the evolutionary process itself, etc. The method to encode this information mimics the epigenetic paradigm [26]. Section 2 presents the Computational Transgenetics and the ProtoG algorithm. To test the transgenetic algorithm, this work considers twenty TSP instances from the benchmark TSPLIB [40]. Two parameters of ProtoG algorithm presented in this work are tuned for the twenty TSP instances. The experiments that tune those parameters are reported in section 4. The transgenetic algorithm is compared with a hybrid simulated annealing algorithm presented by Karlsson [21]. Karlsson’s algorithm is presented in section 3. The computational experiment is reported in section 5. A statistical analysis based on survival functions evaluates the performance of both algorithms and shows that ProtoG performs better than the hybrid simulated annealing algorithm concerning runtime and quality of solution. 2. Computational transgenetics As in Biology, Culture also exhibits evolution patterns [7]. Some researches show that genes and culture are inherently linked [26]. The link between genes and memes occurs as a consequence of the fact that genes prescribe epigenetic rules, which are the regularities of the sensorial perception and mental development that motivate and direct culture acquisition. Culture helps to determine which prescriptive genes survive and multiply from one generation to the next. The successful genes modify the epigenetic rules of the population. The modified epigenetic rules alter the direction and efficiency of the Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Transcript of [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. -...

Page 1: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

A ProtoG Algorithm Applied to the Traveling Salesman Problem

Iloneide C. O. Ramos UFRN

[email protected]

Marco C. Goldbarg UFRN

[email protected]

Elizabeth F. G. Goldbarg UFRN

[email protected]

Adrião D. Dória Neto UFRN

[email protected]

João P. F. FariasUFRN

[email protected]

Abstract

This work reports the application of a transgenetic algorithm, called ProtoG, to the Traveling Salesman Problem. ProtoG is an evolutionary algorithm based on the Computational Transgenetics approach. The computational experiment considers twenty TSP instances and compares the performance of ProtoG with a hybrid simulated annealing algorithm. A descriptive and inferential statistical analysis based on survival functions shows that the transgenetic algorithm finds better solutions and runs in less time than the hybrid simulated annealing algorithm.

1. Introduction

Given a set of n nodes and distances for each pair of nodes, the Traveling Salesman Problem, TSP, consists in finding a closed path of minimal total length visiting each node exactly once. This problem has been an important testing ground for most algorithms and a number of works has been dedicated to its investigation. Gutin and Punnen [17], Jünger et al. [19], Lawler et al. [24] and Reinelt [39] present surveys of the TSP. The size of a TSP instance solved by an exact algorithm evolved from 318 [11] to 15112 [4]. In the last decades a number of algorithms based on metaheuristic approaches were presented to the TSP, such as Simulated Annealing [1], [8], [31]; Neural Networks [34]; Tabu Search [14]; Hybrid Genetic Algorithms [22], [35], [36], [41]; Ant System [9]; Scatter Search [10]; and Variable Neighborhood Search [18]. Recently a hybrid implementation of the Simulated Annealing (with Local Search) reported high quality results for the TSP [21].

This work reports the application of a heuristic algorithm, called ProtoG, based on a new metaheuristic approach, the Computational Transgenetics. The Computational Transgenetics is an evolutionary approach that aims at speeding up an evolutionary search by

inserting information in the genetic context. The methodology of Computational Transgenetics is based on current paradigms of Biology and on the use of the reproductive strategies of prokaryotes [5], [13], [28]. To manipulate the evolutionary process, the Computational Transgenetics obtains information from several sources that can include theoretical knowledge, other heuristics, the evolutionary process itself, etc. The method to encode this information mimics the epigenetic paradigm [26]. Section 2 presents the Computational Transgenetics and the ProtoG algorithm.

To test the transgenetic algorithm, this work considers twenty TSP instances from the benchmark TSPLIB [40]. Two parameters of ProtoG algorithm presented in this work are tuned for the twenty TSP instances. The experiments that tune those parameters are reported in section 4.

The transgenetic algorithm is compared with a hybrid simulated annealing algorithm presented by Karlsson [21]. Karlsson’s algorithm is presented in section 3. The computational experiment is reported in section 5. A statistical analysis based on survival functions evaluates the performance of both algorithms and shows that ProtoG performs better than the hybrid simulated annealing algorithm concerning runtime and quality of solution.

2. Computational transgenetics

As in Biology, Culture also exhibits evolution patterns [7]. Some researches show that genes and culture are inherently linked [26]. The link between genes and memes occurs as a consequence of the fact that genes prescribe epigenetic rules, which are the regularities of the sensorial perception and mental development that motivate and direct culture acquisition. Culture helps to determine which prescriptive genes survive and multiply from one generation to the next. The successful genes modify the epigenetic rules of the population. The modified epigenetic rules alter the direction and efficiency of the

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 2: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

cultural acquisition channels giving feedback to the co-evolution of genes and memes [6], [42]. A unit of information that is spread among the individuals of some culture [33] is called “meme”. Dawkins [12] introduced the term “meme”.

The first works that considered an evolutionary process directed by something else than recombination and mutation called it a “memetic” process. The epigenetic stage of a standard Memetic Algorithm (presented in [30]) is mainly expressed through local search procedures that are used to improve the chromosomes. Plotkin [33] defines memes as units of information that are encoded and transmitted by non-genetic means. This work adopts Plotkin’s definition of memes and considers that a meme is a unit of information originated in a non-genetic context that is used to reorganize a chromosome or a block of genes. The memetics, in Computational Transgenetics, creates a continuous process to obtain the information that is inserted in the genetic context. The Computational Transgenetics uses computational agents, based on the idea of intracellular vectors, to express the epigenetic rules in the evolutionary process.

The Computational Transgenetics is a multi-agent based approach with three central ideas. The first idea is to insert information in an evolutionary process in order to guide it. To accomplish this task, it is necessary to have a previous plan. Thus, the second idea is to plan the infiltration process and the construction of the transgenetic agents. In this stage, the ideas of memes and cultural evolution are incorporated in the process. Finally, the third idea is to use the prokaryotic recombination as a complimentary tool to preserve the genetic information. This allows minimizing the obstacles to transform memetic information in genetic information.

2.1. Transgenetic Agent

To insert the information in the genetic context, the transgenetic algorithms use transgenetic agents. A transgenetic agent consists of one or more memes and a manipulation method. The manipulation method of a transgenetic agent contains procedures (operators) to reorganize the code of the manipulated chromosome. It may also contain rules to evaluate the success of the manipulation and, eventually, these rules may allow the agent to make decisions about the use of the operator and about the necessity of remodeling its memes.

The transgenetic agents transport and transcribe information in the chromosomes of a given population. A transgenetic agent λ is a pair (I, Φ) where I represents an information string that corresponds to given memes and Φrepresents the agent’s manipulation method. Φ = (p1, …, ps) where pj, j = 1,…,s, are procedures that determine the behavior of an agent.

The action of transgenetic agent alters the structure of the chromosome that is manipulated. Given a population P of size N, P={S1, S2,..., SN}, where a chromosome Si,i=1,..,N is an integer-valued string of length n representing a problem solution and fit a fitness function, such that fit:

Si → ℜ+, i = 1,…,N, then 'i

Ii SS: →Φ . It means that

the manipulation method Φ of an agent λ transforms a chromosome Si in a chromosome Si

’ according to I. As a consequence fit(Si) may also change. The procedures that can compose the manipulation method of an agent are:

Procedure 1 (p1): Attack, A, A: Si → {true, false}, i = 1,…,N. This procedure defines an evaluation criterion to determine whether a chromosome is sensitive to the manipulation of a given agent.

Procedure 2 (p2): Transcription Operator, Γ. This procedure determines how an information string I is transcribed in a chromosome.

Procedure 3 (p3): Transcribed Information Preservation, Ψ. This procedure determines for how long the transcribed information is preserved in a chromosome. This period of time can be defined in number of iterations, number of generations, etc.

Procedure 4 (p4): Transcribed Information Unblock, Ψ-1. This procedure resets the original behavior of a chromosome, that is, it ends the restrictions caused by a certain manipulation. Eventually, it must be necessary to restore certain original features of a manipulated chromosome, for instance, when an agent includes artificial material that must be removed from a chromosome.

A transgenetic agent λ= (I, Φ) is called “virus” when s = 4 and is called Mobile Genetic Particle, when I is a DNA fragment and s = 2 (p1 and p2). The transgenetic agent used in the ProtoG implemented here is the Mobile Genetic Particle. The transgenetic agents are built according to three types of epigenetic rules. These rules are called type 1, type 2, and type 3. Rules of type 1 are procedures that determine how a meme is obtained and translated into a suitable code in order to be loaded on a transgenetic agent. Since a meme of a mobile genetic particle is a DNA fragment, it means that, in this case, a meme is a sequence of nodes with length l, l < n.

A meme or a DNA fragment can come from a number of sources. In this work, one of these sources is a constructive procedure based on the first phase of a GRASP algorithm. GRASP algorithms are described in [32]. This procedure is described in figure 1. At first, a node x of a graph G is randomly selected and a list that represents the DNA fragment receives the node x. While the DNA fragment is not completely built, a candidate restricted list (RCL) is built with the list_size nodes that are closest to x. Then a node y is randomly selected in RCL according to the probabilities associated with the distances between x and the RCL components.

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 3: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

MGP_meme_source4 ( ) x = random_node(G); L = {x}; length_L = l; while (length_L < l) do RCL = neighboor_nodes(x,list_size); y = random_RCL( ); L = L ∪ {y}; x = y; length_L = length_L + 1; end_while;Figure 1. A method to generate memes for the TSP

Rules of type 2 determine the manipulation method of a transgenetic agent, that is, how that piece of information is going to be transcribed in a chromosome. In this work a node of the meme is chosen as the insertion allele. Then, the DNA fragment is inserted in the chromosome by means of an insertpath operator, starting at the position of the allele in the chromosome that corresponds to the insertion allele of the meme. The insertpath operator is presented in [2]. A third and last type of rule, the rule of type 3, controls the co-evolution between chromosomes and agents. The rules used in this work are described in the next section.

2.2. The ProtoG algorithm applied to the TSP

ProtoG is described in figure 2. In this work a chromosome for the TSP is encoded as a permutation of nodes according to the sequence of visits of a given tour. The memes are stored in a base called meme base. In the meme base there are the following sources of information: a greedy solution that builds a Hamiltonian cycle beginning at a random node x and choosing, iteratively, the closest node to the last one added to the tour (1), a minimum spanning tree resulting from an implementation of Kruskal´s algorithm (2), a minimum spanning tree obtained by Prim´s algorithm (3), memes built according to the constructive procedure described in figure 1 (4), the best three chromosomes of the population (5), and memes randomly generated (6). To build a mobile genetic particle, the algorithm chooses a source from (1) to (6) with the following probabilities: 20% for (1) to (4) and 10% for (5) and (6). The length of the mobile genetic particle is also randomly chosen in accordance with a uniform probability in the interval [2,l], where l is the best value shown in Table 1 (values marked with an asterisk in the column string length).

When the selection is done between information sources (1)-(3), a starting point sp and a length lrand are randomly chosen for the mobile genetic particle. A string of length lrand is copied from the source beginning at the

starting point sp. When the source is (5) the procedure is the same with one chromosome, randomly chosen, giving the genetic material, that is, the fragment of DNA. The procedure to obtain memes from source (4) was described in the last section. The restricted candidate list has length eight and the probabilities associated to each candidate of the restricted list are proportional to the weight (distance) associated with the edges.

Initialize a meme base, MB;Initialize a population, P; Repeat Generate a transgenetic agent, a; for each chromosome c of P do if c is sensitive to a’s manipulation then c := manipulation(a, c); if fitness(c) < best_current_fitness then include c’s memes in MB; end_if; end_for;until stop_criterion be satisfied;

Figure 2. ProtoG algorithm in pseudo code

As described previously the rule of type 2 uses the insertpath operator. To manipulate the chromosome each node of the meme is tested as an insertion allele. The chromosome with the best fitness resultant from these operations is kept as the manipulated chromosome.

The rule of type 3 states that two transgenetic agents are created for each attack. Each chromosome of the population is attacked by one of them (randomly chosen). A chromosome is sensitive to an agent’s attack if its fitness is improved by the agent’s manipulation.

3. Simulated Annealing Algorithm to the TSP

Simulated annealing is a Monte Carlo method to find the minimum of multivariable functions. The term simulated annealing has its basis on the physical process of cooling material in a heat bath – a process known as annealing [23]. The method simulates the change in energy of a system subjected to a cooling process, until it converges to a “frozen” state. At each temperature the simulation process must be long enough to reach the thermal equilibrium. Some researchers applied the simulated annealing technique to the TSP [21], [25], [29]. Karlsson [21] reports high quality results for the TSP. Karlsson’s algorithm is described in figure 3. The neighborhood structure is the 2-opt. Given a solution the local search procedure swap(i,j) is applied only between two positions i and j randomly chosen in the procedure Random_nodes[]. The acceptance probability pr is calculated by pr = exp(-δ/Ti), where δ is the energy difference between two states, that is the difference

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 4: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

between the values of the solutions after and before a swap of two elements, and Ti is the temperature at iteration i calculated by Ti=α Ti-1, α =0.99. If δ < 0, then Oracle(δ,T) returns “True”, else a true value will be returned according to pr. The frozen temperature considered is 0.000001 and max_swap is set to 100n.

MinAnnealing ( ) T= initial_temperature; repeat for 1 to max_swap do [i,j]=random_nodes[]; δ =energy_diference(i,j); if oracle(δ,T) then swap (i.j); keep_best_solution ( ); end_if; end_for; T=temperature_reduction_function( ); until stop_criterion be satisfied

Figure 3. Simulated annealing algorithm

4. Test methodology

The investigation of the parameters for which the algorithms have their best performance is crucial when working with metaheuristics. Investigations of the parameters of simulated annealing algorithms are reported in a number of papers listed in [38]. This work reports the study of two parameters of ProtoG: the size of the population and the length of the transgenetic agent string. The statistical technique called survival analysis was chosen to analyze these parameters. The Survival Analysis is described in [3]. In this work, this statistical technique is also used to compare the results found by ProtoG and the Karlsson’s algorithm (SA). To compare the methods 20 well known TSP instances from the TSPLIB [40] were considered.

The size of the population and length of the transgenetic agent string were selected in an experiment where a version of the ProtoG algorithm was implemented for each combination of values that could be set to these parameters. Ten independent runs of the distinct versions of ProtoG were performed for each instance and the survival functions were analyzed. The null hypothesis is: the survival functions are the same. If it is rejected, then there is evidence that the parameter setting influences the algorithm’s behavior.

A survival function is defined as a function S(t)=Pr(T>t), where Pr(T>t) is the probability that the value of the variable T is greater than t. In this work, T is the runtime needed by an algorithm to find the optimum of a given TSP instance. A better approach is to use the distribution function given by F(t) = Pr(T ≤ t) = 1 – S(t).

It calculates the probability of the runtime needed to find the optimum be lower than a given value t. Thus, it is required that F(t) be high for short processing times and low for long processing times.

Intance Population Size String

Length p-value

eil51 25* 50 8* 16 0.2370

berlin52 10* 25 8* 16 0.0001

st70 50 100* 8* 16 0.1275

eil76 500* 700 8* 16 0.0441

pr76 50* 100 8* 16 0.0009

rat99 500* 700 10* 20 0.0011

kroA100 25* 100 10* 15 0.0009

kroB100 100* 500 10* 20 0.0002

kroC100 100* 500 10* 20 0.0000

kroD100 100* 500 15* 25 0.0004

kroE100 100 500* 15* 25 0.0545

rd100 100* 500 10* 20 0.0063

eil101 100* 500 15* 25 0.4411

lin105 100* 500 10* 20 0.0000

pr107 400* 700 12* 16 0.0237

pr124 100* 500 12* 20 0.0000

ch150 500* 1000 16* 24 0.7131

pr152 500* 1000 12* 15 0.0000

u159 500* 1000 16* 26 0.0000

ts225 1000* 2500 16* 20 0.0000

Table 1. Analysis of parameters

The survival functions use the Kaplan-Meier (KM) estimators. KM estimators are described in [20].

A maximum processing time was determined for each instance. If an algorithm did not succeed in finding the best solution of a given instance during that time, then the time could not be registered. In these cases, the data are said censored. The analysis presented in this work considers that data are right censored (the most common type of censoring [3]). When the data are not censored, the KM estimator, ����� �� ��� ���� � ������� �� �����

by the proportion of observations that, in a given sample, presented time greater than t. If some data is censored, then the KM estimator is not defined.

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 5: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

The tests were based on a factorial planning where for each one of the two investigated parameters (factors), two levels were selected. The levels of the factors were selected with basis on previous descriptive experiments to find out how hard was for ProtoG to obtain the best solution of the 20 instances. Ten independent runs of ProtoG were executed for each combination of the two factors and levels. Table 1 shows the results of these experiments. The columns of Table 1 show the name of the instance, the two levels investigated for the size of the population, the two levels investigated for the length of the transgenetic agent string, and the p-value. This experiment uses the Chi-square test. The null hypothesis is rejected with a significance level of 5%. It means that if p-value < 0.05, then the null hypothesis is rejected.

Consider the TSP instance berlin52. Table 1 shows that the levels 10 and 25 were examined for the factor population size and the levels 8 and 16 were examined for the length of the transgenetic agent string. Figure 4 shows the KM estimators of the survival functions of the algorithms implemented with the four parameters combinations. A descriptive analysis of the graphic shown in figure 4 indicates that the better performance was found when population size = 10 and string length = 8 (values marked with an asterisk in table 1). The runtime of the algorithm with this parameter setting (pop = 10 and str = 8) was lower than 2.1s. A particular result that can be observed in figure 4 is that all the execution times of ProtoG are lower than 2.1s (1–�(2.1) = 100%). The p-value of berlin52 is 0.0001. Thus, given this p-value, there are evidences that the survival functions are not the same. In other words, if ProtoG is run one time for each one of the four combinations of parameters, applied to the berlin52 instance, there is evidence that at least one of these survival functions differs from the others (theoretically). The p-value indicates that, for a level of significance of 5%, the null hypothesis is rejected for fifteen instances and not rejected for eil51, st70, kroE100, eil101 and ch150. The values marked with an asterisk correspond to the best parameter setting.

Time (s)

S(t

) K

ME

stim

ator

0,0

0,2

0,4

0,6

0,8

1,0

0 1 2 3 4 5 6 7 8 9

Pop: 10 Str: 8

Pop: 10 Str: 16

Pop: 25 Str: 8

Pop: 25 Str: 16

Figure 4. KM estimator for berlin52

5. Computational Experiments

ProtoG SA Intance

tO E T

p-

Value O E T

eil51 200

900 6 0.5359

10

00.00 22

berlin52 60

1000 1 0.0009

10

00.00 2

st70 200

1000 14 0.0255

10

00.00 33

eil76 2000

1000 103 0.9207

10

00.00 199

pr76 300 100 0 9 0.0177 80 0.00 121

rat99 2000 100 0 114 0.0022 60 0.00 1105

kroA100 100 100 0 15 0.0008 20 0.23 100

kroB100 400 100 0 41 0.0589 40 0.09 400

kroC100 400 100 0 26 0.0058 90 0.00 229

kroD100 600

800 64 0.6318

10

00.00 189

kroE100 700 100 0 205 0.0054 40 0.15 700

rd100 400 80 0 56 0.6345 90 0.00 130

eil101 600 80 0 45 0.2538 70 0.00 200

lin105 600

1000 26 0.0012

10

00.00 58

pr107 600

800 104 0.0291

10

00.00 48

pr124 600

1000 30 0.0196

10

00.00 73

ch150 8000 100 0 402 0.0013 60 0.00 4362

pr152 1000 100 0 214 0.0012 30 0.18 1000

u159 1500

1000 270 0.0106

10

00.00 843

ts225 8000 100 0 1432 0.0000 0 0.09 8000

Table 2. Comparison of ProtoG and SA

The algorithms were implemented in C++ in a Pentium IV (Athlon), 2.0 GHz and 512 Mb of RAM. Ten independent runs of ProtoG (with the best parameters

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 6: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

found in the first stage) and SA (with the parameters reported by Karlsson [21]) were performed for each instance. Table 2 presents the results of the computational experiment. The column t corresponds to the maximum runtime given to the algorithms, in seconds. The columns ProtoG and SA show the results of the algorithms where O, E and T correspond, respectively, to the percentage of runs where the optimum solution was found, the median of the percent error (measured in per cent above the optimum solution) and the median of the time spent to reach the optimum solution, in seconds. If the algorithm did not found the optimum for a given instance, then the values of t and T are the same. The null hypothesis of the survival analysis is that the survival functions of ProtoG and SA are similar. This experiment uses the Log-rank test. The null hypothesis is also rejected with a significance level of 5%.

The algorithm ProtoG finds the optimum in 100% of its runs for 15 instances, while the SA finds the optimum in 100% of its runs for 9 instances. The median of ProtoG runtime is lower than the median of the SA runtime for 19 instances. A favorable result for ProtoG is observed with the null hypothesis being rejected for the instances berlin52, st70, pr76, rat99, kroA100, kroC100, kroE100, lin105, pr124, ch150, pr152, u159 and ts225. A favorable result for SA is observed for the instance pr107. The null hypothesis is not rejected for the remaining six instances.

Figures 5 and 6 show the KM estimators of the survival functions obtained from the application of ProtoG and SA to the instances eil101 and rat99. The Log-Rank hypothesis test shows that, with a significance level of 5%, the null hypothesis is rejected for eil101 and not rejected for the instance rat99.

Time (s)

S(t

) K

M E

stim

ator

0,2

0,4

0,6

0,8

1,0

0 100 200 300 400 500 600 700

ProtoG

SA

Complete Censored

Log-Rank Test: p = 0.2538

Figure 5. KM estimator for eil101

6. Conclusion

The preliminary experiments showed that ProtoG is sensitive to the parameters size of population and length of the transgenetic string and that the maximum length of a transgenetic agent string must be less than 10% of the chromosome length.

ProtoG exhibits an overall better performance than SA for the instances of the experiment. The best performance of ProtoG occurs in terms of quality of the solution and runtime.

Time (s)

S(t

) K

M E

stim

ator

0 ,0

0,2

0,4

0,6

0,8

1,0

0 400 800 1200 1600 2000

Log-Rank Test: p = 0.0022

ProtoG

SA

Complete Censored

Figure 6. KM estimator for rat99

7. References

[1] Aarts, E.H.L., J.H.M. Korst, and P.J.M. Laarhoven, “A Quantitative Analysis of the Simulated Annealing Algorithm: A Case Study for the Traveling Salesman Problem”, J. Stats. Phys 50, 1988, pp. 189-206.

[2] Ahuja, R.K., J.B. Orlin, and A. Tivari, “A Greedy Genetic Algorithm for the Quadratic Assignment Problem”, Computers and Operations Research 27 (10), 2000, pp. 917-934.

[3] Allisson, P.D., Survival Analysis using the SAS System: A Practical Guide. SAS Institute Inc., Cary, NC, 1995.

[4] Applegate, D., R.E. Bixby, V. Chvatal, and W. Cook, “TSP Cuts Which Do Not Conform to the Template Paradigm”, Computational Combinatorial Optimization,Junger, M., and D. Naddef eds., Springer, 2001, pp. 261-304.

[5] Behe, M., Darwin’s Black Box: The Biochemical Challenge to Evolution, The Free Press, New York, 1996.

[6] Bowles, S., and H. Gintis, The Evolution of Strong Reciprocity, Technical Report, University of Massachusetts, Amherst, 1998.

[7] Boyd, R., and P. Richerson, Culture and Theory of Social Evolution, Sage Publications, London, 1985.

[8] Bucci, M., “Optimization with Simulated Annealing”, C/C++ Users Journal 19, 2001, pp. 10-27.

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 7: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

[9] Bullnheimer, B., R.F. Hartl, and C. Strauss, “A New Rank Based Version of the Ant System: A Computational Study”, Central European Journal for Operations Research and Economics 7 (1), 1999, pp. 25-38.

[10] Campos, V., M. Laguna, and R. Martí, Context-Independent Scatter and Tabu Search for Permutation Problems, Technical Report, TR03-2001, University of Valencia, 2001.

[11] Crowder, H., and M.W. Padberg, “Solving Large Scale Symmetric Traveling Salesman Problems to Optimality”, Management Science 26, 1980, pp. 495-509.

[12] Dawkins, R., The Selfish Gene, Oxford University Press, 1976.

[13] Dudley, W., Genetic Engineering, Greenhave Press, Inc., San Diego, 1990.

[14] Fiechter, C.N., “A Parallel Tabu Search Algorithm for Large Scale Traveling Salesman Problems”, Working Paper 90/1, Department of Mathematics, École Polytechnique Federale de Lausanne, Switzerland, 1990.

[15] Goldbarg, M.C., and E.F.G. Goldbarg, “Transgenética Computacional: Uma Aplicação ao Problema Quadrático de Alocação”, Pesquisa Operacional 22 (3), 2002, pp. 359-386.

[16] Gouvêa, E.F., and M.C. Goldbarg, “ProtoG: A Computational Transgenetic Algorithm”, 4Th Metaheutistics International Conference, MIC, 2001, pp. 625-630.

[17] Gutin, G., and A. P. Punnen, eds., Traveling Salesman Problem and Its Variations, Kluwer Academic, 2002.

[18] ������� ��� ��� � ������ ��� ���������

Neighbourhood Search in State-of-the-art”, Handbook of Metaheuristics, F. Glover, and G. Kochenagen, eds., Kluwer Academic Publishers, Dordrecht, 2003, http://www.crpc.rice.edu/CRPC/newsAchive/techweb_6_29_98.htm.

[19] Jünger, M., G. Reinelt, and G. Rinaldi, “The Traveling Salesman Problem”, Ball, Magnanti, Monma and Nemhauser eds., Handbook on Operations Research and the Management Sciences, North Holland Press, 1994, pp. 225-330.

[20] Kaplan, E.L., and P. Meier, “Nonparametric Estimation from Incomplete Observations”, Journal of American Statistical Association 53, 1958, pp. 457-481.

[21] Karlsson, P., Simulated Annealing Applied to the Traveling Salesman Problem, Report of Uppsala University, 2002, http://peg.it.uu.se/~saps02/PatrickKarlsson/

[22] Katayama, K., and H. Sakamoto, “The Efficiency of Hybrid Mutation Genetic Algorithm for the Traveling Salesman Problem”, Mathematical and Computer Modelling 31, 2000, pp.197-203.

[23] Kirkpatrick, S., C.D. Gelatt Jr., and M.P. Vecchi, “Optimization by Simulated Annealing”, Science 4598 (220), 1983, 671-680.

[24] Lawler, E.L., J.K. Lenstra, A.G.G. Rinnooy Kan, and D. B. Shmoys, eds., The Traveling Salesman Problem, John Wiley, Chichester, 1985.

[25] Lee, J., and M.Y. Choi, “Optimization by Multicanonical Annealing and the Traveling Salesman Problem”, Physical Review E50, 1994, pp. 651-654.

[26] Lumsden, C.J., and E.O. Wilson, Genes, Mind and Culture, Harvard University Press, Cambridge, 1981.

[27] Lynch, A., “Units, Events and Dynamics in MemeticEvolution”, Journal of Memetics: Evolutionary Models of Information Transmission 2, 1998, www.cpm.mmu.ac.uk/jom-emit/1998/vol2/lynch_a.html

[28] Marguli, L. and D. Sagan, The Origins of Sex: Three Billions Years of Genetic Recombinations, Yale University Press, New Haven, 1991.

[29] Martin, C., and S.W. Otto, “Combining Simulated Annealing with Local Search Heuristics”, Annals of Operations Research 63, 1996, pp. 57-75.

[30] Merz, P., and B. Freisleben, “Fitness Landscape Analysis and Memetic Algorithms for the Quadratic Assignment Problem”, IEEE Transactions on Evolutionary Computation 4 (4), 2000, pp. 337-352.

[31] Michalewicz, Z., and D.B. Fogel, How to Solve it: Modern Heuristics, Springer-Verlag, 2000.

[32] Pardalos, L.Y., and M.G.C. Resende, “A Greedy Randomized Adaptive Search Procedure for the Quadratic Assignment Problem”, Discrete Mathematics and Theoretical Computer Science 16, DIMACS Series, 1994, pp. 237-261.

[33] Plotkin, H.C., “Non-genetic Transmission of Information: Candidate Cognitive Processes and the Evolution of Culture, Behavioural Processes 35, 1996,

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE

Page 8: [IEEE 23rd International Conference of the Chilean Computer Science Society, 2003. SCCC 2003. - Chillan, Chile (6-7 Nov. 2003)] 23rd International Conference of the Chilean Computer

pp. 207-213.

[34] Potvin, J.V., “The Traveling Salesman Problem: A Neural Network Perspective”, INFORMS Journal on Computing 5, 1993, pp. 328-348.

[35] Potvin, J. V., “Genetic Algorithms for the Traveling Salesman Problem”, Annals of Operations Research, 63, 1996, pp. 339-370.

[36] Radcliffe, N. J., N.J.and P.D.Surry, “Formal Memetic Algorithms”, Lecture Notes in Computer Science865, "Evolutionary Computing", Springer Verlag, Berlin, 1994, pp. 1-16.

[37] Record, 1998, http://www.crpc.rice.edu/CRPC/newsletters/sum98/news_tsp.html.

[38] Reeves, C.R., Modern Heuristic Techniques for Combinatorial Problems, Blackwell Scientific

Publication, 1993.

[39] Reinelt, G., The Traveling Salesman: Computational Solutions for TSP Applications, Springer-Verlag, Berlin, 1994.

[40] Reinelt, G., 1995, http://www.iwr.uni-heidelberg.de/iwr/ comopt/software/TSPLIB95/

[41] Schmitt, L.J., and M.M. Amini, “Performance Characteristics of Alternative Genetic Algorithmic Approaches to the Traveling Salesman Problem Using Path Representation: An Empirical Study”, EJOR 108, 1998, pp. 551-570.

[42] Wilson, E.O., Consilience, Knopfs, A.A., ed., New York, USA, 1998.

Proceedings of the XXIII International Conference of the Chilean Computer Science Society (SCCC’03) 1522-4902/03 $ 17.00 © 2003 IEEE