Presentation is loading. Please wait.

Presentation is loading. Please wait.

Knowledge Repn. & Reasoning Lec #11: Partitioning & Treewidth UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004.

Similar presentations


Presentation on theme: "Knowledge Repn. & Reasoning Lec #11: Partitioning & Treewidth UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004."— Presentation transcript:

1 Knowledge Repn. & Reasoning Lec #11: Partitioning & Treewidth UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004

2 Last Time Resolution strategies –Deletion of clauses –Restricting resolution to some pairs –Ordering resolution between clauses Some strategies refutation complete, others only complete for Horn refutation

3 Today 1.We can partition reasoning while not hurting soundness and completeness 2.How to partition a KB with the best computational benefit Still maintaining soundness & completeness 3. Applications du jour: Planning

4 key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier High-Level Structure in First- Order Logic

5 key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier broom

6 Structured First-Order Reasoning Craig’s interpolation theorem (First-Order Logic): –If A B, then there is a formula C including only symbols from L(A)  L(B) such that A C and C B  clean    

7 Structured First-Order Reasoning Craig’s interpolation theorem (First-Order Logic): –If A B, then there is a formula C including only symbols from L(A)  L(B) such that A C and C B clean    

8 High-Level Structure in First- Order Logic key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier broom

9 Structured First-Order Reasoning Craig’s interpolation theorem (First-Order Logic): –If A B, then there is a formula C including only symbols from L(A)  L(B) such that A C and C B clean   broom  

10 High-Level Structure in First- Order Logic key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier broom

11 Start with a tree-decomposition partition graph Reasoning with partitions using MP MP Algorithm  Pass messages in L i toward goal Identify goal partition Direct edges toward goal (fixing outbound link language L i for each partition) Concurrently, in each partition:  Generate consequences in L i

12 Another Example Message Passing: Espresso machineEspresso machine SAT via partitioning

13 Benefits of Message-Passing Search space is restricted Allows parallel processing Sound and complete Can use different reasoners for each partition Small links imply short proofs Small partitions imply short proofs

14 High-Level Structure in First- Order Logic Has(key(x))   locked(x)  can_open(x) can_open(x)  open(x)  opened(x) opened(x)  fetch(y,x)  in(y,x)  has(y) Has(key(closet))  opened(closet) open(closet)  opened(closet) In(broom,closet) fetch(broom,closet) Has(broom)  dry(broom)  can_clean(x) can_clean(x)  cleaned(x) Has(y)  let_dry(y)  dry(y) Has(time)  let_dry(y) Has(drier)  let_dry(y) Has(time)  Has(drier) Has broom

15 Structured First-Order Reasoning Craig’s interpolation theorem (First-Order Logic): –If A B, then there is a formula C including only symbols from L(A)  L(B) such that A C and C B clean(room)   Has(broom)  

16 Structured First-Order Reasoning Craig’s interpolation theorem (First-Order Logic): –If A B, then there is a formula C including only symbols from L(A)  L(B) such that A C and C B clean(room)   Has(broom)  x Has(x)  Has(broom)  

17 Contents 1.We can partition reasoning while not hurting soundness and completeness 2.How to partition a KB with the best computational benefit Still maintaining soundness & completeness 3. Applications: Planning

18 key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier Automatic Decomposition of a Theory

19 key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier Automatic Decomposition of a Theory

20 key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier Automatic Decomposition of a Theory

21 keylocked can_openopen openedfetch broom dry cleaned let_dry time drier can_clean

22 Automatic Decomposition of a Theory keylocked can_openopen openedfetch broom dry cleaned let_dry time drier can_clean

23 Automatic Decomposition of a Theory keylocked can_openopen openedfetch broom dry cleaned let_dry time drier can_clean broom

24 Automatic Decomposition of a Theory broom keylocked can_openopen openedfetch broom dry cleaned let_dry time drier can_clean broom

25 Automatic Decomposition of a Theory key   locked  can_open can_open  open  opened opened  fetch  broom key  opened open  opened  broom  fetch broom  dry  can_clean can_clean  cleaned broom  let_dry  dry time  let_dry drier  let_dry time  drier broom

26 Automatic Partitioning Begin with a KB in PL or FOL Construct symbol graph –Edges join symbols which appear together in an axiom Find a tree decomposition of low width –Roughly, generalizes balanced vertex cut Partition axioms correspondingly –Each partition has its own vocabulary –Edge labels defined by shared vocabulary

27 Automatic Partitioning Find a tree decomposition of minimum width: –A tree in which each node corresponds to a set of vertices from the original graph –The tree satisfies the running intersection property: if v appears in two nodes in the tree, then v appears in all the nodes on the path connecting them –The width of the tree is the size of its largest node

28 Why Tree Decomposition? Example: BREAK-CYCLESBREAK-CYCLES

29 Automatic Partitioning Treewidth: [Robertson & Seymour ’86], … Approximation Algorithms: –General theories: [A. & McIlraith ’00] –O(Log(OPT))-approximation for general graphs: [A. ’01] –Constant factor approximation for planar graphs: [Seymour & Thomas ’94], [A., Krauthgamer & Rao ’03]

30 Automatic Partitioning: Heuristics Heuristic: min-degree 1.Given a graph G; List L - empty 2.Add to L a node v with minimum number of neighbors 3.Make a clique from v’s neighbors 4.Remove v from G 5.If G is empty, return L 6.Go to 2

31 Automatic Partitioning: Heuristics Heuristic: min-fill 1.Given a graph G; List L - empty 2.Add to L a node v with minimum number of edges missing between neighbors 3.Make a clique from v’s neighbors 4.Remove v from G 5.If G is empty, return L 6.Go to 2

32 Reasoning is performed locally in each partition Specialized reasoning procedures in every partition Globally sound & complete … provided each local reasoner is sound & complete for L i -consequence finding Performance is worst-case exponential within partitions, but linear in tree structure Summary: Characteristics of MP Minimizes between-partition deduction Supports parallel processing Different reasoners in different partitions Focuses within-partition deduction

33 Contents 1.We can partition reasoning while not hurting soundness and completeness 2.How to partition a KB with the best computational benefit Still maintaining soundness & completeness 3. Applications: Planning

34 Application: Planning General-purpose planning problem: –Given: Domain features (fluents) Action descriptions: effects, preconditions Initial state Goal condition –Find: Sequence of actions that is guaranteed to achieve the goal starting from the initial state

35 Application: Planning with partitions PartPlan Algorithm Start with a tree- structured partition graph Identify goal partition Direct edges toward goal In each partition –Generate all plans possible with depth d and width k –Pass messages toward goal

36 Planning with partitions PartPlan Algorithm Start with a tree-structured partition graph Identify goal partition Direct edges toward goal In each partition –Generate all plans possible with depth d and width k: “if you give me a block, I can return it to you painted”, “if you give me a block, let me do a few things, and then give me another block, then I can return the two painted and glued together.” –Pass messages toward goal: All preconditions/effects for which there are feasible action sequences

37 Factored Planning: Analysis Planner is sound and complete Running time for finding plans of width w with m partitions of treewidth k is O(m  w  2 2w+2k ) Factoring can be done in polynomial time Goal can be distributed over partitions by adding at most 2 features per partition

38 Next Time Probabilistic Graphical Models: –Directed models: Bayesian Networks –Undirected models: Markov Fields Requires prior knowledge of: –Treewidth and graph algorithms –Probability theory


Download ppt "Knowledge Repn. & Reasoning Lec #11: Partitioning & Treewidth UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2004."

Similar presentations


Ads by Google