110 research outputs found

    Grammatical evolution hyper-heuristic for combinatorial optimization problems

    Get PDF
    Designing generic problem solvers that perform well across a diverse set of problems is a challenging task. In this work, we propose a hyper-heuristic framework to automatically generate an effective and generic solution method by utilizing grammatical evolution. In the proposed framework, grammatical evolution is used as an online solver builder, which takes several heuristic components (e.g., different acceptance criteria and different neighborhood structures) as inputs and evolves templates of perturbation heuristics. The evolved templates are improvement heuristics, which represent a complete search method to solve the problem at hand. To test the generality and the performance of the proposed method, we consider two well-known combinatorial optimization problems: exam timetabling (Carter and ITC 2007 instances) and the capacitated vehicle routing problem (Christofides and Golden instances). We demonstrate that the proposed method is competitive, if not superior, when compared to state-of-the-art hyper-heuristics, as well as bespoke methods for these different problem domains. In order to further improve the performance of the proposed framework we utilize an adaptive memory mechanism, which contains a collection of both high quality and diverse solutions and is updated during the problem solving process. Experimental results show that the grammatical evolution hyper-heuristic, with an adaptive memory, performs better than the grammatical evolution hyper-heuristic without a memory. The improved framework also outperforms some bespoke methodologies, which have reported best known results for some instances in both problem domains

    Automated generation of constructive ordering heuristics for educational timetabling

    Get PDF
    Construction heuristics play an important role in solving combinatorial optimization problems. These heuristics are usually used to create an initial solution to the problem which is improved using optimization techniques such as metaheuristics. For examination timetabling and university course timetabling problems essentially graph colouring heuristics have been used for this purpose. The process of deriving heuristics manually for educational timetabling is a time consuming task. Furthermore, according to the no free lunch theorem different heuristics will perform well for different problems and problem instances. Hence, automating the induction of construction heuristics will reduce the man hours involved in creating such heuristics, allow for the derivation of problem specific heuristics and possibly result in the derivation of heuristics that humans have not thought of. This paper presents generation construction hyper-heuristics for educational timetabling. The study investigates the automatic induction of two types of construction heuristics, namely, arithmetic heuristics and hierarchical heuristics. Genetic programming is used to evolve arithmetic heuristics. Genetic programming, genetic algorithms and the generation of random heuristic combinations is examined for the generation of hierarchical heuristics. The hyper-heuristics generating both types of heuristics are applied to the examination timetabling and the curriculum based university course timetabling problems. The evolved heuristics were found to perform much better than the existing graph colouring heuristics used for this domain. Furthermore, it was found that the while the arithmetic heuristics were more effective for the examination timetabling problem, the hierarchical heuristics produced better results than the arithmetic heuristics for the curriculum based course timetabling problem. Genetic algorithms proved to be the most effective at inducing hierarchical heuristics

    Grammar-based generation of variable-selection heuristics for constraint satisfaction problems

    Get PDF
    We propose a grammar-based genetic programming framework that generates variable-selection heuristics for solving constraint satisfaction problems. This approach can be considered as a generation hyper-heuristic. A grammar to express heuristics is extracted from successful human-designed variable-selection heuristics. The search is performed on the derivation sequences of this grammar using a strongly typed genetic programming framework. The approach brings two innovations to grammar-based hyper-heuristics in this domain: the incorporation of if-then-else rules to the function set, and the implementation of overloaded functions capable of handling different input dimensionality. Moreover, the heuristic search space is explored using not only evolutionary search, but also two alternative simpler strategies, namely, iterated local search and parallel hill climbing. We tested our approach on synthetic and real-world instances. The newly generated heuristics have an improved performance when compared against human-designed heuristics. Our results suggest that the constrained search space imposed by the proposed grammar is the main factor in the generation of good heuristics. However, to generate more general heuristics, the composition of the training set and the search methodology played an important role. We found that increasing the variability of the training set improved the generality of the evolved heuristics, and the evolutionary search strategy produced slightly better results

    Hyper‐Heuristics and Metaheuristics for Selected Bio‐Inspired Combinatorial Optimization Problems

    Get PDF
    Many decision and optimization problems arising in bioinformatics field are time demanding, and several algorithms are designed to solve these problems or to improve their current best solution approach. Modeling and implementing a new heuristic algorithm may be time‐consuming but has strong motivations: on the one hand, even a small improvement of the new solution may be worth the long time spent on the construction of a new method; on the other hand, there are problems for which good‐enough solutions are acceptable which could be achieved at a much lower computational cost. In the first case, specially designed heuristics or metaheuristics are needed, while the latter hyper‐heuristics can be proposed. The paper will describe both approaches in different domain problems

    Hyper-heuristic decision tree induction

    Get PDF
    A hyper-heuristic is any algorithm that searches or operates in the space of heuristics as opposed to the space of solutions. Hyper-heuristics are increasingly used in function and combinatorial optimization. Rather than attempt to solve a problem using a fixed heuristic, a hyper-heuristic approach attempts to find a combination of heuristics that solve a problem (and in turn may be directly suitable for a class of problem instances). Hyper-heuristics have been little explored in data mining. This work presents novel hyper-heuristic approaches to data mining, by searching a space of attribute selection criteria for decision tree building algorithm. The search is conducted by a genetic algorithm. The result of the hyper-heuristic search in this case is a strategy for selecting attributes while building decision trees. Most hyper-heuristics work by trying to adapt the heuristic to the state of the problem being solved. Our hyper-heuristic is no different. It employs a strategy for adapting the heuristic used to build decision tree nodes according to some set of features of the training set it is working on. We introduce, explore and evaluate five different ways in which this problem state can be represented for a hyper-heuristic that operates within a decisiontree building algorithm. In each case, the hyper-heuristic is guided by a rule set that tries to map features of the data set to be split by the decision tree building algorithm to a heuristic to be used for splitting the same data set. We also explore and evaluate three different sets of low-level heuristics that could be employed by such a hyper-heuristic. This work also makes a distinction between specialist hyper-heuristics and generalist hyper-heuristics. The main difference between these two hyperheuristcs is the number of training sets used by the hyper-heuristic genetic algorithm. Specialist hyper-heuristics are created using a single data set from a particular domain for evolving the hyper-heurisic rule set. Such algorithms are expected to outperform standard algorithms on the kind of data set used by the hyper-heuristic genetic algorithm. Generalist hyper-heuristics are trained on multiple data sets from different domains and are expected to deliver a robust and competitive performance over these data sets when compared to standard algorithms. We evaluate both approaches for each kind of hyper-heuristic presented in this thesis. We use both real data sets as well as synthetic data sets. Our results suggest that none of the hyper-heuristics presented in this work are suited for specialization – in most cases, the hyper-heuristic’s performance on the data set it was specialized for was not significantly better than that of the best performing standard algorithm. On the other hand, the generalist hyper-heuristics delivered results that were very competitive to the best standard methods. In some cases we even achieved a significantly better overall performance than all of the standard methods

    Assessing hyper-heuristic performance

    Get PDF
    Limited attention has been paid to assessing the generality performance of hyper-heuristics. The performance of hyper-heuristics has been predominately assessed in terms of optimality which is not ideal as the aim of hyper-heuristics is not to be competitive with state of the art approaches but rather to raise the level of generality, i.e. the ability of a technique to produce good results for different problem instances or problems rather than the best results for some instances and poor results for others. Furthermore from existing literature in this area it is evident that different hyper-heuristics aim to achieve different levels of generality and need to be assessed as such. To cater for this the paper firstly presents a new taxonomy of four different levels of generality that can be attained by a hyper-heuristic based on a survey of the literature. The paper then proposes a performance measure to assess the performance of different types of hyper-heuristics at the four levels of generality in terms of generality rather than optimality. Three case studies from the literature are used to demonstrate the application of the generality performance measure. The paper concludes by examining how the generality measure can be combined with measures of other performance criteria, such as optimality, to assess hyper-heuristic performance on more than one criterion

    Heuristic generation via parameter tuning for online bin packing

    Get PDF
    Online bin packing requires immediate decisions to be made for placing an incoming item one at a time into bins of fixed capacity without causing any overflow. The goal is to maximise the average bin fullness after placement of a long stream of items. A recent work describes an approach for solving this problem based on a ‘policy matrix’ representation in which each decision option is independently given a value and the highest value option is selected. A policy matrix can also be viewed as a heuristic with many parameters and then the search for a good policy matrix can be treated as a parameter tuning process. In this study, we show that the Irace parameter tuning algorithm produces heuristics which outperform the standard human designed heuristics for various instances of the online bin packing problem

    A generation perturbative hyper-heuristic for combinatorial optimization problems

    Get PDF
    Dissertation (MSc (Computer Science))--University of Pretoria, 2020.Perturbative heuristics or move operators are problem dependent operators commonly used by search techniques to solve computationally hard problems such as combinatorial optimization problems. These operators are generally derived manually by problem domain experts but this process is extremely challenging and time consuming. Hence, some initiatives aimed at automating the derivation process using search methodologies such as hyper-heuristics have been proposed in recent years. However, most of the proposed hyper-heuristic approaches generate new perturbative heuristics by recombining already existing and human-derived perturbative heuristics or components with various move acceptance criteria instead of generating the heuristics from scratch. As a result, these approaches cannot be easily applied to other problem domains where the human-derived heuristics are not available. In addition, the few hyper-heuristic approaches that have been proposed to generate perturbative heuristics from scratch are either designed for a single problem domain or applicable only to specific types of problems such as those that can be represented as graphs. The research presented in this dissertation addresses these issues by proposing a novel approach that can be used to automatically generate perturbative heuristics for any combinatorial optimization problem. In the proposed approach, perturbative heuristics are defined in terms of a set of basic operations (e.g. move and swap) and components of the solution (e.g. exam, period and room for the examination timetabling problem). Grammatical evolution, a well-known Evolutionary Algorithm, is used to combine the basic operations and components of the solution into perturbative heuristics. The generality of the proposed approach is tested by applying it to benchmark sets from three different problem domains, namely examination timetabling, vehicle routing and Boolean satisfiability. In addition, the performance of the perturbative heuristics generated by the proposed approach on the benchmark sets is compared to that of the commonly-used human-derived perturbative heuristics as well as the perturbative heuristics generated by other hyper-heuristic approaches in the literature. The experimental results show that the perturbative heuristics evolved by the proposed approach, specifically the grammatical evolution extended approach, outperformed the human-derived perturbative heuristics on all benchmark sets from the three problem domains. When compared to existing hyper-heuristic approaches, the proposed approach obtained solutions that were superior to those obtained by most hyper-heuristic approaches on the examination timetabling problem and only slightly inferior to those obtained by the best performing hyper-heuristic approaches on the vehicle routing and Boolean satisfiability problems. This performance of the proposed approach can be attributed to the fact that the generated perturbative heuristics were applied as is with no optimization as is commonly done with most hyper-heuristic approaches. Overall, the experimental results demonstrated success in developing an approach that can be used to automatically generate perturbative heuristics from scratch. Future work will consider incorporating optimization techniques during problem solving as well as performing a fitness landscape analysis in order to further improve the quality of solutions and have a better understanding of the proposed approach.SELF/ NRF MastersComputer ScienceMSc (Computer Science)Unrestricte
    corecore