Optimization and Learning via Genetic Programming

Slides:



Advertisements
Similar presentations
Optimization Problem with Simple Genetic Algorithms Cho, Dong-Yeon
Advertisements

GP Applications Two main areas of research Testing genetic programming in areas other techniques have been applied to. Applying genetic programming to.
Advancements in Genetic Programming for Data Classification Dr. Hajira Jabeen Iqra University Islamabad, Pakistan.
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Doug Downey, adapted from Bryan Pardo, Machine Learning EECS 349 Machine Learning Genetic Programming.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Genetic Programming Chapter 6. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Programming GP quick overview Developed: USA.
Initial Value Problem: Find y=f(x) if y’ = f(x,y) at y(a)=b (1) Closed-form solution: explicit formula -y’ = y at y(0)=1 (Separable) Ans: y = e^x (2)
Medical Diagnosis via Genetic Programming Project #2 Artificial Intelligence: Biointelligence Computational Neuroscience Connectionist Modeling of Cognitive.
Genetic Algorithm.
Project 1: Classification Using Neural Networks Kim, Kwonill Biointelligence laboratory Artificial Intelligence.
GA-Based Feature Selection and Parameter Optimization for Support Vector Machine Cheng-Lung Huang, Chieh-Jen Wang Expert Systems with Applications, Volume.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Artificial Intelligence Project 1 Neural Networks Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
Biological data mining by Genetic Programming AI Project #2 Biointelligence lab Cho, Dong-Yeon
Project 1: Machine Learning Using Neural Networks Ver 1.1.
Genetic Algorithms. Evolutionary Methods Methods inspired by the process of biological evolution. Main ideas: Population of solutions Assign a score or.
Artificial Intelligence Chapter 4. Machine Evolution.
Initial Population Generation Methods for population generation: Grow Full Ramped Half-and-Half Variety – Genetic Diversity.
Genetic Programming. GP quick overview Developed: USA in the 1990’s Early names: J. Koza Typically applied to: machine learning tasks (prediction, classification…)
Genetic Algorithms CSCI-2300 Introduction to Algorithms
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Artificial Intelligence Project 1 Neural Networks Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Project 2: Classification Using Genetic Programming Kim, MinHyeok Biointelligence laboratory Artificial.
Genetic Programming A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Chapter 6.
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
Artificial Intelligence Project 1 Neural Networks Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Solving Function Optimization Problems with Genetic Algorithms September 26, 2001 Cho, Dong-Yeon , Tel:
Project 1: Classification Using Neural Networks Kim, Kwonill Biointelligence laboratory Artificial Intelligence.
GENETIC ALGORITHM Basic Algorithm begin set time t = 0;
Artificial Intelligence Project 1 Neural Networks Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Genetic Programming COSC Ch. F. Eick, Introduction to Genetic Programming GP quick overview Developed: USA in the 1990’s Early names: J. Koza Typically.
John R. Koza [Edited by J. Wiebe] 1. GENETIC PROGRAMMING 2.
John R. Koza [Edited by J. Wiebe] 1. GENETIC PROGRAMMING 2.
Symbolic Regression via Genetic Programming AI Project #2 Biointelligence lab Cho, Dong-Yeon
Genetic Programming Using Simulated Natural Selection to Automatically Write Programs.
Genetic Programming.
Chapter 14 Genetic Algorithms.
Multi-variable non linear function deduction using Genetic Programming
MAE 552 Heuristic Optimization
A Comparison of Simulated Annealing and Genetic Algorithm Approaches for Cultivation Model Identification Olympia Roeva.
Medical Diagnosis via Genetic Programming
Machine Learning Evolutionary Algorithm (2)
MultiRefactor: Automated Refactoring To Improve Software Quality
CS Fall 2016 (Shavlik©), Lecture 12, Week 6
Artificial Intelligence Project 2 Genetic Algorithms
Presenter: Randy Hunt Presenter: Vitaliy Krestnikov
GENETIC PROGRAMMING BBB4003.
CS621: Artificial Intelligence
Artificial Intelligence Chapter 4. Machine Evolution
Project 1: Text Classification by Neural Networks
Genetic Algorithms CSCI-2300 Introduction to Algorithms
Evolutionary Computation,
Model Evaluation and Selection
CS Fall 2016 (Shavlik©), Lecture 12, Week 6
Artificial Intelligence Chapter 4. Machine Evolution
EE368 Soft Computing Genetic Algorithms.
Genetic Programming Chapter 6.
Genetic Programming.
Genetic Programming Chapter 6.
Artificial Intelligence CIS 342
Genetic Programming Chapter 6.
Evolutionary Ensembles with Negative Correlation Learning
GENETIC PROGRAMMING BBB4003.
Using Bayesian Network in the Construction of a Bi-level Multi-classifier. A Case Study Using Intensive Care Unit Patients Data B. Sierra, N. Serrano,
Steady state Selection
Beyond Classical Search
Presentation transcript:

