alternating time temporal logic
play

Alternating-time temporal logic Mehdi Dastani BBL-521 - PowerPoint PPT Presentation

Alternating-time temporal logic Mehdi Dastani BBL-521 M.M.Dastani@uu.nl ATL: Alternating-time temporal logic . ATL is a multiagent logic ATL is a branching time that extends CTL with multiple players. ATL combines logic with game theory


  1. Alternating-time temporal logic Mehdi Dastani BBL-521 M.M.Dastani@uu.nl

  2. ATL: Alternating-time temporal logic . ATL is a multiagent logic ◮ ATL is a branching time that extends CTL with multiple players. ◮ ATL combines logic with game theory by introducing cooperation modality. � � G � � ϕ : “group G has a collective strategy to make ϕ true, no matter what the other agents do” or equivalently “group G has the ability to enforce ϕ ”.

  3. ATL: Syntax Let Π be a set of atomic propositions and N be a set of agents with G ⊆ N . The language of ATL is defined as follows: ::= p ∈ Π ϕ | ¬ ϕ | ϕ ∨ ϕ | � � G � � X ϕ | � � G � � � ϕ | � � G � � ϕ U ϕ Relation between modalities as with LTL: ◮ � � G � � � ϕ ≡ � � G � � ( ⊤ U ϕ ) ◮ � � G � � � ϕ ≡ � � G � � ¬ � ¬ ϕ

  4. ATL: Syntax ◮ � �{ mehdi }� � � BeInUtrecht ◮ � �{ mehdi , tim }� � � StudentsAreExcited ◮ � �{ mehdi }� � � � �{ tim }� � � GiveTutorial ◮ ¬� �{ mehdi , tim , lars }� � � StudentsHappy ◮ � �{ anna , betty , alex , bob }� � SecretKept U CourseEnded

  5. ATL: Semantics ◮ Concurrent Game Structure (CGS) as model of ATL. ◮ CGS captures Agents, states, actions. 1 2 wait,wait pos 0 push,push q 0 pos 0 p push,wait u s wait,push wait,push h , w a i t 1 wait,wait 2 wait,wait pos 1 push,push pos 2 push,push q 2 q 1 wait,push 2 1 pos 2 push,wait pos 1

  6. ATL: Semantics A concurrent game structure is a tuple M = � N , Q , π, Act , d , o � , where ◮ N is a set of n agents, ◮ Q is a set of states, ◮ π : Q → 2 Π is a valuation function for propositions, ◮ Act is a finite set of (atomic) actions, ◮ d : N × Q → 2 Act determines which actions are available to each agent in each state, and ◮ o is a deterministic outcome function that determines the outcome state q ′ = o ( q , α 1 , . . . , α n ) when actions α 1 , . . . , α n are performed in state q . wait,wait push,push 1 2 q 0 pos 0 pos 0 p t i u a s h w w h s , u a , w h i p s t a , , u p t i i t p u a 1 1 s 2 2 w wait,wait h pos 1 pos 2 wait,wait push,push push,push 2 2 q 2 q 1 1 1 wait,push pos 2 push,wait pos 1

  7. (Memoryless) Strategy ◮ A (memoryless) strategy for an agent i is a conditional plan specifying what i is going to do in each state. It is represented as a function f i : Q → Act such that f i ( q ) ∈ d ( i , q ) for each state q ∈ Q . ◮ A strategy for a group of agents G is a set of strategies one for each agent in G , i.e., f G = { f i | i ∈ G } ◮ Strategy example: wait,wait ◮ f 1 ( q 0 ) = push , f 1 ( q 1 ) = wait , f 1 ( q 2 ) = wait push,push q 0 pos 0 ◮ f 2 ( q 0 ) = wait , f 2 ( q 1 ) = wait , f 2 ( q 2 ) = push push,wait push,wait wait,push wait,push wait,wait ◮ f ′ 1 ( q 0 ) = push , f ′ 1 ( q 1 ) = push , f ′ 1 ( q 2 ) = wait wait,wait push,push push,push q 2 q 1 wait,push ◮ f ′ 2 ( q 0 ) = wait , f ′ 2 ( q 1 ) = wait , f ′ 2 ( q 2 ) = wait push,wait pos 2 pos 1

  8. Strategy and Path ◮ A path σ is an infinite sequence of states σ = q 1 q 2 q 3 . . . ◮ σ ( i ) = σ i = q i ◮ σ i = q i q i + 1 q i + 2 . . . ◮ out ( q , f G ) is the set of all paths starting in state q where each agent in G uses its strategy in f G . ◮ σ = q 1 q 2 . . . ∈ out ( q , f G ) iff ◮ q = q 1 ◮ for each k > 1 there is a tuple ( α 1 , . . . , α n ) ∈ Act n such that ◮ α i ∈ d i ( q k − 1 ) for each i ∈ N (actions are available), ◮ α i = f G ( q k − 1 ) for each i ∈ G (agents in G use their strategies in f G ), and ◮ o ( q k − 1 , α 1 , . . . , α n ) = q k (performing joint action in q k − 1 results in q k )

  9. ATL: Semantics Let M = � N , Q , π, Act , d , o � be a concurrent game strategy ( CGS ) and q be a state in it.The semantics for ATL is defined as follows: M , q | = p p ∈ π ( q ) iff M , q | = ¬ ϕ M , q �| = ϕ iff M , q | = ϕ ∨ ψ M , q | = ϕ or M , q | = ψ iff M , q | = � there is f G s.t., for every σ ∈ out ( q , f G ) , we have � G � � X ϕ iff M , σ ( 2 ) | = ϕ M , q | = � � G � iff there is f G s.t., for every σ ∈ out ( q , f G ) , we have � � ϕ M , σ ( i ) | = ϕ for all i ≥ 1 M , q | = � � G � � ϕ U ψ iff there is f G s.t., for every σ ∈ out ( q , f G ) , we have M , σ ( i ) | = ψ for some i ≥ 1 and M , σ ( j ) | = ϕ for all 1 ≥ j ≥ i

  10. ATL: Example 1 2 wait,wait pos 0 push,push q 0 pos 0 p push,wait u s wait,push wait,push h , w a i t 1 wait,wait 2 wait,wait pos 1 push,push pos 2 push,push q 1 q 2 wait,push 2 1 push,wait pos 2 pos 1 ◮ Can agent 1 in pos 0 ensure visiting pos 1 ? I.e., M , q 0 | = � �{ 1 }� � � pos 1 ◮ Can agent group { 1 , 2 } in pos 0 ensure maintaining pos 1 ? I.e., M , q 0 | = � �{ 1 , 2 }� � � pos 1 ◮ Can agent group { 1 , 2 } in pos 0 ensure visiting and maintaining pos 1 ? I.e., M , q 0 | = � �{ 1 , 2 }� � X � �{ 1 , 2 }� � � pos 1

  11. ATL*: Syntax ◮ ATL* admits fine-grained quantification over computations by not restricting the syntax. ◮ Let Π be a set of atomic propositions and N be a set of agents, and G ⊆ N . The language of ATL* is defined as follows: ϕ ::= p ∈ Π | ¬ ϕ | ϕ ∨ ϕ | � � G � � γ γ ::= ϕ | ¬ γ | X γ | � γ | � γ | γ U γ ◮ Formula in ATL*, but not in ATL: ◮ � � G � � XX p ◮ � � ( X p ∧ XX ¬ p ) � G �

  12. ATL*: Semantics Let M = � N , Q , π, Act , d , o � be a concurrent game structure and q be a state in it. The semantics of ATL is defined as follows: M , q | = p iff p is in π ( q ) M , q | = ϕ ∨ ψ iff M , q | = ϕ or M , q | = ψ M , q | = � � G � � φ iff there is a collective strategy f G such that, for each path σ ∈ out ( q , f G ) , we have M , σ | = φ M , σ 2 | = ϕ M , σ | = X ϕ iff M , σ i | = ϕ for some i ≥ 1 M , σ | = � ϕ iff M , σ i | = ϕ for all i ≥ 1 M , σ | = � ϕ iff M , σ i | = ψ for some i ≥ 1, and M , σ j | = ϕ forall 1 ≤ j ≤ i M , σ | = ϕ U ψ iff M , σ | = ϕ M , σ ( 1 ) | = ϕ iff Note that temporal formulae and the Boolean connectives are handled as before.

  13. Example: Prisoner’s escape ◮ A prison has two exits: escaped ◮ rear exit guarded by the guard Alex ( nop , nop ) q 3 ◮ front exit guarded by the guard Bob ( pw A , c ) ◮ To exist secret passwords must be given to guard. ( pw B , c ) Alex Bob ( move , ? ) ◮ Frank is a prisoner who wants to escape. q 1 q 2 ( move , ? ) ◮ Frank has learned the passwords of both guards. ( pw B , d ) ( pw B , d ) ( pw A , d ) ( pw B , c ) ( pw A , c ) ( pw A , d ) ◮ Charlie is an internal guard and observes Frank. ◮ Charlie can cooperate (actions c ), by keeping q 4 ( nop , nop ) quiet, or can defect (action d ), by warning the caught guards.

  14. Example: Prisoner’s escape escaped 1. M , q 1 �| = � �{ fr }� � � escaped ( nop , nop ) q 3 2. M , q 1 | = � �{ fr , ch }� � � escaped ( pw A , c ) ( pw B , c ) Alex Bob 3. M , q 1 | = � �{ ch }� � � ¬ escaped ( move , ? ) q 1 q 2 ( move , ? ) 4. M , q 1 �| = � �{ ch }� � � caught ( pw B , d ) ( pw B , d ) ( pw A , d ) ( pw B , c ) ( pw A , c ) ( pw A , d ) 5. M , q 1 | = � � X ( Bob ∧� � X escaped ) �{ fr }� �{ fr , ch }� q 4 ( nop , nop ) 6. M , q 1 | = � �{ fr }� � � � Alex caught

  15. Memoryless and perfect recall strategies ◮ Agent’s strategies may rely on agent’s memories: ◮ Memoryless strategy : A memoryless strategy for an agent i specifies what i is going to do in each state. It is represented as the function f i : Q → Act ◮ Perfect recall strategy : A perfect recall strategy for an agent i specifies what i is going to do after each history (sequence of states). It is represented as the function f i : Q + → Act

  16. Memoryless and perfect recall strategies ◮ Strategic abilities of agents in ATL* depend on the agents’ memory. ◮ Example: ◮ For perfect recall strategy M , q 0 | = � �{ 1 , 2 }� � ( Xp ∧ XX ¬ p ) ◮ For memoryless strategy M , q 0 �| = � �{ 1 , 2 }� � ( Xp ∧ XX ¬ p ) ( α, α ) ( ∗ , ∗ ) α, β q 0 q 1 p ¬ p

  17. Results ◮ Theorem For ATL, the perfect recall semantics ( IR ) is equivalent to the memoryless semantics ( Ir ) under perfect information, i.e., M , q | = IR ϕ iff M , q | = Ir ϕ , i.e., ATL = ATL Ir = ATL IR The two semantics, Ir and IR , are different for ATL* . ◮ Model Checking Complexity Ir IR ATL P P ∆ P ATL* PSPACE 3

  18. Applications and extensions of ATL ◮ ATL ( ∗ ) is used to reason about multiagent systems ◮ ATL ( ∗ ) is used to model various phenomena such as responsibility and normative systems ◮ ATL ( ∗ ) with imperfect information ◮ Resource bounded ATL ( ∗ )

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend