Nature-Inspired Computation General Intro to the Course and Intro to Evolutionary Algorithms David Corne Martyn Amos Pier Frisco.

Slides:



Advertisements
Similar presentations
Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
Advertisements

Genetic Algorithms Genetic Programming Ata Kaban School of Computer Science University of Birmingham 2003.
Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is lecture three of `Biologically Inspired Computing’ Contents: EA intro.
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Bio-Inspired Optimization. Our Journey – For the remainder of the course A brief review of classical optimization methods The basics of several stochastic.
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Institute of Intelligent Power Electronics – IPE Page1 Introduction to Basics of Genetic Algorithms Docent Xiao-Zhi Gao Department of Electrical Engineering.
Biologically Inspired Computing: Selection and Reproduction Schemes This is DWC’s lecture three `Biologically Inspired Computing’
1 Wendy Williams Metaheuristic Algorithms Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and.
Genetic Algorithms. Some Examples of Biologically Inspired AI Neural networks Evolutionary computation (e.g., genetic algorithms) Immune-system-inspired.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Evolutionary Computation Introduction Peter Andras s.
Introduction to Genetic Algorithms Yonatan Shichel.
Evolutionary Algorithms Simon M. Lucas. The basic idea Initialise a random population of individuals repeat { evaluate select vary (e.g. mutate or crossover)
Genetic Algorithms Learning Machines for knowledge discovery.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Tutorial 1 Temi avanzati di Intelligenza Artificiale - Lecture 3 Prof. Vincenzo Cutello Department of Mathematics and Computer Science University of Catania.
Evolutionary Computation Application Peter Andras peter.andras/lectures.
Introduction to Computational Intelligence (Evolutionary Computation) Evolutionary Computation is the field of study devoted to the design, development,
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
CS 447 Advanced Topics in Artificial Intelligence Fall 2002.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Genetic Algorithms: A Tutorial
Evolutionary Computation Instructor: Shu-Mei Guo Nature Inspired Algorithmic Techniques.
Genetic Algorithm.
Evolutionary Intelligence
© Negnevitsky, Pearson Education, CSC 4510 – Machine Learning Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University.
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Introduction to Genetic Algorithms and Evolutionary Computation
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
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
1 Genetic Algorithms “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations.
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.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
GENETIC ALGORITHM A biologically inspired model of intelligence and the principles of biological evolution are applied to find solutions to difficult problems.
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Artificial Intelligence Chapter 4. Machine Evolution.
2005MEE Software Engineering Lecture 11 – Optimisation Techniques.
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.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is lecture two of `Biologically Inspired Computing’ Contents: EA intro.
Evolution strategies Chapter 4. A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Evolution Strategies ES quick overview Developed: Germany.
1. Genetic Algorithms: An Overview  Objectives - Studying basic principle of GA - Understanding applications in prisoner’s dilemma & sorting network.
CITS7212: Computational Intelligence An Overview of Core CI Technologies Lyndon While.
Biologically Inspired Computing: Introduction to Evolutionary Algorithms This is a lecture three of `Biologically Inspired Computing’ Contents: EA intro.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
CAP6938 Neuroevolution and Artificial Embryogeny Evolutionary Comptation Dr. Kenneth Stanley January 23, 2006.
Advanced AI – Session 6 Genetic Algorithm By: H.Nematzadeh.
Genetic Algorithms. Solution Search in Problem Space.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
George Yauneridge.  Machine learning basics  Types of learning algorithms  Genetic algorithm basics  Applications and the future of genetic algorithms.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Introduction to Genetic Algorithms
Genetic Algorithms.
Evolutionary Algorithms Jim Whitehead
Evolution Strategies Evolutionary Programming
Artificial Intelligence Methods (AIM)
Artificial Intelligence Chapter 4. Machine Evolution
Artificial Intelligence Chapter 4. Machine Evolution
Presentation transcript:

Nature-Inspired Computation General Intro to the Course and Intro to Evolutionary Algorithms David Corne Martyn Amos Pier Frisco

What Nature-Inspired Computation is Pattern recognition techniques based (loosely) on how brains and nervous systems work Pattern recognition techniques (of a different kind) based (loosely) on how natural immune systems work Problem solving/design/optimisation techniques based (loosely) on how natural evolution works Problem solving techniques based on how ant colonies operate. Problem solving techniques based on natural swarm behaviour General computation techniques based on how biological cells operate

But why?? The nature-inspired techniques generally work much better than what came before! E.g. artificial neural networks are generally more successful than the classical `statistical’ methods for pattern recognition. Artificial immune system methods are better at spotting potential threats than classical rule-based monitoring methods. Finally, evolutionary algorithms are much better than standard optimisation methods on a very large range of difficult problems.

The Course Weeks 1—3 Evolutionary Algorithms 1-intro, 2-different EAs, 3-theory, 4-applications, 5-hybridisation, 6-co-evolution Weeks 4 and 6 Immune Systems Methods 7-the natural IS, 8-basics of AIS, 9-early AIS systems, 10-applications Weeks 7 and 8 Swarm Intelligence 11-Ant colony optimization I, 12-ACO 2, 13 Particle Swarm Optimization, 14, PSO 2. Week 9 Neural Networks 15 Overview Associative nets and MLPs, 16 Spiking NNs Week 11 Membrane Computing 17 Membranes, the basic model, 18 Different types of membrane system Week 12 Artificial Life 19 Cellular Automata, 20 L Systems

Coursework CA1: Implement an evolutionary algorithm to solve a straightforward optimisation problem 20% CA2: Prepare a talk (12—15 slides) about applications of Artificial Immune Systems 10%

Introduction to Evolutionary Computation Natural Evolution Search and Optimisation Hillclimbing / Gradient descent Local Search Population-Based Algorithms (i.e. Evolutionary Algorithms) Advantages and Disadvantages of EAs Applications of EAs Reading Material and Resources

Natural Evolution as a Problem Solving Method We seem to have evolved from tiny stuff in the sea. How??? The theory is: given: 1. a population of organisms which have a lifetime and which can reproduce in a challenging/changing environment 2. a way of continually generating diversity in new `child’ organisms A `survival of the fittest principle will naturally emerge: organisms which tend to have healthy, fertile children will dominate (I.e. their descendents will).

Evolution/Survival of the Fittest In particular, any new mutation that appears in a child (e.g. longer neck, longer legs, thicker skin, longer gestation period, bigger brain, light-sensitive patch on the skin, a harmless `loose’ bone, etc etc) and which helps it in its efforts to survive long enough to have children, will become more and more widespread in future generations. 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 niches, as a result of different environments favouring different mutations.

