Case Study: Genetic Algorithms GAs are an area of AI research –used to solve search problems with potentially better performance than traditional search.

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

Algorithm Design Techniques
Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
Biologically Inspired Computing: Operators for Evolutionary Algorithms
Genetic Algorithms (Evolutionary Computing) Genetic Algorithms are used to try to “evolve” the solution to a problem Generate prototype solutions called.
CS6800 Advanced Theory of Computation
Tetris and Genetic Algorithms Math Club 5/30/2011.
For Friday Finish chapter 5 Program 1, Milestone 1 due.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Genetic Algorithms Representation of Candidate Solutions GAs on primarily two types of representations: –Binary-Coded –Real-Coded Binary-Coded GAs must.
Content Based Image Clustering and Image Retrieval Using Multiple Instance Learning Using Multiple Instance Learning Xin Chen Advisor: Chengcui Zhang Department.
Genetic Algorithms. Some Examples of Biologically Inspired AI Neural networks Evolutionary computation (e.g., genetic algorithms) Immune-system-inspired.
Evolutionary Computational Intelligence
Evolutionary Computation Introduction Peter Andras s.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
Genetic Algorithms GAs are one of the most powerful and applicable search methods available GA originally developed by John Holland (1975) Inspired by.
Iterative Improvement Algorithms
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
Iterative Improvement Algorithms For some problems, path to solution is irrelevant: just want solution Start with initial state, and change it iteratively.
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.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Universidad de los Andes-CODENSA The Continuous Genetic Algorithm.
Evolutionary algorithms
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Genetic algorithms Prof Kang Li
Schemata Theory Chapter 11. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Theory Why Bother with Theory? Might provide performance.
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.
By Prafulla S. Kota Raghavan Vangipuram
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Genetic Algorithms Michael J. Watts
Genetic algorithms Charles Darwin "A man who dares to waste an hour of life has not discovered the value of life"
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms Introduction Advanced. Simple Genetic Algorithms: Introduction What is it? In a Nutshell References The Pseudo Code Illustrations Applications.
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.
Today’s Topics Read –For exam: Chapter 13 of textbook –Not on exam: Sections & Genetic Algorithms (GAs) –Mutation –Crossover –Fitness-proportional.
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
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.
Learning by Simulating Evolution Artificial Intelligence CSMC February 21, 2002.
Evolution Programs (insert catchy subtitle here).
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman.
MAE 552 Heuristic Optimization Instructor: John Eddy Lecture #12 2/20/02 Evolutionary Algorithms.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
GENETIC ALGORITHM Basic Algorithm begin set time t = 0;
In the name of ALLAH Presented By : Mohsen Shahriari, the student of communication in Sajad institute for higher education.
N- Queens Solution with Genetic Algorithm By Mohammad A. Ismael.
Neural Networks And Its Applications By Dr. Surya Chitra.
The Standard Genetic Algorithm Start with a “population” of “individuals” Rank these individuals according to their “fitness” Select pairs of individuals.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms. Underlying Concept  Charles Darwin outlined the principle of natural selection.  Natural Selection is the process by which evolution.
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
GENETIC ALGORITHM By Siti Rohajawati. Definition Genetic algorithms are sets of computational procedures that conceptually follow steps inspired by the.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
Introduction to Genetic Algorithms
Genetic Algorithms.
Genetic Algorithms GAs are one of the most powerful and applicable search methods available GA originally developed by John Holland (1975) Inspired by.
Case Study: Genetic Algorithms
Example: Applying EC to the TSP Problem
Biologically Inspired Computing: Operators for Evolutionary Algorithms
Presentation transcript:

Case Study: Genetic Algorithms GAs are an area of AI research –used to solve search problems with potentially better performance than traditional search problem –also possibly used as a form of learning In an AI search problem, you have a search space –search space is the space of possible solutions, for instance in chess, it would be all possible board configurations in design it would be all of the possible components available to build the device along with all the possible ways to configure them –often, AI problems require a brute-force search, but sometimes a heuristic is available to help guide the search in chess, we use a function based on the worth of each piece and the strategy of moving them into certain board locations to see if a move is worth pursuing or not in design, we might rate components based on their utility, cost, weight, and their configurations based on how easy it is to get to a component –the guided search, known as heuristic search, is still intractable (for n moves, there are 2 n board configurations) GAs are an attempt to get around that problem

