Hybrid Temporal Situation Calculus Vitaliy Batusov 1 Giuseppe De Giacomo 2 Mikhail Soutchanski 3 1 York University, Toronto 2 Sapienza Universit` a di Roma, Rome 3 Ryerson University, Toronto May 30, 2019 Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 1 / 23
Overview Background 1 Dynamical Systems Formalisms Situation Calculus Hybrid Situation Calculus 2 General Considerations Methodology Hybrid Action Theories Features Conclusions 3 Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 2 / 23
Dynamical Systems Dynamical systems: systems that undergo change of some kind Examples: pendulum, animal populations, digital circuits Also: A model which represents a part of the world relevant to the questions we want to answer Have states and transitions between them Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 3 / 23
Kinds of change Continuous (macroscopic physical world) Discrete (quantum world; approximations of macroscopic world) In modelling, a mix of the two is often necessary ⇒ Hybrid Example: computer-controlled machinery self-driving cars chemical plant high-speed train system Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 4 / 23
Formalisms Need a language to describe and analyse dynamical systems Various formalisms for different applications are available Hybrid Automata : disrete automata with differential equations for each state Come from physics and engineering. Good for continuous dynamics, can’t express rich relational states Situation Calculus : “system as a logical theory” Comes form KRR. Good for relational states with internal structure, limited in continuous dynamics PDDL+ : a planning formalism Comes from automated planning. Offers a better balance between discrete and continuous, but with limitations on both Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 5 / 23
Our goal Propose an extension to Raymond Reiter’s version of situation calculus which would organically combine discrete change with true continuous change over real-valued time without compromising too much. Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 6 / 23
Situation Calculus System is described axiomatically in first-order logic Theory has three sorts: action , situation , domain object actions : symbols which trigger change situations : sequences of actions (world histories) domain objects : everything else (cats, cars, numbers, etc.) Predicates and functions describe properties of objects: Cat ( John ) Actions are used to construct situations: feed ( John ) executed in the initial situation S 0 yields a new situation do ( feed ( John ) , S 0 ) Predicates/functions whose last argument is a situation are called fluents : Happy ( x , s ) — “ x is happy in situation s ” Fluents are what changes from one situation to another. Thus, situations are a frame of reference, but fluents are the state. Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 7 / 23
Modelling Systems in Situation Calculus Basic Action Theories — Reiter (2001) To describe dynamics of fluent F , begin with effect axioms φ + (¯ x , a , s ) → F (¯ x , do ( a , s )) (positive) φ − (¯ x , a , s ) → ¬ F (¯ x , do ( a , s )) (negative) Example: Cat ( x ) ∧ ¬ Happy ( x , s ) → Happy ( x , do ( feed ( x ) , s )) Cat ( x ) → ¬ Happy ( x , do ( bathe ( x ) , s )) Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 8 / 23
Frame problem Want the theory to unambiguously describe what happens when an action is executed Things that change — effect axioms Things that simply carry over — ? (too many to list) Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 9 / 23
Reiter’s solution Causal completeness assumption: there is no other source of change to fluent F other than what is asserted in the effect axioms Formally: x , do ( a , s )) → φ − (¯ F (¯ x , s ) ∧ ¬ F (¯ x , a , s ) x , do ( a , s )) → φ + (¯ ¬ F (¯ x , s ) ∧ F (¯ x , a , s ) . Assuming that φ + and φ − can never happen simultaneously, Reiter derives the successor state axiom x , do ( a , s )) ↔ φ + (¯ x , s ) ∧ ¬ φ − (¯ F (¯ x , a , s ) ∨ F (¯ x , a , s ) which is logically equivalent to the conjunction of the above axioms. Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 10 / 23
Successor State Axioms Example: Happy ( x , do ( a , s )) ↔ a = feed ( x ) ∧ Cat ( x ) ∧ ¬ Happy ( x , s ) ∨ Happy ( x , s ) ∧ ¬ [ a = bathe ( x ) ∧ Cat ( x )] This concise form is the key feature of BATs Makes regression possible: given a query about a far-away situation, can transform it to equivalent query about S 0 Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 11 / 23
General considerations Goal: allow for true continuous change while providing the same kind of systematic modelling methodology Two good ideas: Autonomous processes : a modelling pattern where the scope of continuous behaviours is limited to a set of well-defined relational states ( processes ) started and ended by actions. Appears in Pinto (1994), PDDL+. HA too inexpressive to raise this issue. Temporal fluents : fluents whose values are defined for the entire real-valued timeline, and not just the time points of actions. PDDL+ authors Fox & Long (2003): When determining how to achieve a goal a planner must be able to access the values of these continuous quantities at arbitrary points on the time-line of the plan. Example: Reiter’s BATs can’t handle queries about arbitrary timepoints: velocity ( Cat , τ, σ ) > 10 Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 12 / 23
Methodology Add time arguments to all actions: feed ( x ) ⇒ feed ( x , t ) (Reiter) Add temporal fluents — functional fluents with arguments t , s velocity ( Cat , t , s ) Describe them using temporal change axioms of the form γ (¯ x , s ) ∧ δ (¯ x , y , t , s ) → f (¯ x , t , s )= y , where γ (¯ x , s ) is a discrete “context” and δ (¯ x , y , t , s ) encodes a function defining y . Modeller must ensure integrity γ (¯ x , s ) → ∃ y δ (¯ x , y , t , s ) Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 13 / 23
Example A reaction in beaker b yields a product at rate R ( b ) whenever b contains a mix of reagents in situation s ( Mix ( b , s )). Adding one of the catalysts c into b ( in ( c , b , s )) multiplies the rate by m ( c ). Pouring the products from two beakers into an empty one creates a new mix and starts another reaction. Amount of product in beaker b at time t in situation s : Mix ( b , s ) ∧ ¬∃ c [ in ( b , c , s )] ∧ � �� � context γ y = prod ( b , start ( s ) , s ) + R ( b ) × ( t − start ( s )) → prod ( b , t , s )= y � �� � function δ The behaviour of atemporal fluents Mix and in is described in the usual way using SSA. Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 14 / 23
Continuous Frame Problem Must solve a continuous version of the frame problem Given a set of k temporal change axioms for fluent f γ 1 (¯ x , s ) ∧ δ 1 (¯ x , y , t , s ) → f (¯ x , t , s )= y . . . γ k (¯ x , s ) ∧ δ k (¯ x , y , t , s ) → f (¯ x , t , s )= y Equivalently express as a single normal-form axiom Φ(¯ x , y , t , s ) → f (¯ x , t , s )= y , Assert an explanation closure axiom f (¯ x , t , s ) � = f (¯ x , start ( s ) , s ) → ∃ y Φ(¯ x , y , t , s ) . Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 15 / 23
State Evolution Axioms Assuming the integrity and consistency of the TCA in normal form, obtain an equivalent axiom called the state evolution axiom � f (¯ x , t , s )= y ↔ [Φ(¯ x , y , t , s ) ∨ y = f (¯ x , start ( s ) , s ) ∧ ¬ γ i (¯ x , s )] 1 ≤ i ≤ k Compare to SSA: x , do ( a , s )) ↔ [ φ + (¯ x , s ) ∧ ¬ φ − (¯ F (¯ x , a , s ) ∨ F (¯ x , a , s )] This is the main result of the paper. Note that the SEA talks about a single situation, unlike SSA Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 16 / 23
Example (continued) Modeller provides temporal change axioms only for non-trivial change Methodology yields a SEA that covers all circumstances: prod ( b , t , s )= y ↔ ∃ τ.τ = ( t − start ( s )) ∧ � ∃ c [ Mix ( b , s ) ∧ in ( b , c , s ) ∧ y = prod ( b , start ( s ) , s ) + m ( c ) R ( b ) τ ] ∨ � �� � there is a catalyst Mix ( b , s ) ∧ ¬∃ c [ in ( b , c , s )] ∧ y = prod ( b , start ( s ) , s ) + R ( b ) τ ∨ � �� � no catalyst � ¬ Mix ( b , s ) ∧ y = prod ( b , start ( s ) , s ) � �� � � �� � frame context trivial evolution The frame context is derived from given and covers all other possibilities Exactly one of the contexts of the SEA holds for every situation Batusov et al. (YorkU / Sapienza / Ryerson) Hybrid Situation Calculus May 30, 2019 17 / 23
Recommend
More recommend