Population Based Metaheuristics

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

CS6800 Advanced Theory of Computation
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
CSM6120 Introduction to Intelligent Systems Evolutionary and Genetic Algorithms.
1 Wendy Williams Metaheuristic Algorithms Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and.
Evolutionary Computational Intelligence
Genetic Algorithm for Variable Selection
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Genetic Algorithms: A Tutorial
Genetic Algorithm.
Genetic Algorithms and Ant Colony Optimisation
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Genetic algorithms Prof Kang Li
Artificial Intelligence Lecture No. 31 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Genetic Algorithms Genetic algorithms imitate a natural optimization process: natural selection in evolution. Developed by John Holland at the University.
Introduction to GAs: Genetic Algorithms How to apply GAs to SNA? Thank you for all pictures and information referred.
1 Genetic Algorithms “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
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.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Genetic Algorithms. The Basic Genetic Algorithm 1.[Start] Generate random population of n chromosomes (suitable solutions for the problem) 2.[Fitness]
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.
Genetic Algorithms In part from:
Introduction to GAs: Genetic Algorithms Quantitative Analysis: How to make a decision? Thank you for all pictures and information referred.
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
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.
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
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 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.
Introduction to Genetic Algorithms
Chapter 14 Genetic Algorithms.
Genetic Algorithms Author: A.E. Eiben and J.E. Smith
Genetic Algorithm in TDR System
Genetic Algorithms.
Genetic Algorithm (GA)
Genetic Algorithms.
Evolutionary Algorithms Jim Whitehead
Evolution Strategies Evolutionary Programming
Artificial Intelligence Methods (AIM)
Introduction to Genetic Algorithm (GA)
Chapter 6: Genetic Algorithms
CSC 380: Design and Analysis of Algorithms
Intelligent Systems and Soft Computing
Artificial Intelligence (CS 370D)
Advanced Artificial Intelligence Evolutionary Search Algorithm
Genetic Algorithms overview
Neuro-Computing Lecture 6
Genetic Algorithms: A Tutorial
GENETIC ALGORITHMS & MACHINE LEARNING
Genetic Algorithms Chapter 3.
EE368 Soft Computing Genetic Algorithms.
A Gentle introduction Richard P. Simpson
Traveling Salesman Problem by Genetic Algorithm
Genetic Algorithm Soft Computing: use of inexact t solution to compute hard task problems. Soft computing tolerant of imprecision, uncertainty, partial.
Genetic Algorithms: A Tutorial
CSC 380: Design and Analysis of Algorithms
Presentation transcript:

Population Based Metaheuristics ENM 450 Introduction to Metaheuristic Optimization Spring 2019 Emine AKYOL ÖZER, PhD

Population-based metaheuristics (P-metaheuristics) An iterative improvement in a population of solutions. First, the population is initialized. A new population of solutions is generated. Finally, this new population is integrated into the current one using some selection procedures. The search process is stopped when a given condition is satisfied (stopping criterion). Algorithms such as evolutionary algorithms (EAs), scatter search (SS), estimation of distribution algorithms (EDAs), particle swarm optimization (PSO), bee colony (BC), and artificial immune systems (AISs) belong to this class of metaheuristics.

Genetic Algorithm(GA) A class of probabilistic optimization algorithms Inspired by the biological evolution process. GA are nature-inspired algorithms. Uses concepts of “Natural Selection” and “Genetic Inheritance” (Based on ideas from Darwinian Evolution 1859) Originally developed by John Holland (1975)

Genetic Algorithm Genetic algorithms are categorized as global search heuristics. GA is an iterative process during which an optimization problem is “encouraged” to produce better solutions at each iteration.

Genetic Algorithm The evolution usually starts from a population of randomly generated individuals and happens in generations. Commonly, the algorithm terminates when either a maximum number of generations has been produced, or a satisfactory objective function value level has been reached for the population.

A Simple Genetic Algorithm { initialize population; evaluate population; while TerminationCriteriaNotSatisfied select parents for reproduction; perform recombination and mutation; }

