Genetic Programming. Modern optimization methods 1

Similar documents
Genetic Programming Prof. Thomas Bäck Nat Evur ol al ut ic o om nar put y Aling go rg it roup hms Genetic Programming 1

Mutations for Permutations

Genetic Programming Part 1

Previous Lecture Genetic Programming

Genetic Programming. Genetic Programming. Genetic Programming. Genetic Programming. Genetic Programming. Genetic Programming

Genetic Programming. Czech Institute of Informatics, Robotics and Cybernetics CTU Prague.

Investigating the Application of Genetic Programming to Function Approximation

Evolutionary Computation. Chao Lan

Genetic Programming. and its use for learning Concepts in Description Logics

Santa Fe Trail Problem Solution Using Grammatical Evolution

Computational Intelligence

Genetic Programming: A study on Computer Language

Genetic Algorithms and Genetic Programming Lecture 9

Project 2: Genetic Programming for Symbolic Regression

Introduction to Genetic Algorithms. Based on Chapter 10 of Marsland Chapter 9 of Mitchell

CONCEPT FORMATION AND DECISION TREE INDUCTION USING THE GENETIC PROGRAMMING PARADIGM

The Parallel Software Design Process. Parallel Software Design

Genetic programming. Lecture Genetic Programming. LISP as a GP language. LISP structure. S-expressions

MDL-based Genetic Programming for Object Detection

Genetic Programming for Multiclass Object Classification

Artificial Intelligence

Lecture 6: Genetic Algorithm. An Introduction to Meta-Heuristics, Produced by Qiangfu Zhao (Since 2012), All rights reserved

Genetic Algorithms Variations and Implementation Issues

Genetic Algorithms. Chapter 3

Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you?

Genetic Algorithms and Genetic Programming. Lecture 9: (23/10/09)

Artificial Intelligence Application (Genetic Algorithm)

GENETIC ALGORITHM with Hands-On exercise

Genetic Algorithm for Dynamic Capacitated Minimum Spanning Tree

A Comparative Study of Linear Encoding in Genetic Programming

Introduction to Genetic Algorithms. Genetic Algorithms

Pseudo-code for typical EA

BBN Technical Report #7866: David J. Montana. Bolt Beranek and Newman, Inc. 10 Moulton Street. March 25, Abstract

Evolutionary Algorithms. CS Evolutionary Algorithms 1

Introduction to Optimization

Introduction to Optimization

Lecture 8: Genetic Algorithms

CHAPTER 4 GENETIC ALGORITHM

Genetic Programming. Charles Chilaka. Department of Computational Science Memorial University of Newfoundland

Genetic Algorithms. Kang Zheng Karl Schober

What is GOSET? GOSET stands for Genetic Optimization System Engineering Tool

Classification Using Genetic Programming. Patrick Kellogg General Assembly Data Science Course (8/23/15-11/12/15)

Review: Final Exam CPSC Artificial Intelligence Michael M. Richter

COMP SCI 5401 FS Iterated Prisoner s Dilemma: A Coevolutionary Genetic Programming Approach

Gene Expression Programming. Czech Institute of Informatics, Robotics and Cybernetics CTU Prague

Akaike information criterion).

4/22/2014. Genetic Algorithms. Diwakar Yagyasen Department of Computer Science BBDNITM. Introduction

Genetic Algorithm for Dynamic Capacitated Minimum Spanning Tree

[Premalatha, 4(5): May, 2015] ISSN: (I2OR), Publication Impact Factor: (ISRA), Journal Impact Factor: 2.114

Background on Genetic Programming

The k-means Algorithm and Genetic Algorithm

Selection Based on the Pareto Nondomination Criterion for Controlling Code Growth in Genetic Programming

JHPCSN: Volume 4, Number 1, 2012, pp. 1-7

Fall 2003 BMI 226 / CS 426 Notes F-1 AUTOMATICALLY DEFINED FUNCTIONS (ADFS)

Genetic Programming for Julia: fast performance and parallel island model implementation

Robust Gene Expression Programming

Bulldozers II. Tomasek,Hajic, Havranek, Taufer

CS5401 FS2015 Exam 1 Key

ADAPTATION OF REPRESENTATION IN GP

Using Genetic Algorithms to Solve the Box Stacking Problem

Project C: Genetic Algorithms

CHAPTER 2 CONVENTIONAL AND NON-CONVENTIONAL TECHNIQUES TO SOLVE ORPD PROBLEM

Geometric Semantic Genetic Programming ~ Theory & Practice ~

A Memetic Genetic Program for Knowledge Discovery

Comparative Analysis of Genetic Algorithm Implementations

A Steady-State Genetic Algorithm for Traveling Salesman Problem with Pickup and Delivery

