A recent direction of hyper-heuristics is the automated design of intelligent systems with the aim of reducing the man hours needed to implement such systems. One of the design decisions that often has to be made when developing intelligent systems is the low-level construction heuristic to use. These are usually rules of thumb derived based on human intuition. Generally a heuristic is derived for a particular domain. However, according to the no free lunch theorem different low-level heuristics will be effective for different problem instances. Deriving low-level heuristics for problem instances will be time consuming and hence we examine the automatic induction of low-level heuristics using hyper-heuristics. We investigate this for classical artificial intelligence. At the inception of the field of artificial intelligence search methods to solve problems were generally uninformed, such as the depth first and breadth first searches, and did not take any domain specific knowledge into consideration. As the field matured domain specific knowledge in the form of heuristics were used to guide the search, thereby reducing the search space. Search methods using heuristics to guide the search became known as informed searches, such as the best-first search, hill-climbing and the A* algorithm. Heuristics used by these searches are problem specific rules of thumb created by humans. This study investigates the use of a generative hyper-heuristic to derive these heuristics. The hyper-heuristic employs genetic programming to evolve the heuristics. The approach was tested on two classical artificial intelligence problems, namely, the 8-puzzle problem and Towers of Hanoi. The genetic programming system was able to evolve heuristics that produced solutions for 20 8-puzzle problems and 5 instances of Towers of Hanoi. Furthermore, the heuristics induced were able to produce solutions to the instances of the 8-puzzle problem which could not be solved using the A* algorithm with the number of tiles out of place heuristic and at least one admissible heuristic was evolved for all 25 problems.
[1]
Gabriela Ochoa,et al.
Grammar-based generation of variable-selection heuristics for constraint satisfaction problems
,
2016,
Genetic Programming and Evolvable Machines.
[2]
George F. Luger,et al.
AI Algorithms, Data Structures, and Idioms in Prolog, Lisp, and Java for Artificial Intelligence: Structures and Strategies for Complex Problem Solving
,
2008
.
[3]
Graham Kendall,et al.
Exploring Hyper-heuristic Methodologies with Genetic Programming
,
2009
.
[4]
John R. Koza,et al.
Genetic programming - on the programming of computers by means of natural selection
,
1993,
Complex adaptive systems.
[5]
Graham Kendall,et al.
A Dynamic Multiarmed Bandit-Gene Expression Programming Hyper-Heuristic for Combinatorial Optimization Problems
,
2015,
IEEE Transactions on Cybernetics.
[6]
Michel Gendreau,et al.
Hyper-heuristics: a survey of the state of the art
,
2013,
J. Oper. Res. Soc..