Genetic Algorithm – Back to the Biology Genotype : – Particular set of genes in a genome, e.g. an organism’s full hereditary information Phenotype: – Physical characteristic of the genotype (smart, beautiful, healthy, etc.)

Genetic Algorithm – Back to the Biology

Genetic Algorithm - Representation A potential solution to a problem may be coded or represented by a set of variables. In GAs, each of these variables (solution components) is called a gene. A string of genes, representing a complete solution, is called a chromosome.

Genetic Algorithm - Representation

Genetic Algorithm-Representation Traditionally, solutions are represented as binary strings of 0s and 1s, but other encodings are also possible. Chromosomes could be: Bit strings (0101 ... 1100) Real numbers (43.2 -33.1 ... 0.0 89.2) Permutations of element (E11 E3 E7 ... E1 E15) Lists of rules (R1 R2 R3 ... R22 R23) ... any data structure ...

GA:Representation Example Assignment problem Phenotype: facility f1 is assigned to location l1, f2 to l4, f3 to l2 Genotype: ?

GA:Representation Example TSP Phenotype: the tour 1-3-2-4-1 Genotype: ?

GA:Representation Example Machine Scheduling Phenotype: There are 4 machines and 6 jobs. Genotype: ?

GA:Representation Example - Binary coding Optimization of function f(x,y,z) (assuming 0 ≤ x, y, z ≤ 25 −1) Phenotype: x=46, y=24, z=13 Genotype: 0 1 1 1 0 1 | 0 0 0 1 1 0 | 1 0 1 1 0

GA:Presentation Example R: If (input1=Low OR High)AND(input2=High) THEN Output=Low Rules of this type can be encoded in 9 bits where the first 6 represent the antecedent (alternative conditions for Input 1 and 2) and the last 3 bits the value(s) of the consequent E.g. the first 3 bit represent the conditions for input 1, e.g: 000=no constraints, 001=low, 010=high, 011=low or high…

GA: Key Terms Individual - Any possible solution Population - Group of all individuals. Usually has a fixed size and is a multiset of genotypes Search Space - All possible solutions to the problem Fitness function – Objective function value for a chromosome

Components of a GA Genetic operators (crossover, mutation) Encoding technique (gene, chromosome) Initialization procedure Evaluation function (fitness function) Selection of parents Genetic operators (crossover, mutation) Parameter settings (practice and art)

Initialization procedure Initially many individual solutions are randomly generated to form an initial population. The population size depends on the nature of the problem, but typically contains several hundreds or thousands of possible solutions. Traditionally, the population is generated randomly, covering the entire range of possible solutions (the search space). Occasionally, the solutions may be "seeded" in areas where optimal solutions are likely to be found.

GA: Fitness Function Fitness function may simply be the objective function where we optimize a single criterion. It may also be a more complicated measure involving multiple criteria and penalties for infeasibility. It should reflect real value of a chromosome.

GA: Selection of parents During each successive generation, a proportion of the existing population is selected to breed a new generation. Individual solutions are selected through a fitness-based process, where fitter solutions (as measured by a fitness function) are typically more likely to be selected. Certain selection methods rate the fitness of each solution and preferentially select the best solutions. Other methods rate only a random sample of the population, as this process may be very time-consuming. Selection Methods; Tournament selection Roulette wheel selection Stochastic universal sampling Rank-based selection Elitist strategy

Tournament selection Tournament selection consists in randomly selecting k individuals; the parameter k is called the size of the tournament group. A tournament is then applied to the k members of the group to select the best one.

Tournament selection: A TSP Example 1 2 3 4 5 - 40 21 35 79 92 9 52 61 7 84 46 8 67 11 39 24 97 Distance matrix is given above. A tournament of size 2 is performed. Number of population is 5. Apply elitist srategy.

Roulette wheel selection It is the most common selection strategy. It will assign to each individual a selection probability that is proportional to its relative fitness. Let fi be the fitness of the individual pi in the population P. Its probability to be selected is 𝑝 𝑖 = 𝑓 𝑖 𝑗=1 𝑛 𝑓 𝑖

