34
Coevolutionary Learning with Genetic Algorithms

Coevolutionary Learning with Genetic Algorithms

  • Upload
    azize

  • View
    30

  • Download
    0

Embed Size (px)

DESCRIPTION

Coevolutionary Learning with Genetic Algorithms. Problem for learning algorithms: How to select “training environments” appropriate to different stages of learning? One solution: Co-evolve training examples, using inspiration from host-parasite coevolution in nature.. - PowerPoint PPT Presentation

Citation preview

Page 1: Coevolutionary  Learning with Genetic Algorithms

Coevolutionary Learning with Genetic Algorithms

Page 2: Coevolutionary  Learning with Genetic Algorithms

Problem for learning algorithms:

How to select “training environments” appropriate to different stages of learning?

One solution: Co-evolve training examples, using inspiration from host-parasite coevolution in nature.

Page 3: Coevolutionary  Learning with Genetic Algorithms

Host-parasite coevolution in nature

• Hosts evolve defenses against parasites

• Parasites find ways to overcome defenses

• Hosts evolve new defenses

• Continual “biological arms race”

Page 4: Coevolutionary  Learning with Genetic Algorithms

Heliconius-egg mimicry in Passiflora

http://www.ucl.ac.uk/~ucbhdjm/courses/b242/Coevol/Coevol.html

Page 5: Coevolutionary  Learning with Genetic Algorithms

• Darwin recognized the importance of coevolution in driving evolution

Page 6: Coevolutionary  Learning with Genetic Algorithms

• Darwin recognized the importance of coevolution in driving evolution

• Coevolution was later hypothesized to be major factor in evolution of sexual reproduction

Page 7: Coevolutionary  Learning with Genetic Algorithms

Coevolutionary Learning

Page 8: Coevolutionary  Learning with Genetic Algorithms

Coevolutionary Learning

Candidate solutions and training environments coevolve.

Page 9: Coevolutionary  Learning with Genetic Algorithms

Coevolutionary Learning

Candidate solutions and training environments coevolve.– Fitness of candidate solution (host): how

well it performs on training examples.

Page 10: Coevolutionary  Learning with Genetic Algorithms

Coevolutionary Learning

Candidate solutions and training environments coevolve.– Fitness of candidate solution (host): how

well it performs on training examples.

– Fitness of training example (parasite): how well it defeats candidate solutions.

Page 11: Coevolutionary  Learning with Genetic Algorithms

Sample Applications of Coevolutionary Learning

Page 12: Coevolutionary  Learning with Genetic Algorithms

Sample Applications of Coevolutionary Learning

– Coevolving minimal sorting algorithms (Hillis)

• Hosts: Candidate sorting algorithms• Parasites: Lists of items to sort

Page 13: Coevolutionary  Learning with Genetic Algorithms

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

Page 14: Coevolutionary  Learning with Genetic Algorithms

Sample Applications of Coevolutionary Learning

– HIV drug design (e.g., Rosin)

• Hosts: Candidate protease inhibitors to match HIV protease enzymes

• Parasites: Evolving protease enzymes

Page 15: Coevolutionary  Learning with Genetic Algorithms

Sample Applications of Coevolutionary Learning

– Robot behavior (e.g., Sims; Nolfi & Floreano)

• Hosts: Robot control programs

• Parasites: Obstacles; mazes; competing robot control programs;

Page 16: Coevolutionary  Learning with Genetic Algorithms

Why should we expect coevolutionary learning to speed-up and/or improve evolution?

Page 17: Coevolutionary  Learning with Genetic Algorithms

Why should we expect coevolutionary learning to speed-up and/or improve evolution?

“Biological” arms races

Increased “biodiversity”?

Page 18: Coevolutionary  Learning with Genetic Algorithms

Practical problems observed in coevolutionary learning

Page 19: Coevolutionary  Learning with Genetic Algorithms

Practical problems observed in coevolutionary learning

• Cycling:

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

0 5 10 15 20 25 30

fitne

ss

generation

hostsparasites

low “true” fitness

Page 20: Coevolutionary  Learning with Genetic Algorithms

• Loss of gradient for hosts

0

