370 likes | 483 Vues
This lecture by Professor Eyal Amir discusses advanced reasoning methods in artificial intelligence, particularly focusing on partitioning knowledge bases. It covers the concepts of structured first-order reasoning, DL entailment using subsumption and tableau techniques, and applications in areas like games, natural language generation, and medical informatics. The lecture emphasizes maintaining soundness and completeness while optimizing computational benefits, exemplified through message-passing techniques and tree-decomposition. This session also highlights the significance of Craig’s interpolation theorem in improving reasoning processes.
E N D
UIUC CS 497: Section EALecture #5 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004
Last Time • DL entailment using subsumption and Tableau (for satisfiability) • Applications: • Games and natural language generation • Medical informatics
Today • We can partition reasoning while not hurting soundness and completeness • How to partition a KB with the best computational benefit • Still maintaining soundness & completeness • Applications du jour: Planning
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
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
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 ^
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 ^
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
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
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
Reasoning with partitions using MP MP Algorithm • Start with a tree-decomposition partition graph • Identify goal partition • Direct edges toward goal • (fixing outbound link language Li for each partition) • Concurrently, in each partition: • Generate consequences in Li • Pass messages in Li toward goal
Another Example • Message Passing: Espresso machine • SAT via partitioning
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
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
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)
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)
Contents • We can partition reasoning while not hurting soundness and completeness • How to partition a KB with the best computational benefit • Still maintaining soundness & completeness • Applications: Planning
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
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
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
Automatic Decomposition of a Theory key locked can_open open can_clean cleaned opened fetch dry time broom let_dry drier
Automatic Decomposition of a Theory key locked can_open open can_clean cleaned opened fetch dry time broom let_dry drier
Automatic Decomposition of a Theory broom key locked can_open open can_clean cleaned opened fetch dry time broom let_dry drier
Automatic Decomposition of a Theory broom key locked can_open open can_clean cleaned broom opened fetch dry time broom let_dry drier
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
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
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
Why Tree Decomposition? • Example: BREAK-CYCLES
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]
Automatic Partitioning: Heuristics • Heuristic: min-degree • Given a graph G; List L - empty • Add to L a node v with minimum number of neighbors • Make a clique from v’s neighbors • Remove v from G • If G is empty, return L • Go to 2
Automatic Partitioning: Heuristics • Heuristic: min-fill • Given a graph G; List L - empty • Add to L a node v with minimum number of edges missing between neighbors • Make a clique from v’s neighbors • Remove v from G • If G is empty, return L • Go to 2
Summary: Characteristics of MP • Reasoning is performed locally in each partition • Specialized reasoning procedures in every partition • Globally sound & complete… provided each local reasoner is sound & complete for Li-consequence finding • Performance is worst-caseexponential within partitions, but linear in tree structure Minimizesbetween-partitiondeduction Focuseswithin-partitiondeduction Supports parallel processing Different reasoners in different partitions
Contents • We can partition reasoning while not hurting soundness and completeness • How to partition a KB with the best computational benefit • Still maintaining soundness & completeness • Applications: Planning
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
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
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×22w+2k) • Factoring can be done in polynomial time • Goal can be distributed over partitions by adding at most 2 features per partition
Next Time • Probabilistic Graphical Models: • Directed models: Bayesian Networks • Undirected models: Markov Fields • Requires prior knowledge of: • Treewidth and graph algorithms • Probability theory