2次元セルラーオートマトン上での 最適時間一斉射撃アルゴリズムの設計

日本ソフトウェア科学会第 22 回大会(2005 年度)論文集
1
2 次元セルラーオートマトン上での
最適時間一斉射撃アルゴリズムの設計
内野 博貴 †
Hiroki Uchino
†
梅尾 博司 †
Hiroshi Umeo
大阪電気通信大学大学院工学研究科
{uchino, umeo}@cyt.osakac.ac.jp
1
はじめに
1回する時間を単位とし,1 ステップと呼ぶ.
2 次元セルラーオートマトンにおける最適時間一
2-D CA における信号はの伝播速度は,1/1 のよう
斉射撃アルゴリズムは,これまでに Beyer [1], Shi-
に分数で表す.これは,1 ステップに 1 セル信号が伝
nahr [6], Teraoka, Hisaoka, Maeda, Umeo [8], Umeo, 播すると言う事を表しており,2 ステップに 1 セル
Maeda, Fujiwara [9] らにより提案されている. これ 伝播する信号は,1/2 の速度で伝播していると表す.
らのアルゴリズムは,一次元一般化一斉射撃アルゴ 以下では,1/1 の速度で伝播する信号を 1/1 信号と
リズムをベースとするものであり,Shinar [6] は 28
状態の一斉射撃アルゴリズムを,Teraoka, Hisaoka,
呼ぶ.
次に一斉射撃問題について述べる.全てのセルが
Maeda, Umeo [8] は 14 状態の最適時間アルゴリズム 静止状態であるセル空間に将軍状態 (General) と呼
を実現している.本稿では,2 次元アレイを L 字型 ばれる特殊な状態を配置する.(図 3.6) 将軍状態は,
一次元アレイの集合体ととらえ,それらの上で従来 セル空間の端 (1-D CA ならば左端,2-D CA ならば
から知られている左端あるいは右端を将軍状態とす
左上) に配置された時刻を開始時刻 (t = 0) とし,信
る一次元同期アルゴリズムを利用する.2 次元アレ
号を送信する.
イの為の最適時間アルゴリズムを提案する.アルゴ
n
リズムの構築において,Umeo [10] による計算状況
G
㨯㨯㨯
の凍結・解答手法 (Freezing-Thawing Technique) が
イズ m × n の 2 次元アレイを m + n+max(m, n) − 3
㨯㨯㨯
後に 4 節では,今後の残された問題について論ずる.
㨯㨯㨯
2 次元セルラーオートマトン
2 次元セルラーオートマトン (2-D CA) は,セル
が平面上に格子構造で配置されたモデルである.2-D
㨯㨯㨯
㨯㨯㨯
ステップで同期するアルゴリズムの詳細を示す.最
2
㨯㨯㨯
㨯㨯㨯
㨯㨯㨯
㨯㨯㨯
m
㨯㨯㨯
トマトンと一斉射撃問題について述べ,3 節では,サ
㨯㨯㨯
㨯㨯㨯
利用されている.まず 2 節では,2 次元セルラーオー
図 1: サイズ m × n の 2 次元アレイ.
CA は,縦に m 個,横に n 個のセルが配置された空
未来のある時刻 t = α において全てのセルを射撃
間を,サイズ m × n の 2-D CA と呼ぶ.
状態へ状態遷移させる状態遷移関数を作成する事が
全てのセルは,ノイマン近傍の隣接した位置にあ 一斉射撃問題の目的である.射撃状態は,t = α の時
るセル上,下,左,右と通信リンクで接続されてお
刻以外には現れる事は無く,全てのセルが射撃状態
り,通信リンクで繋がっているセル同士は 1 ステップ
になる事で一斉射撃問題は終了する.最適時間とは,
で互いの状態を読み取る事ができる.最外周に位置 「これ以上早く同期する事は不可能である」と証明さ
するセルは,壁と隣接していると仮定する.2-D CA れた時間で,最適時間で同期するアルゴリズムを最適
における状態遷移は,上,下,左,右の近傍情報と, 時間アルゴリズムと呼ぶ.1-D CA ではセル数 n のセ
自身の状態の組み合わせにより状態遷移する.状態 ル空間に対して最適時間は 2n− 2 となり,2-D CA で
遷移は全てのセルが同時に行い,セルが状態遷移を
は n× m のサイズにおいては,m+ n+max(m, n)− 3
日本ソフトウェア科学会第 22 回大会(2005 年度)論文集
2
m < n の場合,
Li = { Ci,j Ck,i |1 ≤ j ≤ i + (n − m), 1 ≤ k ≤ i}
となることが知られている.
となり,Li は 3 つのセグメントに分割される.各
3
セグメントに属するセルを以下に定義する.
最適時間一斉射撃アルゴリズム
本節では,サイズ m × n の 2 次元アレイを m +
n+max(m, n) − 3 ステップで一斉射撃する同期アル
ゴリズムを示す.以下では,一般性を失うこと無く
第 1 セグメント = {Ci,j |1 ≤ j ≤ i}
第 2 セグメント = {Ci,j |i ≤ j ≤ i + (n − m)}
第 3 セグメント = {Cj,i |1 ≤ j ≤ i}
m < n と仮定する.サイズ m × n の 2 次元アレイ M
1
2
n
3
を,図 2 に示すような m 個の L 型 (正確には,文字
Time
L を時計方向まわりに 90 °回転させたものである)1
次元アレイから構成されると考える.
n
1/3
.
.
.
.
.
.
.
.
.
.
.
1/1
Freezing signal
.
t = n-1
.
1/7
.
m
. .
. .
.
.
......
L1
L2
t=0
Thawing signal
.
t = n-1+∆t
.
. .
...
Li
Lm
1/15
図 2: m 個の L 字型 1 次元アレイから構成される 2
Frozen
次元アレイ.
1/1
1/3
half
1/7
quarter
quarter
これらを L1 ,L2 ,・
・
・,Lm で示す.分割の数学的な
定義は後述する.任意の i(1 ≤ i ≤ m) に対して,Li
斉射撃することにより,M を同期状態に導く.それ
ぞれの L 型 1 次元アレイは,3 つのセグメントに分
割される.i 番目の L 型アレイ Li (1 ≤ i ≤ m) はそ
t = 2n-2+∆t
Fire
を同時刻 T(m, n) = m + n+max(m, n) − 3 時に一
図 3: 1 次元一斉射撃アルゴリズムの凍結解凍技法を
用いて,∆t ステップの時間遅延.
れぞれ長さ i,n − m,i の 1 次元アレイからなる.各セ
グメント上では,t = 0 時に左端あるいは右端に将
軍状態を配置する一斉射撃アルゴリズムを動作させ
る.各セグメントの長さは短いので,従来から知られ
3.1
ているアルゴリズムを使用すると一般的には比較的
1 次元一斉射撃問題における凍結・解凍技法とは,
アレイ上での同期時間を遅延させる方法である.凍
早期に一斉射撃状態におちいるが,各セグメントの
同期時刻を T(m, n) に一致させるために,Umeo[13]
凍結・解凍技法
結・解凍技法は,凍結信号と解凍信号の 2 種類の信
により考案された凍結・解凍技法 (Freezing-Thawing
号を制御する事で,n 個のセルからなる 1 次元セル
Technique) を使用する.詳細は後述する.
ラーオートマトンの同期時間を遅延させることがで
きる.凍結信号は,伝播している任意の信号と衝突
[定義 1] M をサイズ m × n の 2 次元セルラーオー すると衝突したセルで停滞させる.停滞した信号は
トマトンとし,座標 (1,1) に位置するセルを C1,1 , 解凍信号と衝突するまで,凍結信号と衝突した位置
(m, n) に位置するセルを Cm,n とする.M を L1 ∼ に停滞し続ける.この 2 種類の信号,凍結信号・解
Lm のセル列に分割する.Li (1 ≤ i ≤ m) に属するセ
ルを以下に定義する.
凍信号が通過した n 個のセル列は,同期時間が信号
の通過した時間差分遅れる.この時間差を凍結・解
日本ソフトウェア科学会第 22 回大会(2005 年度)論文集
凍技法によって発生させた遅延と呼ぶ.
Cm1
࡮࡮࡮
C11
࡮࡮࡮
3
C1,n-m
セルラーオートマトンとする.t = 0 時における将軍
Cn1
First Row
First Column
1/1
1/1
[補題 1] M を n 個のセルからなるセル空間上で最適
時間一斉射撃アルゴリズムを実行する任意の 1 次元
࡮࡮࡮
t=m-1
の位置をアレイの左端とし,∆t(≥ 1) を任意の正整
t=n-1
数とする.M は t = n − 1 + ∆t ステップ時に,外界
1/2
から右端のセルに特別な信号が与えられるものとす
る.この時,t = 2n − 2 + ∆t ステップ時に一斉射撃
するセルラーオートマトンを M から構成することが
でき,射撃に要する時間を ∆t ステップ遅延させるこ
1/2
t=3m-3
とができる (図 3 参照).
1/1
3.2
t=2m+n-3
アレイのマーキングと将軍状態の生成
まず,最初に M を m 個の L 型アレイに分割する
ためのマーキングについて説明する.t = 0 時,M
t=m+2n-3
上の C11 に将軍状態 G が置かれ,ほかの全てのセル
図 4: 第 1 セグメント並びに第 3 セグメント上に将
は静止状態にあるとする.G から t = 0 時に 3 つの
軍状態を生成するための時間・空間図式.
信号 SV ,SD ,SH が,垂直下方,右下 45 °の方向,水
平方向に発せられる.これらの信号は 1/1 の速度で
伝播し,それぞれ t = m − 1, 2m − 2, n − 1 時に最
初の目標点である Cm1 ,Cmn ,C1n に到着する.右下
軍状態を生成する.生成された将軍は Lm 上に信号
を送信する.第 1 セグメントに生成された将軍から
45 °の方向に進む信号 SD は,C11 ,C22 ,C33 ,Cmm の信号は,SD と衝突すると,反射し第 1 セグメント
上に第 2 セグメントの開始を示す記号をマークする. を凍結させる為の凍結信号となる.この時,第 1 セ
次に Cm1 ならびに C1n に到達した信号 SV ,SH はそ グメント上を 1/2 の速度で伝播する信号は冷凍・解
こで反射し,伝達速度を 1/2 に減速して再び C を 凍の制御に使用するため信号を凍結させない.第 1
11
目指して先程の道筋を逆方向に戻る.SV は新たな
セグメントに生成された将軍が送信した信号と,SD
行に到達する度に,各 L 型アレイの第 1 セグメント
が衝突した地点 Cmm に第 2 セグメントを一斉射撃
を一斉射撃する為の将軍状態を生成する.Li 上には
する為の将軍状態を生成する.第 2 セグメントに生
t = 3m − 2i − 1 時に将軍状態が作られる.SH は第 1 成された将軍は第 1 セグメントに生成された将軍と
セグメント上に同様に第 3 セグメントを一斉射撃す 同様の信号を送信する.第 2 セグメントの将軍が送
る為の将軍状態を生成する.L の第 3 セグメントに 信した信号は,第 3 セグメントの将軍が送信した信
i
対しては,t = 2m + n − 2i − 1 時に将軍状態が作ら
れる.SH による将軍状態の生成は,後ほど説明する
理由により,t = 2m + n − 3 の時間に C1,n−m 上で
号と衝突し,第 2 セグメントと第 3 セグメントを凍
結させる.凍結した 3 つのセグメントを解凍する信
号は,第 1 セグメントを解凍する信号は第 2 セグメ
終了する.
ントより,第 2 セグメントを解凍する信号は第 3 セ
3.3
2 セグメントより伝播される.凍結したセグメント
は,解凍信号を異なるセグメントから受け取る事で,
グメントより,第 3 セグメントを解凍する信号は第
Li の一斉射撃
まず,Lm 上での一斉射撃アルゴリズムを説明す
る.m < n と仮定した Lm の時間空間図式を図 5 に
示す.Lm は SV の信号が到達する t = m − 1 時間に
Cm1 に第 1 セグメントを一斉射撃する為の将軍状態
を生成する.同様に,SH の信号が到達する t = n − 1
時間に C1n に第 3 セグメントを一斉射撃する為の将
3 つのセグメントは単一での動作をせず,異なるセグ
メントの影響を受ける.
Li のセル列も基本的には Lm のセル列と同様のア
ルゴリズムで動作する.Lm のアルゴリズムと異なる
点は,Lm のアルゴリズムが第 2 セグメントの将軍を
生成する位置を SD との衝突地点だったが,Li のア
日本ソフトウェア科学会第 22 回大会(2005 年度)論文集
ルゴリズムは SD の軌跡と衝突すると第 2 セグメン
トの将軍状態を生成する事と,1,2,3 セグメント目の
3.4
4
m > n と仮定した場合
m > n の場合と m < n の場合の違いは,第 2 セグ
将軍を生成する時間が異なる事の 2 点である.
メントの位置と第 2 セグメントへ解凍信号を送るセ
L1 のセル列は,第 1,第 3 セグメントの長さが 1 グメントが異なる事である.m > n と仮定した場合,
となったセル列である.L1 は他のセル列と異なり特 SD は Ln の第 3 セグメントを伝播する信号と衝突し
殊な形になってしまう為,凍結を用いない最適時間 Cnn に第 2 セグメントの将軍状態を生成する.この第
一斉射撃アルゴリズムを用いてセル列を同期させる. 2 セグメントの将軍は n < m の場合に生成された将
[補題 2] Li を [定義 1] で表したセル列とする.Li
を左端 Ci,1 ,右端 C1,i+(n−m) の 1 次元配列として
軍とは異なり,Cn1 方向へ信号を伝播せず,Cmn の
方向へ信号を伝播する.さらに,他の Li (1 ≤ i ≤ n)
も Ln と平行に信号を伝播する.各 Li の第 2 セグメ
考える.Li には 3 つの信号が伝播される.左端に
ントは第 1 セグメントと衝突すると,m < n の第 3
m + 2(m − i) − 1 の時間に到達する信号.右端に セグメントと衝突した動作を対称にとる.すなわち,
n + 2(m − i) − 1 の時間に到達する信号.左端より 第 2 セグメントは第 3 セグメントの解凍信号を生成
m の位置に 2i の時間に到達する信号.これら 3 つの し,第 1 セグメントは,第 2 セグメントの解凍信号
信号が Li に伝播された場合,上記のアルゴリズムを を伝播する.このように,サイズの異なる場合でも
使用する事により,Li を同期させる事ができる.
第 2 セグメントの動作を変更する事で,いかなるサ
イズの m × n の場合においてもこのアルゴリズムは
動作する.
G
m
Sv
SH
1/1
n
n
SH
G
SD
1/1
1/2
i
SD
1/1
1/1
m
1/1
1/1
Sv
1/2
n-m
n-m
m
n-m
i
m
i
n-m
t=m-1
t=m+2(m-i)-1
1/1
t=2m-2
t=3m-i-2
1/1
1/2
1/2
1/2
t=m+n-2
∆t2
∆t3
t=2m+n-2
1/1
∆t1
1/1
t=m+2n-i-2
t=m+2n-3
t=m+2n-3
図 5: Lm 及び Li 上での一斉射撃.
t=n+2(m-i)-1
1/1
1/2
∆t1
t=2n-2
t=n-1
1/1
1/2
1/2
∆t2
t=2m+n-i-2
t=2m+n-2
∆t3
日本ソフトウェア科学会第 22 回大会(2005 年度)論文集
3.5
最適時間一斉射撃アルゴリズム
5
手法を考案した.考案したアルゴリズムを Gerken[2]
M をサイズ m × n の 2 次元セルラーオートマトン
の 7 状態アルゴリズムをベースにシミュレーター上
とする.M を [定義 1] の L1 ∼Lmin(m,n) に分割する. へ部分的な実装を行った.実装したアルゴリズムは
分割したセル列は,[補題 2] のアルゴリズムを用いる 状態数,ルール数が膨大な数になった.
ことによって m + n+max(m, n) − 3 の時間で同期す
参考文献
る事ができる.以上を次の定理にまとめる.
[定理 3] 任意のサイズ m × n(m ≥ 2, n ≥ 2) の 2 次
元セルラーオートマトンを m + n+max(m, n) − 3 ス
テップで同期させる M が存在する.
3.6
コンピューター上への実装
m = 8,n = 5 の場合におけるシミュレーション結
果を図 6 に示す.
Step:0
1
2
3
4
5
6
7
1
G
S
S
S
S
S
S
S
2
S
S
S
S
S
S
S
S
3
S
S
S
S
S
S
S
4
S
S
S
S
S
S
S
5
S
S
S
S
S
S
S
Step:3
1
1
2
8
Step:1
Step:2
1
S
1
S
2
S
S
S
S
S
S
1
2
3
4
5
6
7
1
XY
X
S
S
S
S
S
2
Y
S
S
S
S
S
S
S
3
S
S
S
S
S
S
S
4
S
S
S
S
S
S
S
5
S
S
S
S
S
S
8
Step:4
1
2
2
3
4
5
6
7
XY
X
X
X
S
S
S
S
1
XY
X
Y
XY
X
S
S
S
S
S
2
Y
XY
Y
Y
8
2
3
4
5
6
7
XY
X
X
S
S
S
S
S
Y
XY
S
S
S
S
S
S
3
Y
S
S
S
S
S
S
S
4
S
S
S
S
S
S
S
S
5
S
S
S
S
S
S
S
S
1
2
3
4
5
6
7
X
Step:5
8
8
3
4
5
6
7
X
X
X
S
S
S
1
XY
X
X
X
X
S
S
X
S
S
S
S
S
2
Y
XY
X
S
S
S
S
S
XY
S
S
S
S
S
3
Y
Y
XY
X
S
S
S
S
8
3
Y
Y
S
S
S
S
S
S
3
4
Y
S
S
S
S
S
S
S
4
Y
S
S
S
S
S
S
S
4
Y1
S
Y
S
S
S
S
S
5
S
S
S
S
S
S
S
S
5
T61
S
S
S
S
S
S
S
5
T62
TR
S
S
S
S
S
S
Step:6
1
2
3
4
5
6
Step:7
1
2
3
4
5
6
2
3
4
5
6
7
8
1
XY
X
X
X
X
X
X
S
1
XY
X
X
X
X
X
X
Y61
1
XY
X
X
X
X
X
X1
Y62
2
Y
XY
X
S
S
S
S
S
2
Y
XY
X
S
S
S
S
S
2
Y
XY
X
S
S
S
S
YR
3
Y
Y
XY
X
S
S
S
S
3
Y1
Y
XY
X
S
S
S
S
3
T61
S
XY
X
S
S
S
S
4
T61
S
Y
XY
S
S
S
S
4
T62
TR
Y
XY
X
S
S
S
4
T6
TR1
T6
XY
X
S
S
S
T6
TR1
T6
S
S
S
S
S
5
T6
TR2
T_
TR
S
S
S
S
5
T6
TR
T_1
TS
T11
S
S
S
1
2
3
4
5
6
7
8
8
Step:11
5
Step:9
7
8
1
XY
X
X
X
X
X
Y61
Y6
2
Y1
XY
X
S
S
S
S
YR1
3
T62
TR
XY
X
4
T6
TR2
T_
T71
5
T6
TR
T62
T_
Step:12
S
S
S
Y6
S
S
S
S
S
S
T12 TRQ
Step:10 1
7
2
3
4
5
6
7
2
3
4
5
6
XY
X
X
X
X
X1
Y62
Y6
1
Y1
X
X
X
X
Y61
Y6
Y6
T61
XY
X
S
S
S
YR
YR2
2
T62
T71
S
S
S
S
YR1
YR
3
T6
TR1 T11
S
S
S
S
Y_
3
T6
TR2 T12 TRQ
S
Y6
Y_1
4
T6
TR
T_1
T72 TRQ
S
S
YR
4
T6
TR
T_2
T7
5
T6
TR
T6
T_1
S
5
T6
TR
T6
T_2
Step:13
T1
TR1 T6Q
1
2
3
4
5
6
7
8
1
2
S
X
X
X1
Y62
Y6
Y6
1
T6
TR
2
T6
T72 TRQ
S
S
YR
YR2
YR
2
T6
T7
S
Y_
Y62
3
T6
TR
T1
TR2
T_
44
Y_
4
T6
TR
T_
T7
TR T_1R 44
TR T_1R 4L
5
T6
TR
T6
T_
T1
3
T6
TR
T1
T6
TR
T_
T7
TR2
T6
TR
T6
T_
T1
Step:15 1
2
TR1 T6Q
7
8
Step:16
3
4
5
6
1
2
1
T6
TR
T_
4L_K
Y6
Y6
Y6
Y6
1
T6
TR
2
T6
T7
TR T_1R 44k_ YR
YR
YR
2
T6
T7
Y_
3
4
5
Y6
Y6
Y6
1
T6
TR
T6
Y1
Y62
Y6
Y6
Y6
YR1
YR
YR
2
T6
T7
TR2
T_
44
YR2
YR
YR
4L
Y_1
F
F
F
F
F
F
F
F
4
F
F
F
F
F
F
F
F
5
F
F
F
F
F
F
F
F
Y6
Y6
T6
T4
T1F
T4
T6
T4
T6
TLk
T4
T6
T6
T4
T6
T4
T1F
T4
TR
3
Y4
5
TL
T1K
F
8
Y6
Y4
4
TR
TR
F
7
Y6
3
TLk
TL
7
6
Y6
YL
TR
TL
TR
F
5
Y6
44KK YR
T1K
TR
T6
TL 4LKK
T6 4LKK
T6
Y6
44FF Y4
TL 4LKK YL
TR
T6
F
4
T4
T6
6
3
TLk
5
F
2
T4
T6
3
F
Step:17 1
T6
4
5
8
2
Y6
F
L6K_
1
T_ 44KK Y4
F
Y_2
T_
Y_2
TR
Y6
TR
4
44
T1K
YR
TR
F
TRR T_2
T_
Y6
T1K
F
T7
T6
YR
T4
3
TR T_1R 4L
T_
TR
6
TLk
F
T1
TR
T6
Y6
TRR T_2 4Lk_
F
TR
T6
5
T6
2
T6
4
Y6
T_
F
3
5
4
T1
8
L6
4Lk_
TR
7
Y_1
3
TR
F
6
TL
TR
7
Y6
2
TRR TL2 44k_ YR
T6
F
S
4L
5
T6
F
S
T_
S
T6
1
TR2
Y61
3
2
Step:14 1
T1
4
TRR T_2
8
TR1 T6Q
8
X
5
Step:18 1
7
S
7
3
T_
6
1
X
TR1 T6Q
4
T_ L6KK
1
2
T6
4
Step:8
1
1
5
8
T6 4LKK
44FF Y4
T6 4LKK
8
図 6: コンピューター上への実装.
4
おわりに
1 次元セルラーオートマトンにおける最適時間一
斉射撃アルゴリズムを,2 次元セルラーオートマトン
における最適時間一斉射撃アルゴリズムに拡張する
[1] W. T. Beyer: Recognition of topological invariants
by iterative arrays. Ph.D. Thesis, MIT, (1969), pp.
144.
[2] Hans-D., Gerken: Über Synchronisations - Probleme bei Zellularautomaten. Diplomarbeit, Institut für Theoretische Informatik, Technische Universität Braunschweig, (1987), pp. 50.
[3] A. Grasselli: Synchronization of cellular arrays:
The firing squad problem in two dimensions. Information and Control, vol. 28(1975), pp. 113-124.
[4] E. F. Moore: The firing squad synchronization
problem. in Sequential Machines, Selected Papers
(E. F. Moore, ed.), Addison-Wesley, Reading MA.,
(1964), pp. 213-214.
[5] H. B. Nguyen and V. C. Hamacher: Pattern synchronization in two-dimensional cellular space. Information and Control, vol. 26(1974), pp. 12-23.
[6] I. Shinahr: Two- and three-dimensional firing
squad synchronization problems. Information and
Control, vol. 24(1974), pp. 163-180.
[7] H. Szwerinski: Time-optimum solution of the
firing-squad-synchronization-problem
for
ndimensional rectangles with the general at an
arbitrary position. Theoretical Computer Science,
vol. 19(1982), pp. 305-320.
[8] M. Teraoka, M. Hisaoka, M. Maeda and H. Umeo:
A state-efficient implementation of synchronization algorithms for two-dimensional cellular arrays
-Extended abstract-. Proc. of the Tenth International Symposium on Artificial Life and Robotics,
pp. 350-353, (2005).
[9] H. Umeo, M. Maeda and N. Fujiwara: An efficient mapping scheme for embedding any onedimensional firing squad synchronization algorithm onto two-dimensional arrays. Proc. of the 5th
International Conference on Cellular Automata
for Research and Industry, LNCS 2493, SpringerVerlag, pp.69-81(2002).
[10] H. Umeo: A simple design of time-efficient firing squad synchronization algorithms with faulttolerance. IEICE Trans. on Information and Systems, vol. E87-D, No.3, pp.733-739, (2004).
[11] A. Waksman: An optimum solution to the firing
squad synchronization problem. Information and
Control, vol. 9 (1966), pp. 66-78.