Backtrack search with isomorph rejection and consistency check

https://doi.org/10.1016/S0747-7171(89)80029-XGet rights and content
Under an Elsevier user license
open archive

Performing an exhaustive backtrack search of combinatorial objects is always a dicey business. One can spend years of CPU time without finding anything. There is always the embarrassing question: “is the program correct?” The situation is even worse when the combinatorial object being searched for has a large symmetry group. For efficiency purposes, it is almost obligatory to use as much of the group as possible to prune isomorphic branches of the search tree. Yet, isomorph rejection is difficult to implement and is one of the major sources of errors. This paper proposes a new method of using the symmetry group, not only for isomorph rejection, but also as an independent consistency check of the correctness of the program. The number of isomorphic copies of a given solution is computed in two different ways and the results have to agree, which provides us with the independent consistency check.

Cited by (0)

*

This work was supported in part by the Natural Sciences and Engineering Research Council of Canada under Grants A9373, A9413, 0011 and by the Fonds pour la Formation de Chercheurs et l'Aide à la Recherche under Grants EQ2369 and EQ3886.