Date post: | 03-Jan-2016 |
Category: |
Documents |
Upload: | lois-pratt |
View: | 33 times |
Download: | 1 times |
Presented by Daniel ChoiProvable Software Lab.
KAIST
• Introduction
• Game Theory– Classification of Games– Notations
• Applications to Model Verification– Bisimulation– Model Checking
• Conclusion
Game theory is the study of the choice of strategies by interacting rational agents.
Roger A. McCain, Game Theory: A Nontechnical Introduction to the Analysis of Strategy (South-western, 2004)
• Nim Game
Take one or more coins at the same rowThe player who takes the last coin wins
Example from : Roger A. McCain, Game Theory: A Nontechnical Introduction to the Analysis of Strategy (South-western, 2004)
• Players– Shin– Yun-ho
• Assumption– Shin starts first
• Strategies for Shin– Take one coin from the top row– Take one coin from the second row– Take both coins from the second row
Al w ins
Bob w ins
Bob w ins
Al w ins
Al w ins
Shin Wins
Yun-ho Wins
Shin Wins
Shin Wins
Yun-ho WinsShin’s turn
Shin’s turn
Yun-ho’s turn
• It can formally analyze the game– E.g. Tree diagram
• Metaphor–Many interactions can be treated and
analyzed as a game
• Game theoretic analysis is to discover which strategy is a person’s best response to the strategies chosen by the others.
• Worst-Case Analysis– Game between a solver and an adversary
• Network routing– Game between client and environment– Game between router and clients
• Load-sharing in distributed systems– Game between server and client
(or other server)
Target ModelRequirement
Properties
How about different approaches?
Game Theory
Target Model
Requirement
Properties
The model does not satisfy the
requirement properties!!
The model satisfies
the requirement properties!!
Player 1
Player 2
Does Player 2 always win?
Does Player 2 always win?
• Introduction
• Game Theory– Classification of Games– Notations
• Applications to Model Verification– Bisimulation– Model Checking
• Conclusion
• Non-cooperative game– The players act individually, each decision
of a player influences the payoff of the other players
• Cooperative game– The players are allowed to from coalitions
and combine their decision-making problems
• Normal form– Decisions of players are simultaneous– The payoffs are represented by a matrix– Ex. Prisoner’s Dilemma
• Extensive form– Decisions of players are sequential– The payoffs are represented by a tree– Ex. Nim game
• Al Thinks rationally– Case 1: Bob confess
• If Al confess then Al will get 10 years and Bob will get 10 years• If Al does not confess then Al will get 20 years, Bob will get 0 years
– Case 2: Bob does not confess• If Al confess then Al will get 0 years, Bob will get 20 years• If Al does not confess then Al will get 1 years, Bob will get 1 years
Al
Confess Don’t
Bob
Confess
10 years, 10 years
0, 20 years
Don’t 20, 0 years1 year, 1
year
• Al Thinks rationally– Case 1: Bob confess
• If Al confess then Al will get 10 years and Bob will get 10 years• If Al does not confess then Al will get 20 years, Bob will get 0 years
– Case 2: Bob does not confess• If Al confess then Al will get 0 years, Bob will get 20 years• If Al does not confess then Al will get 1 years, Bob will get 1 years
Al
Confess Don’t
Bob
Confess
10 years, 10 years
0, 20 years
Don’t 20, 0 years1 year, 1
year
• Extensive game– With perfect information
• Any player knows all the moves made before one’s own move
– Without perfect information• A player makes one’s move in the game, one does
not know opponent player’s move
• Computation (run or sequence)– Interaction between “Player” and “Opponent”– Represented by a sequence of move– Opponent always makes the first move
• Definition of Game (MG, λG, PG)– MG : the set of moves of the
game– λG : MG → {P, O}
• Labeling function designating each move as by Player or Opponent
– PG : the set of alternating sequences of moves in MG• Non-empty, prefix-closed
• Example– MG = {a1, a2, b1, b2, b3}– λG = {(a1, O), (a2, O),
(b1, P), (b2, P), (b3, P)}
– PG = {ε , a1, a1b1, a2, a2b2, a2b3}
a1 a2
b1b2 b3
• A game can be seen as specifying the possible interactions between a System and its Environment
• Games classify behaviors– Programs will be modeled by strategies
• Strategies are rules specifying how the System should actually play
– Deterministic strategy σ on a game G (σ ⊆ PG
even)• ε ∈ σ• sab ∈ σ ⇒ s ∈ σ• sab, sac ∈ σ ⇒ b = c
• Introduction
• Game Theory– Classification of Games– Notations
• Applications to Model Verification– Bisimulation– Model Checking
• Conclusion
• Bisimulation relation can be modeled as a Bisimulation game (Equivalence Game)– Observer can repeatedly interact with a process
by choosing an available transition from it– Observer match their selections so that they can
proceed with further corresponding choices
• Equivalence game G(E0, F0)– Player I and II : Observers who make choices of
transitions– Player I attempts to show initial processes are
different– Player II attempts to show two processes are
equivalent
• Equivalence game G(E0, F0)– Player I chooses a transition Ej –a-> Ej+1 and then player
II chooses a transition with the same label Fj –a-> Fj+1
– Player I chooses a transition Fj –a-> Fj+1 and then player II chooses a transition with the same label Ej –a-> Ej+1
• Player I win– Player I can choose a transition and player II will be
unable to match it
• Player II win– If the play is infinite – If the play reaches the position (En, Fn) and both
processes have no available transitions
Clock and Clock2 is
equivalent!
Clock and
Clock2 is different!
tick
Clock
tick
Clock2
tick
Player I Player II
G(Clock, Clock2)
(Clock, Clock2), (Clock, tick.Clock2), (Clock, Clock2) ….
Player II wins
Clock and Clock’ is
equivalent!
Clock and
Clock’ is different!
0
Clock
tick
Clock’
tick
Player I Player II
G(Clock, Clock2)
(Clock, 0)
Player I wins
tick
• Winning Strategy π– If the player wins every play in which the
player uses π
• PropositionFor any game G(E,F) either player I or player II has a history-free winning strategy
• History-free : Rules do not depend on what happened previously in the play
• If player II has a winning strategy for G(E, F) then E is game equivalent to process F
• E is game equivalent to F iff E is bisimular to F– Only if
• Showing that the relation R = {(E, F) | E and F are game equivalent} is a bisimulation.– Player I’s move : E –a-> E’ (this is possible move by player I)
Player II can respond with F –a-> F’ (by game equivalent relation)
– Player I’s move : F –a-> F’ (this is possible move by player I) Player II can respond with E –a-> E’ (by game equivalent relation)
– If• There is a bisimulation relation R s.t. (E, F) ∈ R,
Construct a winning strategy for player II for the game G(E, F)
• In any play, whatever move player I makes player II responds by making sure that the resulting pair of processes remain in the relation R
tea
U ≡ 1p.(1p.tea.U + 1p.coffee.U)
coffee
tea1p
1p 1p 1p
1p 1p
1p
V ≡ 1p.1p.tea.V + 1p.1pcoffee.V
U and V is bisimulation relation!
U and V is not
bisimulation relation!
Player I Player II
G(U, V)
Player I Player II
V -1p->1p.tea.V
(U, V) -> (1p.tea.U + 1p.coffee.U,
1p.tea.V)
U -1p-> 1p.tea.U + 1p.coffee.U
1p.tea.U + 1p.coffee.U, 1p.tea.V-1p-> coffee.U
(1p.tea.U + 1p.coffee.U, 1p.tea.V)
-> (coffee.U, tea.V)
1p.tea.V -1p-> tea.V)
It is not bisimulation relation
It is not bisimulation relation
• Introduction
• Game Theory– Classification of Games– Notations
• Applications to Model Verification– Bisimulation– Model Checking
• Conclusion
• Semantics of Interaction
• Computability Logic: A Formal Theory of Interaction (In Interactive Computing)
• Model mu-calculus– Property Checking Game–Model Checking Game
• Overview of Game Theory and Using to Model the Knowledge of Multi-Agent Systemby Thuy Lien PHAM, Marc BUI, Michel LAMURE In Actes de la Première Conférence Internationale RIVF'03 Rencontres en Informatique Vietnam-France, RIVF'03
• Bisimulation, Model Checking and Other Gamesby Colin Stirling, In Notes for Mathfit instructional meeting on games and computation, Edinburgh, June 1997
• Games and Model Mu-Calculusby Colin Stirling, In TACAS 1996 Lecture Notes in Computer Science 1055, 298-312, 1996
• Semantics and Logics of ComputationEdited by A. Pitts and P. Dybjer, Cambrige Press, 1996