What is Evolutionary Computation? Genetic Algorithms. Components of Evolutionary Computing. The Argument. When changes occur...

Similar documents
GENETIC ALGORITHMS. Narra Priyanka. K.Naga Sowjanya. Vasavi College of Engineering. Ibrahimbahg,Hyderabad.

Part 1: Motivation, Basic Concepts, Algorithms

Computational Intelligence Lecture 20:Intorcution to Genetic Algorithm

Evolutionary Computation. Lecture 3. Evolutionary Computation. X 2 example: crossover. x 2 example: selection

Evolutionary Computation

Introduction to Genetic Algorithm (GA) Presented By: Rabiya Khalid Department of Computer Science

EVOLUTIONARY ALGORITHMS AT CHOICE: FROM GA TO GP EVOLŪCIJAS ALGORITMI PĒC IZVĒLES: NO GA UZ GP

College of information technology Department of software

10. Lecture Stochastic Optimization

Introduction To Genetic Algorithms

VISHVESHWARAIAH TECHNOLOGICAL UNIVERSITY S.D.M COLLEGE OF ENGINEERING AND TECHNOLOGY. A seminar report on GENETIC ALGORITHMS.

CapSel GA Genetic Algorithms.

Genetic Algorithms and Genetic Programming Lecture 13

CEng 713 Evolutionary Computation, Lecture Notes

Evolutionary Algorithms

Evolutionary Computation. Lecture 1 January, 2007 Ivan Garibay

Introduction To Genetic Algorithms

Genetic Algorithm: A Search of Complex Spaces

Machine Learning: Algorithms and Applications

Genetic algorithms. History

Optimisation and Operations Research

Introduction to Artificial Intelligence. Prof. Inkyu Moon Dept. of Robotics Engineering, DGIST

DEVELOPMENT OF MULTI-OBJECTIVE SIMULATION-BASED GENETIC ALGORITHM FOR SUPPLY CHAIN CYCLIC PLANNING AND OPTIMISATION

The Metaphor. Individuals living in that environment Individual s degree of adaptation to its surrounding environment

Introduction Evolutionary Algorithm Implementation

Evolutionary Algorithms

Recessive Trait Cross Over Approach of GAs Population Inheritance for Evolutionary Optimisation

Genetic Algorithms for Optimizations

Genetic Algorithm: An Optimization Technique Concept

Journal of Global Research in Computer Science PREMATURE CONVERGENCE AND GENETIC ALGORITHM UNDER OPERATING SYSTEM PROCESS SCHEDULING PROBLEM

Comp215: Genetic Algorithms - Part 1

From Genetics to Genetic Algorithms

Machine Learning. Genetic Algorithms

Machine Learning. Genetic Algorithms

Plan for today GENETIC ALGORITHMS. Randomised search. Terminology: The GA cycle. Decoding genotypes

COMPARATIVE STUDY OF SELECTION METHODS IN GENETIC ALGORITHM

Processor Scheduling Algorithms in Environment of Genetics

Evolutionary Algorithms - Population management and popular algorithms Kai Olav Ellefsen

2. Genetic Algorithms - An Overview

Generational and steady state genetic algorithms for generator maintenance scheduling problems

Implementation of CSP Cross Over in Solving Travelling Salesman Problem Using Genetic Algorithms

Artificial Evolution. FIT3094 AI, A-Life and Virtual Environments Alan Dorin

Design and Implementation of Genetic Algorithm as a Stimulus Generator for Memory Verification

CSE /CSE6602E - Soft Computing Winter Lecture 9. Genetic Algorithms & Evolution Strategies. Guest lecturer: Xiangdong An

What is an Evolutionary Algorithm? Presented by: Faramarz Safi (Ph.D.) Faculty of Computer Engineering Islamic Azad University, Najafabad Branch

TIMETABLING EXPERIMENTS USING GENETIC ALGORITHMS. Liviu Lalescu, Costin Badica

Genetic Algorithms. Moreno Marzolla Dip. di Informatica Scienza e Ingegneria (DISI) Università di Bologna.

PARALLEL LINE AND MACHINE JOB SCHEDULING USING GENETIC ALGORITHM

Intelligent Techniques Lesson 4 (Examples about Genetic Algorithm)

