Genetic Algorithms Variations and Implementation Issues

Similar documents
Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you?

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS

Heuristic Optimisation

Introduction to Genetic Algorithms. Based on Chapter 10 of Marsland Chapter 9 of Mitchell

Computational Intelligence

Genetic Algorithms for Vision and Pattern Recognition

Escaping Local Optima: Genetic Algorithm

Automated Test Data Generation and Optimization Scheme Using Genetic Algorithm

Introduction to Genetic Algorithms

Genetic Algorithms. Kang Zheng Karl Schober

Genetic Algorithms. Chapter 3

DERIVATIVE-FREE OPTIMIZATION

Artificial Intelligence Application (Genetic Algorithm)

Outline. Motivation. Introduction of GAs. Genetic Algorithm 9/7/2017. Motivation Genetic algorithms An illustrative example Hypothesis space search

Evolutionary Algorithms. CS Evolutionary Algorithms 1

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

AN IMPROVED ITERATIVE METHOD FOR SOLVING GENERAL SYSTEM OF EQUATIONS VIA GENETIC ALGORITHMS

Neural Network Weight Selection Using Genetic Algorithms

[Premalatha, 4(5): May, 2015] ISSN: (I2OR), Publication Impact Factor: (ISRA), Journal Impact Factor: 2.114

Genetic Algorithms. PHY 604: Computational Methods in Physics and Astrophysics II

GENETIC ALGORITHM with Hands-On exercise

Introduction to Optimization

Evolutionary Computation Part 2

An Introduction to Evolutionary Algorithms

METAHEURISTICS Genetic Algorithm

CHAPTER 5 ENERGY MANAGEMENT USING FUZZY GENETIC APPROACH IN WSN

Advanced Search Genetic algorithm

Planning and Search. Genetic algorithms. Genetic algorithms 1

4/22/2014. Genetic Algorithms. Diwakar Yagyasen Department of Computer Science BBDNITM. Introduction

Local Search. CS 486/686: Introduction to Artificial Intelligence Winter 2016

The Genetic Algorithm for finding the maxima of single-variable functions

Mutations for Permutations

Chapter 9: Genetic Algorithms

Evolutionary Computation. Chao Lan

DETERMINING MAXIMUM/MINIMUM VALUES FOR TWO- DIMENTIONAL MATHMATICLE FUNCTIONS USING RANDOM CREOSSOVER TECHNIQUES

Introduction to Evolutionary Computation

Adaptive Crossover in Genetic Algorithms Using Statistics Mechanism

Genetic Algorithms Presented by: Faramarz Safi (Ph.D.) Faculty of Computer Engineering Islamic Azad University, Najafabad Branch.

Pseudo-code for typical EA

Preliminary Background Tabu Search Genetic Algorithm

The Binary Genetic Algorithm. Universidad de los Andes-CODENSA

Introduction to Optimization

Genetic Programming. and its use for learning Concepts in Description Logics

Multi-objective Optimization

Genetic Algorithms: Setting Parmeters and Incorporating Constraints OUTLINE OF TOPICS: 1. Setting GA parameters. 2. Constraint Handling (two methods)

Using Genetic Algorithms in Integer Programming for Decision Support

Chapter 14 Global Search Algorithms

A Steady-State Genetic Algorithm for Traveling Salesman Problem with Pickup and Delivery

Research Article Path Planning Using a Hybrid Evolutionary Algorithm Based on Tree Structure Encoding

ATI Material Do Not Duplicate ATI Material. www. ATIcourses.com. www. ATIcourses.com

CS:4420 Artificial Intelligence

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem

Structural Optimizations of a 12/8 Switched Reluctance Motor using a Genetic Algorithm

Lecture 4. Convexity Robust cost functions Optimizing non-convex functions. 3B1B Optimization Michaelmas 2017 A. Zisserman

Search Algorithms for Regression Test Suite Minimisation

Automata Construct with Genetic Algorithm

Using Genetic Algorithms to Design Experiments: A Review

Optimization of Association Rule Mining through Genetic Algorithm

Comparative Analysis of Genetic Algorithm Implementations

Local Search. CS 486/686: Introduction to Artificial Intelligence

MAXIMUM LIKELIHOOD ESTIMATION USING ACCELERATED GENETIC ALGORITHMS

ANTICIPATORY VERSUS TRADITIONAL GENETIC ALGORITHM

Submit: Your group source code to mooshak

AI Programming CS S-08 Local Search / Genetic Algorithms

Time Complexity Analysis of the Genetic Algorithm Clustering Method

METAHEURISTIC. Jacques A. Ferland Department of Informatique and Recherche Opérationnelle Université de Montréal.

CHAPTER 1 at a glance

