semantic building blocks in genetic programming

26
Semantic building blocks in genetic programming Nic McPhee and Tyler Hutchison Work done with Brian Ohs Division of Science and Mathematics University of Minnesota, Morris Morris, Minnesota, USA Nic is Currently on sabbatical, University of Essex, UK 26 March 2008 EuroGP, Naples McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 1 / 25

Upload: nic-mcphee

Post on 19-Jun-2015

655 views

Category:

Technology


1 download

DESCRIPTION

These are the slides from the talk at EuroGP (Int\'l Conference on Genetic Programming) 2008 in Naples, Italy, by Nic McPhee and Tyler Hutchison. This paper (based on part on this presentation) was voted best paper by the conference attendees. The paper\'s abstract: \"In this paper we present a new mechanism for studying the impact of subtree crossover in terms of semantic building blocks. This approach allows us to completely and compactly describe the semantic action of crossover, and provide insight into what does (or doesn’t) make crossover effective. Our results make it clear that a very high proportion of crossover events (typically over 75% in our experiments) are guaranteed to perform no immediately useful search in the semantic space. Our findings also indicate a strong correlation between lack of progress and high proportions of fixed contexts. These results then suggest several new, theoretically grounded, research areas.\"

TRANSCRIPT

Page 1: Semantic building blocks in genetic programming

Semantic building blocks in genetic programming

Nic McPhee and Tyler Hutchison

Work done with Brian Ohs

Division of Science and MathematicsUniversity of Minnesota, Morris

Morris, Minnesota, USA

Nic is Currently on sabbatical,University of Essex, UK

26 March 2008EuroGP, Naples

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 1 / 25

Page 2: Semantic building blocks in genetic programming

Overview The big picture

The big picture

Subtree XO is old and widely usedBut why does it work?!?We present new semantic analysis of XOSemantic building blocks

Over 75% of XO events guaranteed to be useless!Ideas for new operators and representations

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 2 / 25

Page 3: Semantic building blocks in genetic programming

Overview Outline

Outline

1 The semantics of crossover

2 Empirical results

3 Extensions and applications

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 3 / 25

Page 4: Semantic building blocks in genetic programming

Semantics of XO

Outline

1 The semantics of crossoverCrossover, subtrees, and contextsSubtree semanticsContext semanticsSem of XO = (Sem of subtrees) + (Sem of contexts)

2 Empirical results

3 Extensions and applications

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 4 / 25

Page 5: Semantic building blocks in genetic programming

Semantics of XO XO, subtrees, & contexts

Crossover, subtrees, and contexts

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 5 / 25

Page 6: Semantic building blocks in genetic programming

Semantics of XO XO, subtrees, & contexts

Crossover, subtrees, and contexts

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 5 / 25

Page 7: Semantic building blocks in genetic programming

Semantics of XO XO, subtrees, & contexts

Crossover, subtrees, and contexts

Syntactically, subtree crossover joins a context and a subtreeSemantics of crossover

= (Semantics of subtree) + (Semantics of context)

We present tools for compact, complete description of semanticsfor boolean problems

Allows us to completely describeThe semantic building blocks available in the populationThe semantic possibilities available via crossover

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 6 / 25

Page 8: Semantic building blocks in genetic programming

Semantics of XO Subtree semantics

Subtree semantics

Idea for this from [Poli and Page, 2000].

X Y0011 0101

NOR

AND

1000

X

Represent semantics of (sub)treesby listing values on all of its inputs.

X Y nor(X, Y)0 0 10 1 01 0 01 1 0

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 7 / 25

Page 9: Semantic building blocks in genetic programming

Semantics of XO Context semantics

Context semantics: Fixed and flexible

Context semantics are more complex:

Some contexts are fixed:and(0, X) = 0or(1, X) = 1

0

AND 0

#

Other contexts are flexible:and(1, X) = Xnor(0, X) = ¬ X

0

NOR _

#

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 8 / 25

Page 10: Semantic building blocks in genetic programming

Semantics of XO Context semantics

Context semantics: Dependencies

gArg

semantics

Parentsemantics

#x

Context semantics depend on:The operator gThe subtree semantics ofother argument(s)The context semantics ofparent node

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 9 / 25

Page 11: Semantic building blocks in genetic programming

Semantics of XO Context semantics

Context semantics: A simple example

X

Y

0011

0101

NOR

AND

00++

#

00-0

Semantics of this context is 00-0.

No matter what we insert for ‘#’,value of the entire tree will be falsefor 3 of the 4 possible inputs.

Value of whole tree will be negatedvalue of subtree when X is true andY is false.

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 10 / 25

Page 12: Semantic building blocks in genetic programming

Semantics of XO Context semantics

Sem of XO = (Sem of subtrees) + (Sem of contexts)

Semantics of a subtree XO event is “sum” of semantics of subtree andsemantics of context.

Context semantics 00-0Subtree semantics 1001XO semantics 0010

All but the third position are fixed by the contextThird position is negation of subtree value in third position

True for any context and subtree with those semantics.

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 11 / 25

Page 13: Semantic building blocks in genetic programming

Semantics of XO Context semantics

All semantics: An ugly (but realistic) example

X Y0011 0101

0111

X Y0011 0101

1000

+000

00­0 0­00

0+++

+000 +000

AND

OR NOR

Can enumerate all subtreeand context semantics:

Across entirepopulationFor every generation

Allows us to analyze what’ssemantically possible viasubtree crossover.

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 12 / 25

Page 14: Semantic building blocks in genetic programming

Semantics of XO Sem of XO = (Sem of subtrees) + (Sem of contexts)

Summary so far

Semantics of crossover=

(Semantics of subtrees) + (Semantics of contexts)

If we can enumerate semantics of components, then we know what’spossible (or impossible) with crossover.

Questions? (This semantics stuff is crucial - please ask!)

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 13 / 25

Page 15: Semantic building blocks in genetic programming

Empirical results

Outline

1 The semantics of crossover

2 Empirical resultsCollecting semantic dataProblems, parameters, and success ratesProportion of compatible contextsProportion of fixed contexts

3 Extensions and applications

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 14 / 25

Page 16: Semantic building blocks in genetic programming

Empirical results Collecting semantic data

We can collect new kinds of data

Proportion of fixed contextsWhat proportion of XO events are guaranteed to have nouseful effect?

Proportion of compatible contextsHow many contexts could be part of construction thesolution if mated with the right subtree?

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 15 / 25

Page 17: Semantic building blocks in genetic programming

Empirical results Problems, parameters, and success rates

Problems and parameters

Function set: Binary AND, OR, NAND, and NOR

Problem Success rate2-bit even parity 100%3-bit even parity 100%4-bit even parity 47%6-bit even parity 0%6-bit multiplexer 100%

3 easy problems, one very hard, and one in between.We weren’t trying to solve problems, so no tuning, etc.We only use crossover (no mutation), and there’s no bias awayfrom leaves.Other details in the paper.

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 16 / 25

Page 18: Semantic building blocks in genetic programming

Empirical results Proportion of compatible contexts

0 9 18 27 36 45 54 63 72 81 90 99 111 123 135 147 159 171 183 195 207 219 231 243

1e−

051e

−03

1e−

01Proportion of compatible contexts

Generation

Pro

port

ion

of c

ompt

able

con

text

s

0 9 18 27 36 45 54 63 72 81 90 99 111 123 135 147 159 171 183 195 207 219 231 243

1e−

051e

−03

1e−

01

0 9 18 27 36 45 54 63 72 81 90 99 111 123 135 147 159 171 183 195 207 219 231 243

1e−

051e

−03

1e−

01

0 9 18 27 36 45 54 63 72 81 90 99 111 123 135 147 159 171 183 195 207 219 231 243

1e−

051e

−03

1e−

01

0 9 18 27 36 45 54 63 72 81 90 99 111 123 135 147 159 171 183 195 207 219 231 243

1e−

051e

−03

1e−

01

2−EP

3−EP

6−MUX

4−EP

6−EP

2−EP

3−EP

6−MUX

4−EP

6−EP

2−EP

3−EP

6−MUX

4−EP

6−EP

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 17 / 25

Page 19: Semantic building blocks in genetic programming

Empirical results Proportion of fixed contexts

0 100 200 300 400 500

0.4

0.5

0.6

0.7

0.8

0.9

1.0

% fixed contexts over time

Generation

% fi

xed

cont

exts

2−EP3−EP6−MUX4−Flat4−EP6−EP

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 18 / 25

Page 20: Semantic building blocks in genetic programming

Extensions and applications

Outline

1 The semantics of crossover

2 Empirical results

3 Extensions and applicationsNon-boolean domainsOther representations and operatorsDesigning new approaches

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 19 / 25

Page 21: Semantic building blocks in genetic programming

Extensions and applications Non-boolean domains

Non-boolean domains

As presented, this is limited to boolean domains.It also scales badly with # of variables.Proportion of fixed contexts can be approximated, however.E.g., insert 2 (or more) constant values in ‘#’ and see if value oftree changes.

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 20 / 25

Page 22: Semantic building blocks in genetic programming

Extensions and applications Other representations and operators

Other representations and operators

What’s special or different about things like Automatically DefinedFunctions (ADFs) and Grammatical Evolution (GE)?

They certainly have different crossover semantics.

Can this approach help us better understand those differences?

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 21 / 25

Page 23: Semantic building blocks in genetic programming

Extensions and applications Designing new approaches

Designing new approaches

Bummer having so many fixed contexts. Could consider this asco-evolutionary system between population of contexts and populationof subtrees. The problem then is disengagement: The (fixed) contextsalways “beat” the subtrees [de Jong and Pollack, 2004].

Can we design new operators that combat this? We tried preventingXO at fixed contexts. Great at reducing bloat, but not good at solving.

Maybe design a co-evolutionary Estimation of Distribution Algorithm(EDA) based on these semantics?

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 22 / 25

Page 24: Semantic building blocks in genetic programming

Conclusions

Conclusions

Semantics of crossover= (Semantics of subtrees) + (Semantics of contexts)

We can enumerate subtree and context semantics to betterunderstand action of subtree XOLots of fixed contexts (roughly 75%)So most XO operations are “no-ops”Can perhaps use this to understand other systems and designnew ones

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 23 / 25

Page 25: Semantic building blocks in genetic programming

Conclusions

Thanks!

Thanks for your time and attention!

Contact:[email protected]://www.morris.umn.edu/~mcphee/

[email protected]://tylersaurus.com/

Questions?

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 24 / 25

Page 26: Semantic building blocks in genetic programming

References

References

R. Poli and J. Page.Solving high-order boolean parity problems with smooth uniformcrossover, sub- machine code GP and demesGPEM, 1(1/2):37-56, 2000.

E.D. de Jong and J.B. Pollack.Ideal evaluation from coevolution.Evolutionary Computation, 12(2):159-192, 2004.

McPhee and Hutchison (U of Minn, Morris) Semantic BBs in GP 26 Mar 2008, EuroGP, Naples 25 / 25