IMPLEMENTATION OF AN OPTIMIZATION TECHNIQUE: GENETIC ALGORITHM

initial set of random solutions called population satisfying boundary and/or system

Genetic Algorithms and Genetic Programming Lecture 14

Intro. ANN & Fuzzy Systems. Lecture 36 GENETIC ALGORITHM (1)

Keywords Genetic Algorithm (GA), Evolutionary, Representation, Binary, Floating Point, Operator

GENETIC ALGORITHM BASED APPROACH FOR THE SELECTION OF PROJECTS IN PUBLIC R&D INSTITUTIONS

Application of Genetic Algorithm in Numerical Solution of Twodimensional

An introduction to evolutionary computation

Designing High Thermal Conductive Materials Using Artificial Evolution MICHAEL DAVIES, BASKAR GANAPATHYSUBRAMANIAN, GANESH BALASUBRAMANIAN

GENETIC ALGORITHM A NOBLE APPROACH FOR ECONOMIC LOAD DISPATCH

A Genetic Algorithm on Inventory Routing Problem

In order to have GA, you must have a way to rate a given solution (fitness function). The fitness function must be continuous.

Genetic'Algorithms'::' ::'Algoritmi'Genetici'1

CHAPTER 4 LINEAR ANTENNA ARRAY SYNTHESIS USING GENETIC ALGORITHM

Selecting an Optimal Compound of a University Research Team by Using Genetic Algorithms

Rule Minimization in Predicting the Preterm Birth Classification using Competitive Co Evolution

Performance Analysis of Multi Clustered Parallel Genetic Algorithm with Gray Value

ABSTRACT COMPUTER EVOLUTION OF GENE CIRCUITS FOR CELL- EMBEDDED COMPUTATION, BIOTECHNOLOGY AND AS A MODEL FOR EVOLUTIONARY COMPUTATION

Available online at International Journal of Current Research Vol. 9, Issue, 07, pp , July, 2017

Energy management using genetic algorithms

Comparative Study of Different Selection Techniques in Genetic Algorithm

9/17/14 LOCAL SEARCH. Today. Reading. Read AIMA Ch Objectives. Simulated Annealing Genetic algorithms Gradient ascent

Genetic Algorithms. Lecture Overview. A Brief History. Evolutionary Computation. Biological Systems: A rough guide. Biological Systems: A rough guide

Genetic Algorithms. Lecture Notes in Transportation Systems Engineering. Prof. Tom V. Mathew

PCG: Search Revisited, Evolution, and More

CHAPTER 3 RESEARCH METHODOLOGY

Lesson Overview. What would happen when genetics answered questions about how heredity works?

Minimizing Makespan for Machine Scheduling and Worker Assignment Problem in Identical Parallel Machine Models Using GA

Genetic Algorithm. Presented by Shi Yong Feb. 1, 2007 Music McGill University

Genetic Algorithm: An Efficient Tool for Global Optimization

What is Genetic Programming(GP)?

Genetic Programming for Symbolic Regression

An introduction to genetic algorithms for neural networks

Automated Test Case Generation: Metaheuristic Search

Genetic Algorithm for Variable Selection. Genetic Algorithms Step by Step. Genetic Algorithm (Holland) Flowchart of GA

Feature Selection for Predictive Modelling - a Needle in a Haystack Problem

Genetic algorithms and code optimization. A quiet revolution

Genetic Algorithm with Upgrading Operator

Logistics. Final exam date. Project Presentation. Plan for this week. Evolutionary Algorithms. Crossover and Mutation

Evolutionary Algorithms:

Genetic approach to solve non-fractional knapsack problem S. M Farooq 1, G. Madhavi 2 and S. Kiran 3

EMM4131 Popülasyon Temelli Algoritmalar (Population-based Algorithms) Introduction to Meta-heuristics and Evolutionary Algorithms

Genetic Algorithms in Matrix Representation and Its Application in Synthetic Data

Evolutionary Algorithms - Introduction and representation Jim Tørresen

Evolutionary Algorithms and Simulated Annealing in the Topological Configuration of the Spanning Tree

Foundations of Artificial Intelligence

EFFECT OF CROSS OVER OPERATOR IN GENETIC ALGORITHMS ON ANTICIPATORY SCHEDULING