Network Routing Protocol using Genetic Algorithms

International Journal of Scientific & Engineering Research Volume 8, Issue 10, October-2017 ISSN

Genetic Algorithms and Genetic Programming Lecture 7

Lecture 6: The Building Block Hypothesis. Genetic Algorithms and Genetic Programming Lecture 6. The Schema Theorem Reminder

REAL-CODED GENETIC ALGORITHMS CONSTRAINED OPTIMIZATION. Nedim TUTKUN

Optimization Technique for Maximization Problem in Evolutionary Programming of Genetic Algorithm in Data Mining

Genetic algorithms and finite element coupling for mechanical optimization

Hybridization EVOLUTIONARY COMPUTING. Reasons for Hybridization - 1. Naming. Reasons for Hybridization - 3. Reasons for Hybridization - 2

Reducing Graphic Conflict In Scale Reduced Maps Using A Genetic Algorithm

Segmentation of Noisy Binary Images Containing Circular and Elliptical Objects using Genetic Algorithms

Inducing Parameters of a Decision Tree for Expert System Shell McESE by Genetic Algorithm

Thresholds Determination for Probabilistic Rough Sets with Genetic Algorithms

Optimal Synthesis of Crank Rocker Mechanism for Point to Point Path Generation

CHAPTER 6 REAL-VALUED GENETIC ALGORITHMS

A Genetic Algorithm Framework

Grid Scheduling Strategy using GA (GSSGA)

What is GOSET? GOSET stands for Genetic Optimization System Engineering Tool

Optimization of Benchmark Functions Using Genetic Algorithm

The Continuous Genetic Algorithm. Universidad de los Andes-CODENSA

Genetic Algorithm for Finding Shortest Path in a Network

The Parallel Software Design Process. Parallel Software Design

Lecture 6: Genetic Algorithm. An Introduction to Meta-Heuristics, Produced by Qiangfu Zhao (Since 2012), All rights reserved

CS5401 FS2015 Exam 1 Key

Information Fusion Dr. B. K. Panigrahi

V.Petridis, S. Kazarlis and A. Papaikonomou

FOREST PLANNING USING PSO WITH A PRIORITY REPRESENTATION

Usage of of Genetic Algorithm for Lattice Drawing

Path Planning Optimization Using Genetic Algorithm A Literature Review

Improving interpretability in approximative fuzzy models via multi-objective evolutionary algorithms.

Optimization of Test Scheduling and Test Access for ITC-02 SOC Benchmark Circuits

A New Selection Operator - CSM in Genetic Algorithms for Solving the TSP

Hardware Neuronale Netzwerke - Lernen durch künstliche Evolution (?)

Transcription:

Genetic Algorithms Variations and Implementation Issues CS 431 Advanced Topics in AI Classic Genetic Algorithms GAs as proposed by Holland had the following properties: Randomly generated population Binary encoding of fixed length (k-bits) Constant population size, N Fitness-proportionate selection of parents with replacement Crossover probability or rate, p c (i.e. two selected parents will crossover with probability p c ) One-point crossover at a randomly chosen crossover point/location Per bit Mutation rate, p m (i.e. each bit can mutate with probability p m ) Bit-flip mutation Keep all offspring, discard parents for next generation (population remains equal to N) Fitness function based stopping criterion (i.e. fitness of best individual does not change from one generation to another) CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 2 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 1

Design Decisions for Classic GAs Problem formulation as search for best solution in search/solution space Choice of a fitness function for evaluating goodness of candidate solutions Length (k) of binary string for representing candidate solutions Size of population (N) Crossover rate, p c Mutation rate, p m Convergence criteria Implementing in software CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 3 Design Decisions for GAs The following decisions might have to be made for general and modern GAs Type of crossover operator Type of mutation operator (or even if mutation should be used on not) Whether to use other operators as well (like hill-climbing, operators from other fields) Selection strategies Replacement strategies Convergence criteria Integration with other techniques (e.g. neural networks, fuzzy systems, etc) Parameters for the various operations Efficient implementation in software CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 4 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 2

Operators (1) Crossover operators One-point crossover K-point crossover Uniform crossover Arithmetic crossover Crossover rate: the probability of applying crossover Other operators for nonlinear representations Mutation operators Bit flipping Random bit assignment Multiple mutations Per-chromosome vs. per-gene (bit) mutation rate Other operators for non-binary representations CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 5 Operators (2) Selection Fitness-proportionate selection/roulette wheel algorithm Rank-based selection Tournament selection More complex selection strategies Search bias The various operators bias the search process in different ways. That is, some offspring tend to be more likely to be generated than others. As such, these operators bias the performance of Gas. Depending on the cause, bias can be crossover bias, mutation bias, selection bias, etc. CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 6 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 3