Roulette wheel selection: Example 1 TSP problem in tournament selection example. Random numbers: (0.96, 0.11, 0.64, 0.44) Apply elitist srategy.

Roulette wheel selection: Example 2 𝑚𝑎𝑥 𝑓 𝑥 =𝑥 2 , 𝑥∈ 0,1,…,31 Population number is 6. Random numbers: (0.337, 0.567, 0.468, 0.059, 0.239, 0.936)

GA: Genetic Operators The next step is to generate a second generation population of solutions from those selected through genetic operators: crossover (also called recombination), and/or mutation. For each new solution to be produced, a pair of "parent" solutions is selected for breeding from the pool selected previously. By producing a "child" solution using the above methods of crossover and mutation, a new solution is created which typically shares many of the characteristics of its "parents". New parents are selected for each child, and the process continues until a new population of solutions of appropriate size is generated.

GA: Crossover Operator Typically, crossover takes two parents, cuts their chromosome strings at a randomly chosen position, swaps the head (or tail) segments to produce two offspring Crossover is not necessarily applied to all pairs of parents selected for mating . Probability of crossover being applied to a pair, pc, is usually between 0.6 and 1.0

GA:Crossover Operator Most common crossover operators for binary representation are: 1-point crossover 2-point crossover Uniform crossover

GA:Crossover Operator – 1 point Parent 1: 1 0 1 0 | 0 0 1 1 1 0 Parent 2: 0 0 1 1 | 0 1 0 0 1 0 Offspring 1: 1 0 1 0 | 0 1 0 0 1 0 Offspring 2: 0 0 1 1 | 0 0 1 1 1 0

GA:Crossover Operator – 2 point Parent 1: 1 0 1 0 | 0 0 1 | 1 1 0 Parent 2: 0 0 1 1 | 0 1 0 | 0 1 0 Offspring 1: 1 0 1 0 | 0 1 0 | 1 1 0 Offspring 2: 0 0 1 1 | 0 0 1 | 0 1 0

GA:Crossover Operator – Uniform A binary crossover mask is used to determine which gene will be taken from which parent. Parent 1: 1010001110 Parent 2: 0011010010 Crossover mask: 1001011100 Offspring(Child) 1: 1010001110 Offspring(Child) 2: 0011010010

GA: Mutation Operator Mutation is applied to every offspring by altering each binary gene with a small probability, pm (typically between 0.1 and 0.001) Offspring: 1 0 1 0 0 1 0 0 1 0 Mutated offspring: 1 0 1 0 0 0 0 0 1 0 Alternatively, the entire chromosome may be mutated at once by a higher pm, particularly when a non-binary representation and problem specific genetic operators are used.

GA: Mutation Operator Mutation is fairly simple. You just change the selected gene based on what you feel is necessary and move on. Mutation is, however, vital to ensuring genetic diversity within the population.

Crossover and Mutation for TSP: An example Consider an 8-city TSP where city 1 is home city and links exit between all pairs of cities. For each following pairs of parents, generate their two children. (mutation rate: 0.09) The parents are 1-2-3-4-7-6-5-8-1 and 1-5-3-6-7-8-2-4-1 The parents are 1-6-4-7-3-8-2-5-1 and 1-2-5-3-6-8-4-7-1

Basics of GA The most common type of genetic algorithm works like this: a population is created with a group of individuals created randomly. The individuals in the population are then evaluated. The evaluation function is provided by the programmer and gives the individuals a score based on how well they perform at the given task. Two individuals are then selected based on their fitness, the higher the fitness, the higher the chance of being selected. These individuals then "reproduce" to create one or more offspring, after which the offspring are mutated randomly. This continues until a suitable solution has been found or a certain number of generations have passed, depending on the needs of the programmer.

The GA Cycle of Reproduction children reproduction modification modified children parents population evaluation evaluated children deleted members discard

Genetic Algorithm

Genetic Algorithm