This paper describes a new heuristic search optimisation algorithm capable of automatically generating programs in any language as solutions to a problem using an arbitrary BNF-based grammar. The approach maintains two populations of agents: the first, a set of partially generated programs that are built as a result of the agents traversing in parallel the entire search space of possible programs as determined by the grammar; and the second, a set of completely generated programs that are tested to see how they perform in the problem. Both populations are updated during each iteration by using a fitness function to prune out poorly performing agents. The effectiveness of the algorithm is evaluated on variations of the Santa Fe Trail problem. Experimental results show that the algorithm is capable of finding the optimal solution of 165 steps (i.e. the path itself as described by the three move, left turn and right turn operators without any conditional operator) whereas the best solutions found by Genetic Programming and Grammatical Evolution typically involve several hundred more steps. When using a grammar that omits the conditional operator, the algorithm again finds the optimal solution, unlike Grammatical Evolution which finds no solution at all.
CITATION STYLE
Teahan, W. J. (2018). A grammar-directed heuristic optimisation algorithm and comparisons with grammatical evolution on the artificial ant problem. In Communications in Computer and Information Science (Vol. 732, pp. 73–90). Springer Verlag. https://doi.org/10.1007/978-3-319-90418-4_6
Mendeley helps you to discover research relevant for your work.