Solving constraint satisfaction problems using finite state automata

In this paper, we explore the idea of representing CSPs using techniques from formal language theory. The solution set of a CSP can be expressed as a regular language; we propose the minimized deterministic finite state automaton (MDFA) recognizing this language as a canonical representation for the CSP. This representation has a number of advantages. Explicit (enumerated) constraints can be stored in lesser space than traditional techniques. Implicit constraints and networks of constraints can be composed from explicit ones by using a complete algebra of boolean operators like AND, OR, NOT, etc., applied in an arbitrary manner. Such constraints are stored in the same way as explicit constraints -- by using MDFAs. This capability allows our technique to construct networks of constraints incrementally. After constructing this representation, answering queries like satisfiability, validity, equivalence, etc., becomes trivial as this representation is canonical. Thus, MDFAs serve as a means to represent constraints as well as to reason with them. While this technique is not a panacea for solving CSPs, experiments demonstrate that it is much better than previously known techniques on certain types of problems.

[1]  Igor Rivin,et al.  An Algebraic Approach to Constraint Satisfaction Problems , 1989, IJCAI.

[2]  David L. Waltz,et al.  Understanding Line drawings of Scenes with Shadows , 1975 .

[3]  Bernard A. Nadel,et al.  Tree search and ARC consistency in constraint satisfaction algorithms , 1988 .

[4]  David A. McAllester,et al.  A Rearrangement Search Strategy for Determining Propositional Satisfiability , 1988, AAAI.

[5]  Edmund M. Clarke,et al.  A parallel algorithm for constructing binary decision diagrams , 1990, Proceedings., 1990 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[6]  Edmund M. Clarke,et al.  Parallel Symbolic Computation on Shared Memory Multiprocessor , 1990 .

[7]  Gerald J. Sussman,et al.  Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis , 1976, Artif. Intell..

[8]  Alan K. Mackworth Consistency in Networks of Relations , 1977, Artif. Intell..

[9]  Rina Dechter,et al.  Experimental Evaluation of Preprocessing Techniques in Constraint Satisfaction Problems , 1989, IJCAI.

[10]  Francesca Rossi,et al.  Exact Solution in Linear Time of Networks of Constraints Using Perfect Relaxation , 1989, KR.

[11]  Johan de Kleer,et al.  A Comparison of ATMS and CSP Techniques , 1989, IJCAI.

[12]  Brian Falkenhainer,et al.  Dynamic Constraint Satisfaction Problems , 1990, AAAI.

[13]  W. Eric L. Grimson,et al.  The Combinatorics Of Object Recognition In Cluttered Environments Using Constrained Search , 1988, [1988 Proceedings] Second International Conference on Computer Vision.

[14]  Ugo Montanari,et al.  Networks of constraints: Fundamental properties and applications to picture processing , 1974, Inf. Sci..

[15]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[16]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[17]  Vipin Kumar,et al.  Algorithms for Constraint-Satisfaction Problems: A Survey , 1992, AI Mag..

[18]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[19]  Rina Dechter,et al.  Belief Maintenance in Dynamic Constraint Networks , 1988, AAAI.