Genetic Algorithms in Search, Optimization & Machine Learning by David E. Goldberg Chapter 1: A Gentle Introduction to Genetic Algorithms Goals: o To abstract and rigorously explain the adaptive processes of natural systems o To design artificial systems software that retains the important mechanisms of natural systems Theme of research on genetic algorithms: robustness o Robustness: the balance between efficiency and efficacy necessary for survival in many different environments Traditional search methods: calculus based, enumerative, and random o Calculus-based methods divide into two classes: indirect and direct Indirect: set the gradient to zero Direct (search, or hillclimbing): hop on the function and move in a direction related to the local gradient Problem: algorithm requires continuous function and derivative o Enumerative schemes: within a finite search space, or a discretized infinite search space, the search algorithm starts looking at objective function values at every point in the space, one at a time. Problem: lack of efficiency o Random search: randomly walk and search, saving the best solution along the way Optimization seeks to improve performance toward some optimal point o Note it has two parts: (1) seek to improve according to some (2) optimal point Genetic Algorithms differ from other search and optimization algorithms because: o GAs work with a coding of the parameter set, not the parameters themselves o GAs search from a population of points, not a single point o GAs use payoff (objective function) information, not derivatives or other auxiliary knowledge o GAs use probabilistic transition rules, not deterministic rules GAs only require payoff values (objective function values) associated with individual strings in order to make it a more canonical method than many search schemes. To yield good results in many practical problems is composed of three operators: o Reproduction: Individual strings are copied according to their objective function values. This can be thought of as some measure of profit, utility, or goodness that we want to maximize. Copying strings according to their fitness values means that strings with a higher value will have a higher probability of contributing one or more offspring in the next generation. This is similar to Darwin’s natural selection (survival of the fittest) Implementation detail: Roulette wheel o Crossover: 2 steps Members of the newly reproduced strings in the mating pool are mated at random Each pair of strings undergoes crossing over o Mutation Good results in empirical genetic algorithm studies is on the order of one mutation per thousand bit (position) transfers Chromosomes strings Genotype structure Phenotype parameter set, solution alternative, or point (in the solution space) Genes features or detectors (or a particular character) Alleles values Locus position Chapter 2: Genetic Algorithms Revisited: Mathematical Foundations Skipped Chapter 3: Computer Implementation of a Genetic Algorithm The data structure for a population is an array, where each element contains the following information (type individual indexed from 1- maxpop): o Phenotype (decoded parameter or parameters) o Genotype (artificial chromosome or bit string) o Fitness (objective function) o Other auxiliary information maxpop: upper bound on the population size maxstring: upper bound on the string size individual contains chrom, x, fitness, site, and parent information (see page 61) global variables defined on page 62 function select is described and implemented on page 63 procedure crossover is described and implemented on page 64 function mutation is described and implemented on page 65 procedure generation is described and implemented on page 66 a fully working version is shown in Appendix C Chapter 4: Some Applications of Genetic Algorithms Holland’s genetic algorithms are similar to Fraser simulating his epistatic function The first mention of the words “genetic algorithm” and the first published application of a genetic algorithm both came in Bagley’s dissertation. o Constructed GAs to search for parameter sets in game evaluation functions o He introduced a fitness scaling mechanism to reduce the selection early in a run, thereby preventing domination of a population by a single super-individual, and increase the selection later in a run, thereby maintaining appropriate competition among highly fit and similar strings near population convergence o He also introduced self-contained controls (GA self-regulation). He suggested coding the crossover and mutation probabilities within the chromosomes themselves Rosenberg simulated a population of single-celled organisms with a simple yet rigorous biochemistry, a permeable membrane, and classical genetic structure (one gene, one enzyme) o Important to the development of GAs in artificial applications because of its resemblance to optimization and root-finding Cavicchio applied GAs to a subroutine selection problem and a pattern recognition problem o Pixels and feature detectors Weinberg proposed the use of a multilayered genetic algorithm to select a good set of 15 rate constants that controlled the workings of different simulated E coli cells. Hollstien’s dissertation was first to apply GAs to a pure problem Goldberg applied GAs to optimization and machine learning problems in natural gas pipeline control Chapter 5: Advanced Operators and Techniques in Genetic Search Diploidy and dominance permit alternate solutions to be held in abeyance—shielded against overselection In Bagley’s dissertation, a diploid chromosome pair mapped to a particular phenotype using a variable dominance map coded as part of the chromosome itself o Dominance values tended to fixate early in simulations, leaving dominance determination in the hands of his complicated and arbitrary tie-breaking scheme o Prohibited mutation operator from processing dominance values, further aggravating his premature convergence of dominance values Rosenberg’s biologically oriented study contained a diploid chromosome model; however, since biochemical interactions were modeled in some detail, dominance was not considered as a separate effect o Any dominance effect in this study was the result of the presence or absence of a particular enzyme, so the enzyme essentially controls the phenotype Hollstien’s study included diploidy and an evolving dominance mechanism o Described two simple evolving dominance mechanisms and then put the simplest to use in his study of function optimization Each binary gene was described by two genes, a modifier gene (M or m) and a functional gene (0 or 1). 0 alleles were dominant when there was at least one M allele present at one of the homologous modifier loci. IN this triallelic scheme, Hollstien drew alleles from the 3-alphabet {0, 1, 2}. The 2 played the rolde of a dominant “1” and the 1 palyed the role of recessive “1.” Brindle performed experiements with a number of dominance schemes in a function optimization setting, but she ignored previous work in artificial dominance and diploidy, and a number of schemes she deveoled were without theoretical basis or biological precedent. The following are her 6 schemes: o Random, fixed, global dominance o Variable, global dominance o Deterministic, variable, global dominance o Choose a random chromosome o Dominance of the etter chromosome o Haploid controls diploid adaptive dominance A computer implementation of triallelic diploidy and dominance (Holland-Hollstien) is presented on page 162. Evolutionary Algorithms in Theory and Practice by Thomas Back Chapter 1: Organinc Evolution and Problem Solving Each individual in a population repersents not onaly a search point in the space of potential solutions to a given problem, but also may be a temporal contianer of current knowledge about the “laws” of the environment Synthetic theory of evolution (neodarwinism) is based on genes as transfer units of heredity Fitness of an individual is measured only indirectly by its growth rate in comparison to others Schull claims that individuals themselves by means of an adaptation during their development and by trying to cope as best as they can with the situation are also changing the structure of the adaptive surface DNA—nucleotide base relationships (adenine thymine and cytosine guanine), replication, transcription, translation are discussed Meiosis and mitosis are discussed Artificial Intelligence is the study of how to make computers do things at which, at the moment, people are better Learning is constructing or modifying representations of what is being experienced Classical AI research concentrates on the use of symbolic representations based upon a finite number of representation primitives and rules for the manipulation of symbols Currently, the field of AI si starting to spread research into a variety of directions and trieds to integrate different methods into large-scale systems, thus combining their advantages as far as possible. Evolutionary Algorithms make use of a subsymbolic representation of knowledge encoded in the genotypes of individuals Artificial Neural Networks (ANN) is based upon a simple omodel of the central nervous systems of higher animals Optimization problem, where the goal is to find a set of parameters (which might be interpreted as a “genotype” as well as a “phenotype”) such that a certain quality criterion is maximized or minimized The problem to determine a memboer of the level set of an arbitrary global optimization problem with continuous objective function f on a compact feasible region M within a finite number of steps is unsolvable Optimization problems with discrete object variables are called cominatorial optimization problems Automatic programming denotes the task of finding a program which calculates a certain inputoutput function Chapter 2: Specific Evolutionary Algorithms An evolutionary Algorithm (EA) is defined as an 8 tuple o I = Ax x As is the space of individuals, and Ax, As denote arbitrary sets o Phi: I -> Reals denotes a fitness function assigning real values to individuals o Omega is a set of probabilistic genetic operators, each of which is controlled by specific parameters asummarized in the sets o S denotes the selection operator, which may change the number of individuals from lambda or lambda+mu to mu, where mu, lambda are in the set of integers, and mu=lambda is permitted o Mu is the number of parents individuals o Lambda denotes the number of offspring individuals o i is a termination criterion for the EA o psi describes the complete process of transorming apopulation into a subsequent one by apllying genetic operators and selection Evolution strategies: The two membered ES works by creating one n-dimensioanl real-valued vector of object variables from its parent by applying nmutation with identical tandard deviations to each object variable. The resulting individual is evaluated and compared to its parent, and the better of both individuals survives to become parent of the next generation, while the other one is discarded o The major quality of this strategy is seen in its ability to incorporate the most important parameters of the strategy (standard deviations and correlation coefficients of normally distributed mutations) into the search process, such that optimization not only takes place on object variables, but also on strategy parameters according to the actual local topology of the objective function. This capability is termed self-adaptation Evolutionary Programming: The original method (by L. J. Fogel) used uniform random mutations on discrete underlying alphabets and, in its most elaborated form, a (mu+mu)-selection mechanism. His son D. B. Fogel extended Evolutionary Programming for applications involving continuous parameter optimization problems. Five different variants can be identified: o Standard EP, which is characterized by the absence of any self-adaptation mechanism o Continuous standard EP, where the term “continous” indicates that in contrast to the generation-based working mechanism a newly created individual is immediately evaluated and inserted into the population o Meta-EP, which incorporates variances into the genotype in order to allow for their selfadaptation o Continuous meta-EP o Rmeta-EP, which in addition to standard deviations also incorporates covariances (which are represented by correlation coefficients) into the genotype for self-adaptation Genetic algorithms: o Probably the earliest predecessor of these algorithms emerged in the work of Fraser, a biologist who wanted to simulate evolution with special emphasis on the interaction of epistasis with selection o Genetic Algorithms in their usual form are a development of Holland, computer scientist and psychologist at the University of Michigan Summarized his work on adaptive and reproductive plans in 1975 o Genetic Algorithms need a scaling function to map objective function values to positive real values, since the standard selection mechanism of Genetic Algorithms requires positive fitness values and highest fitness values for the best individuals o