Genetic Programming. Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of.

Slides:



Advertisements
Similar presentations
Genetic Programming Dan Kiely Ran Shoham Brent Heigold
Advertisements

Exact and heuristics algorithms
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
Genetic Algorithms1 COMP305. Part II. Genetic Algorithms.
Introduction to Genetic Algorithms Yonatan Shichel.
Evolutionary Design By: Dianna Fox and Dan Morris.
Genetic Programming.
Genetic Algorithms GAs are one of the most powerful and applicable search methods available GA originally developed by John Holland (1975) Inspired by.
Genetic Algorithm and Genetic Programming. Crossovers in Nature Two parental chromosomes exchange part of their genetic information to create new hybrid.
Doug Downey, adapted from Bryan Pardo, Machine Learning EECS 349 Machine Learning Genetic Programming.
Evolutionary Algorithms Simon M. Lucas. The basic idea Initialise a random population of individuals repeat { evaluate select vary (e.g. mutate or crossover)
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
CS 447 Advanced Topics in Artificial Intelligence Fall 2002.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Khaled Rasheed Computer Science Dept. University of Georgia
Genetic Programming Dinesh Dharme Prateek Srivastav Pankhil Chheda
Image Registration of Very Large Images via Genetic Programming Sarit Chicotay Omid E. David Nathan S. Netanyahu CVPR ‘14 Workshop on Registration of Very.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Genetic Programming.
Genetic Programming Chapter 6. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Programming GP quick overview Developed: USA.
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Evolutionary algorithms
Genetic Algorithm.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
© Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Evolution strategies Evolution.
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Design of an Evolutionary Algorithm M&F, ch. 7 why I like this textbook and what I don’t like about it!
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
Derivative Free Optimization G.Anuradha. Contents Genetic Algorithm Simulated Annealing Random search method Downhill simplex method.
Artificial Intelligence Chapter 4. Machine Evolution.
Chapter 9 Genetic Algorithms.  Based upon biological evolution  Generate successor hypothesis based upon repeated mutations  Acts as a randomized parallel.
Genetic Programming. GP quick overview Developed: USA in the 1990’s Early names: J. Koza Typically applied to: machine learning tasks (prediction, classification…)
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Biologically inspired algorithms BY: Andy Garrett YE Ziyu.
Genetic Programming A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Chapter 6.
Genetic Algorithms. The Basic Genetic Algorithm 1.[Start] Generate random population of n chromosomes (suitable solutions for the problem) 2.[Fitness]
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
1 Autonomic Computer Systems Evolutionary Computation Pascal Paysan.
Genetic Programming COSC Ch. F. Eick, Introduction to Genetic Programming GP quick overview Developed: USA in the 1990’s Early names: J. Koza Typically.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Programming Using Simulated Natural Selection to Automatically Write Programs.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Genetic Algorithm(GA)
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
Genetic Programming.
Evolution Strategies Evolutionary Programming
Basics of Genetic Algorithms (MidTerm – only in RED material)
Genetic Algorithm and Genetic Programming
Artificial Intelligence Chapter 4. Machine Evolution
GENETIC ALGORITHMS & MACHINE LEARNING
Genetic Algorithms Chapter 3.
Basics of Genetic Algorithms
Artificial Intelligence Chapter 4. Machine Evolution
Genetic Programming Chapter 6.
Genetic Programming Chapter 6.
Genetic Programming Chapter 6.
Population Based Metaheuristics
Coevolutionary Automated Software Correction
Presentation transcript:

Genetic Programming

Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of Genetic Programs. Future of Genetic Programming.

Artificial Intelligence Machine learning What is Genetic Programming(GP)? GP Artificial Intelligence ROBOTICS ES EPGA evolutionary

Genetic Algorithms Most widely used Robust uses 2 separate spaces –search space - coded solution (genotype) –solution space - actual solutions (phenotypes) Genotypes must be mapped to phenotypes before the quality or fitness of each solution can be evaluated

Evolutionary Strategies Like GP no distinction between search and solution space Individuals are represented as real-valued vectors. Simple ES –one parent and one child –Child solution generated by randomly mutating the problem parameters of the parent. Susceptible to stagnation at local optima

Evolutionary Strategies (cont’d) Slow to converge to optimal solution More advanced ES –have pools of parents and children Unlike GA and GP, ES – Separates parent individuals from child individuals –Selects its parent solutions deterministically

Evolutionary Programming Resembles ES, developed independently Early versions of EP applied to the evolution of transition table of finite state machines One population of solutions, reproduction is by mutation only Genotype = PhenotypeLike ES operates on the decision variable of the problem directly (ie Genotype = Phenotype) Tournament selection of parents –better fitness more likely a parent –children generated until population doubled in size –everyone evaluated and the half of population with lowest fitness deleted.

General Architecture of Evolutionary Algorithms

Genetic Programming Specialized form of GA Manipulates a very specific type of solution using modified genetic operators Original application was to design computer program Now applied in alternative areas eg. Analog Circuits Does not make distinction between search and solution space. Solution represented in very specific hierarchical manner.

Background/History By John R. Koza, Stanford University. 1992, Genetic Programming Treatise - “Genetic Programming. On the Programming of Computers by Means of Natural Selection.” - Origin of GP. Combining the idea of machine learning and evolved tree structures.

Why Genetic Programming? It saves time by freeing the human from having to design complex algorithms. Not only designing the algorithms but creating ones that give optimal solutions. Again, Artificial Intelligence.

What Constitutes a Genetic Program? Starts with "What needs to be done" Agent figures out "How to do it" Produces a computer program - “Breeding Programs” Fitness Test Code reuse Architecture Design - Hierarchies Produce results that are competitive with human produced results

How are Genetic Principles Applied? “Breeding” computer programs. Crossovers. Mutations. Fitness testing.

Computer Programs as Trees Infix/Postfix (2 + a)*(4 - num) * + - 2a4num

“Breeding” Computer Programs Hmm hmm heh. Hey butthead. Do computer programs actually score?

“Breeding” Computer Programs Start off with a large “pool” of random computer programs. Need a way of coming up with the best solution to the problem using the programs in the “pool” Based on the definition of the problem and criteria specified in the fitness test, mutations and crossovers are used to come up with new programs which will solve the problem.

The Fitness Test Identifying the way of evaluating how good a given computer program is at solving the problem at hand. How good can a program cope with its environment. Can be measured in many ways, i.e. error, distance, time, etc…

Fitness Test Criteria Time complexity a good criteria. –i.e. n 2 vs. nlogn. Accuracy - Values of variables. Combinations of criteria may also be tested.

Mutations in Nature Ultimate source of genetic variation. Radiation, chemicals change genetic information. Causes new genes to be created. One chromosome. Asexual. Very rare. Before: acgtactggctaa After: acatactggctaa Properties of mutations

Mutations in Programs Single parental program is probabilistically selected from the population based on fitness. MutationMutation point randomly chosen. –the subtree rooted at that point is deleted, and –a new subtree is grown there using the same random growth process that was used to generate the initial population. Asexual operations (mutation) are typically performed sparingly: –with a low probability of, – probabilistically selected from the population based on fitness.

Crossovers in Nature Two parental chromosomes exchange part of their genetic information to create new hybrid combinations (recombinant). No loss of genes, but an exchange of genes between two previous chromosomes. new genes createdNo new genes created, preexisting old ones mixed together.

Crossovers in Programs Two parental programs are selected from the population based on fitness. A crossover point is randomly chosen in the first and second parent. –The first parent is called receiving –The second parent is called contributing The subtree rooted at the crossover point of the first parent is deleted It is replaced by the subtree from the second parent. CrossoverCrossover is the predominant operation in genetic programming (and genetic algorithm) research It is performed with a high probability (say, 85% to 90%).

Examples of Genetic Programs 1. Symbolic Regression - –the process of discovering: the functional form of a target function and all of its necessary coefficients, or at least an approximation to these. 2. Analog circuit design –Embryo circuit is an initial circuit which is modified to create a new circuit according to functionality criteria.

Genetic Programming in the Future Speculative. Only been around for 8 years. Is very successful. Discovery of new algorithms in existing projects. Mr. Roboto

Summary Field of study in Machine Learning. Created by John Koza in Save time while creating better programs. Based on the principles of genetics. Symbolic Regression/Circuit Design. Future uncertain.

End of Show Shut up Buttmunch. That sucked. Hey Butthead. That kicked ass. Oh yeah. Hm hm yeah yeah hm. It sucked.

Sources Dan Kiely Ran Shoham Brent Heigold CPSC 533, Artificial Intelligence