2010

Authors

  • Stuart Bain Stuart Bain

The notion that a universally effective problem solver may still exist, and is simply waiting to be found, is slowly being abandoned in the light of a growing body of work reporting on the narrow applicability of individual heuristics. As the formalism of the constraint satisfaction problem remains a popular choice for the representation of problems to be solved algorithmically, there exists an ongoing need for new algorithms to effciently handle the disparate range of problems that have been posed in this representation. Given the costs associated with manually applying human algorithm development and problem solving expertise, methods that can automatically adapt to the particular features of a specific class of problem have begun to attract more attention. Whilst a number of authors have developed adaptive systems, the field, and particularly with respect to their application to constraint satisfaction problems, has seen only limited discussion as to what features are desirable for an adaptive constraint system. This may well have been a limiting factor with previous implementations, which have exhibited only subsets of the five features identified in this work as important to the utility of an adaptive constraint satisfaction system. Whether an adaptive system exhibits these features depends on both the chosen represen-tation and the method of adaptation. In this thesis, a three-part representation for constraint algorithms is introduced, which defines an algorithm in terms of contention, preference and selection functions. An adaptive system based on genetic programming is presented that adapts constraint algorithms described using the mentioned three-part representation. This is believed to be the first use of standard genetic programming for learning constraint algo-rithms. Finally, to further demonstrate the efficacy of this adaptive system, its performance in learning specialised algorithms for hard, real-world problem instances is thoroughly evaluated. These instances include random as well as structured instances from known-hard benchmark distributions, industrial problems (specifically, SAT-translated planning and cryptographic problems) as well as over-constrained problem instances. The outcome of this evaluation is a set of new algorithms - valuable in their own right - specifically tailored to these problem classes. Partial results of this work have appeared in the following publications: [1] Stuart Bain, John Thornton, and Abdul Sattar (2004) Evolving algorithms for constraint satisfaction. In Proc. of the 2004 Congress on Evolutionary Computation, pages 265-272. [2] Stuart Bain, John Thornton, and Abdul Sattar (2004) Methods of automatic algorithm generation. In Proc. of the 9th Pacific Rim Conference on AI, pages 144-153. [3] Stuart Bain, John Thornton, and Abdul Sattar. (2005) A comparison of evolutionary methods for the discovery of local search heuristics. In Australian Conference on Artificial Intelligence: AI'05, pages 1068-1074. [4] Stuart Bain, John Thornton, and Abdul Sattar (2005) Evolving variable-ordering heuristics for constrained optimisation. In Principles and Practice of Constraint Programming: CP'05, pages 732-736.