Genetic Algorithms, Part 2

Similar documents
Genetic Algorithm Evolution of Cellular Automata Rules for Complex Binary Sequence Prediction

Competitive Coevolution through Evolutionary Complexification

Alpha Cut based Novel Selection for Genetic Algorithm

Genetic programming with regular expressions

A Note on General Adaptation in Populations of Painting Robots

Cellular Automaton: The Roulette Wheel and the Landscape Effect

Hybrid Evolution of Heterogeneous Neural Networks

Introduction To Genetic Algorithms

Overview. Swarms in nature. Fish, birds, ants, termites, Introduction to swarm intelligence principles Particle Swarm Optimization (PSO)

DECISION TREE INDUCTION FOR FINANCIAL FRAUD DETECTION USING ENSEMBLE LEARNING TECHNIQUES

Original Article Efficient Genetic Algorithm on Linear Programming Problem for Fittest Chromosomes

Genetic Algorithms and Sudoku

1. Why is mitosis alone insufficient for the life cycle of sexually reproducing eukaryotes?

Passive Microwave Remote Sensing for Sea Ice Thickness Retrieval Using Neural Network and Genetic Algorithm

Genetic Algorithm. Based on Darwinian Paradigm. Intrinsically a robust search and optimization mechanism. Conceptual Algorithm

Selection Procedures for Module Discovery: Exploring Evolutionary Algorithms for Cognitive Science

Practical Applications of Evolutionary Computation to Financial Engineering

D A T A M I N I N G C L A S S I F I C A T I O N

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Coevolution of Role-Based Cooperation in Multi-Agent Systems

Optimization in Strategy Games: Using Genetic Algorithms to Optimize City Development in FreeCiv

NEUROEVOLUTION OF AUTO-TEACHING ARCHITECTURES

Asexual Versus Sexual Reproduction in Genetic Algorithms 1

A SURVEY ON GENETIC ALGORITHM FOR INTRUSION DETECTION SYSTEM

GA as a Data Optimization Tool for Predictive Analytics

FINANCIAL FORECASTING USING GENETIC ALGORITHMS

CHAPTER 6 GENETIC ALGORITHM OPTIMIZED FUZZY CONTROLLED MOBILE ROBOT

Revisiting the Edge of Chaos: Evolving Cellular Automata to Perform Computations

Evolutionary SAT Solver (ESS)

Biological Sciences Initiative. Human Genome

Model-based Parameter Optimization of an Engine Control Unit using Genetic Algorithms

Genetic Algorithms. Chapter Introduction Background Natural Selection

Applying Design Patterns in Distributing a Genetic Algorithm Application

A Review And Evaluations Of Shortest Path Algorithms

HOST SCHEDULING ALGORITHM USING GENETIC ALGORITHM IN CLOUD COMPUTING ENVIRONMENT

GPSQL Miner: SQL-Grammar Genetic Programming in Data Mining

A Review of Data Mining Techniques

Practice Questions 1: Evolution

Estimation of the COCOMO Model Parameters Using Genetic Algorithms for NASA Software Projects

The Applications of Genetic Algorithms in Stock Market Data Mining Optimisation

An evolutionary learning spam filter system

The Use of Evolutionary Algorithms in Data Mining. Khulood AlYahya Sultanah AlOtaibi

Comparison of Selection Methods in On-line Distributed Evolutionary Robotics

Chapter 6. The stacking ensemble approach

Solving Banana (Rosenbrock) Function Based on Fitness Function

A Game-Theoretical Approach for Designing Market Trading Strategies

A Robust Method for Solving Transcendental Equations

Genetic Algorithm. Tom V. Mathew Assistant Professor, Department of Civil Engineering, Indian Institute of Technology Bombay, Mumbai

Evolving Multimodal Behavior Through Subtask and Switch Neural Networks

A Review of Evolutionary Algorithms for E-Commerce

PLAANN as a Classification Tool for Customer Intelligence in Banking

DESPITE the many advances in machine learning and

ISSN: ISO 9001:2008 Certified International Journal of Engineering Science and Innovative Technology (IJESIT) Volume 2, Issue 3, May 2013

Evolutionary Detection of Rules for Text Categorization. Application to Spam Filtering

Genetic Algorithm Performance with Different Selection Strategies in Solving TSP

Optimal PID Controller Design for AVR System

Jan F. Prins. Work-efficient Techniques for the Parallel Execution of Sparse Grid-based Computations TR91-042

Research Article EFFICIENT TECHNIQUES TO DEAL WITH BIG DATA CLASSIFICATION PROBLEMS G.Somasekhar 1 *, Dr. K.

GENETIC ALGORITHM FORECASTING FOR TELECOMMUNICATIONS PRODUCTS

The MIT Press Journals

A Non-Linear Schema Theorem for Genetic Algorithms

