Mechanics of Genetic Programming

Slides:



Advertisements
Similar presentations
Genetic Algorithms Chapter 3. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms GA Quick Overview Developed: USA in.
Advertisements

Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Genetic Algorithms Representation of Candidate Solutions GAs on primarily two types of representations: –Binary-Coded –Real-Coded Binary-Coded GAs must.
Genetic Algorithms1 COMP305. Part II. Genetic Algorithms.
Evolutionary Computational Intelligence
Data Mining CS 341, Spring 2007 Genetic Algorithm.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
Doug Downey, adapted from Bryan Pardo, Machine Learning EECS 349 Machine Learning Genetic Programming.
Learning to Advertise. Introduction Advertising on the Internet = $$$ –Especially search advertising and web page advertising Problem: –Selecting ads.
Applying Genetic Programming to Stratego Ryan Albarelli.
Genetic Algorithms Learning Machines for knowledge discovery.
Artificial Intelligence Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni.
7/2/2015Intelligent Systems and Soft Computing1 Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
What is Neutral? Neutral Changes and Resiliency Terence Soule Department of Computer Science University of Idaho.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Khaled Rasheed Computer Science Dept. University of Georgia
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 Algorithm.
Charles L. Karr Rodney Bowersox Vishnu Singh
Soft Computing Lecture 18 Foundations of genetic algorithms (GA). Using of GA.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Design of a real time strategy game with a genetic AI By Bharat Ponnaluri.
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
Computer Science and Mathematical Basics Chap. 3 발표자 : 김정집.
Fuzzy Genetic Algorithm
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
GENETIC ALGORITHMS.  Genetic algorithms are a form of local search that use methods based on evolution to make small changes to a popula- tion of chromosomes.
G ENETIC P ROGRAMMING Ranga Rodrigo March 17,
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Artificial Intelligence Chapter 4. Machine Evolution.
Genetic Algorithms Czech Technical University in Prague, Faculty of Electrical Engineering Ondřej Vaněk, Agent Technology Center ZUI 2011.
Edge Assembly Crossover
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
2101INT – Principles of Intelligent Systems Lecture 11.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
CITS7212: Computational Intelligence An Overview of Core CI Technologies Lyndon While.
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 Search Algorithms Matt Herbster. Why Another Search?  Designed in the 1950s, heavily implemented under John Holland (1970s)  Genetic search.
Genetic Programming Using Simulated Natural Selection to Automatically Write Programs.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Genetic Programming. What is Genetic Programming? GP for Symbolic Regression Other Representations for GP Example of GP for Knowledge Discovery Outline.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
Hirophysics.com The Genetic Algorithm vs. Simulated Annealing Charles Barnes PHY 327.
GP FOR ADAPTIVE MARKETS Jake Pacheco 6/11/2010. The Goal  Produce a system that can create novel quantitative trading strategies for the stock market.
Selected Topics in CI I Genetic Programming Dr. Widodo Budiharto 2014.
MAE 552 Heuristic Optimization
Evolution strategies and genetic programming
GENETIC PROGRAMMING BBB4003.
Artificial Intelligence Chapter 4. Machine Evolution
Genetic Algorithms Chapter 3.
Artificial Intelligence Chapter 4. Machine Evolution
Boltzmann Machine (BM) (§6.4)
Traveling Salesman Problem by Genetic Algorithm
Beyond Classical Search
Population Based Metaheuristics
GA.
Presentation transcript:

Mechanics of Genetic Programming Tin-Shuk (Timmy) Wong

Introduction I am working in ECJ to use genetic programming to develop a strategy for investing in the stock market. Because I don’t yet have visual results, I will be giving a brief presentation on the theory behind genetic programming in general.

What is genetic programming? Genetic programming (GP) is a specialized variation of genetic algorithms (GA). The modern tree-based form was popularized by John Koza in the nineties. GP uses programs as individuals in the genetic pool, with each program usually modeled as a binary tree rather than a string of numbers. Leaf nodes are typically known as terminals, while inner nodes are known as functions. One advantage of this representation is that the trees can be searched and ordered easily.

Crossover Recall that crossover is the “reproduction” of genetic algorithms. GP performs crossover by randomly switching nodes in two trees. If the nodes involved are functions, their children will also be switched. Another advantage of the tree structure is that even identical trees can produce different children.

Crossover with different parents

Crossover with identical parents

Mutation The other primary operation used in GA and GP is mutation. Mutation can be implemented in a few different ways: the GP algorithm can only allow terminals to be altered, or it can allow entire subtrees to be changed.

Mutation diagram

GP applied to the stock market Genetic programming is more powerful than powerful than generic GA because it outputs a full program, rather than a number. Essentially, it is incredibly powerful at solving any problem that can is tractable to machine learning. It is an ideal tool for tackling the stock market, as the market has a simple fitness criterion (earning the most money) but has many complicated variables that constantly change.

From here on out ECJ is a popular GA/GP suite developed in Java. My strategy involves using ECJ to implement several classes of strategies as individuals. These strategies take historical market data as input, and their output predictions are contrasted with recent market data. Hopefully, this will combine many strategies into one improved heuristic.

Program input

Conclusion Any questions? Thanks for your time.