CEng 713 Evolutionary Computation, Lecture Notes

Similar documents
What is Evolutionary Computation? Genetic Algorithms. Components of Evolutionary Computing. The Argument. When changes occur...

Metaheuristics and Cognitive Models for Autonomous Robot Navigation

Evolutionary Algorithms - Population management and popular algorithms Kai Olav Ellefsen

College of information technology Department of software

Evolutionary Computation

Computational Intelligence Lecture 20:Intorcution to Genetic Algorithm

Genetic algorithms. History

Optimisation and Operations Research

Intro. ANN & Fuzzy Systems. Lecture 36 GENETIC ALGORITHM (1)

Machine Learning: Algorithms and Applications

Introduction Evolutionary Algorithm Implementation

Part 1: Motivation, Basic Concepts, Algorithms

Implementation of Genetic Algorithm for Agriculture System

EMM4131 Popülasyon Temelli Algoritmalar (Population-based Algorithms) Introduction to Meta-heuristics and Evolutionary Algorithms

Genetic Algorithm: A Search of Complex Spaces

Plan for today GENETIC ALGORITHMS. Randomised search. Terminology: The GA cycle. Decoding genotypes

10. Lecture Stochastic Optimization

Evolutionary Computation. Lecture 1 January, 2007 Ivan Garibay

VISHVESHWARAIAH TECHNOLOGICAL UNIVERSITY S.D.M COLLEGE OF ENGINEERING AND TECHNOLOGY. A seminar report on GENETIC ALGORITHMS.

What is Genetic Programming(GP)?

CHAPTER 3 RESEARCH METHODOLOGY

GENETIC ALGORITHMS. Narra Priyanka. K.Naga Sowjanya. Vasavi College of Engineering. Ibrahimbahg,Hyderabad.

Genetic Algorithms and Genetic Programming. Lecture 1: Introduction (25/9/09)

PARALLEL LINE AND MACHINE JOB SCHEDULING USING GENETIC ALGORITHM

Genetic Algorithm for Variable Selection. Genetic Algorithms Step by Step. Genetic Algorithm (Holland) Flowchart of GA

Evolutionary computing

IMPLEMENTATION OF AN OPTIMIZATION TECHNIQUE: GENETIC ALGORITHM

EVOLUTIONARY ALGORITHMS AT CHOICE: FROM GA TO GP EVOLŪCIJAS ALGORITMI PĒC IZVĒLES: NO GA UZ GP

Strategy Parameter Variety in Self-Adaptation of Mutation Rates

From Genetics to Genetic Algorithms

Comp215: Genetic Algorithms - Part 1

Processor Scheduling Algorithms in Environment of Genetics

A Comparison between Genetic Algorithms and Evolutionary Programming based on Cutting Stock Problem

Evolutionary Algorithms

CSE /CSE6602E - Soft Computing Winter Lecture 9. Genetic Algorithms & Evolution Strategies. Guest lecturer: Xiangdong An

EVOLUTIONARY ALGORITHMS CT20A6300. Timo Mantere. Lecturer, Ph.D. (Econ. & BA) Department of Electrical engineering and automation University of Vaasa

What is an Evolutionary Algorithm? Presented by: Faramarz Safi (Ph.D.) Faculty of Computer Engineering Islamic Azad University, Najafabad Branch

CapSel GA Genetic Algorithms.

Genetic Algorithm: An Optimization Technique Concept

Evolutionary Computation. James A. Foster Prof., Biological Sciences Initiative for Bioinformatics & Evol. Studies University of Idaho

The Metaphor. Individuals living in that environment Individual s degree of adaptation to its surrounding environment

Evolutionary Computation. Lecture 3. Evolutionary Computation. X 2 example: crossover. x 2 example: selection

Introduction To Genetic Algorithms

Metaheuristics. Approximate. Metaheuristics used for. Math programming LP, IP, NLP, DP. Heuristics

APPLICATION OF COMPUTER FOR ANALYZING WORLD CO2 EMISSION

Introduction to Genetic Algorithm (GA) Presented By: Rabiya Khalid Department of Computer Science

GENETIC ALGORITHM A NOBLE APPROACH FOR ECONOMIC LOAD DISPATCH

Genetic Algorithm. Presented by Shi Yong Feb. 1, 2007 Music McGill University

Deterministic Crowding, Recombination And Self-Similarity

Design and Implementation of Genetic Algorithm as a Stimulus Generator for Memory Verification

ABSTRACT COMPUTER EVOLUTION OF GENE CIRCUITS FOR CELL- EMBEDDED COMPUTATION, BIOTECHNOLOGY AND AS A MODEL FOR EVOLUTIONARY COMPUTATION

ECTA th International Conference on Evolutionary Computation Theory and Applications

