evolving a solution: developmental plasticity in evolutionary computation

27
EVOLVING A SOLUTION: DEVELOPMENTAL PLASTICITY IN EVOLUTIONARY COMPUTATION URS Presentation – April 17 th , 2009 Sara Lahr

Upload: lynda

Post on 23-Feb-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Evolving a Solution: Developmental Plasticity in Evolutionary Computation. URS Presentation – April 17 th , 2009 Sara Lahr. THE BIG PICTURE. Some problems are difficult to solve They may have many factors They may have a solution that is always in flux Predicting Financial Markets - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

EVOLVING A SOLUTION:

DEVELOPMENTAL PLASTICITY IN EVOLUTIONARY COMPUTATIONURS Presentation – April 17th,

2009

Sara Lahr

Page 2: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Some problems are difficult to solve They may have many factors They may have a solution that is always in

fluxPredicting Financial MarketsDiscovering the Contagiousness of Diseases

Two excellent tools: Evolutionary ComputationGenetic Programming

THE BIG PICTURE

Page 3: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Background TermsEvolutionary ComputationGenetic Programming

N-gram GP The Problem: Definition and Solution Incremental Fitness Development Results Conclusion

OUTLINE

Page 4: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Evolutionary Computation is a field of Artificial Intelligence that uses growth and development of a population of individuals to find solutions to a given problem.

EVOLUTIONARY COMPUTATION

Page 5: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

You have a problem that you don’t know how to solve.

You can recognize a good solution if you see

it.

HOW DOES IT WORK?

Page 6: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

HOW DOES IT WORK? Generate a population of random solutions

1– ADBCE 2– ACBDE

3– ADEBC 4- ABCED

Find the better individuals and generate a new population based on them. Repeat.

Page 7: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Evolutionary Computation is a field of Artificial Intelligence that uses growth and development of a population of individuals to find a solution to a given problem.

Genetic Programming is a subset of EC where each individual is an actual computer program.

GENETIC PROGRAMMING

Page 8: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Evolutionary Computation is a field of Artificial Intelligence that uses growth and development of a population of individuals to find a solution to a given problem.

Genetic Programming is a subset of EC where each individual is an actual computer program.

N-gram GP is an extension of GP where the programs are linear sequences of instructions generated based on probabilities learned over time.

N-GRAM GP

Page 9: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

A N-gram is a group of n consecutive elements in a sequence. def and efg are both 3-grams of defg.

Each item in the N-gram is an instruction. d may be ADD, e SUB, etc.

A matrix holds the probability of a given instruction appearing. Given instruction d followed by instruction e: the

matrix determines the next instruction based on evolved probabilities.

Existing good program: dedededef Building a new program: de_

d – 0.75 f – 0.25

N-GRAM GP

Page 10: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

THE SYMBOLIC REGRESSION PROBLEM

GOAL: Find a function that maps to a given set of data points.

Page 11: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

STAGE 1

Page 12: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

STAGE 2

Page 13: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

STAGE 3

Page 14: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

STAGE 4

Page 15: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

STAGE 5

Page 16: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

STAGE 6

Page 17: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

ConvergenceThe system makes a specific instruction

consistently dominant

Inflexibled may be important early, but f may vital to the

program later

Not ModularCreates large loops of converged instructions.

N-GRAM GP WEAKNESSES

Page 18: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

A technique we developed for N-gram GP.

A block of instructions is generated by the probability matrix and appended to the end of the program. If the fitness of the extended program gets worse, the block is thrown away, and a new block is generated.

INCREMENTAL FITNESS DEVELOPMENT

Page 19: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

INCREMENTAL FITNESS DEVELOPMENT

A B C

Original Program

Original Program

New Block

Page 20: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

INCREMENTAL FITNESS DEVELOPMENT

Original Program

Original Program

C D B

C D B

New Block

Kept Block

New Block

A B CDiscarded Block

A E B

Page 21: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Versus Incremental Fitness Development Convergence

IFD is a more meticulous searcher; it maps out local possibilities

Inflexible IFD is more flexible; it is able to find the less

probable instructions

Not Modular IFD is able to split the function into valuable

portions

N-GRAM GP WEAKNESSES

Page 22: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

PROBLEM N-gram GP* IFD*x + x2 + x3 + x4 + x5 100 100-x - 2x2 + x3 100 1001.009 + 1.419x + x2 61 1006 + x2 + 3x3 + 8x5 0 06 100 1006 + x2 10 946 + x2 + 3x3 0 18x5 100 1003x3 + 8x5 51 100x2 + 3x3 + 8x5 7 80sin(x) 1 63

RESULTS

*Number of successful runs out of 100 independent trials

Page 23: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Theoretical work necessary for improving existing tools.

Incremental Fitness Development is a successful extension of N-gram GP

The more successful the system, the more reliable the solutions

The more reliable the solutions the more useful they are in application

CONCLUSIONS

Page 24: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

J. R. Koza. Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge, MA, USA, 1992.

N. F. McPhee, E. Crane, S. E. Lahr, R. Poli. Developmental Plasticity in Linear Genetic Programming. GECCO '09: Proceedings of the 11th annual conference on Genetic and evolutionary computation. Montreal. 2009.

R. Poli and N. McPhee. A linear estimation-of-distribution GP system. In M. O’Neill, L. Vanneschi, S. Gustafson, A. I. Esparcia Alcazar, I. De Falco, A. Della Cioppa, and E. Tarantino, editors, Proceedings of the 11th European Conference on Genetic Programming, EuroGP 2008, volume 4971 of Lecture Notes in Computer Science, pages 206–217, Naples, 26-28 Mar. 2008. Springer.

R. Poli, W. B. Langdon, and N. F. McPhee. A field guide to genetic programming. Published via http://lulu.com and freely available at http://www.gp-field-guide.org.uk, 2008. (With contributions by J. R. Koza).

REFERENCES

QUESTIONS?

ACKNOWLEDGEMENTSThanks to the Morris Academic Partnership program and to all who

helped me in this work, especially Nic McPhee, Ellery Crane (UMM ‘06), and Riccardo Poli

Page 25: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

Romeo and Juliet – Shakespeare“JULIET If I do I drink to thee Had I it written I

would not let us forth So that my father that went hence so fast ?”

Wikipedia: Genetic Programming and N-gram“In addition because of the best parsers of

English currently in existence are roughly of this idea often say this approach is overly broad in scope .”

Declaration of Independence“We hold these truths to be totally dissolved and

that all political connection between them and the state remaining in the meantime exposed to all the dangers of invasion from without and convulsions within .”

N-GRAM GP TEXT GENERATIONS

Page 26: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

MODULARITY

Program using Incremental Fitness Development. >More Modular

Program using standard N-gram GP. >Less modular

Page 27: Evolving  a  Solution: Developmental Plasticity in Evolutionary  Computation

A matrix holds the probability of a given instruction appearing.

InstructionStartREAD_IN: Reg1READ_IN: Reg2ADD: Reg2MULT: Reg1SWAP

Answer: 2x2

N-GRAM GP

Register 1 Register 20 0x 0x xx 2xx 2x2

2x2 x