Evolutionary Design By: Dianna Fox and Dan Morris.

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

Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
Student : Mateja Saković 3015/2011.  Genetic algorithms are based on evolution and natural selection  Evolution is any change across successive generations.
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.
1 Wendy Williams Metaheuristic Algorithms Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and.
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
Genetic Algorithms1 COMP305. Part II. Genetic Algorithms.
Evolutionary Computational Intelligence
Introduction to Genetic Algorithms Yonatan Shichel.
Doug Downey, adapted from Bryan Pardo, Machine Learning EECS 349 Machine Learning Genetic Programming.
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.
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 Programming. Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of.
Genetic Algorithms: A Tutorial
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Genetic Algorithm.
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.
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Genetic Algorithms Michael J. Watts
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
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.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
Derivative Free Optimization G.Anuradha. Contents Genetic Algorithm Simulated Annealing Random search method Downhill simplex method.
Artificial Intelligence Chapter 4. Machine Evolution.
2005MEE Software Engineering Lecture 11 – Optimisation Techniques.
A New Evolutionary Approach for the Optimal Communication Spanning Tree Problem Sang-Moon Soak Speaker: 洪嘉涓、陳麗徽、李振宇、黃怡靜.
Chapter 9 Genetic Algorithms.  Based upon biological evolution  Generate successor hypothesis based upon repeated mutations  Acts as a randomized parallel.
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
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 Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
Selection and Recombination Temi avanzati di Intelligenza Artificiale - Lecture 4 Prof. Vincenzo Cutello Department of Mathematics and Computer Science.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 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.
Genetic Algorithm (Knapsack Problem)
Genetic Algorithm in TDR System
Dr. Kenneth Stanley September 11, 2006
Evolution Strategies Evolutionary Programming
Evolution strategies and genetic programming
School of Computer Science & Engineering
CSC 380: Design and Analysis of Algorithms
Artificial Intelligence Chapter 4. Machine Evolution
Genetic Algorithms: A Tutorial
GENETIC ALGORITHMS & MACHINE LEARNING
Genetic Algorithms Chapter 3.
Introduction to Artificial Intelligence Lecture 11: Machine Evolution
Artificial Intelligence Chapter 4. Machine Evolution
Searching for solutions: Genetic Algorithms
Traveling Salesman Problem by Genetic Algorithm
Beyond Classical Search
Population Based Metaheuristics
Genetic Algorithms: A Tutorial
CSC 380: Design and Analysis of Algorithms
Presentation transcript:

Evolutionary Design By: Dianna Fox and Dan Morris

Review 4 main types of Evolutionary Algorithms Genetic Algorithm - John Holland Genetic Programming - John Koza Evolutionary Programming - Lawerence Fogel Evolutionary Strategies - Ingo Rechenberg

Genetic Algorithms Most widely used Robust uses 2 separate spaces –search space - coded solution (genotype) –solution space - actual solutions (phenotypes) Genotypes must be mapped to phenotypes before the quality or fitness of each solution can be evaluated

Genetic Programming Specialized form of GA Manipulates a very specific type of solution using modified genetic operators Original application was to design computer program Now applied in alternative areas eg. Analog Circuits Does not make distinction between search and solution space. Solution represented in very specific hierarchical manner.

Evolutionary Strategies Like GP no distinction between search and solution space Individuals are represented as real-valued vectors. Simple ES –one parent and one child –Child solution generated by randomly mutating the problem parameters of the parent. Susceptible to stagnation at local optima

Evolutionary Strategies (cont’d) Slow to converge to optimal solution More advanced ES –have pools of parents and children Unlike GA and GP, ES – Separates parent individuals from child individuals –Selects its parent solutions deterministically

Evolutionary Programming Resembles ES, developed independently Early versions of EP applied to the evolution of transition table of finite state machines One population of solutions, reproduction is by mutation only Like ES operates on the decision variable of the problem directly (ie Genotype = Phenotype) Tournament selection of parents –better fitness more likely a parent –children generated until population doubled in size –everyone evaluated and the half of population with lowest fitness deleted.

