Energy Games and Parity Conditions: Winning Strategies in Systems Design
This work explores the intersection of energy games and parity conditions, focusing on the construction and verification of systems in a competitive game framework. Two-player turn-based games on graphs are analyzed, where one player represents the system and the other the environment. The conditions for winning are derived from specifications of the form φ(input, output). The study highlights the strategies required to ensure nonnegative energy levels throughout the game, the initial credit problems, and applicable memoryless strategies for winning in both qualitative and quantitative paradigms.
Energy Games and Parity Conditions: Winning Strategies in Systems Design
E N D
Presentation Transcript
Energy Parity Games Laurent Doyen LSV, ENS Cachan & CNRS Krishnendu ChatterjeeIST Austria ICALP’10 & GT-Jeux’10
Games for system design input output Spec: φ(input,output) System • Verification: check if a given system is correct • reduces to graph searching
Games for system design ? input output Spec: φ(input,output) • Verification: check if a given system is correct • reduces to graph searching • Synthesis : construct a correct system • reduces to game solving – finding a winning strategy
Games for system design ? input output Spec: φ(input,output) • Verification: check if a given system is correct • reduces to graph searching • Synthesis : construct a correct system • reduces to game solving – finding a winning strategy • … in a game played on a graph: • - two players: System vs. Environment • - turn-based, infinite number of rounds • - winning condition given by the spec
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Play:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite Strategies = recipe to extend the play prefix Player 1: outcome of two strategies is a play Player 2:
Two-player games Player 1 (good guy) Player 2 (bad guy) • Turn-based • Infinite • Winning condition ? Strategies = recipe to extend the play prefix Player 1: outcome of two strategies is a play Player 2:
Two-player games on graphs Who wins ? Qualitative Parity games ω-regular specifications (reactivity, liveness,…)
Two-player games on graphs Who wins ? Qualitative Quantitative Parity games Energy games ω-regular specifications (reactivity, liveness,…) Mean-payoff games Resource-constrainedspecifications
Energy games Energy game: Positive and negative weights(encoded in binary)
Energy games Energy game: Positive and negative weights (encoded in binary) Play: 3 3 4 4 -1 … Energy level: 3, 3, 4, 4, -1,…(sum of weights)
Energy games Energy game: Positive and negative weights (encoded in binary) Play: 3 3 4 4 -1 … 3 Energy level: 3, 3, 4, 4, -1,… Initial credit A play is winning if the energy level is always nonnegative. “Never exhaust the resource (memory, battery, …)”(equivalent to a game on a one-counter automaton)
Energy games Initial credit problem: Decide if there exist an initial credit c0 and a strategy of player 1 to maintain the energy level always nonnegative. Player 1 (good guy)
Energy games Initial credit problem: Decide if there exist an initial credit c0 and a strategy of player 1 to maintain the energy level always nonnegative. For energy games, memoryless strategies suffice. Player 1 (good guy)
Energy games A memoryless strategy is winning if all cycles are nonnegative when is fixed. Initial credit problem: Decide if there exist an initial credit c0 and a strategy of player 1 to maintain the energy level always nonnegative.
Energy games A memoryless strategy is winning if all cycles are nonnegative when is fixed. Initial credit problem: Decide if there exist an initial credit c0 and a strategy of player 1 to maintain the energy level always nonnegative. See [CdAHS03, BFLMS08]
Energy games A memoryless strategy is winning if all cycles are nonnegative when is fixed. Initial credit problem: Decide if there exist an initial credit c0 and a strategy of player 1 to maintain the energy level always nonnegative. See [CdAHS03, BFLMS08]
Energy games A memoryless strategy is winning if all cycles are nonnegative when is fixed. c0=0 c0=15 Initial credit problem: Decide if there exist an initial credit c0 and a strategy of player 1 to maintain the energy level always nonnegative. c0=0 c0=0 c0=10 c0=0 Minimum initial credit can be computed in c0=5
Mean-payoff games Mean-payoff value of a play = limit-average of the visited weights Optimal mean-payoff value can be achieved with a memoryless strategy. Decision problem: Decide if there exists a strategy for player 1 to ensure mean-payoff value ≥ 0.
Mean-payoff games Mean-payoff value of a play = limit-average of the visited weights Optimal mean-payoff value can be achieved with a memoryless strategy. Decision problem: Decide if there exists a strategy for player 1 to ensure mean-payoff value ≥ 0.
Mean-payoff games Memoryless strategy σ ensures nonnegative mean-payoff value iff all cycles are nonnegative in Gσ iff memoryless strategy σ is winning in energy game Mean-payoff games with threshold 0 are equivalent to energy games. [BFLMS08]
Parity games Parity game: integer priority on states
Parity games Parity game: integer priority on states Play: 5, 5, 5, 1, 0, 2, 4, 5, 5, 3… A play is winning if the least priority visited infinitely often is even. “Canonical representation of ω-regular specifications ” (e.g. all requests are eventually granted – G[r -> Fg])
Parity games Decision problem: Decide if there exists a winning strategy of player 1 for parity condition. Player 1 (good guy)
Parity games Decision problem: Decide if there exists a winning strategy of player 1 for parity condition. For parity games, memoryless strategies suffice. Player 1 (good guy)
Parity games A memoryless strategy is winning if all cycles are even when is fixed. Decision problem: Decide if there exists a winning strategy of player 1 for parity condition.
Parity games A memoryless strategy is winning if all cycles are even when is fixed. Decision problem: Decide if there exists a winning strategy of player 1 for parity condition. See [EJ91]
Summary Energy games - “never exhaust the resource” Parity game – “always eventually do something useful”
Two-player games on graphs Qualitative Quantitative Parity games Energy games ω-regular specifications (reactivity, liveness,…) Mean-payoff games Mixed qualitative-quantitative Energy parity games (Mean-payoff parity games have been studied in Lics’05)
Energy parity games “never exhaust the resource”Energy parity games: and “always eventually do something useful” Decision problem: Decide the existence of a finite initial credit sufficient to win.
Energy parity games “never exhaust the resource”Energy parity games: and “always eventually do something useful”
Summary Energy games - “never exhaust the resource” Parity game – “always eventually do something useful”
Energy parity games “never exhaust the resource”Energy parity games: and “always eventually do something useful” Decision problem: Decide the existence of a finite initial credit sufficient to win. Energy games – a story of cycles Parity games – a story of cycles Energy parity games - ?
A story of cycles A one-player energy Büchi game
A story of cycles A good cycle ? good for parity good for energy
A story of cycles Winning strategy: 1. reach and repeat positive cycle to increase energy; 2. visit priority 0; 3. goto 1;