Improving Differential Evolution Algorithm with Activation Strategy

Keywords Genetic Algorithm (GA), Evolutionary, Representation, Binary, Floating Point, Operator

Evolutionary Computation

Mrs. Shahana Gajala Qureshi 1, Mrs. Uzma Arshi Ansari 2

Genetic Algorithm and Application in training Multilayer Perceptron Model

initial set of random solutions called population satisfying boundary and/or system

Introduction to Artificial Intelligence. Prof. Inkyu Moon Dept. of Robotics Engineering, DGIST

Feature Selection for Predictive Modelling - a Needle in a Haystack Problem

Available online at International Journal of Current Research Vol. 9, Issue, 07, pp , July, 2017

ESQUIVEL S.C., LEIVA H. A., GALLARD, R.H.

Foundations of Artificial Intelligence

Evolutionary Algorithms - Introduction and representation Jim Tørresen

ARTIFICIAL INTELLIGENCE

Optimizing Genetic Algorithms for Time Critical Problems

Journal of Global Research in Computer Science PREMATURE CONVERGENCE AND GENETIC ALGORITHM UNDER OPERATING SYSTEM PROCESS SCHEDULING PROBLEM

In order to have GA, you must have a way to rate a given solution (fitness function). The fitness function must be continuous.

Dominant and Recessive Genes in Evolutionary Systems Applied to Spatial Reasoning

Introduction To Genetic Algorithms

A Computationally Efficient Evolutionary Algorithm for Real-Parameter Optimization

Proceeding, Seminar of Intelligent Technology and Its Applications (SITIA 2000) Graha Institut Teknologi Sepuluh Nopember, Surabaya, 19 April 2000

Genetic Algorithms for Optimizations

Chapter 1: GENETIC ALGORITHMS AN INTRODUCTION

Machine Learning. Genetic Algorithms

Machine Learning. Genetic Algorithms

An introduction to evolutionary computation

COMPUTATIONAL INTELLIGENCE FOR SUPPLY CHAIN MANAGEMENT AND DESIGN: ADVANCED METHODS

Supplemental Digital Content. A new severity of illness scale using a subset of APACHE data elements shows comparable predictive accuracy

The Design and Analysis of a Computational Model of Cooperative Coevolution

Implementation of CSP Cross Over in Solving Travelling Salesman Problem Using Genetic Algorithms

Assoc. Prof. Rustem Popa, PhD

Genetic'Algorithms'::' ::'Algoritmi'Genetici'1

Genetic Algorithms. Moreno Marzolla Dip. di Informatica Scienza e Ingegneria (DISI) Università di Bologna.

Minimizing Makespan for Machine Scheduling and Worker Assignment Problem in Identical Parallel Machine Models Using GA

Evolutionary Algorithms. LIACS Natural Computing Group Leiden University

A Genetic Algorithm on Inventory Routing Problem

A GENETIC ALGORITHM FOR POLYTECHNIC TIME TABLING (EEPIS Timetabling Case Study)

Genetic Algorithm: An Efficient Tool for Global Optimization

Application of Evolutionary Algorithms to solve complex problems in Quantitative Genetics and Bioinformatics

Genetic Algorithms and Genetic Programming Lecture 13

CSE 590 DATA MINING. Prof. Anita Wasilewska SUNY Stony Brook

Symbiotic Adaptive Multisimulation

Repeated Sequences in Genetic Programming

Optimization of reactor network design problem using Jumping Gene Adaptation of Differential Evolution

An Evolutionary-based Real-time Updating Technique for an Operational Rainfall-Runoff Forecasting Model

GENETIC ALGORITHM CHAPTER 2

Integration of Process Planning and Job Shop Scheduling Using Genetic Algorithm

COMPARATIVE STUDY OF SELECTION METHODS IN GENETIC ALGORITHM

A METAEVOLUTIONARY APPROACH IN SEARCHING OF THE BEST COMBINATION OF CROSSOVER OPERATORS FOR THE TSP

Transcription:

CEng 713 Evolutionary Computation, Lecture Notes Introduction to Evolutionary Computation

Evolutionary Computation Elements of Evolution: Reproduction Random variation Competition Selection of contending individuals from a population. Evolutionary computation: computational methods simulating evolution, mostly used to find a solution in a large search space.

Optimization Environment of an organism and its survival chance in the environment vs. evaluation of parameter to optimize for a solution candidate. Start from a random sample of solution candidates and simulate natural evolution, optimizing for an evaluation function (fitness of the individual). Classical methods: gradient descent, deterministic hill climbing, random search. Competitive problems: nonlinear, stochastic, temporal, or chaotic components with multiple local optima.

Robust Adaptation Problems with dynamic nature. Environment and parameters change in time. Adapting new environment by recombining the succesfull pieces from independent individuals.

