Introduction to Computational Intelligence (Evolutionary Computation) Evolutionary Computation is the field of study devoted to the design, development,

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.
Student : Mateja Saković 3015/2011.  Genetic algorithms are based on evolution and natural selection  Evolution is any change across successive generations.
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Genetic Algorithms Representation of Candidate Solutions GAs on primarily two types of representations: –Binary-Coded –Real-Coded Binary-Coded GAs must.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Institute of Intelligent Power Electronics – IPE Page1 Introduction to Basics of Genetic Algorithms Docent Xiao-Zhi Gao Department of Electrical Engineering.
Genetic Algorithms An Example Genetic Algorithm Procedure GA{ t = 0; Initialize P(t); Evaluate P(t); While (Not Done) { Parents(t) = Select_Parents(P(t));
Evolutionary Programming An Example Evolutionary Computation Procedure EC{ t = 0; Initialize P(t); Evaluate P(t); While (Not Done) { Parents(t) = Select_Parents(P(t));
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
Introduction to Evolutionary Computation Evolutionary Computation is the field of study devoted to the design, development, and analysis is problem solvers.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
Genetic Algorithms and Their Applications John Paxton Montana State University August 14, 2003.
Introduction to Evolutionary Computation  Genetic algorithms are inspired by the biological processes of reproduction and natural selection. Natural selection.
Genetic Algorithms Learning Machines for knowledge discovery.
Artificial Intelligence Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Jaap Hofstede Beasly, Bull, Martin
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
CS 447 Advanced Topics in Artificial Intelligence Fall 2002.
Computer Science Genetic Algorithms CS 776: Evolutionary Computation Syllabus Objectives: –Learn about Evolutionary Computation.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Evolutionary Computation Instructor: Shu-Mei Guo Nature Inspired Algorithmic Techniques.
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Evolutionary Intelligence
1 An Overview of Evolutionary Computation 조 성 배 연세대학교 컴퓨터과학과.
1 Paper Review for ENGG6140 Memetic Algorithms By: Jin Zeng Shaun Wang School of Engineering University of Guelph Mar. 18, 2002.
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
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Genetic algorithms Prof Kang Li
Swarm Intelligence 虞台文.
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
The Particle Swarm Optimization Algorithm Nebojša Trpković 10 th Dec 2010.
Genetic Algorithms K.Ganesh Reasearch Scholar, Ph.D., Industrial Management Division, Humanities and Social Sciences Department, Indian Institute of Technology.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
G5BAIM Artificial Intelligence Methods Dr. Rong Qu Evolutionary Algorithms.
Artificial Intelligence Chapter 4. Machine Evolution.
Exact and heuristics algorithms
Solving of Graph Coloring Problem with Particle Swarm Optimization Amin Fazel Sharif University of Technology Caro Lucas February 2005 Computer Engineering.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
1 Genetic Algorithms K.Ganesh Introduction GAs and Simulated Annealing The Biology of Genetics The Logic of Genetic Programmes Demo Summary.
Genetic Algorithms An Example Genetic Algorithm Procedure GA{ t = 0; Initialize P(t); Evaluate P(t); While (Not Done) { Parents(t) = Select_Parents(P(t));
Societies of Hill-Climbers Before presenting SoHCs let’s first talk about Hill-Climbing in general. For this lecture we will confine ourselves to binary-
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.
Introduction Genetic programming falls into the category of evolutionary algorithms. Genetic algorithms vs. genetic programming. Concept developed by John.
Genetic Algorithms MITM613 (Intelligent Systems).
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
EvoNet Flying Circus Introduction to Evolutionary Computation Brought to you by (insert your name) The EvoNet Training Committee The EvoNet Flying Circus.
EVOLUTIONARY SYSTEMS AND GENETIC ALGORITHMS NAME: AKSHITKUMAR PATEL STUDENT ID: GRAD POSITION PAPER.
Presented By: Farid, Alidoust Vahid, Akbari 18 th May IAUT University – Faculty.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Genetic (Evolutionary) Algorithms CEE 6410 David Rosenberg “Natural Selection or the Survival of the Fittest.” -- Charles Darwin.
Genetic Algorithm in TDR System
Genetic Algorithms.
Evolution Strategies Evolutionary Programming
Meta-heuristics Introduction - Fabien Tricoire
Evolution strategies Can programs learn?
Advanced Artificial Intelligence Evolutionary Search Algorithm
metaheuristic methods and their applications
Example: Applying EC to the TSP Problem
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
G5BAIM Artificial Intelligence Methods
Beyond Classical Search
Presentation transcript:

Introduction to Computational Intelligence (Evolutionary Computation) Evolutionary Computation is the field of study devoted to the design, development, and analysis is problem solvers based on natural selection (simulated evolution). Evolution has proven to be a powerful search process. Evolutionary Computation has been successfully applied to a wide range of problems including: – Aircraft Design, – Routing in Communications Networks, – Tracking Windshear, – Game Playing (Checkers [Fogel])

Introduction to Computational Intelligence (Applications cont.) Robotics, Air Traffic Control, Design, Scheduling, Machine Learning, Pattern Recognition, Job Shop Scheduling, VLSI Circuit Layout, Strike Force Allocation,

Introduction to Computational Intelligence (Applications cont.) Market Forecasting, Egg Price Forecasting, Design of Filters and Barriers, Data-Mining, User-Mining, Resource Allocation, Path Planning, Etc.

Introduction to Computational Intelligence (cont.) An Example Evolutionary Computation Procedure EC{ t = 0; Initialize Pop(t); Evaluate Pop(t); While (Not Done) { Parents(t) = Select_Parents(Pop(t)); Offspring(t) = Procreate(Parents(t)); Evaluate(Offspring(t)); Pop(t+1)= Replace(Pop(t),Offspring(t)); t = t + 1; }

Introduction to Computational Intelligence (cont.) In an Evolutionary Computation, a population of candidate solutions (CSs) is randomly generated. Each of the CSs is evaluated and assigned a fitness based on a user specified evaluation function. The evaluation function is used to determine the ‘goodness’ of a CS. A number of individuals are then selected to be parents based on their fitness. The Select_Parents method must be one that balances the urge for selecting the best performing CSs with the need for population diversity.

Introduction to Computational Intelligence (cont.) The selected parents are then allowed to create a set of offspring which are evaluated and assigned a fitness using the same evaluation function defined by the user. Finally, a decision must be made as to which individuals of the current population and the offspring population should be allowed to survive. Typically, in EC, this is done to guarantee that the population size remains constant.

Introduction to Evolutionary Computation (cont.) Once a decision is made the survivors comprise the next generation (Pop(t+1)). This process of selecting parents based on their fitness, allowing them to create offspring, and replacing weaker members of the population is repeated for a user specified number of cycles. Stopping conditions for evolutionary search could be: – The discovery of an optimal or near optimal solution – Convergence on a single solution or set of similar solutions, – When the EC detects the problem has no feasible solution, – After a user-specified threshold has been reached, or – After a maximum number of cycles.

A Brief History of Evolutionary Computation Genetic Algorithms have become the most popular EC technique due to a book by David E. Goldberg (1989) entitled, “Genetic Algorithms in Search, Optimization & Machine Learning”. This book explained the concept of Genetic Search in such a way the a wide variety of engineers and scientist could understand and apply.

A Brief History of Evolutionary Computation (cont.) However, a number of other books helped fuel the growing interest in EC: – Lawrence Davis’, “Handbook of Genetic Algorithms”, (1991), – Zbigniew Michalewicz’ book (1992), “Genetic Algorithms + Data Structures = Evolution Programs. – John R. Koza’s “Genetic Programming” (1992), and – D. B. Fogel’s 1995 book entitled, “Evolutionary Computation: Toward a New Philosophy of Machine Intelligence. These books not only fueled interest in EC but they also were instrumental in bringing together the EP, ES, and GA concepts together in a way that fostered unity and an explosion of new and exciting forms of EC.

A Brief History of Computational Intelligence First Generation EC – EP (Fogel) – GA (Holland) – ES (Rechenberg, Schwefel) Second Generation EC – Genetic Evolution of Data Structures (Michalewicz) – Genetic Evolution of Programs (Koza) – Hybrid Genetic Search (Davis) – Tabu Search (Glover)

A Brief History of Computational Intelligence Third Generation EC – Artificial Immune Systems (Forrest) – Cultural Algorithms (Reynolds) – DNA Computing (Adleman) – Ant Colony Optimization (Dorigo) – Particle Swarm Optimization (Kennedy & Eberhart) Fourth Generation

A Simple Example Let’s walk through a simple example! Let’s say you were asked to solve the following problem: – Maximize: – f6(x,y) = (sin(sqrt(x 2 +y 2 )) 2 – 0.5)/( (x 2 +y 2 )) 2 – Where x and y are take from [-100.0,100.0] – You must find a solution that is greater than , and – you can only evaluate a total of 4000 candidate solutions (CSs) This seems like a difficult problem. It would be nice if we could see what it looks like! This may help us determine a good algorithm for solving it.

A Simple Example A 3D view of f6(x,y):

A Simple Example If we just look at only one dimension f6(x,1.0)

A Simple Example Let’s develop a simple EC for solving this problem An individual (chromosome or CS) – – fit i = f6(x i,y i )

A Simple Example Procedure simpleEC{ t = 0; Initialize Pop(t); /* of P individuals */ Evaluate Pop(t); while (t <= 4000-P){ Select_Parent( ); /* Randomly */ Create_Offspring( ): x kid = rnd(x mom, x dad ) + N x (0,  ); y kid = rnd(y mom, y dad ) + N y (0,  ); fit kid = Evaluate( ); Pop(t+1) = Replace(worst,kid); {Pop(t)-{worst}}  {kid} t = t + 1; }