5

10

15

20

0 1 2 3 4 5 6 7 8

fitne

ss

generation

hosts

parasites

Page 21: Coevolutionary  Learning with Genetic Algorithms

• Over-“virulence” of parasites

0

5

10

15

20

0 1 2 3 4 5 6 7 8

fitne

ss

generation

hostsparasites

Page 22: Coevolutionary  Learning with Genetic Algorithms

Hypothesis

Distributing host and parasite populations in space will overcome these impediments by:

– Preserving diversity in the populations

– Fostering arms races between hosts and parasites

Page 23: Coevolutionary  Learning with Genetic Algorithms

Our Experiments

(Mitchell, Thomure, & Williams, 2006)

Spatial Non-spatial

Coevolution

Evolution

Page 24: Coevolutionary  Learning with Genetic Algorithms

Problem domains used in experiments

1. Function induction from data

2. Cellular automata

I.e., given a set of points generated bya “secret” function, find the function.

• Hosts: Candidate functions

• Parasites: Points generated bythe secret function

http://webscripts.softpedia.com/scriptScreenshots/Polynomial-curve-fitting-Screenshots-62898.html

Page 25: Coevolutionary  Learning with Genetic Algorithms

• Host and parasite populations live on a two-dimensional toroidal (i.e., donut-shaped) grid with one host (h) and one parasite (p) per site

Spatial Coevolution

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

Page 26: Coevolutionary  Learning with Genetic Algorithms

• Host and parasite populations live on a two-dimensional toroidal (i.e., donut-shaped) grid with one host (h) and one parasite (p) per site

Spatial Coevolution

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

Fitness of host h = fraction of 9 neighboring parasites (p) dealt with correctly

Fitness of parasite p = fraction of 9 neighboring hosts (h) which get p wrong

Page 27: Coevolutionary  Learning with Genetic Algorithms

• Host and parasite populations live on a two-dimensional toroidal (i.e., donut-shaped) grid with one host (h) and one parasite (p) per site

Spatial Coevolution

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

hp

At each generation, each h is replaced by mutated copy of winner of tournament among itself and 8 neighboring hosts.

At each generation, each p is replaced by mutated copy of winner of tournament among itself and 8 neighboring parasites.

Page 28: Coevolutionary  Learning with Genetic Algorithms

• Host and parasite populations live in a non-spatial world (no notion of “neighbor” or “distance)

Non-Spatial Coevolution

h

p

h

hh

h

h

p

p

p

p

p

p

p

p

hh

h hp

p

p

h

h

Fitness of host h = fraction of 9 random parasites (p) dealt with correctly

Fitness of parasite p = fraction of 9 random hosts (h) which get p wrong

Page 29: Coevolutionary  Learning with Genetic Algorithms

• Host and parasite populations live in a non-spatial world (no notion of “neighbor” or “distance)

Non-Spatial Coevolution

h

p

h

hh

h

h

p

p

p

p

p

p

p

p

hh

h hp

p

p

h

h

At each generation, each h is replaced by mutated copy of winner of tournament among itself and 8 random hosts.

At each generation, each p is replaced by mutated copy of winner of tournament among itself and 8 random parasites.

Page 30: Coevolutionary  Learning with Genetic Algorithms

• Spatial Evolution:

– Same as spatial coevolution, except parasites don’t evolve.

– A new population of random parasites is generated at each generation.

Page 31: Coevolutionary  Learning with Genetic Algorithms

• Non-Spatial Evolution:

– Same as non-spatial coevolution, except parasites don’t evolve.

– A new sample of random parasites is generated at each generation.

Page 32: Coevolutionary  Learning with Genetic Algorithms

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

Page 33: Coevolutionary  Learning with Genetic Algorithms

In short: Spatial coevolution significantly out-performs other methods on both problems

Page 34: Coevolutionary  Learning with Genetic Algorithms

Analysis

Why was spatial coevolution successful?

Hypotheses:1. Maintains diversity over long period of time

2. Creates extended “arms race” between hosts and parasite populations

Here we examine these hypotheses for the cellular automaton task.

[That is, we will do so after the lecture on cellular automata. To be continued…]