Search Using Randomness Assume we are searching for the proper values to place into a list –(a b c d e f) – each of these represents something meaningful for instance a = number of nails to use, b = number of boards to use, c = number of wall outlets, d = number of windows, etc Assume we have a function that can take a vector (or list) and tell us approximately how good it is –I can try to generate all possible combinations of vectors but that is intractable –now consider many vectors are probably worthless –if I can identify a worthless vector, I probably wouldn’t want to use any variations of that vector –similarly, if I find a good but not great vector, I might try variations of it What is a variation? –Some minor but random change to the original (a b c d e f) becomes (a b d c e f) or (a’ b c d e f) where a’ is 1 greater or less than a

Inspired by Natural Selection GAs get their names because they are an attempt to mimic the evolutionary process of genetic material –Our vector represents a chromosome –We start with a population of chromosomes that we will breed –The children will be made up of much the same genetic material as their parents (that is, the children’s chromosomes will be very similar to the parents’ chromosomes) but there will be some variations: –possible mutations – a particular gene mutates, perhaps for the better, perhaps for the worse –possible cross-overs – one child might inherit the genes and another worse genes –Now we use natural selection we pick only a subset of children, which are the fittest to survive, and use them to be parents of a new generation to determine the fitness of a child, we need a fitness function –We iterate through many generations, hopefully moving our genes towards a solution guided by our fitness function

General Procedure for GAs Unrated Fitness Rated PopulationFunctionPopulation MutationSelection OperationsFunction Population ofReproductionPopulation of Parent CopiesFunctionParents Starting with a base population of parents, mutate them into children, rate the children with the fitness function, select from the children those to go on to the next generation Notice that they take efforts to make copies, these steps can be skipped if we don’t mind working with the original parents

Requirements We need to be able to express our problem as a vector –the vector will be the set of attributes whose values we want to assign or learn consider that we want to make a better chocolate chip cookie, our vector might include the amount of flour, sugar, salt, water and chocolate chips that we will put into our mixture We need a fitness function to evaluate the children –for a cookie, we might ask humans to eat the cookies and rate them, this of course means that our evolutionary process is greatly slowed down We need to know how to mutate our parents into new children –cross-over, point mutation, inversion We need to know how many children to generate –such decisions might dictate how quickly or slowly we reach a solution

Vectors Vectors represent features (attributes) –they could be binary values (a, b, c, d, e) where a=fever?, b=soreness?, c=achyeyes? d=runny nose?, e=coughing? we might wish to learn a concept like flu –start with (0, 0, 0, 0, 0) (no symptoms) and learn that this is not the flu –eventually we may learn that flu can be represented by the vector (1, 1, 1, ?, ?) (? means don’t care what the value is) –vectors might store integer values –vectors might contain a mixture of values, in which case we have to be careful when doing things like cross-over consider an animal vector (a, b, c, d, e, f) where a=height, b=weight, c=# of legs, d=color, e=shape and f=tail?) –elephant=(4’, 2000 lbs, 4, grey, round, y) –mouse=(3”, 2 lbs, 4, grey, round, y) –dog=(1’, 20 lbs, 4, varies, long, y)

Natural Selection Methods Evolutionary mechanisms are –Inversion - moving around features in the vector such as reversing 3 features –Point mutation - changing a feature’s value to another value (in binary vectors, simply complementing the bit, in multi- valued vectors, requires random selection of a new value) –Crossover – using two parents and swapping portions of their two chromosomes The choice of which mechanism to use is made randomly, and the choice of how/where to apply it is made randomly Natural Selection mechanisms include –Fitness Ranking - use a fitness function to select the best available vector (or vectors) and use it (them) –Rank Method - use the fitness function but do not select the “best”, use probabilities instead –Random Selection - in addition to the top vector(s), some approaches randomly select some number of vectors from the remaining, lesser ranked ones –Diversity - determine which vectors are the most diverse from the top ranked one(s) and select it (them)

Choices/Diversity How many vectors should make up the population of one generation? –if too low, vectors will be the same or similar to previous generations –if too high, computation time may be too long What is the mutation rate? –If too low, changes will occur infrequently, if too high, there is no guided search Is mating allowed? Are duplicate vectors allowed? Based on the idea that diversity helps promote survival, it might also be reasonable to select vectors which are most diverse from other selections Select the first vector(s) for the new generation using the rank or fitness method Select the remaining vector(s) by finding one(s) most diverse with those already chosen