Evolutionary Algorithms Nicolas Kruchten 4 th Year Engineering Science Infrastructure Option.

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

Computational Intelligence Winter Term 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering (LS 11) Fakultät für Informatik TU Dortmund.
Constraint Optimization We are interested in the general non-linear programming problem like the following Find x which optimizes f(x) subject to gi(x)
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Student : Mateja Saković 3015/2011.  Genetic algorithms are based on evolution and natural selection  Evolution is any change across successive generations.
CSM6120 Introduction to Intelligent Systems Evolutionary and Genetic Algorithms.
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Institute of Intelligent Power Electronics – IPE Page1 Introduction to Basics of Genetic Algorithms Docent Xiao-Zhi Gao Department of Electrical Engineering.
1 Wendy Williams Metaheuristic Algorithms Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Evolutionary Computational Intelligence
Optimization via Search CPSC 315 – Programming Studio Spring 2009 Project 2, Lecture 4 Adapted from slides of Yoonsuck Choe.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Genetic Programming. Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of.
Optimization via Search CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 4 Adapted from slides of Yoonsuck Choe.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Universidad de los Andes-CODENSA The Continuous Genetic Algorithm.
Genetic Algorithms: A Tutorial
A l a p a g o s : a generic distributed parallel genetic algorithm development platform Nicolas Kruchten 4 th year Engineering Science (Infrastructure.
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Ranga Rodrigo April 6, 2014 Most of the sides are from the Matlab tutorial. 1.
Genetic Algorithm.
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.
Optimization in Engineering Design Georgia Institute of Technology Systems Realization Laboratory Mixed Integer Problems Most optimization algorithms deal.
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
Genetic Algorithms Genetic algorithms imitate a natural optimization process: natural selection in evolution. Developed by John Holland at the University.
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
1 Machine Learning: Lecture 12 Genetic Algorithms (Based on Chapter 9 of Mitchell, T., Machine Learning, 1997)
Chapter 4.1 Beyond “Classic” Search. What were the pieces necessary for “classic” search.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
FINAL EXAM SCHEDULER (FES) Department of Computer Engineering Faculty of Engineering & Architecture Yeditepe University By Ersan ERSOY (Engineering Project)
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.
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
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.
Chapter 9 Genetic Algorithms.  Based upon biological evolution  Generate successor hypothesis based upon repeated mutations  Acts as a randomized parallel.
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
A l a p a g o s : a generic distributed parallel genetic algorithm development platform Nicolas Kruchten 4 th year Engineering Science (Infrastructure.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
Local Search. Systematic versus local search u Systematic search  Breadth-first, depth-first, IDDFS, A*, IDA*, etc  Keep one or more paths in memory.
Selection and Recombination Temi avanzati di Intelligenza Artificiale - Lecture 4 Prof. Vincenzo Cutello Department of Mathematics and Computer Science.
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. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Evolutionary Algorithms Jim Whitehead
Evolution Strategies Evolutionary Programming
C.-S. Shieh, EC, KUAS, Taiwan
Advanced Artificial Intelligence Evolutionary Search Algorithm
CS621: Artificial Intelligence
Genetic Algorithms: A Tutorial
Boltzmann Machine (BM) (§6.4)
Beyond Classical Search
Genetic Algorithms: A Tutorial
Presentation transcript:

Evolutionary Algorithms Nicolas Kruchten 4 th Year Engineering Science Infrastructure Option

What are they? EAs are stochastic techniques used to search multidimensional spaces for points, according to some criteria. They operate by mimicking reproduction & selection processes More on this in a bit…

What are they good for? EAs are used to solve optimization problems of various types: Find the vector x such that f(x) is min or max A huge variety of engineering or science problems can be reduced to, or expressed as, optimization problems

A black-box example Say you have a black box, with n knobs, and a light bulb, what set of knob positions will make the bulb glow brightest?

What if… n=1? n=10000? knobs are continuous? discrete? mixed? some combinations are invalid? (i.e. knob 1 must be less than knob 2) an analytical expression exists?

Traditional methods Direct Calculus Gradient descent or hill climbing Frank Wolfe (!) Simplex Simulated Annealing SPSA Etc.

Unfortunately they… Sometimes simply dont apply Only work for specific problems Dont scale well (NP-Hard, NP-Complete) Get trapped in local optima

EAs… Dont have all of these problems Scale reasonably well Work for a huge variety of problems Dont require gradients but can use them

How EAs work 1)Pick a population of feasible points 2)Generate new points from the better ones 3)Throw out the worse ones 4)Thats one generation: rinse & repeat Lo and behold! The points in your population are getting better and better!

