Games and distributed synthesis
Igor Walukiewicz, CNRS Bordeaux University
Games and distributed synthesis Igor Walukiewicz, CNRS Bordeaux - - PowerPoint PPT Presentation
Games and distributed synthesis Igor Walukiewicz, CNRS Bordeaux University Input C Church, ``Applications of recursive arithmetics to the problem of circuit synthesis'', 1957 Output Controller Plant b a Ramadge & Wonham, ``The control
Igor Walukiewicz, CNRS Bordeaux University
Church, ``Applications of recursive arithmetics to the problem of circuit synthesis'', 1957
a a b bPlant Controller
C Input Output
Ramadge & Wonham, ``The control of discrete event systems’', 1987-89
This is not about Pnueli & Rosner model Emerson & Clarke, ``Using branching time temporal logic to synthesize synchronization skeletons’', 1982 Zielonka ``Note on finite asynchronous automata'', 1987 Here we revisit this setting with a very simple model of distributed systems
We get multi-player partial information games that are (or may be) decidable.
At every cycle the device reads In and outputs Out.
w0C(w0)w1C(w0w1)w2C(w0w1w2) . . .
C Input Output
Behaviour is an infinite sequence: Church synthesis problem
C ∈ w0C(w0)w1C(w0w1)w2C(w0w1w2) . . . ✏ α.
C C C given α find C such that for all w ∈ Aω
in:
w C(w )w C(w w )w C(w w w ) . . . ✏ α.
C : A+
in → Aout
1 1 1 1 1 1 1 1 1
Game between Environment (In) and Player (Out) Every infinite play should satisfy α Thm [Rabin’69, Büchi and Landweber’69] There is an algorithm that given an MSOL α decides if such a C exist is. If there is one then there is a C implementable by a finite automaton. Church synthesis problem
C ∈ w0C(w0)w1C(w0w1)w2C(w0w1w2) . . . ✏ α.
C C C given α find C such that for all w ∈ Aω
in:
w C(w )w C(w w )w C(w w w ) . . . ✏ α.
C ∃Z.strategy(Z) ∧ ∀P.play(P, Z) ⇒ α(P)
1 1 1 1 1 1 1 1 1
Game between Environment (In) and Player (Out) Every infinite play should satisfy α Extensions:
promptness of response, permissive strategies, memory optimal strategies.
C ∃Z.strategy(Z) ∧ ∀P.play(P, Z) ⇒ α(P)
∃ ∧ ∀ ⇒ |I |O Plant: a finite deterministic automaton P over an alphabet A.
A is divided into Actr and Auctr.
Controller: a finite deterministic automaton C over A s.t
control ∀s ∈ SC∀a ∈ Auctr. δ(s, a)defined.
Controlled plant: P × C
P × C R&W control problem: given P and α find C such the P × C ✏ α.
x y a b x a y b x,y « No b before y, after y only b’s »
. . . . . .
ak
a1
P C P × C Given P and another finite automaton K find C such that:
L(P × C) ⊆ L(K)
P × C ⊆ non-blocking every reachable state in P × C has an outgoing edge.
P ?
x
⊆
K
Take A = P × K.
uctr to a red state.
step 2. Automaton C is the obtained by removing all red states in A. if loc(a) ∩ loc(b) = ∅ and wabv ∈ L(A) then wbav ∈ L(A).
We do the same as before but instead of finite automata we take their distributed version.
c b c a d b b d a p q r Local states sets Sp, Sq, Sr. Local transitions δc : Sp → Sp δb : Sq × Sr → Sq × Sr, . . . Process p executes local action c,
c b c a d b b d a p q r 1 Local states sets Sp, Sq, Sr. Local transitions δc : Sp → Sp δb : Sq × Sr → Sq × Sr, . . . Process p executes local action c, Processes q, r synchronize on action b (and update states). . . .
c b c a d b b d a p q r 1 1 1 Local states sets Sp, Sq, Sr. Local transitions δc : Sp → Sp δb : Sq × Sr → Sq × Sr, . . . Process p executes local action c, Processes q, r synchronize on action b (and update states). . . .
P: finite set of processes. A: finite set of letters. loc : A æ (2P \ ÿ): distribution of letters over processes.
a1 a2 a2 a3 d P1 P2 P3
Distributed alphabet
P: finite set of processes. A: finite set of letters. loc : A æ (2P \ ÿ): distribution of letters over processes.
a1 a2 a2 a3 d P1 P2 P3
Distributed alphabet A language is trace closed if it is closed under permutation of independent letters. Thm [Zielonka 87] Every trace closed regular language can be recognised by a Zielonka automaton.
if loc(a) ∩ loc(b) = ∅ and wabv ∈ L(AA) then wbav ∈ L(AA).
A is divided into Actr and Auctr.
CC control ∀s ∈ SC∀a ∈ Auctr. δ(s, a) defined.
∀ ∈ ∀ ∈ Controlled plant: PP × CC
Plant: a Zielonka automaton PP over a distributed alphabet A.
Controller: a Zielonka automaton CC over A s.t.
L(PP × CC) ⊆ L(K) PP × CC ⊆ K non-blocking every reachable state in PP × CC has an outgoing edge.
PP × CC Given PP and another Zielonka automaton KK find CC such that:
PP ??
x
⊆ KK
Do there exist such f(x) and g(y)? Yes, if x,y range over {0,1} No, if x,y range over {0,1,2}
x=g(y) or y=f(x)?
c12 a1, b1
c23 a3, b3
c12 c23 a2, b2
x1 c1,2 x2 y3 c2,3 a1 b2 b3 x1 c1,2 x2 b1
« No b before y, after y only b’s »
P1 P2 P3
c12 a1, b1
c23 a3, b3
c12 c23 a2, b2
x1 c1,2 x2 y3 c2,3 a1 b2 b3 x1 c1,2 x2 b1
« No b before y, after y only b’s »
Thm [Genest & Gimbert & Muscholl & W.’13, Muscholl & W.’14] The R&W problem for Zielonka automata is decidable for automata with acyclic communication graph.
P: finite set of processes. A: finite set of letters. loc : A æ (2P \ ÿ): distribution of letters over processes.
a1 a2 a2 a3 d P1 P2 P3
nodes are processes, edges (p, q) if p, q ∈ loc(a) for some a.
Communication graph:
Thm [Genest & Gimbert & Muscholl & W.’13, Muscholl & W.’14] The R&W for Zielonka automata is decidable for automata with acyclic communication graph.
P: finite set of processes. A: finite set of letters. loc : A æ (2P \ ÿ): distribution of letters over processes.
a1 a2 a2 a3 d P1 P2 P3
nodes are processes, edges (p, q) if p, q ∈ loc(a) for some a.
Communication graph:
We have started with the classical Church setting
C Input Output
Took the R&W formulation of it
L(P × C) ⊆ L(K)
+ nonblocking And instantiated with a very simple distributed model
c b c a d b b d a p q r
This gives us a notion of games with partial information (causal memory) that we do not know how to solve. n-players cooperating against the environment, each having causal view of the past: when two players perform a common action, they exchange all information about what they have seen in the past.