Machine Intelligence Capability of a system to adapt its behavior to meet desired goals in a range of environments. Evolution of organisms natural intelligence Evolutionary computation can be used to evolve the data in an artificial intelligence model.

Biology Using computation to simulate the evolution and understand the evolution of organisms. Rather using computation in biology then simulating biological evolution for computation.

History The idea of using simulated evolution to solve engineering and design problems have been around since the 1950 s. Bremermann, 1962 Box, 1957 Friedberg, 1958 However, it wasn t until the early 1960 s that we began to see three influential forms of EC emerge: Evolutionary Programming (Lawrence Fogel, 1962), Genetic Algorithms (Holland, 1962) Evolution Strategies (Rechenberg, 1965 & Schwefel, 1968),

The designers of each of the EC techniques saw that their particular problems could be solved via simulated evolution. Fogel was concerned with solving prediction problems. Rechenberg & Schwefel were concerned with solving continous parameter optimization problems. Holland was concerned with developing robust adaptive systems.

Each of these researchers successfully developed appropriate ECs for their particular problems independently. In the US, 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.

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.

History: The Evolution of EC First Generation EC Evolutionary Programming (Fogel) Genetic Algorithms (Holland) Evolution Strategies (Rechenberg, Schwefel) Second Generation EC Genetic Evolution of Data Structures (Michalewicz) Genetic Evolution of Programs (Koza) Hybrid Genetic Search (Davis) Tabu Search (Glover)

Third Generation EC Artificial Immune Systems (Forrest) Cultural Algorithms (Reynolds) DNA Computing (Adleman) Ant Colony Optimization (Dorigo) Particle Swarm Optimization (Kennedy & Eberhart) Memetic Algorithms Estimation of Distribution Algorithms

Applications of EC 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]) Robotics,

Air Traffic Control, Design, Scheduling, Machine Learning, Pattern Recognition, Job Shop Scheduling, VLSI Circuit Layout, Strike Force Allocation,

Theme Park Tours (Disney Land/World) Market Forecasting, Egg Price Forecasting, Design of Filters and Barriers, Data-Mining, User-Mining, Resource Allocation, Path Planning, Etc.

EC in General An evolution function to optimize (fitness function). Usually: Multi-dimensional, multimodal, discontinous. A sample of search space in a group of solution candidates (population) A generation procedure to determine the population for the next generation (selection, crossover, mutation)

Pseudo code for a sample EC t=0 population(t)=randompopulation() evaluate(population(t)) while (notdone) parents(t)=selectfrom(population(t)) offsprings(t)=createfrom(parents(t)) evaluate(offsprings(t)) population(t+1)=selectfrom(parents(t),offsprings(t)) t=t+1 In each generation, mean fitness of the population is expected to increase.

EA's vary depending on: Representation/encoding of an individual (binary, integer, floating point, or data structures,...) Population size and organization (multiple populations, parallel evolving populations, single individual populations,...) The time of selection and selection procedure (selection for recombination, selection for survival,...) Recombination, mutation procedures

Advantage over gradient methods: Population represents a collected statistics about the search space. Exploring search space while exploiting the information gathered during the evolution. Suitable for discontinous functions, nondifferentiable, multimodal, noisy surfaces. Not suitable for linear, quadratic, strongly convex, unimodal, separable problems. No free lunch: there is no superior algorithm to solve all class of algorithms.

Types of EC Historical classification: EP, GA, ES. Genetic Programming is considered an additional class. Practically, there are many hybrid models not fitting any of the classes completely. Class distinction gets fuzzy. Many different names for many algorithms having similar general form.

Genetic Algorithms John Holland (1975) linear bitstring representation fitness proportional selection crossover Denotes the class of evolutionary algorithms having a linear array representation with a group of individuals, involving crossover, mutation and selection in each generation cycle. binary, integer, floating point representations, parent and offspring population size, selection strategy, crossover, mutation and different operators may vary.

Evolution Strategies `Evolutionsstrategie' Bienert, Rechenberg, Schwefel, T.U. of Berlin, 1964. a single individual encoded as a real-vector. Vector is mutated by adding a normally distributed real vector with a variance. Contemporary approaches involve recombination, selection and adaptation of algorithm parameters during optimization.

Evolutionary Programming Lawrence J. Fogel, 1960. Evolving a population of finite state machines. Fogel's EP differs from GA that it does not involve crossover, it involves special mutation operations based on behavior, and its selection strategy.

Genetic Programming Evolutionary process to evolve computer programs. First experiments, Smith (1980), Cramer (1985). First comprehensive study, John Koza (1992) Tree structured encodings with specific recombination and mutation operations involved. Some variants choose linear encodings, i.e. program texts with a certain alphabet.