A PSEUDO GENETIC ALGORITHM FOR SOLVING BEST PATH PROBLEM S. Behzadi *, Ali A. Alesheikh Dept. of GIS, Faculty of Geodesy and Geomatics Engineering, K.N. Toosi University of Technology Valiasr Street, Mirdamad Cross, Tehran, P.C. 19967-15433 - behzadi@sina.kntu.ac.ir , alesheikh@kntu.ac.ir Commission II, WG II/2 KEY WORDS: Genetic Algorithm, Shortest path problem, Mutation, Crossover, Pseudo GA. ABSTRACT: Within the last few decades, there has been exponential growth in the research, development, and utilization of Geospatial Information Systems (GIS). While GISs have been developed to challenge most types of spatial analysis problems, many of the more complex spatial problems are still beyond their current capabilities to solve. These types of problems often encounter large search spaces with large numbers of potential solutions. In such cases, standard analytical techniques typically cannot find optimal solutions to the problem within practical temporal and/or computational limits. One such problem within the field of spatial analysis is that of the routing problem. This paper focuses on the development of algorithmic solutions for the best path problem. Finding optimum path has many practical applications within the fields of operations research, logistics, distribution, supply chain management and transportation. In general, best path routing involves finding efficient routes for travellers along transportation networks, in order to minimize route length, service cost, travel time, number of vehicles, etc. This is a combinatorial optimization problem for which no simple solutions exist. As an alternative, solution techniques from the field of evolutionary computation is implemented and tested for solving instances of the best path. The field of evolutionary computation (EC) has developed to integrate several previously researched fields of related study into one. The sub-fields of EC include genetic algorithms, evolutionary programming, evolutionary strategies, and genetic programming. EC uses computational techniques that are analogous to the evolutionary mechanisms that work within natural biological systems, such as natural selection (i.e., survival of the fittest), crossover, mutation, etc. Within EC, these operators are used as a means of quickly evolving optimal or near-optimal solutions to a problem within a computational framework designed to represent a relevant search space.This paper scientifically reviews evolutionary algorithms in solving GIS problems. Based on their advantages and drawbacks of the methods a new algorithm called pseudo GA is developed. The algorithm is tested for various case studies. The results are presented and discussed. The result of performance analysis of the new algorithm is encouraging. * Corresponding author. Tel: (+98 21)8887 7072, ext. 303 Fax: (+98 21) 8878 6213 1. INTRODUCTION Genetic algorithms are inspired by Darwin's theory about evolution [3] . Solution to a problem solved by genetic algorithms is evolved. The genetic algorithm is a method for solving optimization problems that is based on natural selection, the process that drives biological evolution. The genetic algorithm repeatedly modifies a population of individual solutions. At each step, the genetic algorithm selects individuals at random from the current population to be parents and uses them produce the children for the next generation. Over successive generations, the population "evolves" toward an optimal solution. Algorithm is started with a set of solutions (represented by chromosomes) called population. Solutions from one population are taken and used to form a new population. This is motivated by a hope, that the new population will be better than the old one. Solutions which are selected to form new solutions (offspring) are selected according to their fitness - the more suitable they are the more chances they have to reproduce [4] . This is repeated until some condition (for example number of populations or improvement of the best solution) is satisfied. The following summarizes how the genetic algorithm works [2] : 1. The algorithm begins by creating a random initial population. 2. The algorithm then creates a sequence of new populations, or generations. At each step, the algorithm uses the individuals in the current generation to create the next generation. To create the new generation, the algorithm performs the following steps: a. Scores each member of the current population by computing its fitness value. b. Scales the raw fitness scores to convert them into a more usable range of values. c. Selects parents based on their fitness. d. Produces children from the parents. Children are produced either by making random changes to a single parent -- mutation -- or by combining the vector entries of a pair of parents -- crossover. e. Replaces the current population with the children to form the next generation. 3. The algorithm holds when one of the stopping criteria is met. 253