probabilistic event calculus based on markov logic
play

Probabilistic Event Calculus based on Markov Logic Networks - PowerPoint PPT Presentation

Probabilistic Event Calculus based on Markov Logic Networks Anastasios Skarlatidis 1 , 2 , Georgios Paliouras 1 , George Vouros 2 and Alexander Artikis 1 1 Institute of Informatics and Telecommunications NCSR Demokritos, Athens 15310, Greece


  1. Probabilistic Event Calculus based on Markov Logic Networks Anastasios Skarlatidis 1 , 2 , Georgios Paliouras 1 , George Vouros 2 and Alexander Artikis 1 1 Institute of Informatics and Telecommunications NCSR “Demokritos”, Athens 15310, Greece { anskarl,paliourg,a.artikis } @iit.demokritos.gr 2 Department of Information and Communication Systems Engineering, University of the Aegean, Samos, Greece georgev@aegean.gr 4 Nov 2011 1 / 20

  2. Outline Introduction Event Calculus in Markov Logic Networks Representing Event Calculus Axioms in MLN Behaviour of Event Calculus in MLN Experiments: Activity Recognition 2 / 20

  3. Event Recognition ◮ Variety of application domains, e.g. health care monitoring, public transport management, activity recognition etc ◮ Input: ◮ Low-level events (LLE) — time-stamped symbols ◮ LLE come from different sources/sensors ◮ e.g. happens(walking(id1), 10), happens(active(id2), 10), ... ◮ Output: ◮ Recognised high-level events (HLE) ◮ e.g. holdsAt(meeting(id1,id2), 11), holdsAt(meeting(id1,id2), 12), ... ◮ HLE: Relational structure over other sub-events (HLE or LLE) Methods: ◮ Logic-based — very expressive ◮ Probabilistic-based — handle uncertainty 3 / 20

  4. Event Recognition Requirements: ◮ Formal representation language ◮ Handle uncertainty The method combines: ◮ Event Calculus — representation ◮ Markov Logic Networks — probabilistic inference 4 / 20

  5. Markov Logic Networks (MLN) — in a nutshell ◮ First-order logic → set of hard constraints ◮ Syntactically: weighted first-order logic formulas ( F i , w i ) ◮ Semantically: ( F i , w i ) represents a probability distribution over possible worlds (or Herbrand interpretations) �� � 1 P ( X = x ) = w i n i ( x ) exp Z i ◮ possible world ◮ partition function ◮ number of satisfied ground formulas A world violating formulas becomes less probable, but not impossible! 5 / 20

  6. Markov Logic Networks (MLN) — in a nutshell Sensors Markov-logic Markov Network HLE Knowledge base LLE Grounding ◮ Formula → clausal form ◮ Clauses are grounded according to the domain of their distinct variables ◮ Existentially quantified variables are replaced by the disjunction of their groundings: ∀ X ∃ Y p ( Y ) ∧ q ( X ) ≡ ( p (1) ∧ q ( X )) ∨ ( p (2) ∧ q ( X )) ∨ ... ◮ Open-world assumption for non-evidence predicates 6 / 20

  7. Event Calculus ◮ Reasoning about events and their effects ◮ A variety of different dialects ◮ Ontology ◮ Timepoints ◮ Events → low-level events ◮ Fluents → high-level events ◮ Core domain-independent axioms ◮ Define whether a fluent holds or not at a specific timepoint ◮ Inertia: fluents persist over time, unless affected by some event ◮ Domain-dependent definitions → HLE definitions ◮ Initiation of a fluent ◮ Termination of a fluent 7 / 20

  8. Representing Event Calculus in MLN Some axioms from Shanahan’s Full Event Calculus: holdsAt ( F , T ) ← happens ( E , T 0 ) ∧    initiates ( E , F , T 0 ) ∧   F × E × T × T 0 T 0 < T ∧    ¬ clipped ( F , T 0 , T )   clipped ( F , T 0 , T 1 ) ↔ ∃ E , T     happens ( E , T ) ∧  F × E × T × T 0 × T 1 T 0 ≤ T < T 1 ∧     terminates ( E , F , T )  8 / 20

  9. Representing Event Calculus in MLN Some axioms from Shanahan’s Full Event Calculus: holdsAt ( F , T ) ← happens ( E , T 0 ) ∧    initiates ( E , F , T 0 ) ∧   F × E × T × T 0 T 0 < T ∧    ¬ clipped ( F , T 0 , T )   clipped ( F , T 0 , T 1 ) ↔ ∃ E , T     happens ( E , T ) ∧  F × E × T × T 0 × T 1 T 0 ≤ T < T 1 ∧     terminates ( E , F , T )  8 / 20

  10. Representing Event Calculus in MLN Some axioms from Shanahan’s Full Event Calculus: holdsAt ( F , T ) ← happens ( E , T 0 ) ∧    initiates ( E , F , T 0 ) ∧   F × E × T × T 0 T 0 < T ∧    ¬ clipped ( F , T 0 , T )   clipped ( F , T 0 , T 1 ) ↔ ∃ E , T     happens ( E , T ) ∧  F × E × T × T 0 × T 1 T 0 ≤ T < T 1 ∧     terminates ( E , F , T )  ◮ Huge number of groundings 8 / 20

  11. Representing Event Calculus in MLN Some axioms from Shanahan’s Full Event Calculus: holdsAt ( F , T ) ← happens ( E , T 0 ) ∧    initiates ( E , F , T 0 ) ∧   F × E × T × T 0 T 0 < T ∧    ¬ clipped ( F , T 0 , T )   clipped ( F , T 0 , T 1 ) ↔ ∃ E , T     happens ( E , T ) ∧  F × E × T × T 0 × T 1 T 0 ≤ T < T 1 ∧     terminates ( E , F , T )  ◮ Huge number of groundings ◮ Combinatorial explosion 8 / 20

  12. Discrete Event Calculus ◮ Logically equivalent with EC, when the domain of timepoints is limited to integers ◮ Axioms are defined over successive timepoints  holdsAt ( F , T + 1) ←  happens ( E , T ) ∧ F × E × T initiates ( E , F , T )  holdsAt ( F , T + 1) ←   holdsAt ( F , T ) ∧   F × E × T ¬∃ E happens ( E , T ) ∧   teminates ( E , F , T )  9 / 20

  13. Discrete Event Calculus ◮ Logically equivalent with EC, when the domain of timepoints is limited to integers ◮ Axioms are defined over successive timepoints  holdsAt ( F , T + 1) ←  happens ( E , T ) ∧ F × E × T initiates ( E , F , T )  holdsAt ( F , T + 1) ←   holdsAt ( F , T ) ∧   F × E × T ¬∃ E happens ( E , T ) ∧   teminates ( E , F , T )  Creates 2 | E | clauses 9 / 20

  14. Simplifying Discrete Event Calculus General form of domain-dependent HLE definition: initiatedAt ( fluent k , T ) ← happens ( event n , T ) ∧ ... ∧ Conditions [ T ] terminatedAt ( fluent k , T ) ← happens ( event n , T ) ∧ ... ∧ Conditions [ T ] 10 / 20

  15. Simplifying Discrete Event Calculus holdsAt ( F , T + 1) ← holdsAt ( F , T + 1) ← happens ( E , T ) ∧ initiatedAt ( F , T ) initiates ( E , F , T ) 11 / 20

  16. Simplifying Discrete Event Calculus holdsAt ( F , T + 1) ← holdsAt ( F , T + 1) ← happens ( E , T ) ∧ initiatedAt ( F , T ) initiates ( E , F , T ) holdsAt ( F , T + 1) ← holdsAt ( F , T + 1) ← holdsAt ( F , T ) ∧ holdsAt ( F , T ) ∧ ¬∃ E happens ( E , T ) ∧ ¬ teminatedAt ( F , T ) teminates ( E , F , T ) 11 / 20

  17. Simplified Discrete Event Calculus When a fluent holds: holdsAt ( F , T + 1) ← � F × T initiatedAt ( F , T )  holdsAt ( F , T + 1) ←  holdsAt ( F , T ) ∧ F × T ¬ teminatedAt ( F , T )  When a fluent does not hold: � ¬ holdsAt ( F , T + 1) ← F × T terminatedAt ( F , T )  ¬ holdsAt ( F , T + 1) ←  ¬ holdsAt ( F , T ) ∧ F × T ¬ initiatedAt ( F , T )  12 / 20

  18. Example: HLE definition When the fluent ’meeting’ is initiated: initiatedAt ( meeting , T ) ← happens ( event 1 , T ) ∧ ¬ happens ( event 2 , T ) ∧ distance ( close , T ) initiatedAt ( meeting , T ) ← happens ( event 3 , T ) ∧ ¬ happens ( event 1 , T ) ∧ ¬ happens ( event 2 , T ) ∧ distance ( close , T ) When the fluent ’meeting’ is terminated: terminatedAt ( meeting , T ) ← happens ( event 4 , T ) ... 13 / 20

  19. Open-world semantics in MLN Domain-dependent definitions: ◮ Conditions under which HLE are initiated or terminated ◮ Open-world assumption for non-evidence predicates: initiatedAt, terminatedAt and holdsAt When something is happening that it is not defined in the domain-dependent definitions: ◮ Cannot determine whether a fluent holds or not ◮ Loss of the inertia ◮ This is also known as the frame problem ◮ Solution: predicate completion 14 / 20

  20. Predicate completion  initiatedAt ( meeting , T ) ←  happens ( event 1 , T ) ∧     ¬ happens ( event 2 , T ) ∧     distance ( close , T )    initiatedAt ( meeting , T ) ←  HLE definitions = happens ( event 3 , T ) ∧   ¬ happens ( event 1 , T ) ∧    ¬ happens ( event 2 , T ) ∧     distance ( close , T )     ... 15 / 20

  21. Predicate completion  initiatedAt ( meeting , T ) ←  happens ( event 1 , T ) ∧     ¬ happens ( event 2 , T ) ∧     distance ( close , T )    initiatedAt ( meeting , T ) ←  HLE definitions = happens ( event 3 , T ) ∧   ¬ happens ( event 1 , T ) ∧    ¬ happens ( event 2 , T ) ∧     distance ( close , T )     ...  initiatedAt ( meeting , T ) →  [ happens ( event 1 , T ) ∧     ¬ happens ( event 2 , T ) ∧    distance ( close , T ) ] �    Completion constraints = [ happens ( event 3 , T ) ∧ ¬ happens ( event 1 , T ) ∧ (automatically generated)    ¬ happens ( event 2 , T ) ∧     distance ( close , T ) ]     ... 15 / 20

Recommend


More recommend