Dancing with Decision Diagrams: A Combined Approach to Exact Cover
Abstract
Exact cover is the problem of finding subfamilies, S*, of a family of sets, S, over universe U, where S* forms a partition of U. It is a popular NP-hard problem appearing in a wide range of computer science studies. Knuth's algorithm DLX, a backtracking-based depth-first search implemented with the data structure called dancing links, is known as state-of-the-art for finding all exact covers. We propose a method to accelerate DLX. Our method constructs a Zero-suppressed Binary Decision Diagram (ZDD) that represents the set of solutions while running depth-first search in DLX. Constructing ZDDs enables the efficient use of memo cache to speed up the search. Moreover, our method has a virtue that it outputs ZDDs; we can perform several useful operations with them. Experiments confirm that the proposed method is up to several orders of magnitude faster than DLX.
Cite
Text
Nishino et al. "Dancing with Decision Diagrams: A Combined Approach to Exact Cover." AAAI Conference on Artificial Intelligence, 2017. doi:10.1609/AAAI.V31I1.10662Markdown
[Nishino et al. "Dancing with Decision Diagrams: A Combined Approach to Exact Cover." AAAI Conference on Artificial Intelligence, 2017.](https://mlanthology.org/aaai/2017/nishino2017aaai-dancing/) doi:10.1609/AAAI.V31I1.10662BibTeX
@inproceedings{nishino2017aaai-dancing,
title = {{Dancing with Decision Diagrams: A Combined Approach to Exact Cover}},
author = {Nishino, Masaaki and Yasuda, Norihito and Minato, Shin-ichi and Nagata, Masaaki},
booktitle = {AAAI Conference on Artificial Intelligence},
year = {2017},
pages = {868-874},
doi = {10.1609/AAAI.V31I1.10662},
url = {https://mlanthology.org/aaai/2017/nishino2017aaai-dancing/}
}