Download presentation
Presentation is loading. Please wait.
Published byBethany Walters Modified over 9 years ago
1
Ontologies Reasoning Components Agents Simulations Belief Update, Planning and the Fluent Calculus Jacques Robin
2
Belief Update, Temporal Projection and Planning Belief Update: CurrentBeliefAboutEnvironmentState x ExecutableAction BeliefAboutEnvironmentStateResultingFromActionExecution Temporal Projection: CurrentBeliefAboutEnvironmentState x ExecutableActionSequence BeliefAboutEnvironmentStateResultingFromActionSequenceExecution If environment is partially observable, non-deterministic, multi-agent adversarial or features exogenous actions (state changing non-agentive events), it is impossible to determine the executability of an action sequence (only the executability of the first action of the sequence can be determined) Planning: CurrentBeliefAboutEnvironmentState x EnvironmentStatePreferredByAgent ExecutableActionSequence
3
The Fluent Calculus (FC): Characteristics Language for Belief Update, Temporal Projection and Planning Knowledge Representation Axiomatization with term reification of environment state changes in Sorted Classical High-Order Logic (SCHOL) Sorts are type restrictions on atom and functional term arguments Environment-independent sorts, functions, predicates and foundational axioms (one conjunctive SCHOL formula, only a single axiom is high- order) Environment-dependent sorts, functions, predicates and axioms (one conjunctive Sorted Classical First-Order Logic (SCFOL)) Reuses monotonic knowledge representation language (CFOL) to formalize non-monotonic reasoning First language to fully solve the representational frame, ramification and qualification problems Extends Situation Calculus with States
4
The FC: Environment Formalization Process 1.Import the environment-independent FC sorts, functions, predicates and foundational axioms 2.Define the environment-dependent (domain) sorts, functions, predicates 3.Define the environment-dependent (domain) action precondition and effect (state update) axioms (SCFOL formulas).
5
The FC Component Assembly Simple FC: Belief Update, Temporal Project, Planning Solving the Frame Problem Ramifying FC: Solving the Ramification Problem Meta FC: Meta-Reasoning about Agent’s own Knowledge for Boolean Belief Revision and Sensing Action Planning Qualifying FC: Default Reasoning Solving the Qualification Problem Full FC Disjunctive FC: Solving the Frame Problem in Non- Deterministic Environments Concurrent FC: Solving the Frame Problem in Concurrent Environments Multi-Agent FC: Reasoning about Other Agents’ Knowledge and Communicative Action Planning Plausibilistic FC: Plausibilistic Belief Revision Noise-Tolerant FC: Solving the Frame Problem for Agents with Noisy Sensors
6
FLUX (FLUent eXecutor) Constraint Logic Programming Platform Provably correctly and efficiently implements the FC First platform to fully solves de inferential frame, ramification and qualification problems FLUX architecture: two rule bases General Constraint Logic Programming Constraint Handling Rules Far more scalable than GOLOG’s situation calculus based platform Uses progressive planning with state (to avoid redundant execution of reasoning steps of regressive planning from current situation back to the initial one imposed by the situation calculus) Uses partial state representation Uses NAF under open-world semantics (!)
7
Simple FC: Abstract Syntax SCFOL Atom Function Symbol predicate arg 1..* SCFOL Term Non Functional Term Variable Functional Term Ground Term Non Ground Term {disjoint, complete} arg 1..* Constant Symbol Predicate Symbol functor SCFOL Formula connective: CFOLConnectiveKind «enumeration» CFOLConnectiveKind SCFOL Quantifier Expression quantfier: CFOLQuantifierKind «enumeration» CFOLConnectiveKind arg 1..* FC Predicate Symbol Domain Predicate Symbol FC Constant Symbol Domain Constant Symbol FC Function Symbol Domain Function Symbol Action FCFS Fluent FCFS Sit FCFS State FCFS State FCCS Sit FCCS
8
Simple FC: Abstract Syntax SCFOL Atom arg 1..* SCFOL Term SCFOL Formula connective: CFOLConnectiveKind arg 1..* FC Term Domain Term Fluent Term SitTerm FC State Composition Equality Atom Holds Atom 0..1 Pure State Formula Domain Atom Action Term Poss Axiom Formula State Update Axiom Formula StateTerm FC Atom Domain Atom FC Formula * * 2 2
9
Simple FC Case Study: Mail Delivering Robot
10
Simple FC: Foundational Axioms
11
Simple FC: Initial State Representation
12
Simple FC: Action Precondition Axioms
13
Simple FC: State Terms and State Constraints
14
Simple FC: Fluent Collections and State Update Axioms (Belief Update)
15
Simple FC: Frame Problem Solution
17
Simple FC: Temporal Projection as Deductive Entailment
18
Simple FC: Cause Abduction as Deductive Entailment
19
Simple FC: Action Sequence Planning as Deductive Entailment
20
FLUX: a CLP implementation of the FC Using the FC, agent reasoning can be implemented by a full CFOL theorem prover Drawbacks of this approach: Full CFOL theorem provers are either only semi-automatic or not scalable for large axioms and theorems FLUX approach: Rely on an efficient Constraint Logic Programming engine (e.g., ECLiPse Prolog or Sictus Prolog) General Logic Program Rules Constraint Handling Rules Procedural Built-in Constraint Solving Libraries
21
FLUX: from SCFOL to GLP+CHR Partial state description as open Prolog list CFOL atom z = f 1 o... o f n o z 1, encoded as Z = [F1,..., Fn | Z1] Non-Horn formula connectives as: Additional predicates linked by appropriate integrity constraints defined using CHR, themselves defined using NAF and Prolog meta-programming as built-in constraints e.g., Holds(f,z), encoded as notHolds(F,Z)
22
FLUX CHR Constraints
23
FLUX Built-in Predicates
24
Simple FLUX Programming Process 1.Define domain CHR using FLUX CHR 2.Define initial state Prolog facts 3.Define domain relation Prolog predicates 4.Define domain constraint by Prolog rules headed by FLUX predicate consistent(Z) 5. Define preconditions of actions by Prolog rules headed by FLUX predicates poss(A,Z) or not_poss(A,Z) 6.Define direct effects of actions by Prolog rules headed by FLUX predicates state_update(Z1, A, Z2) 7.Define agent’s acting strategy by Prolog rules headed by FLUX predicate do(As,Z1,Z2) 8.For planning queries, check executability of action sequences by NAF atoms of the FLUX predicate non_executable(As,Z)
25
The Mail Delivery Robot FLUX Program: CHR Program
26
The Mail Delivery Robot FLUX Program: Initial State and Domain Constraints
27
The Mail Delivery Robot FLUX Program: Actions Preconditions
28
The Mail Delivery Robot FLUX Program: Actions Direct Effects
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.