Evolutionary Computation Part 2

CHAPTER 6 REAL-VALUED GENETIC ALGORITHMS

Genetic Algorithms. Genetic Algorithms

Topological Machining Fixture Layout Synthesis Using Genetic Algorithms

The Genetic Algorithm for finding the maxima of single-variable functions

Study on the Application Analysis and Future Development of Data Mining Technology

JEvolution: Evolutionary Algorithms in Java

Contents. Index... 11

CS350: Data Structures B-Trees

Automatic Programming with Ant Colony Optimization

How Santa Fe Ants Evolve

Dynamic Page Based Crossover in Linear Genetic Programming

Time Complexity Analysis of the Genetic Algorithm Clustering Method

Genetic Programming of Autonomous Agents. Functional Requirements List and Performance Specifi cations. Scott O'Dell

Heuristic Optimisation

Automatic Programming of Agents by Genetic Programming

An empirical study of the efficiency of learning boolean functions using a Cartesian Genetic Programming approach

HYBRID GENETIC ALGORITHM WITH GREAT DELUGE TO SOLVE CONSTRAINED OPTIMIZATION PROBLEMS

Stack-Based Genetic Programming

GPLAB A Genetic Programming Toolbox for MATLAB. Sara Silva ECOS - Evolutionary and Complex Systems Group University of Coimbra Portugal

Thèse de Doctorat de l Université Paris-Sud. Carlos Kavka. pour obtenir le grade de Docteur de l Université Paris-Sud

Acquisition of accurate or approximate throughput formulas for serial production lines through genetic programming. Abstract

Genetic Programming for the Evolution of Functions with a Discrete Unbounded Domain

A New Crossover Technique for Cartesian Genetic Programming

Evolving SQL Queries for Data Mining

Usage of of Genetic Algorithm for Lattice Drawing

A Genetic Programming Approach for Distributed Queries

LECTURE 3 ALGORITHM DESIGN PARADIGMS

Outline. CS 6776 Evolutionary Computation. Numerical Optimization. Fitness Function. ,x 2. ) = x 2 1. , x , 5.0 x 1.

Escaping Local Optima: Genetic Algorithm

Outline. Motivation. Introduction of GAs. Genetic Algorithm 9/7/2017. Motivation Genetic algorithms An illustrative example Hypothesis space search

Algorithm Design Paradigms

Evolving Teleo-Reactive Programs for Block Stacking using Indexicals through Genetic Programming

MINIMAL EDGE-ORDERED SPANNING TREES USING A SELF-ADAPTING GENETIC ALGORITHM WITH MULTIPLE GENOMIC REPRESENTATIONS

Transcription:

Genetic Programming Developed in USA during 90 s Patented by J. Koza Solves typical problems: Prediction, classification, approximation, programming Properties Competitor of neural networks Need for huge populations (thousands) Very slow convergence Specialties: Non-linear chromosomes: trees, graphs Mutation possible but not necessarily Modern optimization methods 1

Problem of automatic programming Modern optimization methods 2

Problem of automatic programming Modern optimization methods 3

Introductory example: credit scoring Bank wants to distinguish good from bad loan applicants Model needed that matches historical data ID No children Income Status OK? ID-1 2 45000 Married YES ID-2 0 30000 Single NO ID-3 1 40000 Divorced NO Modern optimization methods 4

Introductory example: credit scoring A possible model : IF (CHILDREN = 2) AND (I > 40000) THEN YES ELSE NO In general : IF logical expression THEN YES ELSE NO The only unknown is logical expression and therefore, the search domain (genotype) is the space of all logical expressions The objective function is a number of samples (data) well described by the logical statement Natural representation of logical expressions: tree structure Modern optimization methods 5

Introductory example: credit scoring IF(CHILDREN = 2) AND (I > 40000) THEN YES ELSE NO Can be described by following tree: AND = > CHILDREN 2 I 40000 Modern optimization methods 6

Tree based representation Tree structure is universal, e.g. Arithmetical expression Logical expression 2 ( x 3) y 5 1 Program (x true) (( x y ) (z (x y))) i =1; while (i < 20) { i = i +1 } Modern optimization methods 7

Tree based representation 2 ( x 3) y 5 1 Modern optimization methods 8

Tree based representation (x true) (( x y ) (z (x y))) Modern optimization methods 9

Tree based representation i =1; while (i < 20) { i = i +1 } Modern optimization methods 10

Tree based representation In GA, ES, DE chromosomes are linear structures (bit strings, integer string, real-valued vectors, permutations) Tree shaped chromosomes are non-linear structures In GA, ES, DE the size of the chromosomes is fixed Trees in GP may vary in depth and width Modern optimization methods 11

