Genetic Programming Dan Kiely Ran Shoham Brent Heigold

Slides:



Advertisements
Similar presentations
CS6800 Advanced Theory of Computation
Advertisements

Exact and heuristics algorithms
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
TEMPLATE DESIGN © Genetic Algorithm and Poker Rule Induction Wendy Wenjie Xu Supervised by Professor David Aldous, UC.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
Introduction to Genetic Algorithms Yonatan Shichel.
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)
Genetic Algorithms Learning Machines for knowledge discovery.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Genetic Programming. Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of.
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 Programming.
Slides are based on Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming n Evolution.
Genetic Algorithm.
CSM6120 Introduction to Intelligent Systems Other evolutionary algorithms.
Evolutionary Intelligence
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
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.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
Genetic Algorithms. Evolutionary Methods Methods inspired by the process of biological evolution. Main ideas: Population of solutions Assign a score or.
Exact and heuristics algorithms
Genetic Programming Part 2 Jay Shaffstall. Genetic Programming Review of Part 1 Program graphing Program breeding Program mutation Fitness functions Development.
Chapter 9 Genetic Algorithms.  Based upon biological evolution  Generate successor hypothesis based upon repeated mutations  Acts as a randomized parallel.
Genetic Algorithms Genetic algorithms provide an approach to learning that is based loosely on simulated evolution. Hypotheses are often described by bit.
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Biologically inspired algorithms BY: Andy Garrett YE Ziyu.
Genetic Algorithms. The Basic Genetic Algorithm 1.[Start] Generate random population of n chromosomes (suitable solutions for the problem) 2.[Fitness]
GENETIC PROGRAMMING. THE CHALLENGE "How can computers learn to solve problems without being explicitly programmed? In other words, how can computers be.
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
Introduction Genetic programming falls into the category of evolutionary algorithms. Genetic algorithms vs. genetic programming. Concept developed by John.
Agenda  INTRODUCTION  GENETIC ALGORITHMS  GENETIC ALGORITHMS FOR EXPLORING QUERY SPACE  SYSTEM ARCHITECTURE  THE EFFECT OF DIFFERENT MUTATION RATES.
John R. Koza [Edited by J. Wiebe] 1. GENETIC PROGRAMMING 2.
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.
Evolutionary Algorithms
Genetic Algorithm(GA)
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Genetic Programming.
Evolution Strategies Evolutionary Programming
Evolution strategies and genetic programming
GENETIC PROGRAMMING BBB4003.
Basics of Genetic Algorithms (MidTerm – only in RED material)
Genetic Algorithm and Genetic Programming
GENETIC ALGORITHMS & MACHINE LEARNING
Dr. Unnikrishnan P.C. Professor, EEE
Basics of Genetic Algorithms
Genetic Programming Chapter 6.
Genetic Programming Chapter 6.
GENETIC PROGRAMMING BBB4003.
Presentation transcript:

Genetic Programming Dan Kiely Ran Shoham Brent Heigold CPSC 533, Artificial Intelligence Dan Kiely Ran Shoham Brent Heigold

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

What is Genetic Programming(GP)? Part of larger discipline called Machine Learning. Machine learning can be best described as "the study of computer algorithms that improve automatically through experience" (Mitchell 1996). It attempts to solve the problem - How can computers be made to do what needs to be done without being told exactly how to do it? This is where the aspect of Artificial Intelligence comes into play.

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) * - + 2 a 4 num

“Breeding” Computer Programs Hmm hmm heh. Hey butthead. Do computer programs actually score? 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. n2 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

Mutations in Programs Single parental program is probabilistically selected from the population based on fitness. Mutation 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 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. No 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 subtree rooted at the crossover point of the first, or receiving, parent is deleted and replaced by the subtree from the second, or contributing, parent. Crossover is the predominant operation in genetic programming (and genetic algorithm) work and is performed with a high probability (say, 85% to 90%).

Examples of Genetic Programs Symbolic Regression - the process of discovering both the functional form of a target function and all of its necessary coefficients, or at least an approximation to these. Analog circuit design - Embryo circuit - 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 1992. Save time while creating better programs. Based on the principles of genetics. Symbolic Regression/Circuit Design. Future uncertain.

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