Hyper-heuristics. 2 Outline Hyper-heuristics Hyper-heuristics for strip packing Hyper-heuristics for Stock forecasting Conclusion.

Slides:



Advertisements
Similar presentations
Md. Ahsan Arif, Assistant Professor, Dept. of CSE, AUB
Advertisements

Algorithm Design Techniques
Heuristic Search techniques
Presentation on Artificial Intelligence
 Review: The Greedy Method
Greedy Algorithms.
Introduction to Computer Science 2 Lecture 7: Extended binary trees
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
Algorithms Analysis Lecture 6 Quicksort. Quick Sort Divide and Conquer.
Tetris – Genetic Algorithm Presented by, Jeethan & Jun.
Analysis of Algorithms
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Anany Levitin ACM SIGCSE 1999SIG. Outline Introduction Four General Design Techniques A Test of Generality Further Refinements Conclusion.
Data Structures Using C++ 2E
CSC 423 ARTIFICIAL INTELLIGENCE
ISOM MIS 215 Module 7 – Sorting. ISOM Where are we? 2 Intro to Java, Course Java lang. basics Arrays Introduction NewbieProgrammersDevelopersProfessionalsDesigners.
CPSC 335 Computer Science University of Calgary Canada.
Lecture 7: Greedy Algorithms II Shang-Hua Teng. Greedy algorithms A greedy algorithm always makes the choice that looks best at the moment –My everyday.
Intelligent Agents What is the basic framework we use to construct intelligent programs?
16.5 Introduction to Cost- based plan selection Amith KC Student Id: 109.
Lecture 7: Greedy Algorithms II
1 Forming Hyper-heuristics with GAs when Solving 2D-Regular Cutting Stock Problems Kuo-Hsien Chuang 2009/03/24.
Protein Structure Alignment by Incremental Combinatorial Extension (CE) of the Optimal Path Ilya N. Shindyalov, Philip E. Bourne.
 Optimal Packing of High- Precision Rectangles By Eric Huang & Richard E. Korf 25 th AAAI Conference, 2011 Florida Institute of Technology CSE 5694 Robotics.
HOW TO SOLVE IT? Algorithms. An Algorithm An algorithm is any well-defined (computational) procedure that takes some value, or set of values, as input.
Genetic Algorithm.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Efficient Model Selection for Support Vector Machines
CSC 201 Analysis and Design of Algorithms Lecture 03: Introduction to a CSC 201 Analysis and Design of Algorithms Lecture 03: Introduction to a lgorithms.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
An Integration Framework for Sensor Networks and Data Stream Management Systems.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
An Efficient Placement Strategy for Metaheuristics based Layout Optimization by Abdul-Rahim Ahmad Otman Basir Systems Design Engineering, University of.
March 16 & 21, Csci 2111: Data and File Structures Week 9, Lectures 1 & 2 Indexed Sequential File Access and Prefix B+ Trees.
Analysis of algorithms Analysis of algorithms is the branch of computer science that studies the performance of algorithms, especially their run time.
Data Structures Using C++ 2E Chapter 8 Queues. Data Structures Using C++ 2E2 Objectives Learn about queues Examine various queue operations Learn how.
Applying Genetic Algorithm to the Knapsack Problem Qi Su ECE 539 Spring 2001 Course Project.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
CS 61B Data Structures and Programming Methodology July 21, 2008 David Sun.
Thursday, May 9 Heuristic Search: methods for solving difficult optimization problems Handouts: Lecture Notes See the introduction to the paper.
Mobile Agent Migration Problem Yingyue Xu. Energy efficiency requirement of sensor networks Mobile agent computing paradigm Data fusion, distributed processing.
FORS 8450 Advanced Forest Planning Lecture 11 Tabu Search.
FORS 8450 Advanced Forest Planning Lecture 5 Relatively Straightforward Stochastic Approach.
Chapter 4 Decision Support System & Artificial Intelligence.
Tetris Agent Optimization Using Harmony Search Algorithm
Sorting: Implementation Fundamental Data Structures and Algorithms Klaus Sutner February 24, 2004.
December 14, 2015 Design and Analysis of Computer Algorithm Pradondet Nilagupta Department of Computer Engineering.
Unsupervised Mining of Statistical Temporal Structures in Video Liu ze yuan May 15,2011.
Analysis of the Traveling Salesman Problem and current approaches for solving it. Rishi B. Jethwa and Mayank Agarwal. CSE Department. University of Texas.
The Nature of Organisation Chapter 2, page 55. Structure of Part 1: The Nature of Organisations The concept and role of organisations Elements of an organisation.
Chapter 9 Sorting. The efficiency of data handling can often be increased if the data are sorted according to some criteria of order. The first step is.
The bin packing problem. For n objects with sizes s 1, …, s n where 0 < s i ≤1, find the smallest number of bins with capacity one, such that n objects.
Greedy Algorithms BIL741: Advanced Analysis of Algorithms I (İleri Algoritma Çözümleme I)1.
Knowledge Representation Fall 2013 COMP3710 Artificial Intelligence Computing Science Thompson Rivers University.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Quicksort This is probably the most popular sorting algorithm. It was invented by the English Scientist C.A.R. Hoare It is popular because it works well.
Metaheuristics for the New Millennium Bruce L. Golden RH Smith School of Business University of Maryland by Presented at the University of Iowa, March.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Algorithms and Problem Solving
C.-S. Shieh, EC, KUAS, Taiwan
For Monday Chapter 6 Homework: Chapter 3, exercise 7.
Artificial Intelligence Problem solving by searching CSC 361
Objective of This Course
Multi-Objective Optimization
Algorithms and Problem Solving
Knowledge Representation
Area Coverage Problem Optimization by (local) Search
Algorithm Course Algorithms Lecture 3 Sorting Algorithm-1
Presentation transcript:

