In many industrial problem domains, when faced with a combinatorial optimisation problem, a “good enough, quick enough” solution to a problem is often required. Simple heuristics often suffice in this case. However, for many domains, a simple heuristic may not be available, and designing one can require considerable expertise. Noting that a wide variety of problems can be represented as graphs, we describe a system for the automatic generation of constructive heuristics in the form of Python programs by mean of grammatical evolution. The system can be applied seamlessly to different graph-based problem domains, only requiring modification of the fitness function. We demonstrate its effectiveness by generating heuristics for the Travelling Salesman and Multi-Dimensional Knapsack problems. The system is shown to be better or comparable to human-designed heuristics in each domain. The generated heuristics can be used ‘out-of-the-box’ to provide a solution, or to augment existing hyper-heuristic algorithms with new low-level heuristics.
CITATION STYLE
Stone, C., Hart, E., & Paechter, B. (2018). Automatic Generation of Constructive Heuristics for Multiple Types of Combinatorial Optimisation Problems with Grammatical Evolution and Geometric Graphs. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 10784 LNCS, pp. 578–593). Springer Verlag. https://doi.org/10.1007/978-3-319-77538-8_40
Mendeley helps you to discover research relevant for your work.