Optimization and Learning via Genetic Programming AI Project #2 Biointelligence lab Cho, Dong-Yeon (dycho@bi.snu.ac.kr)

Optimization of Boolean Functions (1/2) Parity Functions Even-2 Parity Function set F = {AND, OR, NAND, NOR} Terminal set T = {D0, D1} Fitness function The number of fitness cases for which the individual is incorrect OR D0 D1 Out 1 NOR AND D1 D0 D0 D1 © 2005 SNU CSE Biointelligence Lab

Optimization of Boolean Functions (2/2) IF 6-Multiplexer 2 address bits, 4 data bits Function set F = {AND, OR, NOT, IF} Terminal set T = {A0, A1, D0, D1, D2, D3} Fitness function The number of fitness cases for which the individual is incorrect IF AND D3 D0 D1 Out IF A0 A1 A0 D1 D2 D3 A1 D2 D0 A0 A1 © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Learning a Classifier Pima Indian Diabetes Functions Numerical and condition operators {+, -, *, /, exp, log, sin, cos, sqrt, iflte ifltz, …} Some operators should be protected from the illegal operation. Terminals Input features and constants {x0, x1, … x7, R} where R  [a, b] Additional parameters Threshold value For normalization © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Cross Validation (1/3) K-fold Cross Validation The data set is randomly divided into k subsets. One of the k subsets is used as the test set and the other k-1 subsets are put together to form a training set. D1 D2 D3 D4 D5 D6 128 128 128 128 128 128 D1 D2 D3 D4 D6 D5 128 128 128 128 128 128 D2 D3 D4 D5 D6 D1 128 128 128 128 128 128 © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Cross Validation (2/3) Calculation of the error Confusion Matrix True Predict Positive Negative © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Cross Validation (3/3) Cross validation and Confusion Matrix At least 10 runs for your k value. Show the confusion matrix for the best result of your experiments. Run Test Error 1 2  10 Average © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Initialization Maximum initial depth of trees Dmax is set. Full method (each branch has depth = Dmax): nodes at depth d < Dmax randomly chosen from function set F nodes at depth d = Dmax randomly chosen from terminal set T Grow method (each branch has depth  Dmax): nodes at depth d < Dmax randomly chosen from F  T nodes at depth d = Dmax randomly chosen from T Common GP initialisation: ramped half-and-half, where grow and full method each deliver half of initial population © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Selection (1/2) Fitness proportional (roulette wheel) selection The roulette wheel can be constructed as follows. Calculate the total fitness for the population. Calculate selection probability pk for each chromosome vk. Calculate cumulative probability qk for each chromosome vk. © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Procedure: Proportional_Selection Generate a random number r from the range [0,1]. If r  q1, then select the first chromosome v1; else, select the kth chromosome vk (2 k  pop_size) such that qk-1 < r  qk. pk qk 1 0.082407 2 0.110652 0.193059 3 0.131931 0.324989 4 0.121423 0.446412 5 0.072597 0.519009 6 0.128834 0.647843 7 0.077959 0.725802 8 0.102013 0.827802 9 0.083663 0.911479 10 0.088521 1.000000 © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Selection (2/2) Tournament selection Tournament size q Ranking-based selection 2    POP_SIZE 1  +  2 and - = 2 - + © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab GP Flowchart GA loop GP loop © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab 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 © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Experiments Two optimization problems Parity Even(odd)-3, Even(odd)-4, Even(odd)-5, … 11-multiplexer 3 address bits, 8 data bits One classification problems Pima Indian diabetes Cross validation Various experimental setup Termination condition: maximum_generation Each setting  10 runs Effects of the penalty term Selection methods and their parameters Different function and terminal sets Crossover and mutation probabilities … © 2005 SNU CSE Biointelligence Lab

Results For each problem Result table and your analysis Present the optimal function. Compare with the results of neural networks Draw a learning curve for the run where the best solution was found. Training (optimization) Test (classification) Average  SD Best Worst Setting 1 Setting 2 Setting 3 © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Fitness (Error) Generation © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab References Source Codes GP libraries (C, C++, JAVA, …) MATLAB Tool box Web sites http://www.cs.bham.ac.uk/~cmf/GPLib/GPLib.html http://cs.gmu.edu/~eclab/projects/ecj/ http://www.geneticprogramming.com/GPpages/software.html … © 2005 SNU CSE Biointelligence Lab

© 2005 SNU CSE Biointelligence Lab Pay Attention! Due: Nov. 1, 2005 Submission Source code and executable file(s) Proper comments in the source code Via e-mail Report: Hardcopy!! Running environments Results for many experiments with various parameter settings Analysis and explanation about the results in your own way © 2005 SNU CSE Biointelligence Lab