Introduction (7.1) Genetic Algorithms (GA) (7.2) Simulated Annealing (SA) (7.3) Random Search (7.4) Downhill Simplex Search (DSS) (7.

Similar documents
Derivative-Free Optimization

DERIVATIVE-FREE OPTIMIZATION

Chapter 14 Global Search Algorithms

METAHEURISTICS. Introduction. Introduction. Nature of metaheuristics. Local improvement procedure. Example: objective function

CHAPTER 4 GENETIC ALGORITHM

Evolutionary Computation Algorithms for Cryptanalysis: A Study

March 19, Heuristics for Optimization. Outline. Problem formulation. Genetic algorithms

GENETIC ALGORITHM with Hands-On exercise

Algoritmi di Ottimizzazione: Parte A Aspetti generali e algoritmi classici

Artificial Intelligence

SIMULATED ANNEALING TECHNIQUES AND OVERVIEW. Daniel Kitchener Young Scholars Program Florida State University Tallahassee, Florida, USA

Global Optimization. for practical engineering applications. Harry Lee 4/9/2018 CEE 696

Introduction to Design Optimization: Search Methods

Suppose you have a problem You don t know how to solve it What can you do? Can you use a computer to somehow find a solution for you?

An evolutionary annealing-simplex algorithm for global optimisation of water resource systems

Genetic Algorithms. Kang Zheng Karl Schober

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

Genetic Algorithms with Oracle for the Traveling Salesman Problem

Encoding Techniques in Genetic Algorithms

Local Search (Ch )

Escaping Local Optima: Genetic Algorithm

Simulated annealing routing and wavelength lower bound estimation on wavelength-division multiplexing optical multistage networks

AI Programming CS S-08 Local Search / Genetic Algorithms

Data Mining Chapter 8: Search and Optimization Methods Fall 2011 Ming Li Department of Computer Science and Technology Nanjing University

Heuristic Optimisation

CS:4420 Artificial Intelligence

Simulated Annealing. G5BAIM: Artificial Intelligence Methods. Graham Kendall. 15 Feb 09 1

Chapter 9: Genetic Algorithms

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS

Optimization Techniques for Design Space Exploration

Using Genetic Algorithm with Triple Crossover to Solve Travelling Salesman Problem

Lecture 4. Convexity Robust cost functions Optimizing non-convex functions. 3B1B Optimization Michaelmas 2017 A. Zisserman

Introduction to Genetic Algorithms


Genetic Algorithms Variations and Implementation Issues

Algorithm Design (4) Metaheuristics

Genetic Algorithms. Genetic Algorithms

Solving Traveling Salesman Problem Using Parallel Genetic. Algorithm and Simulated Annealing

Artificial Intelligence Application (Genetic Algorithm)

Introduction to Genetic Algorithms. Based on Chapter 10 of Marsland Chapter 9 of Mitchell

Algorithms & Complexity

Non-deterministic Search techniques. Emma Hart

A New Selection Operator - CSM in Genetic Algorithms for Solving the TSP

Topological Machining Fixture Layout Synthesis Using Genetic Algorithms

The Continuous Genetic Algorithm. Universidad de los Andes-CODENSA

Introduction to Design Optimization: Search Methods

Comparison of TSP Algorithms

Evolutionary Computation. Chao Lan

Genetic Algorithms. PHY 604: Computational Methods in Physics and Astrophysics II

The Plan: Basic statistics: Random and pseudorandom numbers and their generation: Chapter 16.

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Scientific Computing with Case Studies SIAM Press, Lecture Notes for Unit IV Monte Carlo

ATI Material Do Not Duplicate ATI Material. www. ATIcourses.com. www. ATIcourses.com

Optimization in Brachytherapy. Gary A. Ezzell, Ph.D. Mayo Clinic Scottsdale

A Steady-State Genetic Algorithm for Traveling Salesman Problem with Pickup and Delivery

Predicting Diabetes using Neural Networks and Randomized Optimization

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem

Introduction to Optimization Using Metaheuristics. The Lecturer: Thomas Stidsen. Outline. Name: Thomas Stidsen: Nationality: Danish.

Using Genetic Algorithms to optimize ACS-TSP

4/22/2014. Genetic Algorithms. Diwakar Yagyasen Department of Computer Science BBDNITM. Introduction

The Genetic Algorithm for finding the maxima of single-variable functions

[Premalatha, 4(5): May, 2015] ISSN: (I2OR), Publication Impact Factor: (ISRA), Journal Impact Factor: 2.114

Comparative Analysis of Genetic Algorithm Implementations

Multi-Modal Metropolis Nested Sampling For Inspiralling Binaries

A Distributed Hybrid Algorithm for Composite Stock Cutting

JHPCSN: Volume 4, Number 1, 2012, pp. 1-7

Research Incubator: Combinatorial Optimization. Dr. Lixin Tao December 9, 2003

Informed Search. Dr. Richard J. Povinelli. Copyright Richard J. Povinelli Page 1

Sparse Matrices Reordering using Evolutionary Algorithms: A Seeded Approach

Mobile Robot Static Path Planning Based on Genetic Simulated Annealing Algorithm

Genetic Algorithms. Chapter 3

GRASP. Greedy Randomized Adaptive. Search Procedure

Artificial Intelligence

Dr. Stephan Steigele Vorlesung im SS 2008

Outline. Motivation. Introduction of GAs. Genetic Algorithm 9/7/2017. Motivation Genetic algorithms An illustrative example Hypothesis space search

Neural Network Weight Selection Using Genetic Algorithms

SIMULATION APPROACH OF CUTTING TOOL MOVEMENT USING ARTIFICIAL INTELLIGENCE METHOD

Solving the Traveling Salesman Problem using Reinforced Ant Colony Optimization techniques

An Evolutionary Algorithm for Minimizing Multimodal Functions

An Introduction to Evolutionary Algorithms

Structural Optimizations of a 12/8 Switched Reluctance Motor using a Genetic Algorithm

Parallel Genetic Algorithm to Solve Traveling Salesman Problem on MapReduce Framework using Hadoop Cluster

Heuristic and Metaheuristic Optimization Techniques with Application to Power Systems

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Introduction to Optimization Using Metaheuristics. Thomas J. K. Stidsen

DETERMINING MAXIMUM/MINIMUM VALUES FOR TWO- DIMENTIONAL MATHMATICLE FUNCTIONS USING RANDOM CREOSSOVER TECHNIQUES

Ar#ficial Intelligence

ABSTRACT. problems including time scheduling, frequency assignment, register allocation, and

Random Search Report An objective look at random search performance for 4 problem sets

Monte Carlo for Optimization

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

Information Fusion Dr. B. K. Panigrahi

Heuristic Optimisation

CS 331: Artificial Intelligence Local Search 1. Tough real-world problems

METAHEURISTICS Genetic Algorithm

Artificial Intelligence

Evolutionary Algorithms. CS Evolutionary Algorithms 1

Introduction to Genetic Algorithms. Genetic Algorithms

Genetic Algorithms for Vision and Pattern Recognition

Transcription:

Chapter 7: Derivative-Free Optimization Introduction (7.1) Genetic Algorithms (GA) (7.2) Simulated Annealing (SA) (7.3) Random Search (7.4) Downhill Simplex Search (DSS) (7.5) Jyh-Shing Roger Jang et al., Neuro-Fuzzy and Soft Computing: A Computational Approach to Learning and Machine Intelligence, First Edition, Prentice Hall, 1997 Introduction (7.1) Four of the most popular derivative-free optimization are: Genetic Algorithms (GA) Simulated Annealing (SA) Random search method Downhill simplex search Ch.7: Derivative-Free Optimization 1

Introduction (7.1) (cont.) They are characterized by the following: They do not require functional derivative information, they rely exclusively on repeated evaluations of the objective function, and the subsequent search direction after each evaluation follows certain heuristic guidelines They search a global optimum & are slower than derivative-based optimization methods They are based on simple intuitive concepts that pertain to nature s wisdom including evolution & thermodynamics They are flexible since they do not require any differentiability of the objective function The big picture Introduction (7.1) (cont.) Model space Adaptive networks Neural networks Fuzzy inf. systems Approach space Derivative-free optim. Soft Computing Derivative-based optim. Ch.7: Derivative-Free Optimization 2

Genetic Algorithms (7.2) Motivation Look at what evolution brings us? Vision Hearing Smelling Taste Touch Learning and reasoning Can we emulate the evolutionary process with today's fast computers? Terminology: Fitness function Population Encoding schemes Selection Crossover Mutation Elitism Ch.7: Derivative-Free Optimization 3

GA Principle Each point in a parameter space is encoded into binary strings called chromosomes Example: The 3D point (11,6,9) can be represented as a concatenated binary string (or chromosome) 1011 { 0110 12 3 1001 { 11 gene A 6 gene B 9 gene C GA Principle (cont.) Each point is associated with a fitness value (function value) GA keeps a set of points as a population (or gene pool), which is then evolved repeatedly toward a better overall fitness value In each generation, the GA constructs a new population using genetic operators such as crossover & mutation: members with higher fitness values are more likely to survive & to participate in mating (crossover) operations Ch.7: Derivative-Free Optimization 4

GA Principle (cont.) After a number of generations, the populations contains members with better fitness values (Darwin: random mutation & natural selection) It is a population-based optimization that upgrade entire populations for better performance Binary encoding Chromosome (11, 6, 9) 1011 0110 1001 Crossover 1 0 0 1 1 1 1 0 Gene 1 0 0 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 1 1 1 0 Mutation Crossover point 1 0 0 1 1 1 1 0 1 0 0 1 1 0 1 0 Mutation bit Ch.7: Derivative-Free Optimization 5

Flowchart 10010110 01100010 10100100 10011001 01111101............ Current generation Selection Elitism Crossover Mutation 10010110 01100010 10100100 10011101 01111001............ Next generation Algorithm: Step 1: Initialize a population with randomly generated individuals and evaluate the fitness value of each individual Step 2: (a) Select 2 members from the population with probabilities proportional to their fitness values (b) Apply crossover with a probability equal to the crossover rate (c) Apply mutation with a probability equal to the mutation rate (d) Repeat (a) to (d) until enough members are generated to form the next generation Step 3: Repeat step 2 & 3 until a stopping criterion is met Ch.7: Derivative-Free Optimization 6

Example: Find the max. of the peaks function z = f(x, y) = 3(1-x)^2exp(-(x^2) - (y+1)^2) - 10(x/5 - x^3 - y^5)exp(-x^2-y^2) -1/3exp(-(x+1)^2 - y^2). Use of GA on the domain [-3,3] [-3,3] Use 8-bit binary coding for each variable the search space is 2 8 2 8 = 65,536 Each generation contains 20 points (or individuals) Use of a simple one-point crossover scheme with rate = 1.0 Use of a uniform mutation with rate = 0.01 Apply elitism to keep the best individuals across generations Ch.7: Derivative-Free Optimization 7

GA process: Initial population 5th generation 10th generation Performance profile Ch.7: Derivative-Free Optimization 8

Simulated Annealing (SA) (7.3) Introduction Introduced by Metropolis et al. in 1953 and adapted by Kirkpatrick (1983) in order to find an optimum solution to a large-scale combinatorial optimization problems It is a derivative free optimization method SA was derived from physical characteristics of spin glasses Simulated Annealing (cont.) (7.3) Introduction (cont.) The principle behind SA is similar to what happens when metals are cooled at a controlled rate The slowly decrease of temperature allows the atoms in the molten metal to line themselves up an form a regular crystalline structure that possesses a low density & a low energy Ch.7: Derivative-Free Optimization 9

Simulated Annealing (cont.) (7.3) Introduction (cont.) The value of an objective function that we intend to minimize corresponds to the energy in a thermodynamic system High temperatures corresponds to the case where high-mobility atoms can orient themselves with other non-local atoms & the energy can increase: function evaluation accepts new points with higher energy Simulated Annealing (cont.) (7.3) Introduction (cont.) Low temperatures corresponds to the case where the lowmobility atoms can only orient themselves with local atoms & the energy state is not likely to increase: Function evaluation is performed only locally and points with higher energy are more & more refused The most important element of SA is the so-called annealing schedule (or cooling schedule) which express how fast the temperature is being lowered from high to low Ch.7: Derivative-Free Optimization 10

Simulated Annealing (cont.) (7.3) Terminology: Objective function E(x): function to be optimized Move set: set of next points to explore E = x new x is a random variable with pdf = g(.,.) Generating function: pdf for selecting next point g( x, T) = (2π T) -n/2 exp[- x 2 / 2T] (n is the explored space dimension) Simulated Annealing (cont.) (7.3) Terminology (cont.) Acceptance function h( E, T): to determine if the selected point should be accepted or not. Usually h( E, T) = 1/(1+exp( E/(cT)). Annealing (cooling) schedule: schedule for reducing the temperature T Ch.7: Derivative-Free Optimization 11

Simulated Annealing (cont.) (7.3) Basic step involved in a general SA method Step 1 [Initialization]: Choose an initial point x and a high temperature T and set the iteration count k to 1 Step 2 [Evaluation]: Evaluate the objective function E = f(x) Step 3 [Exploration]: Select x with probability g( x, T), and set x new = x + x Step 4 [Reevaluation]: Compute the new value of the objective function E new = f(x new ) Simulated Annealing (cont.) (7.3) Basic step involved in a general SA method (cont.) Step 5 [Acceptance]: Test if x new is accepted or not by computing h( E, T) where E = E new -E Step 6: Lower the temperature according to the annealing schedule (T = ηt; 0 < η < 1) Step 7: k = k + 1, if k reaches the maximum iteration count, then stop otherwise go to step 3 Ch.7: Derivative-Free Optimization 12

Simulated Annealing (cont.) (7.3) Example: Travel Salesperson Problem (TSP) How to transverse n cities once and only once with a minimal total distance? NP hard problem with [(n 1)!] / 2 possible tours to explore Move sets for TSP 1 2 12 3 10 7 11 8 4 5 1-2-3-4-5-6-7-8-9-10-11-12 6 9 Remove 6-7 and 8-9 and replace them with opposite order Inversion 12 10 3 1 6 2 7 11 8 9 4 5 1-2-3-4-5-9-8-7-6-10-11-12 Remove 8-7 & replace it in between two randomly selected cities 4 & 5 Translation 12 10 3 1 6 2 7 11 9 8 4 5 1-2-11-4-8-7-5-9-6-10-3-12 Select 3 and 11 and switch them Switching 12 10 3 1 6 2 7 11 9 8 4 5 1-2-3-4-8-7-5-9-6-10-11-12 Ch.7: Derivative-Free Optimization 13

Simulated Annealing (cont.) (7.3) A 100-city TSP using SA Initial random path During SA process Final path Random Search (7.4) This method explores the parameter space of an objective function sequentially in a random fashion to find the optimal point that maximizes the objective function This method is simple and converges to the global optimum surely on a compact set Ch.7: Derivative-Free Optimization 14

Random Search (cont.) (7.4) The steps involved are: Step 1: Choose an initial point x as the current point Step 2: Add a random vector dx to the current point x & evaluate the objective function at x + dx Step 3: if f(x + dx) < f(x) set x = x + dx Step 4: Stop the process if max iteration is reacted otherwise go back to step 2 to find a new point Random Search (cont.) (7.4) This method is blind since the search directions are guided by a random number generator, therefore an improved version is developed It is based on 2 observations: If a search in a direction results in a higher value of the objective function the the opposite direction should provide a lower value of the objective function Successive successful (failure) searches in a certain direction should bias subsequent searches toward (or against) this direction Ch.7: Derivative-Free Optimization 15

Random Search (cont.) (7.4) Flowchart: Select a random dx f(x+b+dx)<f(x)? no f(x+b-dx)<f(x)? no yes yes x = x + b + dx b = 0.2 b + 0.4 dx x = x + b - dx b = b - 0.4 dx b = 0.5 b Downhill Simplex Search (7.5) It is a derivative free method for multidimensional function optimization It has an interesting geometrical interpretation Principle: It starts with an initial simplex and replaces the point having the highest function value in a simplex with another point Ch.7: Derivative-Free Optimization 16

Downhill Simplex Search (cont.) (7.5) It is based on 4 operations: Reflection Reflection & expansion Contraction Shrinkage Downhill Simplex Search (cont.) (7.5) Ch.7: Derivative-Free Optimization 17

Downhill Simplex Search (cont.) (7.5) Cycle of the DSS Start with a point P0 and set up the simplex Pi = P0 + λi ei (i = 1,, n). Let s define the following quantities: l = argmin{yi} (l for low ) h = argmax{yi} (h for high ) yi is the function value at the simplex point Pi Downhill Simplex Search (cont.) Cycle of the DSS (cont.) Interval 1: {y; y y l } Interval 2: {y; y l < y {y i }} Interval 3: {y; max < y y h } i h i Interval 4: {y; y h <y} max i h i Ch.7: Derivative-Free Optimization 18

Downhill Simplex Search (cont.) (7.5) Cycle of the DSS (cont.) (Choose an opposite direction of P h ) 4 Steps are needed for each cycle of the DSS A. Reflection: Define the reflection point P and its value as: _ y P = P+ α (P P y = f P _ h ) ( α > 0) _ (P centroid of (n + 1) points) Downhill Simplex Search (cont.) (7.5) Cycle of the DSS (cont.) A. Reflection (cont.) Test: 1. If y Interval 1 go to Expansion (continue on this direction) 2. If y Interval 2 replace P h with P and terminate the cycle 3. If y Interval 3 replace P h with P and go to contraction 4. If y Interval 4 go to contraction (change direction) Ch.7: Derivative-Free Optimization 19

Downhill Simplex Search (cont.) (7.5) Cycle of the DSS (cont.) B. Expansion: Define the expansion point _ P = P+ γ(p P) y = f P ( γ > 1) Test: if y interval 1, replace P h with and terminate cycle. Otherwise, replace P h with the original reflection point P & terminate the cycle _ P Downhill Simplex Search (cont.) (7.5) Cycle of the DSS (cont.) C. Contraction: Define P = P+ β(ph P) y = f P ;0 < β < 1 Test: if y Interval 1, 2 or 3 replace P h with P and terminate the cycle. Otherwise go to shrinkage D. Shrinkage: Replace P i with (P i + P l ) / 2 and terminate cycle Ch.7: Derivative-Free Optimization 20