TY - CHAP
T1 - Robust constraint solving using multiple heuristics
AU - Vidotto, Alfio
AU - Brown, Kenneth N.
AU - Beck, J. Christopher
PY - 2005
Y1 - 2005
N2 - Representing and solving problems in terms of constraints can be difficult to do effectively. A single problem can be modeled in many different ways, either in terms of representation or in terms of the solving process. Different approaches can outperform each other over different problem classes or even for different instances within the same class. It is possible that even the best combination of model and search on average is still too slow across a range of problems, taking orders of magnitude more time on some problems than combinations that are usually poorer. This fact complicates the use of constraints, and makes it very difficult for novice users to produce effective solutions. The modeling and solving process would be easier if we could develop robust algorithms, which perform acceptably across a range of problems. We present one method of developing a robust algorithm. We combine a single model and a single basic algorithm with a set of variable and value ordering heuristics, in a style similar to [1]. The aim is to exploit the variance among the orderings to get a more robust procedure, which may be slower on some problems, but avoids the significant deterioration on others. During the search, we allocate steadily increasing time slices to each ordering, restarting the search at each point. We demonstrate the performance of the multiple heuristic approach (MH) on a scheduling problem class [2] and on quasi groups with holes (QWH), showing that it is more robust and competitive than the standard recommended heuristic. We also compare to randomized restarts [3], the leading method for QWH and which uses a similar restart policy. We show that MH is poorer in run time and robustness on QWH, but better on the scheduling class. For the immediate future, we intend to investigate whether MH does perform better on insoluble problems (as indicated by the scheduling results). We will also tune the heuristics and time slices, and attempt to generate them automatically.
AB - Representing and solving problems in terms of constraints can be difficult to do effectively. A single problem can be modeled in many different ways, either in terms of representation or in terms of the solving process. Different approaches can outperform each other over different problem classes or even for different instances within the same class. It is possible that even the best combination of model and search on average is still too slow across a range of problems, taking orders of magnitude more time on some problems than combinations that are usually poorer. This fact complicates the use of constraints, and makes it very difficult for novice users to produce effective solutions. The modeling and solving process would be easier if we could develop robust algorithms, which perform acceptably across a range of problems. We present one method of developing a robust algorithm. We combine a single model and a single basic algorithm with a set of variable and value ordering heuristics, in a style similar to [1]. The aim is to exploit the variance among the orderings to get a more robust procedure, which may be slower on some problems, but avoids the significant deterioration on others. During the search, we allocate steadily increasing time slices to each ordering, restarting the search at each point. We demonstrate the performance of the multiple heuristic approach (MH) on a scheduling problem class [2] and on quasi groups with holes (QWH), showing that it is more robust and competitive than the standard recommended heuristic. We also compare to randomized restarts [3], the leading method for QWH and which uses a similar restart policy. We show that MH is poorer in run time and robustness on QWH, but better on the scheduling class. For the immediate future, we intend to investigate whether MH does perform better on insoluble problems (as indicated by the scheduling results). We will also tune the heuristics and time slices, and attempt to generate them automatically.
UR - https://www.scopus.com/pages/publications/33646174697
U2 - 10.1007/11564751_109
DO - 10.1007/11564751_109
M3 - Chapter
AN - SCOPUS:33646174697
SN - 3540292381
SN - 9783540292388
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 871
BT - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
T2 - 11th International Conference on Principles and Practice of Constraint Programming - CP 2005
Y2 - 1 October 2005 through 5 October 2005
ER -