BCS HIGHER EDUCATION QUALIFICATIONS Level 6 Professional Graduate Diploma in IT. March 2013 EXAMINERS REPORT. Knowledge Based Systems

Empirically Identifying the Best Genetic Algorithm for Covering Array Generation

Principles of Evolution - Origin of Species

Machine Learning. Chapter 18, 21. Some material adopted from notes by Chuck Dyer

Genetic Neural Approach for Heart Disease Prediction

processed parallely over the cluster nodes. Mapreduce thus provides a distributed approach to solve complex and lengthy problems

Projects - Neural and Evolutionary Computing

Electric Distribution Network Multi objective Design Using Problem Specific Genetic Algorithm

The Evolutionary Emergence route to Artificial Intelligence

Performance of Hybrid Genetic Algorithms Incorporating Local Search

Inductive Data Mining: Automatic Generation of Decision Trees from Data for QSAR Modelling and Process Historical Data Analysis

Genetic Algorithm for Event Scheduling System

A Survey of Evolutionary Algorithms for Data Mining and Knowledge Discovery

Management Science Letters

Gold (Genetic Optimization for Ligand Docking) G. Jones et al. 1996

A Genetic Algorithm Processor Based on Redundant Binary Numbers (GAPBRBN)

A hybrid Approach of Genetic Algorithm and Particle Swarm Technique to Software Test Case Generation

The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion

Random Forest Based Imbalanced Data Cleaning and Classification

AS part of the development process, software needs to

Feature Selection using Integer and Binary coded Genetic Algorithm to improve the performance of SVM Classifier

1. When new cells are formed through the process of mitosis, the number of chromosomes in the new cells

Evolutionary Algorithms using Evolutionary Algorithms

EDDIE Beats the Bookies

CELLULAR AUTOMATA AND APPLICATIONS. 1. Introduction. This paper is a study of cellular automata as computational programs

Intelligent Modeling of Sugar-cane Maturation

Machine Learning Introduction

Multiple Layer Perceptron Training Using Genetic Algorithms

Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province

Software Project Management with GAs

Record Deduplication By Evolutionary Means

MINIMUM FLOW TIME SCHEDULE GENETIC ALGORITHM FOR MASS CUSTOMIZATION MANUFACTURING USING MINICELLS

Basic Biological Principles Module A Anchor 1

Study Of Hybrid Genetic Algorithm Using Artificial Neural Network In Data Mining For The Diagnosis Of Stroke Disease

Evolution (18%) 11 Items Sample Test Prep Questions

(D) , , TFYI 187 TPK 190

Understanding by Design. Title: BIOLOGY/LAB. Established Goal(s) / Content Standard(s): Essential Question(s) Understanding(s):

CONSTRUCTING PREDICTIVE MODELS TO ASSESS THE IMPORTANCE OF VARIABLES IN EPIDEMIOLOGICAL DATA USING A GENETIC ALGORITHM SYSTEM EMPLOYING DECISION TREES

USING GENETIC ALGORITHM IN NETWORK SECURITY

Transcription:

Genetic Algorithms, Part 2

Evolving (and co-evolving) one-dimensional cellular automata to perform a computation

One-dimensional cellular automata

Rule: One-dimensional cellular automata

Rule: One-dimensional cellular automata

Rule: One-dimensional cellular automata

Rule: One-dimensional cellular automata

Rule: One-dimensional cellular automata

Can the complex dynamics be harnessed by evolution to perform collective information processing?

A task requiring collective computation in cellular automata

A task requiring collective computation in cellular automata Design a cellular automata to decide whether or not the initial pattern has a majority of on cells.

initial majority on

initial majority on final

initial majority on majority off final

initial majority on majority off final

initial majority on majority off How to design a cellular automaton that will do this? final

We used cellular automata with 6 neighbors for each cell: Rule:.......

A candidate solution that does not work: Local majority voting

Evolving cellular automata with genetic algorithms Create a random population of candidate cellular automata rules The fitness of each cellular automaton is how well it performs the task. (Analogous to surviving in an environment.) The fittest cellular automata get to reproduce themselves, with mutations and crossovers. This process continues for many generations.

The chromosome of a cellular automaton is an encoding of its rule table: Rule table: Chromosome 0 0 1. 0.. 1

Create a random population of candidate cellular automata rules: rule 1: 0010001100010010111100010100110111000... rule 2: 0001100110101011111111000011101001010... rule 3: 1111100010010101000000011100010010101...... rule 100: 0010111010000001111100000101001011111...

Calculating the Fitness of a Rule For each rule, create the corresponding cellular automaton. Run that cellular automaton on many initial configurations. Fitness of rule = fraction of correct classifications

For each cellular automaton rule in the population: rule 1: 0010001100010010111100010100110111000...1 Create rule table..

