Behavioral Programming: A Broader and More Detailed Take on Semantic - - PowerPoint PPT Presentation

behavioral programming a broader and more detailed take
SMART_READER_LITE
LIVE PREVIEW

Behavioral Programming: A Broader and More Detailed Take on Semantic - - PowerPoint PPT Presentation

Behavioral Programming: A Broader and More Detailed Take on Semantic GP Krzysztof Krawiec 1 Una-May OReilly 2 1 Institute of Computing Science Poznan University of Technology, Poland 2 CSAIL, Massachusetts Institute of Technology, Cambridge, MA


slide-1
SLIDE 1

Behavioral Programming: A Broader and More Detailed Take on Semantic GP

Krzysztof Krawiec1 Una-May O’Reilly2

1Institute of Computing Science

Poznan University of Technology, Poland

2CSAIL, Massachusetts Institute of Technology, Cambridge, MA

GECCO’14, Vancouver, July 15, 2014

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-2
SLIDE 2

Problem statement and key insights

1

Problem: Evaluation bottleneck in Genetic Programming

2

Hypothesis: Richer evaluation feedback can make search more efficient

3

Proposed solution: Behavioral programming

4

Result: Better performance and implicit problem decomposition

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-3
SLIDE 3

Conventional evaluation in GP

GP = iterative search in program space, driven by fitness function

fitness program Search algorithm Fitness function

Complex evaluation process Yet: scant feedback for the search algorithm (scalar fitness)

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-4
SLIDE 4

Semantic-aware evaluation

program Search algorithm Fitness function semantics

Richer feedback: semantics (program output for every example) Specialized search operators exploit program semantics

E.g., using the geometric properties of semantic space (Moraglio et al. 2011)

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-5
SLIDE 5

Observations

Semantics does not capture the entirety of program activity.

Only the output of a program matters.

Program output is a combined effects of multiple execution steps (instructions). A program can produce incorrect output, even if it is partially correct,

i.e., features subprograms that produce useful/correct partial results.

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-6
SLIDE 6

Example: Calculating the median

Input: list Central(list) Output: median(list) Sort(list)

The sorted list is a desired intermediate computation state. Stage-wise problem decomposition.

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-7
SLIDE 7

PANGEA: Pattern-Guided Evolutionary Algorithm

f

  • Program

input Desired

  • utput

Program error y Actual program

  • utput

p(x) Program execution x

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-8
SLIDE 8

PANGEA: Pattern-Guided Evolutionary Algorithm

Training set f e ...

  • Program

input Desired

  • utput

Program error x y Actual program

  • utput

p(x) s1(x) s2(x) ML classifier c Classifier error Classifier complexity (size) Program execution Program trace

Black: Conventional GP Green: PANGEA (Krawiec & Swan, GECCO’13)

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-9
SLIDE 9

Example (nominal domain, tree-based GP)

x1

2 1 3 2 1 3

x1 *

4 1 9

x2

3 1 1 2 1 3

x1 +

5 1 4 1

  • 1

5

  • 1

2 1 3 3 1 1 3 2 4 2 x2 y x1 2 1 3 3 1 1 4 1 9 5 1 4 1 x1 x2 y x3 x4 Problem GP Individual ML dataset 3 2 4 2

y = 2 x1 x4 = 1 6= 1 y = 4 y = 3 = 2 6= 2

Decision tree Evaluation: 10 0 examples 5 nodes Program error Classifier error Classifier complexity

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-10
SLIDE 10

Behavioral programming

Behavioral programming = PANGEA extended with: Multiobjective evaluation and selection (NSGA-II, Deb et al. 2002), Archiving of promising subprograms, Mutation operator supplied by subprograms from the archive.

Archive of subprograms Objective1: program error Population Selection Mutation Fitness evaluation Crossover Archive- based mutation Objective2 Objective2 Objective2

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-11
SLIDE 11

Experiment: Benchmarks

Domain Instruction set Problem Variables Fitness cases Space size Boolean Cmp6 6 64 264 Cmp8 8 256 2256 and, Maj6 6 64 264 nand, Maj8 8 256 2256

  • r,

Mux6 6 64 264 nor Mux11 11 2, 048 22048 Par6 6 64 264 Par8 8 256 2256 Categorical ai(x, y) D-a1..a5 3 27 327 ai(x, y) M-a1..a5 3 15 315 Regression Keij1,Keij4 1 20 – Nguy3,Nguy4 1 +, −, Nguy5,Nguy6 1 ∗, %, Nguy7,Sext 1 sin, cos, Keij5, Keij11 2 log, exp, Keij12, Keij13 2 −x Keij14, Nguy9 2 Nguy10, Nguy12 2 Keij15 3

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-12
SLIDE 12

Experiment: Configurations

GP Behavioral programming GP1 GP1L GP2 BPGP4 BP2A BPGP4A Objectives Program error ✓ ✓ ✓ ✓ ✓ ✓ Program size ✓ ✓ ✓ ✓ Classifier complexity ✓ ✓ Classifier error ✓ ✓ Operators Mutation 0.1 0.1 0.1 0.1 0.1 0.1 Crossover 0.9 0.9 0.9 0.9 Archive mutation 0.9 0.9

  • Pop. size

100 1000 100 100 100 100

Decision tree: REPTree (fast, applicable to classification and regression) Statistics: Friedman test + Shaffer’s post-hoc analysis

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-13
SLIDE 13

Experiment: Results

(Ranks averaged over 35 benchmarks)

Success rate: BPGP4A GP1L BP2A BPGP4 GP1 GP2 2.43 3.10 3.36 3.43 3.86 4.83 Program error: BPGP4A GP1L BP2A BPGP4 GP1 GP2 2.17 2.21 3.31 3.71 3.79 5.8 Predictive accuracy: BPGP4 BPGP4A BP2A GP1 GP1L GP2 2.65 3.35 3.47 3.47 3.59 4.47 Run time: GP1 GP2 BPGP4 BPGP4A BP2A GP1L 1.09 3.11 3.77 3.97 4.09 4.97 Program size: GP2 BPGP4 BP2A BPGP4A GP1 GP1L 1.26 2.57 2.89 3.91 4.81 5.56

Essential factors: behavioral evaluation and archive-based mutation

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming

slide-14
SLIDE 14

Conclusions

Behavioral programming = Better-informed search process Better search performance Almost parameterless Domain-independence Implicit problem decomposition Applicable to all GP paradigms Future/ongoing work: Alternative ‘pattern detectors’ (PPSN’14) Acknowledgment:

Krzysztof Krawiec, Una-May O’Reilly Behavioral Programming