Evolution as Problem Solving Here’s a problem: Design a material for the soles of boots that can help you walk up a smooth vertical brick wall We haven’t solved this, but nature has: Geckos

Evolution as a Problem Solving Method Can view evolution as a way of solving the problem: How can I 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 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 two vital 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: 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: It can sometimes help to use recombination of two or more `parents’ – I.e. generate new candidate solutions by combining bits and pieces from different previous solutions.

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 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). 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.

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 Most concerned with: How to select? Always select the best? Bad results, quickly Select almost randomly? Great results, too slowly How to encode? Can make all the difference, and 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 given cost 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 data mining or 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.

More like selective breeding than natural evolution Time

Every Evolutionary Algorithm Given a problem to solve, a way to generate candidate solutions, and a way to assign fitness values: Generate and evaluate a population of candidate solutions Select a few of them Breed the selected ones to obtain some new candidate solutions, and evaluate them Throw out some of the population to make way for some of the new children. 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

The Evolutionary Computation Fossil Record The first published ideas using evolution in optimisation came in the 50s. But the lineage of current algorthms is like this: Rechenberg, Berlin, Evolutionsstrategie Holland, Michigan Classifier Systems, Genetic plans Fogel, San Diego Evolutionary Programming Goldberg, Michigan Genetic Algorithms Koza, Stanford Genetic Programming Parmee, Eng. design Savic, Walters, Water systems Ross, Corne, logistics Fleming, control systems 60s 80s 90s An intellectual curiosity A gift from Heaven

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) running Result A recurring theme: design freedom  entirely new and better designs based on principles we don’t yet understand.

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