Document Sample

Modelling grammar Constraints with ASP Christian Drescher NICTA and University of New South Wales 17 February 2011 1 / 16 Declarative Problem Solving What is the problem? instead of How to solve the problem? Problem Solution Modelling Interpretation Representation Output Computation As a declarative programming paradigm, ASP combines an expressive but simple modelling language, viz. logic high-performance solving capacities. 2 / 16 Introduction CSP combinatorial problems (V , D, C ), from various areas Log. Program set of rules a0 ← a1 , . . . , am , not am+1 , . . . , not bn over alphabet A, and extensions like choice rules {a0 } ← a1 , . . . , am , not am+1 , . . . , not bn Answer Set X ⊆-minimal model of the GL-reduct P X {head(r ) ← body (r )+ | r ∈ P, body (r )− ∩ X = ∅} Algorithm Conﬂict-Driven Nogood Learning, Unit Propagation, Heuristic Search, Conﬂict Resolution, Extended Prop- agators Aspect breaking symmetry to eliminate symmetric parts of the search space 3 / 16 Topics on Symmetry Breaking for ASP EMCL Student Workshop 2010 A Translational Approach to Constraint Answer Set Solving Theory and Practice of Logic Programming EMCL Student Workshop Summer 2010 Symmetry-breaking Answer Set Solving Proceedings of 26th ICLP’ Workshop on ASPOCP; AI Communications Journal, To Appear Symmetry Breaking for Distributed Multi-Context Systems Proceedings of 11th LPNMR, To Appear EMCL Student Workshop 2011 Modelling Grammar Constraints with ASP 4 / 16 Outline 1 Modelling the Grammar Constraint 2 Modelling the Regular Constraint 3 Modelling the Precedence Constraint 4 Empirical Evaluation 5 Conclusions 5 / 16 Context-Free Languages and Grammar Constraints A Context-Free Language L is produced by a Context-Free Grammar G = (N, Σ, P, S) with production rules P ⊆ N × (N ∪ Σ)∗ of the form A ::= ω. G is in Chomsky normal form iﬀ all productions are of the form A ::= t or A ::= BC . is linear iﬀ very production in G contains at most one nonterminal in its right-hand side. is regular iﬀ all productions in G are of the form A ::= t or A ::= tB. Deﬁnition grammar(G, [v1 , . . . , vn ]) is satisﬁed by just those assignments to the sequence of variables (v1 , . . . , vn ) which belong to the language produced by G. 6 / 16 Modelling Grammar Constraints with ASP based on the famous CYK algorithm 1 for each production of the form A ::= t and 1 ≤ i ≤ n {A(i, 1)} ← [[vi → t]] , 2 for each production of the form A ::= BC and 1 ≤ i ≤ n {A(i, j)} ← ωBC (i, j) {ωBC (i, j)} ← B(i, k), C (i +k, j −k) 3 encode support for vi → t (takes part of a production from S) ⊥ ← [[vi → t]], not A1 (i, 1), not A2 (i, 1), . . . , not Am (i, 1) ⊥ ← A(i, j), not ω1 (i, j), not ω2 (i, j), . . . , not ωm (i, j) ⊥ ← not S(1, n) 7 / 16 Modelling Grammar Constraints with ASP (ctd) Theorem grammar is satisﬁable iﬀ our encoding has an answer set. Theorem Unit-propagation on our encoding enforces domain consistency on grammar in O(|P|n3 ) down any branch of the search. 8 / 16 Modelling Grammar Constraints with ASP (ctd) Theorem grammar is satisﬁable iﬀ our encoding has an answer set. Theorem Unit-propagation on our encoding enforces domain consistency on grammar in O(|P|n3 ) down any branch of the search. Theorem If G is linear then unit-propagation on our encoding enforces domain consistency on grammar in O(|P|n2 ) down any branch of the search. Theorem If G is regular then unit-propagation on our encoding enforces domain consistency on grammarin O(|P|n) down any branch of the search. 8 / 16 Regular Languages and Regular Constraints A Regular Language L is recognized by a Deterministic Finite Automaton (DFA) M = (Q, Σ, δ, q0 , F ) with transition function δ : Q × Σ → Q. Deﬁnition regular(M, [v1 , . . . , vn ]) is satisﬁed on just those assignments to the sequence of variables (v1 , . . . , vn ) which belong to the language recognised by M. The regular constraint is a special case of the grammar constraint. 9 / 16 Modelling Regular Constraints with ASP 1 new atoms qk (i) for each state qk and 0 ≤ i ≤ n 2 for each transition δ(qj , t) = qk and 0 ≤ i ≤ n qk (i) ← qj (i −1), [[vi → t]] d(qj , qk , i) ← qj (i −1), qk (i) 3 encode support for vi → t (being part of M’s processing) q0 (0) ← ⊥ ← qrej (n) ∀qrej ∈ Q \ F ⊥ ← [[vi → t]], not d(qj1 , qk1 , i), . . . , d(qjm , qkm , i) . 10 / 16 Modelling Regular Constraints with ASP 1 new atoms qk (i) for each state qk and 0 ≤ i ≤ n 2 for each transition δ(qj , t) = qk and 0 ≤ i ≤ n qk (i) ← qj (i −1), [[vi → t]] d(qj , qk , i) ← qj (i −1), qk (i) 3 encode support for vi → t (being part of M’s processing) q0 (0) ← ⊥ ← qrej (n) ∀qrej ∈ Q \ F ⊥ ← [[vi → t]], not d(qj1 , qk1 , i), . . . , d(qjm , qkm , i) . Theorem Regular is satisﬁable iﬀ our encoding has an answer set. Theorem Unit-propagation on our encoding enforces domain consistency on regular in O(|Q|nd) down any branch of the search. 10 / 16 The Precedence Constraint The precedence constraint is a special case of the regular constraint. is used for breaking symmetries of interchangeable values in a CSP (values are interchangeable if we can swap them in any solution). Deﬁnition precedence([t1 , . . . , tm ], [v1 , . . . , vn ]) holds iﬀ min({i | vi = tk } ∪ {n + 1}) < min({i | vi = t } ∪ {n + 2}) for all 1 ≤ k < < m. 11 / 16 Modelling Precedence Constraints with ASP 1 new atom taken(t , j) for each t and 0 ≤ j ≤ n indicates whether vi → t for some i < j 2 tj has been taken if vi → tj , 1 ≤ i ≤ n taken(tj , i +1) ← [[vi → tj ]] taken(tj , i +1) ← taken(tj , i) 3 encode precedence condition, for all 1 ≤ k < ≤ m ⊥ ← [[vi → t ]], not taken(tk , i) 12 / 16 Modelling Precedence Constraints with ASP 1 new atom taken(t , j) for each t and 0 ≤ j ≤ n indicates whether vi → t for some i < j 2 tj has been taken if vi → tj , 1 ≤ i ≤ n taken(tj , i +1) ← [[vi → tj ]] taken(tj , i +1) ← taken(tj , i) 3 encode precedence condition, for all 1 ≤ k < ≤ m ⊥ ← [[vi → t ]], not taken(tk , i) Theorem precedence is satisﬁable iﬀ our encoding has an answer set. Theorem Unit-propagation on our encoding enforces domain consistency on precedence in O(m2 n) down any branch of the search. 12 / 16 Experiments on Graph Colouring Benchmark Domain: randomly generated 3-, 4- and 5-colouring instances 600 instances around the phase transition density with 400, 150, 75 vertices, respectively Options: all uses our ASP encoding for the precedence constraint to break all value symmetry pairwise posts precedence constraints between pairwise interchangeable values none breaks no symmetry generic employs sbass for symmetry breaking in terms of generators Setting: 2.00 GHz PC/Linux, runs limited to 600s time 13 / 16 Experiments on Graph Colouring (ctd) 35 none 30 generic pairwise 25 all time (s) 20 15 10 5 0 2.25 2.30 2.35 2.40 2.45 2.50 graph density (3-coloring) Average time required to solve random 3-colouring instances near the phase transition density 14 / 16 Experiments on Graph Colouring (ctd) 45 none 40 generic 35 pairwise 30 all time (s) 25 20 15 10 5 0 5.60 5.80 6.00 6.20 6.40 6.60 graph density (5-coloring) Average time required to solve random 5-colouring instances near the phase transition density 15 / 16 Conclusions We have modelled grammar, regular, and precedence constraints with ASP. Our encodings are elaboration tolerant: permit to apply results from formal language theory, e.g., standard techniques for automaton minimisation are optimal: the best known constraint propagators have the same runtime complexity are experimentally proven to be eﬀective and eﬃcient 16 / 16

DOCUMENT INFO

Shared By:

Categories:

Tags:

Stats:

views: | 6 |

posted: | 10/25/2012 |

language: | English |

pages: | 19 |

OTHER DOCS BY xiaopangnv

How are you planning on using Docstoc?
BUSINESS
PERSONAL

By registering with docstoc.com you agree to our
privacy policy and
terms of service, and to receive content and offer notifications.

Docstoc is the premier online destination to start and grow small businesses. It hosts the best quality and widest selection of professional documents (over 20 million) and resources including expert videos, articles and productivity tools to make every small business better.

Search or Browse for any specific document or resource you need for your business. Or explore our curated resources for Starting a Business, Growing a Business or for Professional Development.

Feel free to Contact Us with any questions you might have.