Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is lecture two of `Biologically Inspired Computing’ Contents: EA intro.

Slides:



Advertisements
Similar presentations
CS6800 Advanced Theory of Computation
Advertisements

Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Biologically Inspired Computation Really finishing off EC.
Tetris – Genetic Algorithm Presented by, Jeethan & Jun.
Tetris and Genetic Algorithms Math Club 5/30/2011.
Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is lecture three of `Biologically Inspired Computing’ Contents: EA intro.
CW1. There follow three example slides (of the kind I expect you to submit), and then a description of the coursework.
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)
21-May-15 Genetic Algorithms. 2 Evolution Here’s a very oversimplified description of how evolution works in biology Organisms (animals or plants) produce.
Biologically Inspired Computing: Selection and Reproduction Schemes This is DWC’s lecture three `Biologically Inspired Computing’
Genetic Algorithms. Some Examples of Biologically Inspired AI Neural networks Evolutionary computation (e.g., genetic algorithms) Immune-system-inspired.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
Introduction to Genetic Algorithms Yonatan Shichel.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
7/2/2015Intelligent Systems and Soft Computing1 Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Nature-Inspired Computation General Intro to the Course and Intro to Evolutionary Algorithms David Corne Martyn Amos Pier Frisco.
Genetic Algorithm.
Evolutionary Intelligence
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
A Comparison of Nature Inspired Intelligent Optimization Methods in Aerial Spray Deposition Management Lei Wu Master’s Thesis Artificial Intelligence Center.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Genetic algorithms Prof Kang Li
Optimization in Engineering Design Georgia Institute of Technology Systems Realization Laboratory Mixed Integer Problems Most optimization algorithms deal.
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
HOW TO MAKE A TIMETABLE USING GENETIC ALGORITHMS Introduction with an example.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
Evolving Virtual Creatures & Evolving 3D Morphology and Behavior by Competition Papers by Karl Sims Presented by Sarah Waziruddin.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
A New Evolutionary Approach for the Optimal Communication Spanning Tree Problem Sang-Moon Soak Speaker: 洪嘉涓、陳麗徽、李振宇、黃怡靜.
Algorithms and their Applications CS2004 ( ) 13.1 Further Evolutionary Computation.
Learning by Simulating Evolution Artificial Intelligence CSMC February 21, 2002.
 Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms n Introduction, or can evolution be intelligent? n Simulation.
1 Genetic Algorithms K.Ganesh Introduction GAs and Simulated Annealing The Biology of Genetics The Logic of Genetic Programmes Demo Summary.
ECE 103 Engineering Programming Chapter 52 Generic Algorithm Herbert G. Mayer, PSU CS Status 6/4/2014 Initial content copied verbatim from ECE 103 material.
1. Genetic Algorithms: An Overview  Objectives - Studying basic principle of GA - Understanding applications in prisoner’s dilemma & sorting network.
Waqas Haider Bangyal 1. Evolutionary computing algorithms are very common and used by many researchers in their research to solve the optimization problems.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is a lecture three of `Biologically Inspired Computing’ Contents: EA intro.
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.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
The inference and accuracy We learned how to estimate the probability that the percentage of some subjects in the sample would be in a given interval by.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
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.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Chapter 14 Genetic Algorithms.
Genetic Algorithms.
Evolutionary Algorithms Jim Whitehead
Evolution Strategies Evolutionary Programming
Artificial Intelligence Methods (AIM)
`Biologically Inspired Computing’
Example: Applying EC to the TSP Problem
CW1.
CW1.
Dr. Unnikrishnan P.C. Professor, EEE
Searching for solutions: Genetic Algorithms
Biologically Inspired Computing: Operators for Evolutionary Algorithms
Presentation transcript:

Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is lecture two of `Biologically Inspired Computing’ Contents: EA intro

Introduction to Evolutionary Computation Natural Evolution Evolutionary Algorithms Applications of EAs

Natural Evolution as a Problem Solving Method The theory is: given: a population of organisms that can reproduce (generate new organisms) in a challenging/changing environment (… their chances of reproduction depends on how well they cope with their environment) a way of continually generating diversity in new `child’ organisms (so –new organisms are not simply copies of old ones) A `survival of the fittest’ principle will naturally emerge: future generations will have mixes of characteristics that tend to go along with being good at surviving in this environment.

Giraffes Ears

Evolution/Survival of the Fittest The theory of evolution is the statement that all species on Earth have arisen in this way by evolution from one or more very simple self-reproducing molecules in the primeval soup. I.e. we have evolved via the accumulation of countless advantageous (in context) mutations over countless generations, and species have diversified to occupy environmental niches, as a result of different environments favouring different mutations.

Evolving humans radiotherapy treatment plans

Evolving humans lecture timetables