rule 1 rule table:.. Run corresponding cellular automaton on many random initial lattice configurations...................... etc.... incorrect correct Fitness of rule = fraction of correct classifications.

GA Population: rule 1: 0010001100010010111100010100110111000... Fitness = 0.5 rule 2: 0001100110101011111111000011101001010... Fitness = 0.2 rule 3: 1111100010010101000000011100010010101... Fitness = 0.4... rule 100:0010111010000001111100000101001011111... Fitness = 0.0 Select fittest rules to reproduce themselves rule 1: 0010001100010010111100010100110111000... Fitness = 0.5 rule 3: 1111100010010101000000011100010010101... Fitness = 0.4...

Create new generation via crossover and mutation: Parents: rule 1: 0010001 100010010111100010100110111000... rule 3: 1111100 010010101000000011100010010101... mutate Children: 0010001010010101000000011100010010101... 1111100 100010010111100010100110111000...

Create new generation via crossover and mutation: Parents: rule 1: 0010001 100010010111100010100110111000... rule 3: 1111100 010010101000000011100010010101... mutate Children: 0010000010010101000000011100010010101... 1111100 100010010111100010100110111000...

Create new generation via crossover and mutation: Parents: rule 1: 0010001 100010010111100010100110111000... rule 3: 1111100 010010101000000011100010010101... Children: 0010000010010101000000011100010010101... 1111100 100010010111100010100110111000... mutate

Create new generation via crossover and mutation: Parents: rule 1: 0010001 100010010111100010100110111000... rule 3: 1111100 010010101000000011100010010101... Children: 0010000010010101000000011100010010101... 1111100 100010010111100010100010111000... mutate

Create new generation via crossover and mutation: Parents: rule 1: 0010001 100010010111100010100110111000... rule 3: 1111100 010010101000000011100010010101... Children: 0010000010010101000000011100010010101... 1111100 100010010111100010100010111000...

Create new generation via crossover and mutation: Parents: rule 1: 0010001 100010010111100010100110111000... rule 3: 1111100 010010101000000011100010010101... Children: 0010000010010101000000011100010010101... 1111100 100010010111100010100010111000... Continue this process until new generation is complete. Then start over with the new generation. Keep iterating for many generations.

majority on majority off A cellular automaton evolved by the genetic algorithm

How does it perform the computation? majority on majority off A cellular automaton evolved by the genetic algorithm

How do we describe information processing in complex systems?

simple patterns : black, white, checkerboard

Simple patterns filtered out

particles

particles

laws of particle physics particles

Level of particles can explain:

Level of particles can explain: Why one CA is fitter than another

Level of particles can explain: Why one CA is fitter than another What mistakes are made

Level of particles can explain: Why one CA is fitter than another What mistakes are made How the GA produced the observed series of innovations

Level of particles can explain: Why one CA is fitter than another What mistakes are made How the GA produced the observed series of innovations Particles give an information processing description of the collective behavior

Level of particles can explain: Why one CA is fitter than another What mistakes are made How the GA produced the observed series of innovations Particles give an information processing description of the collective behavior ----> Algorithmic level

How the genetic algorithm evolved cellular automata

How the genetic algorithm evolved cellular automata generation 8

How the genetic algorithm evolved cellular automata generation 8 generation 13

How the genetic algorithm evolved cellular automata generation 17

How the genetic algorithm evolved cellular automata generation 17 generation 18

How the genetic algorithm evolved cellular automata generation 33

How the genetic algorithm evolved cellular automata generation 33 generation 64

Cellular Automata Traditional GA (with crossover) Traditional GA (mutation only) 20% 0% Percentage of successful runs

Cellular Automata Traditional GA (with crossover) Traditional GA (mutation only) 20% 0% Percentage of successful runs Problem: GA often gets stuck in local optima, with too easy training examples

Problem for learning algorithms: How to select training examples appropriate to different stages of learning? One solution: Co-evolve training examples, using inspiration from host-parasite coevolution in nature.

Host-parasite coevolution in nature Hosts evolve defenses against parasites Parasites find ways to overcome defenses Hosts evolve new defenses Continual biological arms race

Heliconius-egg mimicry in Passiflora http://www.ucl.ac.uk/~ucbhdjm/courses/b242/coevol/coevol.html

Darwin recognized the importance of coevolution in driving evolution

Darwin recognized the importance of coevolution in driving evolution Coevolution was later hypothesized to be major factor in evolution of sexual reproduction

Coevolutionary Learning

Coevolutionary Learning Candidate solutions and training examples coevolve.

Coevolutionary Learning Candidate solutions and training examples coevolve. Fitness of candidate solution (host): how well it performs on training examples.

Coevolutionary Learning Candidate solutions and training examples coevolve. Fitness of candidate solution (host): how well it performs on training examples. Fitness of training example (parasite): how well it defeats candidate solutions.