Crossover Operators (1) CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 7 Crossover Operators (2) One-point crossover (SPX) Classic and simplest technique Involves cutting the chromosomes of the parents at a randomly chosen common point and exchanging the righthand sub-chromosomes Limitation: may not produce variant offspring for certain types of parent chromosomes (from the theory of GAs) Positive: simple CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 8 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 4

Crossover Operators (3) Two-point or double-point crossover (DPX) Two common points are located in parents and the sub-chromosomes between these points are exchanged The chromosomes are thought of as rings with the first and last gene connected. The rings are cut at two points and the resulting parts are exchanged In general, k-point crossover CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 9 Crossover Operators (4) Uniform crossover (UPX) Each gene in offspring is randomly selected from corresponding genes of the parents There is a uniform probability of an offspring getting a particular gene from either parent Arithmetic crossover (APX) An arithmetic operator is applied to all the genes of the two parents to compute the genes for the offspring Crossover is applied to parents with probability p c (usually between 0.5-0.8). If parents are not crossovered then they are cloned to maintain the population CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 10 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 5

Mutation Operators Mutation consists of making (usually small) alterations to one or more genes in a chromosome In binary chromosomes it consists of inverting random bits of the genotypes In GAs, mutation is generally considered as a method to avoid fixation of genetic material rather than to obtain better solutions The per-gene mutation rate is very low (usually between 0.001 and 0.01). A rule of thumb is p m = 1/(no. of bits in string) CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 11 Selection Strategies or Operators (1) Selection is the process by which individual (i.e. their chromosomes) are selected for reproduction To emulate natural selection individuals with a higher fitness should be chosen with a higher probability By exploiting higher fitness individuals it is expected that offspring would be of high quality and the population evolves in quality However, a balance must be achieved between exploitation and exploration (through genetic operators) to avoid local searches CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 12 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 6

Fitness-Proportionate Selection (1) This is the most common selection strategy. Introduced by Holland. Let f i = fitness of individual i and f = (1/N) Σ j f j = average fitness of population Then, individual i is selected with a probability p i = f i / Σ j f j = f i / fn Can be implemented by the roulette wheel algorithm. E.g. f 1 = f 2 = 10; f 3 = 15; f 4 = 25 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 13 Fitness-Proportionate Selection (2) Roulette wheel algorithm Generate a random floating point number r in the range [0, Σ j N f j ]. Select individual i such that Σ i i-1 f i r < Σ i N f i Problems with FPS Premature convergence Stagnation Solution: fitness scaling techniques CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 14 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 7

Rank Selection Individuals are sorted (ranked) on the basis of their fitness, so that f i >= f j for i < j Then each individual is assigned a probability p i of being selected taken from a given distribution, with the constraint that Σi p i = 1 Advantages No premature convergence No stagnation Explicit fitness not needed for sorting; only the ability to compare two individuals Disadvantages Sorting overhead No theoretical basis (and not naturally inspired) CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 15 Tournament Selection For tournament selection, a group of N >= 2 individuals is selected randomly from the population The individual with highest fitness in the group is selected, the others are discarded (tournament) Process is repeated until desired number of parents are obtained Advantages No premature convergence No stagnation No sorting required Explicit fitness not needed Is naturally inspired CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 16 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 8

Encoding Schemes (1) Integer parameters If parameter p varies in the range [0, 2 N -1] then we can encode it using binary representation of N bits (b 1 to b N ) such that p = Σi N b i 2 i-1 If p is in the range [M, M + 2 N - 1] (M is not zero), then the above encoding can be used with translation If p is in the range [0, L-1] where there is no N such that L = 2 N then some remapping schemes would have to used CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 17 Encoding Schemes (2) Real-valued parameters Real-valued parameters can be represented as fixed points numbers or integers by scaling and quantization. E.g. if p ranges from p min to p max then it is quantized to the following value when binary representation of length N is used: p(2 N 1) /(p max p min ) Thus, there is a conflict between keeping the chromosome short for good convergence and knowing the solution with good precision Real-valued parameters can also be represented by nonbinary symbols or real numbers CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 18 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 9

Assignment Problem (1) Find the maximum of the following function in the range -8 x, y 7. Consider integer values only. 2 2 2 f ( x, y) = exp[ 0.7( x + 0.2) ]*exp[ 0.9y ] + 2exp[ ( x 5) ]*exp[ ( y 2) What is its fitness function? What representation to use? Length of bit string? Effect of size of initial population? Effect of p m and p c? Effect of crossover, mutation, selection, and replacement? 2 ] CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 19 Assignment Problem (2) CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 20 CS 431 (Wi 2002/2003) - Asim Karim @ LUMS 10