πDD: A New Decision Diagram for Efficient Problem Solving in Permutation Space
Permutations and combinations are two basic concepts in elementary combinatorics. Permutations appear in various problems such as sorting, ordering, matching, coding and many other real-life situations. While conventional SAT problems are discussed in combinatorial space, “permutatorial” SAT and CSPs also constitute an interesting and practical research topic.
In this paper, we propose a new type of decision diagram named “πDD,” for compact and canonical representation of a set of permutations. Similarly to an ordinary BDD or ZDD, πDD has efficient algebraic set operations such as union, intersection, etc. In addition, πDDs hava a special Cartesian product operation which generates all possible composite permutations for two given sets of permutations. This is a beautiful and powerful property of πDDs.
We present two examples of πDD applications, namely, designing permutation networks and analysis of Rubik’s Cube. The experimental results show that a πDD-based method can explore billions of permutations within feasible time and space limits by using simple algebraic operations.
Unable to display preview. Download preview PDF.
- 3.GAP Forum. GAP – Groups, Algorithms, Programming – a System for Computational Discrete Algebra (2008), http://www.gap-system.org/
- 4.Knuth, D.E.: Combinatorial properties of permutations. The Art of Computer Programming, vol. 3, ch. 5.1, pp. 11–72. Addison-Wesley, Reading (1998)Google Scholar
- 6.Minato, S.: Zero-suppressed BDDs for set manipulation in combinatorial problems. In: Proc. of 30th ACM/IEEE Design Automation Conference, pp. 272–277 (1993)Google Scholar
- 7.Rokicki, T., Kociemba, H., Davidson, M., Dethridge, J.: God’s number is 20 (2010), http://www.cube20.org/