Back to our example Our feasible points were sets of knob positions, we call these chromosomes Individual knob positions are genes The brightness we call the fitness, were looking for chromosomes with good fitness

How to get new points This is where the genetic comes in Given some parent chromosomes, how do we mix them up and get a child? Various schemes are possible depending on how we represent the parents (binary, real, integer etc)

Mutation If we only ever blend or mix and match genes, we can only ever explore combinations of our initial gene pool To explore new parts and find new optima, we periodically change, or mutate, genes. Again, various processes are possible.

Which parents to use Various schemes exist for selection: –Pick the best ones –Pick random ones –Pick them based on relative fitness –Pick them based on relative rank –Pick them based on how different they are –etc

Which points to keep Various schemes exist to decide which children and/or parents to keep at each generation –Keep only the children –Select from a pool of children and parents Best Random Rank Fitness, etc

When to stop You can stop an EA whenever is appropriate, but typical convergence criteria include: –A number of generations –A given standard deviation of fitnesses –A period of time –Total convergence –Etc.

Putting it all together Let t = 0; Initialize P(t) Evaluate C(t) Let t = t + 1; Assemble P(t) from P(t-1) and C(t-1) Stop? no End yes Evaluate P(t) Generate C(t) from P(t)

EA Limitations EAs are extremely flexible, but they have their own problems: –Can be very slow, requiring many potentially long evaluations –Are tough to design and configure, many many parameters –No guarantee of global optimum

Some history You may have heard of GAs, which are a subset of EAs Much confusion and conflicting terminology exists A huge body of operators, combinations and approaches have been proposed

Evolutionary Programming Traditional: –Credited to Fogel, US, published in 66 –Single parents (so not genetic) –Basically pure mutation Since then: –EP approaches themselves mutated independently towards general EA practice

Evolutionary Strategies Traditional: –Credited to Rechenberg and Schwefel, Switzerland, published in 73 –Tiny populations (1 or 2) –Sophisticated adaptive mutation scheme Since then: –Adaptive mutation has gone mainstream

Genetic Algorithms Traditional: –Credited to Holland, US, published in 72 –Binary coding –Keep only the children Since then: –Has grown to be loosely interchangable with EA, with real-coded GA, crowding GA etc

State of the art No hard and fast rules about the best EA flavour for a given problem Some heuristics exist EAs have been successfully applied to many problems in various fields, but with few general results

Advanced EAs Parallelization Distribution –Master/Slave –Peered Demes (see parallelization) –Hybrid Hybridization

ITS Applications Model calibration is a great example of a challenging transportation-related optimization: Minimize an error term by varying some model parameters

ITS Example: GAID Genetic Adaptive Incident Detection Use of a GA to train a neural network: perfect example of ANN + EA = ITS The problem: automatically detecting incidents on the freeway, using traffic loop data

GAID: Basics GAID uses a probabilistic neural network (PNN) which takes 16d vectors and classifies them into two piles Traffic loop data -> incident/normal The PNN is defined by 16 parameters

GAID: Diagram PNN = f(parameters) Loop Data Incident Normal 16 Parameters EA

GAID: Fitness Fitness: correct classifications/number of vectors We quiz the PNN with known data to score it We are looking for the set of 16 real parameters which make GAID the most accurate

GAID: Initialization Initialization: –Pick population size: 50 –Pick 50 random sets of 16 real parameters between 0 and 1000 –Score the chromosomes

GAID: Generation Generation: –Pick the child population (generation) size: 50 –Select 2 parents at random –Each child gene is either mom or dads –Mutate every gene: add some uniformly distributed random number between -50 and 50 –Score the children

GAID: 2d view

One alternative

GAID: Assembly Assembly of children and parents: –Choose the 50 best from the combined pool of children and parents Convergence: repeat, stopping when the STD is less than 0.005

GAID: Summary Real representation, 16 genes Popsize = Gensize = 50 Random Initialization 2 parents, random selection real crossover, creep mutation on all genes Crowding assembly, best selection STD convergence