Supplemental Digital Content. A new severity of illness scale using a subset of APACHE data elements shows comparable predictive accuracy

Genetic Algorithm and Application in training Multilayer Perceptron Model

GENETIC ALGORITHM CHAPTER 2

APPLICATION OF COMPUTER FOR ANALYZING WORLD CO2 EMISSION

Transcription:

What is Evolutionary Computation? Genetic Algorithms Russell & Norvig, Cha. 4.3 An abstraction from the theory of biological evolution that is used to create optimization procedures or methodologies, usually implemented on computers, that are used to solve problems. The Argument Evolution has optimized biological processes; therefore Adoption of the evolutionary paradigm to computation and other problems can help us find optimal solutions. Components of Evolutionary Computing Genetic Algorithms invented by John Holland (University of Michigan) in the 1960 s Evolution Strategies invented by Ingo Rechenberg (Technical University Berlin) in the 1960 s Started out as individual developments, but have begun to converge in the last few years Natural Selection Limited number of resources Competition results in struggle for existence Success depends on fitness -- fitness of an individual: how well-adapted an individual is to their environment. This is determined by their genes (blueprints for their physical and other characteristics). Successful individuals are able to reproduce and pass on their genes When changes occur... Previously fit (well-adapted) individuals will no longer be best-suited for their environment Some members of the population will have genes that confer different characteristics than the norm. Some of these characteristics can make them more fit in the changing environment.

Genetic Change in Individuals Genetic Change in Individuals Mutation in genes may be due to various sources (e.g. UV rays, chemicals, etc.) Start: 1001001001001001001001 Recombination (Crossover) occurs during reproduction -- sections of genetic material exchanged between two chromosomes After Mutation: 1001000001001001001001 Location of Mutation Recombination (Crossover) The Nature of Computational Problems Require search through many possibilities to find a solution (e.g. search through sets of rules for one set that best predicts the ups and downs of the financial markets) Search space too big -- search won t return within our lifetimes Require algorithm to be adaptive or to construct original solution (e.g. interfaces that must adapt to idiosyncrasies of different users) Image from http://esg-www.mit.edu:8001/bio/mg/meiosis.html Why Evolution Proves to be a Good Model for Solving these Types of Problems The Metaphor Evolution is a method of searching for an (almost) optimal solution Possibilities -- all individuals Best solution -- the most fit or well-adapted individual Evolution is a parallel process Testing and changing of numerous species and individuals occur at the same time (or, in parallel) Evolution can be seen as a method that designs new (original) solutions to a changing environment EVOLUTION Individual Fitness Environment PROBLEM SOLVING Candidate Solution Quality Problem

Genetic Algorithms Closely follows a biological approach to problem solving A simulated population of randomly selected individuals is generated then allowed to evolve Encoding the Problem Example: Looking for a new site which is closest to several nearby cities. Express the problem in terms of a bit string z = (1001010101011100) where the first 8 bits of the string represent the X-coordinate and the second 8 bits represent the Y-coordinate Basic Genetic Algorithm Step 1. Generate a random population of n chromosomes Step 2. Assign a fitness to each individual Step 3. Repeat until n children have been produced Choose 2 parents based on fitness proportional selection Apply genetic operators to copies of the parents Produce new chromosomes Fitness Function For each individual in the population, evaluate its relative fitness For a problem with m parameters, the fitness can be plotted in an m+1 dimensional space Sample Search Space A randomly generated population of individuals will be randomly distributed throughout the search space Genetic Operators Cross-over Mutation Image from http://www2.informatik.unierlangen.de/~jacob/evolvica/java/multimodalsearch/rats.017/surface.gif

Production of New Chromosomes 2 parents give rise to 2 children Generations As each new generation of n individuals is generated, they replace their parent generation To achieve the desired results, typically 500 to 5000 generations are required The Evolutionary Cycle Ultimate Goal Population Selection Replacement Parents Recombination Mutation Offspring Each subsequent generation will evolve toward the global maximum After sufficient generations a near optimal solution will be present in the population of chromosomes Dynamic Evolution Genetic algorithms can adapt to a dynamically changing search space Seek out the moving maximum via a parasitic fitness function as the chromosomes adapt to the search space, so does the fitness function Basic Evolution Strategy 1. Generate some random individuals 2. Select the p best individuals based on some selection algorithm (fitness function) 3. Use these p individuals to generate c children 4. Go to step 2, until the desired result is achieved (i.e. little difference between generations)

