Nelishia Pillay School of Mathematics, Statistics and Computer Science University of KwZulu-Natal

Slides:



Advertisements
Similar presentations
G5BAIM Artificial Intelligence Methods
Advertisements

Constraint Optimization We are interested in the general non-linear programming problem like the following Find x which optimizes f(x) subject to gi(x)
CS6800 Advanced Theory of Computation
Neural and Evolutionary Computing - Lecture 4 1 Random Search Algorithms. Simulated Annealing Motivation Simple Random Search Algorithms Simulated Annealing.
Tetris – Genetic Algorithm Presented by, Jeethan & Jun.
Ant Colony Hyper-heuristics for Graph Colouring Nam Pham ASAP Group, Computer Science School University of Nottingham.
Gizem ALAGÖZ. Simulation optimization has received considerable attention from both simulation researchers and practitioners. Both continuous and discrete.
Spie98-1 Evolutionary Algorithms, Simulated Annealing, and Tabu Search: A Comparative Study H. Youssef, S. M. Sait, H. Adiche
Reporter : Mac Date : Multi-Start Method Rafael Marti.
Genetic Algorithms and Their Applications John Paxton Montana State University August 14, 2003.
EAs for Combinatorial Optimization Problems BLG 602E.
Ant Colony Optimization Optimisation Methods. Overview.
A study of heuristic combinations for hyper- heuristic systems for the uncapacitated examination timetabling problem Kuo-Hsien Chuang 2009/02/24.
7/2/2015Intelligent Systems and Soft Computing1 Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Optimization of thermal processes2007/2008 Optimization of thermal processes Maciej Marek Czestochowa University of Technology Institute of Thermal Machinery.
Lecture: 5 Optimization Methods & Heuristic Strategies Ajmal Muhammad, Robert Forchheimer Information Coding Group ISY Department.
Genetic Programming.
Slides are based on Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming n Evolution.
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Evolutionary algorithms
Genetic Algorithm.
Genetic Algorithms and Ant Colony Optimisation
Evolutionary Intelligence
© Negnevitsky, Pearson Education, CSC 4510 – Machine Learning Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University.
1 Paper Review for ENGG6140 Memetic Algorithms By: Jin Zeng Shaun Wang School of Engineering University of Guelph Mar. 18, 2002.
A Comparison of Nature Inspired Intelligent Optimization Methods in Aerial Spray Deposition Management Lei Wu Master’s Thesis Artificial Intelligence Center.
© Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Evolution strategies Evolution.
Optimization in Engineering Design Georgia Institute of Technology Systems Realization Laboratory Mixed Integer Problems Most optimization algorithms deal.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Neural and Evolutionary Computing - Lecture 5 1 Evolutionary Computing. Genetic Algorithms Basic notions The general structure of an evolutionary algorithm.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
FINAL EXAM SCHEDULER (FES) Department of Computer Engineering Faculty of Engineering & Architecture Yeditepe University By Ersan ERSOY (Engineering Project)
Neural and Evolutionary Computing - Lecture 9 1 Evolutionary Neural Networks Design  Motivation  Evolutionary training  Evolutionary design of the architecture.
A Hybrid Genetic Algorithm for the Periodic Vehicle Routing Problem with Time Windows Michel Toulouse 1,2 Teodor Gabriel Crainic 2 Phuong Nguyen 2 1 Oklahoma.
1 Contents 1. Statement of Timetabling Problems 2. Approaches to Timetabling Problems 3. Some Innovations in Meta-Heuristic Methods for Timetabling University.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Exact and heuristics algorithms
Evolution Programs (insert catchy subtitle here).
1 Genetic Algorithms and Ant Colony Optimisation.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Genetic Algorithms CSCI-2300 Introduction to Algorithms
Edge Assembly Crossover
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Tutorial: Hyper-heuristics and computational Intelligence
Optimization Problems
Genetic Algorithms MITM613 (Intelligent Systems).
Biologically Inspired Computing: Indirect Encodings, and Hyperheuristics This is DWC’s lecture 7 for `Biologically Inspired Computing’ Contents: direct.
Genetic Search Algorithms Matt Herbster. Why Another Search?  Designed in the 1950s, heavily implemented under John Holland (1970s)  Genetic search.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
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.
Evolutionary Algorithms and Hyper-Heuristics
Evolution strategies and genetic programming
School of Computer Science & Engineering
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
CS621: Artificial Intelligence
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Multi-Objective Optimization
Genetic Algorithms CSCI-2300 Introduction to Algorithms
EE368 Soft Computing Genetic Algorithms.
Boltzmann Machine (BM) (§6.4)
A Tutorial (Complete) Yiming
Genetic Algorithm Soft Computing: use of inexact t solution to compute hard task problems. Soft computing tolerant of imprecision, uncertainty, partial.
Beyond Classical Search
Presentation transcript:

Nelishia Pillay School of Mathematics, Statistics and Computer Science University of KwZulu-Natal

 Introduction  An overview of hyper-heuristics ◦ Low-level heuristics ◦ Classification hyper-heuristics ◦ Hyper-heuristic frameworks  Evolutionary algorithm hyper-heuristics ◦ Overview ◦ Selection hyper-heuristics ◦ Generation hyper-heuristics ◦ Theoretical aspects ◦ Challenges  Recent and emerging directions ◦ Cross domain challenges ◦ Hybridization of solution and heuristic search space ◦ Hyper-Heuristics and Design ◦ Hyper-Hyper Heuristics  Discussion

 Tutorial site  Tutorial material

 Hyper-heuristics aim to provide a more generalized solution.  Explore a heuristic space rather than a solution space.  Heuristic space – low-level heuristics ◦ Constructive ◦ Perturbative  Selection vs. Generation  Role played by evolutionary algorithms

Low-Level Heuristics

 Heuristics vs. low-level heuristics  Construction heuristics – used to create a candidate solution  Perturbative heuristics – used to improve a solution created randomly or using a construction heuristic

 This problem involves the allocation of examinations to a set of specified timetable periods.  Constraints ◦ Hard constraints ◦ Soft constraints  Objective function ◦ Hard constraint cost must be zero ◦ Minimize soft constraint cost

 Largest degree (l) - The examination with the most clashes is scheduled first.  Largest enrollment (e) - The examination with the largest number of students is scheduled first.  Largest weighted degree (w) - The examination with the largest number of students involved in clashes is scheduled first.  Saturation degree (s) - The examination with the least number of feasible periods on the timetable is scheduled first.

E1E2E3E4E5 E1 E2 E3 E4 Clash matrix: ExaminationLargest Degree E1 E2 E3 E4 Static heuristics: PeriodExaminations P1 P2 P3 P E1 E3 E4 E2 Timetable:

E1E2E3E4E5 E1 E2 E3 E4 Clash matrix: ExaminationSaturation Degree E1 4 E2 4 E3 4 E4 4 Static heuristics: PeriodExaminations P1 P2 P3 P4 Timetable: E1 3 E2E E4

 Swapping two randomly selected exams  Swapping subsets of exams  De-allocating exams  Rescheduling exams  Swapping timeslots of two randomly selected examinations

 Define low-level construction heuristics for this problem.  Define low-level perturbative heuristics for this problem.  Can any of the heuristics used for the examination timetabling problem above be used for this problem?

Classification of Hyper-Heuristics

 Hyper-heuristics select or create low-level heuristics.  Low-level heuristics are constructive or perturbative.  Classification: ◦ Selection constructive ◦ Selection perturbative ◦ Generation constructive ◦ Generation perturbative  Learning – offline vs. online

 Selects the constructive heuristic to use at each stage in constructing a solution.  A problem specific objective function and low-level construction heuristics provide input to the hyper- heuristic.  Applications: educational timetabling, production scheduling, bin packing and cutting stock problems.  Methods used by the hyper-heuristic: case-based reasoning, tabu search, evolutionary algorithms, simulated annealing, variable neighbourhood search.

 Selection perturbative hyper-heuristics choose a low- level perturbative heuristic at each stage in the improvement.  Multi-point vs. single-point search  Single-point ◦ Heuristic selection – random, choice function, roulette wheel, reinforcement learning ◦ Move acceptance – deterministic vs. non-deterministic  Multi-point search uses population based methods, e.g. genetic algorithms, ant colonization.  Applications: educational timetabling, sports scheduling, personnel scheduling and vehicle routing

 Create low-level heuristics.  Genetic programming has primarily been used for this.  More recently variations of genetic programming: grammatical evolution and gene expression programming.  Have produced good results for the domains of educational timetabling and packing problems.  Disposable vs. reusable low-level heuristics.

Hyper-Heuristic Frameworks

 Hyflex – created for the cross domain challenge (CheSC) ◦ Development of selection perturbative hyper-heuristics ◦ Low-level heuristics, method to create initial solution and objective function provided. ◦ Implementation in Java  HYPERION 2 - For analyzing the trace performance of metaheuristics and hyper- heuristics ◦ Implementation in Java

 Evolutionary algorithms have been used for both the selection and generation of low-level construction and perturbative hyper-heuristics.  Genetic algorithms have essentially been used for selection and genetic programming for generation.  More recently, variations of genetic programming have proven to be effective for generation.

Selection hyper-heuristics

 Genetic algorithms explore the heuristic spaces.  Selection construction – find a combination of heuristics that will produce a solution minimizing the objective function.  Selection perturbative – find a combination of heuristics that will minimize the objective function further.  Each chromosome is composed of genes representing the low-level heuristics.

 Low-level construction heuristics ◦ Largest degree (l) ◦ Largest enrollment (e) ◦ Largest weighted degree (w) ◦ Saturation degree (s)  Chromosome representation and initial population generation ◦ Example: lwwse ◦ Chromosome length – longer than the number of examinations vs. shorter than number of examinations.

 Fitness calculation ◦ Each chromosome is used to create a timetable ◦ The fitness is a function of the hard and soft constraint cost. ◦ Product of the hard constraints plus one and the soft constraints  Example: lwwse to allocate the four examinations in the previous example: l → E1 w → E2 w → E3 s → E4

 Selection methods ◦ Tournament selection ◦ Fitness proportionate selection  Genetic operators ◦ Mutation – Parent: ssde Mutation point: 2 Offspring: swde ◦ Crossover – Parents: ssde lwws Crossover point: 2 Offspring: ssws lwde

 For a selection perturbative hyper-heuristic the low- level heuristics will change.  An initial solution will be created by using a low-level construction heuristic.  Example low-level heuristics: ◦ Swapping two randomly selected exams (e) ◦ Swapping subsets of exams (s) ◦ Deallocating exams (d) ◦ Rescheduling exams (a) ◦ Swapping timeslots of two randomly selected examinations (t)  Example chromosome: tdsse

ApproachApplicationHyper- Heuristic Study Genetic algorithmTrainer SchedulingSelection perturbative Cowling et al. [3] Messy GAOne and two dimensional bin- packing Selection constructive Lopez-Camacho et al. [17] Genetic algorithmDistributed staff trainer scheduling Selection perturbative Han and Kendall Genetic algorithmOne dimensional bin-packing Selection constructivePillay[13] Genetic algorithmEducational timetabling Selection constructive Pillay [10], Pillay[11], Pillay [14], Pillay [15]

 Genetic programming and variations of genetic programming, e.g. grammar-based genetic programming and grammatical evolution have been used.  Generative construction heuristics combine: ◦ variables representing the characteristics of the problem ◦ existing low-level construction heuristics to create new heuristics.  Generative perturbative hyper-heuristics combine different heuristic selection and move acceptance components to create new perturbative heuristics.  Applications: educational timetabling, packing problems and vehicle routing problems

 Function set: ◦ Standard addition (+), subtraction (-) and multiplication (*). ◦ % - protected division which will return a 1 if the denominator is zero. ◦ < - will return a value of 1 if its first argument is less than or equal to its second and -1 otherwise.  Terminal set ◦ F - the fullness of a bin, i.e. the sum of the sizes of the elements in the bin. ◦ C - the bin capacity ◦ S - the size of the item to place next.

 Fitness ◦ Each heuristic in the population is evaluated by using it to solve the problem instance. ◦ The fitness is calculated to be the difference of the number of bins used and the ratio of the sum of the items to the sum of the capacity of all bins used.  Example heuristic

ApproachApplicationHyper- Heuristic Study Genetic programming Packing problemGeneration constructive Burke et al. [1], Burke et al. [2], Hyde [6] Genetic programming Multidimensional knapsack problem Generative constructive Drake et al. [4] Grammatical evolution One dimensional knapsack problem Generative constructive Sotelo-Figueroa [25] Genetic programming Educational timetabling Generative constructive Pillay [9], Pillay[12], Pillay and Banzhaf [17], Pillay and Banzhaf [18] Grammatical evolution Educational timetabling Generative perturbative Sabar et al. [22] Grammatical evolution Vehicle routingGenerative perturbative Sabar et al. [22]

 Some studies show that hyper-heuristics produce results than searching the search some directly.  Why is this the case?  Some initial work on this: ◦ Allows for quicker movement through the solution space indirectly. Small movements in the heuristic space results in larger movement in the solution space. ◦ Fitness landscape has a big valley structure in which a global optimum is not isolated but surrounded by local optima.  Further theoretic investigations

 High runtimes ◦ Distributed architectures ◦ Distributed frameworks  Parameter tuning ◦ Tuning tools, e.g iRace, ParamILS ◦ Hyper-heuristics for design – using evolutionary algorithms with co-evolution

 Cross domain hyper-heuristics  Hybridizing solution and heuristic space search  Evolutionary algorithm hyper-heuristics for design  Hyper-heuristics for evolutionary algorithm design  Evolutionary algorithm hyper-hyper-heuristics

 CHeSC 2011 and CHeSC 2014  HyFlex (Java implementation) ◦ Provides method to create the initial solution ◦ Provides low-level perturbative heuristics ◦ Provides objective function ◦ Researcher to create selection perturbative hyper- heuristic  Problem domains ◦ Boolean satisfiability, one dimensional bin packing, flowshop scheduling, personnel scheduling. ◦ Hidden domains: TSP and vehicle routing

 CHeSC 2014 ◦ Introduces “batching”. ◦ Allows multithreading strategies  Adaptive evolutionary algorithm to select perturbative heuristics which produces good results for the vehicle routing problem.  Further investigations into using evolutionary algorithm hyper-heuristics.

 Searching the heuristic space and solution space – initial work in this area illustrates potential (Qu et al. 2009).  How should these be combined?  Evolutionary algorithms and co-evolution?

Evolutionary Algorithm Hyper-Heuristics for Design

 Selection and generation evolutionary algorithms have been used for design.  Evolutionary algorithms used: genetic algorithms, genetic programming, grammatical evolution.  Design aspects ◦ Selecting parameter values ◦ Selecting operators/methods and deciding control flow ◦ Hybridization of methods  Low-level heuristics are the parameter values, operators and methods.

ApproachDesign AspectStudy Grammar based GPDecision tree generation and design Barros et al. [1] Evolutionary algorithms Decision tree generationBarros et al. [2], Barros et al. [3] NSGA-IICombine neural networks into a stacked neural network. Furtuna et al. [5] Grammatical evolutionSelects operators and parameter values to solve a vehicle routing problem Marshall et al. [11] Genetic programmingGenerates black box search algorithms to solve the deceptive trap problem. Martin and Tauritz [12]

ApproachDesign AspectStudy Grammatical evolutionSelects operators and parameter values for ant colonization to solve the travelling salesman problem. Tavares and Pereira [20] Genetic programmingGenerates mutation operators for evolutionary programming Hong et al. [6] Grammatical evolutionSelects operators and parameter values for an evolutionary algorithm to solve the knapsack problem. Lourenco et al. [9]

Hyper-Heuristics for Evolutionary Algorithm Design

 Hyper-heuristics have also proven to be effective for the design of evolutionary algorithms.  Has been used to: ◦ decide on the control flow in an evolutionary algorithm by choosing when during the evolution process to use which operators ◦ select of parameter values ◦ hybridize evolutionary algorithms

Design AspectStudy Selection of recombination operator and selection method in differential evolution. Tinoco and Coelllo [21] Selects one of three multi-objective evolutionary algorithms to solve at each point of solving the problem Maashi et al. [10] Parameter tuning and determining the stopping condition in and implementation of MOEA. Segredo et al. [19] Selection of crossover operator, mutation operator and selection method in an evolutionary algorithm. Kumari and Srinivas [7], Kumaria and Srinivas [8] Generation of mutation operators in a genetic algorithmWoodward and Swan [21]

 Hyper-hyper-heuristics is the extension of the idea of hyper-heuristics to select or combine hyper- heuristics and generate new hyper-heuristics.  Evolutionary algorithms can be used for the design of hyper-heuristics as well.  Example: using gene expression programming to evolve a selection perturbative hyper-heuristic which is used in the HyFlex framework to generalize over 6 problem domains (Sabar et al. 2014)