Tree based representation Symbolic expression can be represented by: Set of terminal symbols T Set of functions F (with the arities of function symbols) Adopting the following general recursive definition: 1. Every t T is a correct expression 2. f(e 1,, e n ) is a correct expression if f F, arity(f)=n and e 1,, e n are correct expressions 3. There are no other forms of correct expressions In general, expressions in GP are not typed (closure property: any f F can take any g F as argument) Modern optimization methods 12

Algorithm Compare GA scheme using crossover AND mutation sequentially (be it probabilistically) GP scheme using crossover OR mutation (chosen probabilistically) Modern optimization methods 13

Mutation Most common mutation: replace randomly chosen subtree by randomly generated tree Modern optimization methods 14

Mutation Mutation has two parameters: Probability p m to choose mutation vs. recombination Probability to chose an internal point as the root of the subtree to be replaced Remarkably p m is advised to be p m =0 [Koza, 1992] or very small, like 0.05 [Banzhaf et al., 1998] The size of the child can exceed the size of the parent Modern optimization methods 15

Recombination Most common recombination: exchange two randomly chosen subtrees among the parents Over-selection in very large populations rank population by fitness and divide it into two groups: group 1: best x% of population, group 2 other (100-x)% 80% of selection operations chooses from group 1, 20% from group 2 for pop. size = 1000, 2000, 4000, 8000 x = 32%, 16%, 8%, 4% motivation: to increase efficiency, % s come from rule of thumb Modern optimization methods 16

Parent 1 Parent 2 Child 1 Child 2 Modern optimization methods 17

Initialisation Maximum initial depth of trees D max is set Full method (each branch has depth = D max ): nodes at depth d < D max randomly chosen from function set F nodes at depth d = D max randomly chosen from terminal set T Grow method (each branch has depth D max ): nodes at depth d < D max randomly chosen from F T nodes at depth d = D max randomly chosen from T Common GP initialisation: ramped half-and-half, where grow & full method each deliver half of initial population Modern optimization methods 18

Bloat Bloat = survival of the fattest, i.e., the tree sizes in the population are increasing over time Ongoing research and debate about the reasons Needs countermeasures, e.g. Prohibiting variation operators that would deliver too big children Parsimony pressure: penalty for being oversized Multi-objective optimization Modern optimization methods 19

Example: symbolic regression Given some points in R 2, (x 1, y 1 ),, (x n, y n ) Find function f(x) s.t. i = 1,, n : f(x i ) = y i Possible GP solution: Representation by F = {+, -, /, sin, cos}, T = R {x} n 2 Fitness is the error err( f ) ( f ( x i ) yi ) i 1 All operators standard pop.size = 1000, ramped half-half initialisation Termination: n hits or 50000 fitness evaluations reached (where hit is if f(x i ) y i < 0.0001) Modern optimization methods 20

Example: symbolic regression x 2 +x+1 Generation 0 Modern optimization methods 21

Example: symbolic regression x 2 +x+1 Generation 1 Copy from (a) Mutant from (c) Children form (a) and (b) Modern optimization methods 22

Symbolic regression : problem of real numbers Real constants as terminals without any change during optimization process In case of linear operators, automatic linear regression can be used Multi-modal optimization Modern optimization methods 23

Real-life example: aka Human competitive results Modern optimization methods 24

GPLAB A Genetic Programming Toolbox for MATLAB Autor: Sara Silva http://gplab.sourceforge.net/ Example: demoant.m [v,b] = gplab(no_generations,no_individuals,parametrs); Modern optimization methods 25

Example Santa Fe trail Modern optimization methods 26

Example Santa Fe trail Set of terminals: T = {MOVE,LEFT, RIGHT} Set of functions: F = {IF-FOOD-AHEAD,PROG2,PROG3} with aritas {2,2,3} Fitness: Number of gathered food in 400 steps Modern optimization methods 27

Typical solution: stitcher (F=12) Modern optimization methods 28

References [1] Koza, J. R. (1992). Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press. [2] Koza, J. R. (1994). Genetic Programming II: Automatic Discovery of Reusable Programs. [3] Koza, J. R. (1999). Genetic Programming III: Darwinian Invention and Problem Solving. [4] Koza, J. R. ( 2003). Genetic Programming IV: Routine Human- Competitive Machine Intelligence. [5] www.genetic-programming.com [6] E.Y. Vladislavleva: Model-based Problem Solving through Symbolic Regression via Pareto Genetic Programming, Ph.D. Thesis, 2008 [7] https://gpdotnet.codeplex.com/ Modern optimization methods 29

A humble plea. Please feel free to e-mail any suggestions, errors and typos to matej.leps@fsv.cvut.cz. Date of the last version: 12.12.2016 Version: 002 Modern optimization methods 30