Evolution as an Optimization Method Can view evolution as a way of solving the problem: How can I best survive in this environment? The basic method of it is trial and error. I.e. evolution is in the family of methods that do something like this: 1. Come up with a new solution by randomly changing an old one. Does it work better than previous solutions? If yes, keep it and throw away one of the old ones. Otherwise, discard it. 2. Go to 1. But this appears to be a recipe for problem solving algorithms which take forever, with little or no eventual success!

The Magic Ingredients Not so – since there are certain things (and one other sometimes useful thing) we learn from natural evolution, which, with a sprinkling of our own commonsense added, lead to generally superb problem solving methods called evolutionary algorithms: Lesson0: Natural evolution is driven by a complex environment – essentially this calculates an organism’s ‘fitness’ over its lifetime. We can replace that with a much faster calculation! Lesson1: Keep a population/collection of different things on the go. Lesson2: Select `parents’ with a relatively weak bias towards the fittest. It’s not really plain survival of the fittest, what works is the fitter you are, the more chance you have to reproduce, and it works best if even the least fit still have some chance. Lesson3: Use randomised Mutation and/or Recombination (aka crossover) to generate new candidate solutions from the selected ‘parents’

A Generic Evolutionary Algorithm Suppose you have to find a solution to some problem or other, and suppose, given any candidate solution s you have a fitness function f(s) which measures how good s is as a solution to your problem. Generate an initial population P of randomly generated solutions (this is typically 100 or 500 or so). Use f(s) to evaluate the fitness of each. Then: Repeat until a termination condition is reached: 1.Selection: Choose some of P to be parents 2.Variation: Apply ‘genetic operators’ to the parents to produce some children, and then evaluate the fitness of the children. 3.Population update: Update the population P by retaining some of the children and removing some of the incumbents.

Simple demo of power of selection+mutation

Basic Varieties of Evolutionary Algorithm 1.Selection: Choose some of P to be parents 2.Variation: Apply genetic operators … 3.Population update: Update the population P by … There are many different ways to select – e.g. choose top 10% of the population; choose with probability proportionate to fitness; choose randomly from top 20%, etc … There are many different ways to do this, and it depends much on the encoding (see next slide). We will learn certain standard ways. There are many several ways to do this, e.g. replace entire population with the new children; choose best |P| from P and the new ones, etc.

Some of what EA-ists (theorists and practitioners) are concerned with: How to select? Always select the best? Bad results, quickly Select almost randomly? Great results, too slowly How to encode? The ‘Encoding’ or ‘Representation’, is the approach used to specify specify a solution as a datastructure. This is intricately tied up with: How to vary? (mutation, recombination, etc…) small-step mutation preferred, recombination seems to be a principled way to do large steps, but large steps are usually abysmal. What parameters? How to adapt with time?

What are they good for ? Suppose we want the best possible schedule for a university lecture timetable. Or the best possible pipe network design for a ship’s engine room Or the best possible design for an antenna with given requirements Or a formula that fits a curve better than any others Or the best design for a comms network in terms of reliability for Or the best strategy for flying a fighter aircraft Or the best factory production schedule we can get, Or the most accurate neural network for a control problem, Or the best treatment plan (beam shapes and angles) for radiotherapy cancer treatment And so on and so on ….! The applications cover all of optimisation and machine learning.

Every Evolutionary Algorithm Given a problem to solve, a way to generate candidate solutions, and a way to assign fitness values: 1.Generate and evaluate a population of candidate solutions 2.Select a few of them 3.Breed the selected ones to obtain some new candidate solutions, and evaluate them 4.Throw out some of the population to make way for some of the new children. 5.Go back to step 2 until finished.

Initial population

Select

Crossover

Another Crossover

A mutation

Another Mutation

Old population + children

New Population: Generation 2

Generation 3

Generation 4, etc …

Fixed wheel positions, constrained bounding area, Chromosome is a series of slices \fitnesses evaluated via a simple airflow simulation Bentley.s thesis work

Buy it

One of the very first applications. Determine the internal shape of a two-phase jet nozzle that can achieve the maximum possible thrust under given starting conditions Ingo Rechenberg was the very first, with pipe- bend design. This is slightly later work in the same lab, by Schwefel Starting point EA (ES) runningResult A recurring theme: design freedom  entirely new and better designs based on principles we don’t yet understand.

CW1

There follow three example slides (of the kind I expect you to submit), and then a description of the coursework.

Scheduling Earth Observing Satellites with Evolutionary Algorithms Example EC Application An EOS fleet has specific observation & image capture targets and is subject to many constraints. This looks at two cases involving 1 and 2 satellites in fixed orbits Encoding: is a Permutation of ImageTasks – each is a specific area that must be observed once per day. A ‘scheduler’ routine then determines satellite ‘slews’ and other resources that have to be spent to achieve the requests in this order. Fitness: in these simple cases, fitness was a combination of penalties for (i) unmet ImageTasks, (ii) total time slweing (ii) sum of slew angles. Hence this measured meeting of target with minimal wear and tear and optimised image quality. Results: HC, SA and EA were compared on these simple cases; SA was found best. Also, they found combined scheduling was better than independent scheduling of each satellite in a fleet

Design of Reinforced Concrete Frames using a Genetic Algorithm Example EC Application Design dimensions and steel reinforcement params for structural beams meeting building constraints Encoding: simple list of numbers representing depth and height parameters, and number of placement of steel reinforcement sections. Fitness: calculated with standard equations used by standards bodies Results: They found that a simple GA worked adequately, leading to small reduction in structural costs while remaining safe and legal. Various test case scenarios looked at, including the six storey example on the right, inolving a set of RC elements

A genetic algorithm for 2D orthogonal packing Example EC Application Specific shapes (e.g. PVC, glass, plywood,...) have to be cut from sheet with minimal waste. E.g. wasteful & optimal solutions shown on right. Encoding: two permutations in each solution: (i) order of shapes (ii) order of plaement procedures – each of these is a choice from a small no. of simple heuristics.E.g. “BL” means close as poss to bottom left. Results: New technique does very well, compared with a wide range of approaches on the same roblems Tested on many benchmark probs with size ranging from 10—100 shapes. Paper focuses on new fitness function which considers the empty rectangular spaces, aiming to help direct search towards sols that can be more likely improved by mutation.

CW 1: BSc & 3 rd /4 th yr Meng Students Produce THREE slides, each briefly describing a different application of evolutionary computation (or another bio-inspired approach) on an optimization problem. The previous three slides are examples of the type of thing I am looking for. EACH SLIDE MUST: (i) contain a URL to a paper, thesis or other source that describes this application (ii) contain at least one graphic/figure (iii) simply and briefly explain key details of the problem, the encoding, the fitness function, and the findings in the paper. HOW MUCH I EXPECT FROM YOU: Use google scholar, or maybe just google, and use sensible and creative search keywords. Don’t go overboard in the time you spend on this – e.g. I did not read in detail the papers summarised in the previous 3 slides. I just tried to grab the key ideas, and make up a slide that simply conveys the gist of them. HAND IN: slide 1 by 23:59pm Sunday October 4 th I will give you marks and feedback by midnight October 18 th HAND IN: both slide 2 and slide 3 by 23:59pm Sunday October 25 th

CW 1: MSc and 5 th yr Meng Students Produce TWO SETS of slides, each set containing TWO slides. Each set of two slides will briefly describe the application of evolutionary computation (or other bio-inspired approaches) on a specific optimization problem of your choice. Each slide set will compare and contrast at least three different papers that solve the problem in different ways. The previous three slides are therefore NOT quite examples of the type of thing I am looking for. EACH SLIDE SET MUST CONTAIN On slide 1: (i) URLs to the three (or more) sources (paper, thesis or other sources) that describes an application to this problem (ii) a clear / succinct description/explanation of the problem (iii) at least one graphic/figure that helps explain the optimization problem On slide 2: (i) bullet points that describe, compare and contrast the encodings and operators used in the three papers. (ii) bullet points that compare and contrast the results and findings of the three papers. HAND IN: slide set 1 by 23:59pm Sunday October 4 th I will give you marks and feedback by midnight October 18 th HAND IN: slide set 2 by 23:59pm Sunday October 25 th

CW1: marking and handin BSc students: Each slide will get 0, 1, 2 or 3 marks. There will be an additional 0 or 1 mark added for the ‘diversity’ among your three applications. MSc and Meng 5 th yr students: The first slide (or slide set) will get 0, 1, 2, 3 or 4 marks. The second slide (or slide set) will get 0, 1, 2, 3, 4, 5 or 6 marks. When marking the second slide (or slide set) I will also take into account the difference between the two applications Marking will consider how well your slide text and graphics conveys the things I am asking for, considering clarity, succinctness and correctness. When marking the second slide (or slide set) I will also take into account the difference between the two applications – e.g. you will lose up to two marks if both slidesets are about the same optimization problem. To hand in, please each individual slide in a separate message, as follows: – send it to – include the slide (either ppt or pdf) as an attachment –put your (real) name and degree programme (e.g. BSc CS, MSc AI, whatevs) in the body of the –Make the subject line: “BIC CW1 Slides N”, where N is either 1, 2, or ‘2 and 3’

Some extra slides if time, illustrating some high-profile EAs An innovative EC- designed Propellor from Evolgics GmbH, Associated with Rechenberg’s group.

Evolving Top Gun strategies

NASA ST5 Mission had challenging requirements for antenna of 3 small spacecraft. EA designs outperformed human expert ones and are nearly spacebound. Credit Jason Lohn

Oh no, we knew something like this would happen Credit Jason Lohn