Sample Applications of Coevolutionary Learning

Competitive: Sample Applications of Coevolutionary Learning Coevolving minimal sorting networks (Hillis) Hosts: Candidate sorting networks Parasites: Lists of items to sort

Sample Applications of Coevolutionary Learning Game playing strategies (e.g., Rosin & Belew; Fogel; Juillé & Pollack) Hosts: Candidate strategies for Nim, 3D Tic Tac Toe, backgammon, etc. Parasites: Another population of candidate strategies

HIV drug design (e.g., Rosin) Hosts: Candidate protease inhibitors to match HIV protease enzymes Parasites: Evolving protease enzymes

Robot behavior (e.g., Sims; Nolfi & Floreano) Hosts: Robot control programs Parasites: Competing robot control programs

Cooperative: Cooperative coevolution of neural network weights and topologies (e.g., Potter & De Jong; Stanley, Moriarty, Miikkulainen)

Our Experiments (Mitchell, Thomure, & Williams, 2006) Spatial Non-spatial Coevolution Evolution

Problem domains used in experiments 1. Function induction: 2D function-induction task (Pagie & Hogeweg, 1997) Evolve function tree to approximate

Hosts are candidate trees Function set: {+, -, *, %} Terminal set: {x, y, R} + Example of candidate tree / * y x y R

Parasites are (x,y) pairs

Fitness (h) = Average inverse error on sample of p Fitness (p): Error of h on problem p Success = Correct host (on complete set of problems) in population for 50 generations

2. Evolving cellular automata Problem is to design 1D CA that classifies initial configurations (ICs) as majority 1s or majority 0s.

Spatial Coevolution

Spatial Coevolution 2D toroidal lattice with one host (h) and one parasite (p) per site

Spatial Coevolution 2D toroidal lattice with one host (h) and one parasite (p) per site h p h p h p h p h p......

Spatial Coevolution 2D toroidal lattice with one host (h) and one parasite (p) per site h p h p h p h p h p......

Spatial Coevolution 2D toroidal lattice with one host (h) and one parasite (p) per site h p h p h p h p h p......

h p h p h p h p h p...... Spatial Coevolution 2D toroidal lattice with one host (h) and one parasite (p) per site Each h is replaced by mutated copy of winner of tournament among itself and 8 neighboring hosts.

h p h p h p h p h p...... Spatial Coevolution 2D toroidal lattice with one host (h) and one parasite (p) per site Each h is replaced by mutated copy of winner of tournament among itself and 8 neighboring hosts. Each p is replaced by mutated copy of winner tournament among itself and 8 neighboring parasites.

Non-Spatial Coevolution

Non-Spatial Coevolution No spatial distribution of host and parasite populations

Non-Spatial Coevolution No spatial distribution of host and parasite populations hosts parasites

Non-Spatial Coevolution No spatial distribution of host and parasite populations hosts parasites fitness(h) = fraction of 9 parasites p (randomly chosen from parasite population) answered correctly

Non-Spatial Coevolution No spatial distribution of host and parasite populations hosts parasites fitness(h) = fraction of 9 parasites p (randomly chosen from parasite population) answered correctly

Non-Spatial Coevolution No spatial distribution of host and parasite populations hosts Each h is replaced by mutated copy of winner of tournament among itself and 8 randomly chosen hosts. parasites fitness(h) = fraction of 9 parasites p (randomly chosen from parasite population) answered correctly

Non-Spatial Coevolution No spatial distribution of host and parasite populations hosts Each h is replaced by mutated copy of winner of tournament among itself and 8 randomly chosen hosts. parasites Each p is replaced by mutated copy of winner tournament among itself and 8 randomly chosen parasites. fitness(h) = fraction of 9 parasites p (randomly chosen from parasite population) answered correctly

Spatial Evolution: Same as spatial coevolution, except parasites don t evolve. A new population of random parasites is generated at each generation.

Non-Spatial Evolution: Same as non-spatial coevolution, except parasites don t evolve. A new sample of 100 random parasites is generated at each generation. Fitness of a host is classification accuracy on these 100 randomly generated parasites

Results Function Induction Cellular Automata Spatial Coev. 78% (39/50) 67% (20/30) Non-Spatial Coev. 0% (0/50) 0% (0/20) Spatial Evol. 14% (7/50) 0% (0/30) Non-Spatial Evol. 6% (3/50) 0% (0/20) Percentage of successful runs

In short: Spatial coevolution significantly outperforms other methods on both problems

Analysis Why was spatial coevolution successful? See our papers

Possible applications to real-world problems Drug design to foil evolving viruses/bacteria Coevolving software/hardware with test cases Evolving game-playing programs Coevolving computer security systems with possible threats