Encoding Individuals are encoded as vectors of real numbers (object parameters) op = (o 1, o 2, o 3,, o m ) The strategy parameters control the mutation of the object parameters sp = (s 1, s 2, s 3,, s m ) These two parameters constitute the individual s chromosome Fitness Functions Need a method for determining if one solution is more optimal than another Mathematical formula Main difference from genetic algorithms is that only the most fit individuals are allowed to reproduce (elitist selection) Forming the Next Generation Number of individuals selected to be parents (p) too many: lots of persistent bad traits too few: stagnant gene pool Total number of children produced (c) limited by computer resources more children faster evolution Mutation Needed to add new genes to the pool optimal solution cannot be reached if a necessary gene is not present bad genes filtered out by evolution Random changes to the chromosome object parameter mutation strategy parameter mutation changes the step size used in object parameter mutation Discrete Recombination Similar to crossover of genetic algorithms Equal probability of receiving each parameter from each parent (8, 12, 31,,5) (2, 5, 23,, 14) (2, 12, 31,, 14) Intermediate Recombination Often used to adapt the strategy parameters Each child parameter is the mean value of the corresponding parent parameters (8, 12, 31,,5) (2, 5, 23,, 14) (5, 8.5, 27,, 9.5)

Example: Find the max value of f(x 1,, x 100 ). Population: real vectors of length 100. Mutation: randomly replace a value in a vector. Combination: Take the average of two vectors. Evolution Process p parents produce c children in each generation Four types of processes: p,c p/r,c p+c p/r+c p,c p parents produce c children using mutation only (no recombination) The fittest p children become the parents for the next generation Parents are not part of the next generation c p p/r,c is the above with recombination Forming the Next Generation Similar operators as genetic algorithms mutation is the most important operator (to uphold the principal of strong causality) recombination needs to be used in cases where each child has multiple parents The parents can be included in the next generation smoother fitness curve p+c p parents produce c children using mutation only (no recombination) The fittest p individuals (parents or children) become the parents of the next generation p/r+c is the above with recombination Tuning a GA Typical tuning parameters for a small problem Population size: Children per generation: Crossovers: Mutations: Generations: Other concerns population diversity ranking policies removal policies role of random bias 50 100 = population size 0 3 < 5% 20 20,000

Domains of Application Local Beam Search Numerical, Combinatorial Optimisation System Modeling and Identification Planning and Control Engineering Design Data Mining Machine Learning Artificial Life global local A generalization of Hill-climbing Start with p candidates Keep the best p neighbors of these p candidates in the next round. Stochastic Beam Search GA vs. Local Beam Search global local Similar to Local Beam Search Randomly choose p neighbors in the next round. Keep better neighbors Keep worse neighbors with a probability The starting part is the same GA uses both mutation and combination for next generations LBS uses all the neighbors (similar to mutation) Both keep best candidates for next round. GA vs. Stochastic Beam Search GA suitable for Rugged Terrain The starting part is the same GA uses both mutation and combination for next generations SBS picks random neighbors (very much like mutation) GA keeps best candidates for next round. SBS may keeps worse candidates for next round. More of a challenge to optimize easy to get stuck in many local maxima Need to adjust mutation and crossover rates

Drawbacks of GA Difficult to find an encoding for a problem Difficult to define a valid fitness function May not return the global maximum Why use a GA? requires little insight into the problem the problem has a very large solution space the problem is non-convex does not require derivatives objective function need not be smooth variables do not need to be scaled fitness function can be noisy (e.g. process data) when the goal is a good solution When NOT to use a GA? Taxonomy if global optimality is required if problem insight can: significantly impact algorithm performance simplify problem representation if the problem is highly constrained if the problem is smooth and convex use a gradient-based optimizer if the search space is very small use enumeration Evolutionary Programming Neural Networks COMPUTATIONAL INTELLIGENCE or SOFT COMPUTING Evolution Strategies Evolutionary Algorithms Genetic Algorithms Fuzzy Systems Genetic Programming