hyper-heuristics

2 Outline Hyper-heuristics Hyper-heuristics for strip packing Hyper-heuristics for Stock forecasting Conclusion

Hyper-heuristics The key idea is to devise new algorithms for solving problems by combining known heuristics in ways that allow each to compensate, to some extent, for the weaknesses of others. They might be thought of as heuristics to chooseheuristics. They are methods which work with a search space of heuristics. One of the main goals of research in this area is to devise algorithms that are fast and exhibit good performance across a whole family of problems, presumably because the algorithms address some shared features of the whole set of problems.

Hyper-heuristics Many practical problems cannot be tackled by exhaustive search, either to find an optimal solution or even to find a very good quality solution. For such problems people often resort to heuristic methods: incomplete search methods that offer no guarantees of success and perhaps also involving some random elements. There are many varieties of heuristic search methods in regular use. 4

Hyper-heuristics Despite the fact that all these search techniques are often very effective, there can often be some reluctance to use them for money-critical problems. In practice, experience suggests that people often prefer to use very simple and readily understandable search methods even if those methods deliver relatively inferior results. 5

Disadvantages of Heuristics Heuristics involve making a significant range of parameter or algorithm choices and it is not clear to inexperienced users what is best and whether certain choices are actively bad; Heuristics for real world problems tends to represent bespoke problem-specific methods which are particularly resource intensive to develop and implement; Metaheuristics often involve making some probabihstic choices, so that two seemingly identical runs may produce significantly different answers to the very same problem; 6

Disadvantages of Heuristics even if the technique generates a good-looking solution, it can be hard to understand how the solution was arrived at; this matters because it is often important to a group of people to feel that a proposed solution is intuitively acceptable; people are often unwilling to trust a computer‘s results implicitly, and often that is for good reasons. 7

Hyper-heuristics The broad aim is to discover some algorithm for solving a whole range of problems that is fast, reasonably comprehensible, trustable in terms of quality and repeatability and with good worst-case behavior across that range of problems. The goal is to develop algorithms that are more generally applicable than many of the implementations of the approaches outlined above. The space of possible algorithms for any given sort of problem is of course vast and there are many ways to search certain parts of such a space. 8

Hyper-heuristics Although hyper-heuristics might be regarded as a special form of genetic programming, the key intuition underlying research in this area is that, for a given type of problem, there are often a number of straightforward heuristics already in existence that can work well (but perhaps not optimally) for certain sorts of instances of that type of problem. Perhaps it is possible to combine those existing heuristics into some more elaborate algorithm that will work well across a range of problems. 9

Hyper-heuristics for strip packing The key idea is to tackle problems using various low-level heuristics and develop a framework that controls the applications of the heuristics. Using this framework the time consuming task of designing an algorithm with special components for a specific algorithm is reduced. This kind of approach is useful to obtain a good solution for a problem in a reasonable amount of time. It emphasizes a compromise between the quality of the solution and the invested time for designing the algorithm. Our goal is to show that hyperheuristics can be applied to solve Strip Packing Problems providing effective solutions in an efficient way. 10

Heuristics based Methods Bottom-Left heuristics (BL): first orders the objects according to their area. The objects are placed at the top and pushed down and left as much as possible. Bottom Left Fit (BLF) : each object is located at the most bottom and left possible place. BLD: the objects are ordered using various criteria (height,width, perimeter, area) and the algorithm selects the best result obtained. BLD*:the objects are randomly ordered according to the Kendall-tau distance from all of the possible fixed orders. 11

Best Fit (BF): uses a dynamic ordering for the rectangles to be located. The algorithm goes through the possible places from the most bottom left one, and selects for each place the rectangle that best fits in it (if it exists). 12

BFDH,FFDH,NFDH, HFDH* The objects are oriented such that their width is not lower than their height, and they are ordered from highest to lowest. Each object is packed in a rectangular sub-area of the container in the bottom left corner. The width of the sub-area is given by the container, and the height is given by the first object packed in this sub- area. When it is possible to include the current object to be placed into some sub-areas, it is positioned into the sub-area having: 13

BFDH,FFDH,NFDH, HFDH* the least available area for BFDH; the bottom available area for FFDH; and the top area, if it is available, for NFDH. In other cases the algorithm opens a new sub- area above the existing sub-areas positioning the current object in the bottom left corner as the first object of this sub-area. BFDH* seeks to improve this heuristic by allowing object rotations, so that when the algorithm searches to include the current object into a sub-area it tests both orientations. 14

HR: When the first object is positioned in the container (on the bottom left corner) it identifies two remaining areas. It recursively continues placing the remaining objects. 15

Hyperheuristic approach: H-SP We have chosen to build a simple hyperheuristic that manages a sequence of low-level greedy heuristics. From the analysis of the four selected low-level heuristics we can remark the following: Performance changes according to the order of the objects and their rotation. The data structure to obtain a good implementation code is not always the same for all of these heuristics. 16

17

Representation 18

19

Add operation 20

Remove operation 21

Replace operation 22

Hyperheuristic approach: H-SP 23

Results 24

25 Homework Experiments Implement H-SP for strip packing problem Reference Ignacio Araya, Bertrand Neveu, and Mar´ıa-Cristina Riff. An Efficient Hyperheuristic for Strip-Packing Problems. Adaptive and Multilevel Metaheuristics Studies in Computational Intelligence, Volume 136, 2008, pp 61-76