Learning when to use lazy learning in constraint solving
Research output: Chapter in Book/Report/Conference proceeding › Other chapter contribution
|Subtitle||19th European conference on artificial intelligence, 16-20 August 2010, Lisbon, Portugal - including Prestigious applications of artificial intelligence (PAIS-2010) proceedings|
|Editors||Helder Coelho, Rudi Studer, Michael Wooldridge|
|Place of publication||Amsterdam|
|Number of pages||6|
|Name||Frontiers in artificial intelligence and applications|
Learning in the context of constraint solving is a technique by which previously unknown constraints are uncovered during search and used to speed up subsequent search. Recently, lazy learning, similar to a successful idea from satisfiability modulo theories solvers, has been shown to be an effective means of incorporating constraint learning into a solver. Although a powerful technique to reduce search in some circumstances, lazy learning introduces a substantial overhead, which can outweigh its benefits. Hence, it is desirable to know beforehand whether or not it is expected to be useful. We approach this problem using machine learning (ML). We show that, in the context of a large benchmark set, standard ML approaches can be used to learn a simple, cheap classifier which performs well in identifying instances on which lazy learning should or should not be used. Furthermore, we demonstrate significant performance improvements of a system using our classifier and the lazy learning and standard constraint solvers over a standard solver. Through rigorous cross-validation across the different problem classes in our benchmark set, we show the general applicability of our learned classifier. © 2010 The authors and IOS Press. All rights reserved.