General Idea of Evolutionary Algorithms

Evolutionary Art Computer Evolution of Buildable Objects

Evolutionary Art Stephen Todd and William Latham built artistic system called “Mutator” Computer program based on mutation and natural selection to help an artist explore the world of three dimensional art forms. Produces horns, pumpkins, shells, mathematical shapes and many other shapes

Computer Evolution of Buildable Objects Project of Pablo Funes and Jordan Pollack Taken from from

Project Details Used computers to generate 2-D and 3-D objects in simulation that would perform correctly in the real world. Used miniature plastic bricks (commonly known as Lego) to build and test the designs

Why use Lego? Can easily build cheap and handy structures Have a property which simplifies the experiment and eases design consideration What property? “The resistance of Lego blocks far surpasses the force necessary to either join two of them together or break their unions.”

Simplification of Model To simplify the model, only the ‘fulcrum’ effect acting on a pair of Lego blocks was considered. It was assumed that radial forces (such as vertical pulls) would not occur.

Minimal Torque Capacities

Operating Heuristic “As long as there is a way to distribute the weights among the network of bricks such that no joint is stressed beyond its maximum capacity the structure will not break.” No complete algorithm has been found

Greedy Algorithm Does not guarantee that all solutions will be found Each joint j can support a certain fraction a of a force on the network. This fraction is given by: Where K j is the maximum capacity of the joint, d(j,F) is the distance between the line generated by the force vector and the joint, and f is the magnitude of the force.

Greedy Algorithm (cont.) Once a solution for the distribution of the first mass has been found, it is fixed and the remaining capacity for each joint is computed. This will give a reduced network that must support the next force.

Evolutionary Algorithm? A steady-state, genetic algorithm was used to solve the problem Initialized with a population of a single brick Through mutation and crossover, a population of 1000 individuals was generated

Encoding for 2-D structure This join was encoded as: (10 nil (2 (6 nil nil nil)) nil nil)

Encoding Explained Uses pseudo-Lisp notation Individual brick: (10 nil nil nil nil) Joined by two knobs: (10 nil (2 ()) nil nil) With a 6 knob brick: (10 nil (2 (6 nil nil nil)) nil nil)

Mutation and Crossover Mutation operates by either random modification of a brick’s parameters (size, position, orientation) or addition of a random brick. Crossover involves two parent trees out of which random subtrees are selected. The offspring generated has the first subtree removed and replaced by the second.

Fitness Function Doesn’t presuppose any knowledge about good design or common engineering practices that would bias the results Provides measures of feasibility and functionality

Algorithm While maximum fitness < Target fitness DoRandomly select mutation or crossover Select 1 (for mutation) or 2 (for crossover) random individual(s) with fitness proportional probability Apply mutation or crossover operator Generate physical model and test for gravitational load. If the new model will support its own weight Then replace a random individual with it (chosen with inverse fitness proportional probability)

Practical Examples Reaching a target point: Bridges and Scaffolds External Loads: Horizontal Crane Arm Constraining the space: Diagonal Crane Arm

Reaching a Target Point Fitness Function: Normalized distance to the target: Where S is the structure, T is the target point and d is the Euclidean distance

Bridge An example successful run The target fitness was reached after 133,000 generations

Example Run

Scaffold Evolved in 40,000 generations

External Loads Uses a two-step fitness function Weight is added in small increments to see how much the structure can hold

Constraining the Space Bricks could only be placed above the diagonal Fitness Function: fraction of weight supported * length of the arm along the x axis

Optimization Usually don’t reward or punish for the number of bricks used Leads to unused bricks Can add a little reward for lightness

Fitness: Fitness:

Limitations Noise Safety concerns No complete algorithm has been found results in a conservative model