A Note on Synchronization Steps in Firing Squad Synchronization ...

1 downloads 0 Views 174KB Size Report
Abstract—The firing squad synchronization problem on cel- lular automata has been studied .... 51. Q Q G A A B Q Q Q Q Q. 52. Q Q G A B Q Q Q Q Q Q. 53.
!000111000      TTThhhiiirrrddd      IIInnnttteeerrrnnnaaatttiiiooonnnaaalll      JJJoooiiinnnttt      CCCooonnnfffeeerrreeennnccceee      ooonnn      CCCooommmpppuuutttaaatttiiiooonnnaaalll      SSSccciiieeennnccceee      aaannnddd      OOOppptttiiimmmiiizzzaaatttiiiooonnn

A Note on Synchronization Steps in Firing Squad Synchronization Problem Akira Nomura∗ , Jean-Baptiste Yun`es† , Hiroshi Umeo‡ ∗ Univ. of Osaka Electro-Communication, Neyagawa-shi, Hatsu-cho, 18-8, 572-8530, Osaka, Japan [email protected] † LIAFA - Universite Paris 7 Denis Diderot, 175, rue du chevaleret, 75013 Paris, France [email protected] ‡ Univ. of Osaka Electro-Communication, Neyagawa-shi, Hatsu-cho, 18-8, 572-8530, Osaka, Japan [email protected] automata. All cells (except the end cells) are identical finite state automata. See Figure 1. The array operates in lockstep mode such that the next state of each cell (except the end cells) is determined by both its own present state and the present states of its right and left neighbors. All cells (soldiers), except one general cell, are initially in the quiescent state at time t = 0 and have the property whereby the next state of a quiescent cell having quiescent neighbors is the quiescent state. At time t = 0 the general cell is in the fire-when-ready state, which is an initiation signal to the array. The FSSP is stated as follows: Given an array of n identical cellular automata, including a general on the left end which is activated at time t = 0, we want to give the description (state set and next-state transition function) of the automata so that, at some future time, all of the cells will simultaneously and, for the first time, enter a special firing state. The initial general is on the left end of the array.

Abstract—The firing squad synchronization problem on cellular automata has been studied extensively for more than forty years, and a rich variety of synchronization algorithms have been proposed. In this paper, we propose two synchronization algorithms and their implementations, each having O(n2 ) and O(2n ) synchronization steps for n cells, respectively. Keywords-cellular automaton; firing squad synchronization problem;

I. I NTRODUCTION We study a synchronization problem that gives a finitestate protocol for synchronizing a large scale of cellular automata. The synchronization in cellular automata has been known as a firing squad synchronization problem (FSSP) since its development, in which it was originally proposed by J. Myhill in Moore [1964] to synchronize all parts of self-reproducing cellular automata. The problem has been studied extensively for more than 40 years [1-8]. In the present paper, we propose two implementations of firing squad synchronization algorithms with large synchronization steps. In the study of the firing squad synchronization problem, most of the works have been devoted to the study of developing optimum-time and linear-time synchronization algorithms. The question that we explore is that: • How can we delay the synchronization time? • Is there any synchronization algorithm having synchronization steps greater than linear-time, such as O(n2 ), O(2n )?

1

Figure 1.

3

n

A one-dimensional cellular automaton.

B. A Seven-state Implementation of O(n2 )-step Synchronization Algorithm In this section, we propose a seven-state cellular automaton that can synchronize for any array of length n in O(n2 ) steps. The algorithm is to find a center cell (cells) of the cellular space of length n in 3/4n2 + O(1) steps. Figure 2 shows a space-time diagram for finding the center cell. We have implemented the algorithm on a cellular automaton M with seven internal states Q = {Q, G, F, A, B, C, D}, where Q is the quiescent, G is the general, and F is the firing state,

II. F IRING S QUAD S YNCHRONIZATION A LGORITHM WITH L ARGE S YNCHRONIZATION S TEPS A. One-Dimensional Cellular Automata The firing squad synchronization problem (FSSP, for short) is formalized in terms of the model of cellular automata. Consider a one-dimensional array of finite state !777888-­-­-000-­-­-777666!555-­-­-444000333000-­-­-666///111000      $$$222666...000000      ©©©      222000111000      IIIEEEEEEEEE DDDOOOIII      111000...111111000!///CCCSSSOOO...222000111000...111222444

2

333000000

respectively. The other states are used for auxiliary states. The state transition table is given in Fig. 3. In the table a symbol ”* ” means a boundary state of right and left ends of arrays. Some snapshots for the synchronization processes on 11 cells can be found in Fig. 4.

t=0 Time

Cellular Space 1, 2, ... n

Cellular Space 1, 2, ... n

Cellular Space 1, 2, ... n

t=0

Time

Time

t=2n-2 -----------------------t=2n -----------------------t=2n -----------------------t=3/4n2 ------------------------

1

2

3

4

5

6

7

8

0

G

Q

Q

Q

Q

Q

Q

Q

Q

Q

Q

39

B

G

A

Q

Q

Q

Q

Q

Q

Q

77

Q

Q

B

Q

G

A

A

B

Q

Q

Q

1

G

A

Q

Q

Q

Q

Q

Q

Q

Q

Q

40

A

B

G

A

A

Q

Q

Q

Q

Q

Q

78

Q

B

B

Q

G

A

B

Q

Q

Q

Q

2

G

A

A

Q

Q

Q

Q

Q

Q

Q

Q

41

Q

A

G

A

A

A

Q

Q

Q

Q

Q

79

A

B

Q

Q

G

B

Q

Q

Q

Q

Q

3

G

A

A

A

Q

Q

Q

Q

Q

Q

Q

42

Q

C

G

A

A

A

A

Q

Q

Q

Q

80

Q

Q

Q

Q

G

G

Q

Q

Q

Q

Q

4

G

A

A

A

A

Q

Q

Q

Q

Q

Q

43

B

Q

G

A

A

A

A

A

Q

Q

Q

81

Q

Q

Q

Q

B

G

A

Q

Q

Q

Q

5

G

A

A

A

A

A

Q

Q

Q

Q

Q

44

Q

Q

G

A

A

A

A

A

A

Q

Q

82

Q

Q

Q

B

B

G

A

A

Q

Q

Q

6

G

A

A

A

A

A

A

Q

Q

Q

Q

45

Q

Q

G

A

A

A

A

A

A

A

Q

83

Q

Q

B

B

B

G

A

A

A

Q

Q

7

G

A

A

A

A

A

A

A

Q

Q

Q

46

Q

Q

G

A

A

A

A

A

A

A

B

84

Q

B

B

B

B

G

A

A

A

A

Q

8

G

A

A

A

A

A

A

A

A

Q

Q

47

Q

Q

G

A

A

A

A

A

A

B

Q

85

A

B

B

B

B

G

A

A

A

A

B

9

G

A

A

A

A

A

A

A

A

A

Q

48

Q

Q

G

A

A

A

A

A

B

Q

Q

86

Q

A

B

B

B

G

A

A

A

B

Q

10

G

A

A

A

A

A

A

A

A

A

B

49

Q

Q

G

A

A

A

A

B

Q

Q

Q

87

Q

Q

A

B

B

G

A

A

B

Q

Q

11

G

A

A

A

A

A

A

A

A

B

Q

50

Q

Q

G

A

A

A

B

Q

Q

Q

Q

88

Q

Q

Q

A

B

A

B

Q

Q

Q

12

G

A

A

A

A

A

A

A

B

Q

Q

51

Q

Q

G

A

A

B

Q

Q

Q

Q

Q

89

Q

Q

Q

Q

A

G

B

Q

Q

Q

Q

13

G

A

A

A

A

A

A

B

Q

Q

Q

52

Q

Q

G

A

B

Q

Q

Q

Q

Q

Q

90

Q

Q

Q

Q

C

D

G

Q

Q

Q

Q

14

G

A

A

A

A

A

B

Q

Q

Q

Q

53

Q

Q

G

B

Q

Q

Q

Q

Q

Q

Q

91

Q

Q

Q

B

C

D

G

A

Q

Q

Q

15

G

A

A

A

A

B

Q

Q

Q

Q

Q

54

Q

Q

G

G

Q

Q

Q

Q

Q

Q

Q

92

Q

Q

B

B

C

D

G

A

A

Q

Q

16

G

A

A

A

B

Q

Q

Q

Q

Q

Q

55

Q

Q

B

G

A

Q

Q

Q

Q

Q

Q

93

Q

B

B

B

C

D

G

A

A

A

Q

17

G

A

A

B

Q

Q

Q

Q

Q

Q

Q

56

Q

B

B

G

A

A

Q

Q

Q

Q

Q

94

A

B

B

B

C

D

G

A

A

A

B

18

G

A

B

Q

Q

Q

Q

Q

Q

Q

Q

57

A

B

B

G

A

A

A

Q

Q

Q

Q

95

Q

A

B

B

C

D

G

A

A

B

Q

19

G

B

Q

Q

Q

Q

Q

Q

Q

Q

Q

58

Q

A

B

G

A

A

A

A

Q

Q

Q

96

Q

Q

A

B

C

D

G

A

B

Q

Q

20

Figure 2.

Q

G

G

G

Q

Q

Q

Q

Q

Q

Q

Q

Q

59

Q

Q

A

G

A

A

A

A

A

Q

Q

97

Q

Q

Q

A

C

D

G

B

Q

Q

Q

21

B

G

A

Q

Q

Q

Q

Q

Q

Q

Q

60

Q

Q

C

G

A

A

A

A

A

A

Q

98

Q

Q

Q

C

C

D

G

G

Q

Q

Q

22

A

G

A

A

Q

Q

Q

Q

Q

Q

Q

61

Q

B

Q

G

A

A

A

A

A

A

B

99

Q

Q

B

C

A

D

B

G

A

Q

Q

23

Q

G

A

A

A

Q

Q

Q

Q

Q

Q

62

A

B

Q

G

A

A

A

A

A

B

Q

100

Q

B

B

C

B

D

A

G

A

A

Q

24

Q

G

A

A

A

A

Q

Q

Q

Q

Q

63

Q

Q

Q

G

A

A

A

A

B

Q

Q

101

A

B

B

C

Q

D

Q

G

A

A

B

25

Q

G

A

A

A

A

A

Q

Q

Q

Q

64

Q

Q

Q

G

A

A

A

B

Q

Q

Q

102

Q

A

B

C

Q

D

Q

G

A

B

Q

26

Q

G

A

A

A

A

A

A

Q

Q

Q

65

Q

Q

Q

G

A

A

B

Q

Q

Q

Q

103

Q

Q

A

C

Q

D

Q

G

B

Q

Q

27

Q

G

A

A

A

A

A

A

A

Q

Q

66

Q

Q

Q

G

A

B

Q

Q

Q

Q

Q

104

Q

Q

C

C

Q

D

Q

G

G

Q

Q

28

Q

G

A

A

A

A

A

A

A

A

Q

67

Q

Q

Q

G

B

Q

Q

Q

Q

Q

Q

105

Q

B

C

A

Q

D

Q

B

G

A

Q

29

Q

G

A

A

A

A

A

A

A

A

B

68

Q

Q

Q

G

G

Q

Q

Q

Q

Q

Q

106

A

B

C

A

B

D

A

B

G

A

B

30

Q

G

A

A

A

A

A

A

A

B

Q

69

Q

Q

Q

B

G

A

Q

Q

Q

Q

Q

107

Q

A

C

B

Q

D

Q

A

G

B

Q

31

Q

G

A

A

A

A

A

A

B

Q

Q

70

Q

Q

B

B

G

A

A

Q

Q

Q

Q

108

Q

C

D

G

Q

D

Q

C

D

G

Q

32

Q

G

A

A

A

A

A

B

Q

Q

Q

71

Q

B

B

B

G

A

A

A

Q

Q

Q

B

C

D

G

A

D

B

C

D

G

A

33

Q

G

A

A

A

A

B

Q

Q

Q

Q

72

A

B

B

B

G

A

A

A

A

Q

Q

110

A

C

D

G

B

D

A

C

D

G

34

Q

G

A

A

A

B

Q

Q

Q

Q

Q

73

Q

A

B

B

G

A

A

A

A

A

Q

111

G

C

D

G

C

D

G

C

D

G

C

35

Q

G

A

A

B

Q

Q

Q

Q

Q

Q

74

Q

Q

A

B

G

A

A

A

A

A

B

112

C

G

D

C

G

D

C

G

D

C

G

36

Q

G

A

B

Q

Q

Q

Q

Q

Q

Q

75

Q

Q

Q

A

G

A

A

A

A

B

Q

113

D

D

D

D

D

D

D

D

D

D

D

37

Q

G

B

Q

Q

Q

Q

Q

Q

Q

Q

76

Q

Q

Q

C

G

A

A

A

B

Q

Q

114

F

F

F

F

F

F

F

F

F

F

F

38

Q

G

G

Q

Q

Q

Q

Q

Q

Q

Q

Figure 4.

First - Center

9 10 11

109

B

Snapshots for the synchronization process on 11 cells.

ACKNOWLEDGMENT A part of this work of the last author is supported by Grant-in-Aid for Scientific Research (C) 21500023.

All

A space-time diagram for the synchronization algorithm.

R EFERENCES Right State

Q

Q G A B C D Q Q Q Q

B

B

G A B Q Q C Q

B

Q

A

A

G G

B

B

Q Q

Q

G

G

A Q

G

D

B

G

A

C Q

*

A

A

D

D

C

Q Q

G A

A

B

A A

A

B

B

C

B D

C

C A

B

B

B

B

B

B

D G

B

G

G

C

D

D G Q

Q G

D

*

A

B

D

*

B

G

G

C

D

*

Q G

D

Right State Q G A B C D Q

Q

Q

G A

C

*

Right State

D

Q G A B C D Q D

C

G D

C

C

A

C

C

C

C

D

D

B

*

D

B

B C C A

A

Figure 3.

D

D

B C

D D

*

Q B

D

D

G G

D

D

D D

D D

D

D

Q G A B C D

D

D

D

F

F

F

[3] E. Goto: A minimal time solution of the firing squad problem. Dittoed course notes for Applied Mathematics 298, Harvard University, (1962), pp. 52-59.

Right State

B

D

Left State

G

D

Left State

Left State

G B

A C

*

¨ [2] H. D. Gerken. (1987): Uber Synchronisations - Probleme bei Zellularautomaten. Diplomarbeit, Institut f¨ur Theoretische Informatik, Technische Universit¨at Braunschweig, pp. 50.

G

D

Q

*

Q Q

B

C

A

C

A

G

G

Q G A B C D Q A

B

D Q Q Q Q Q Q

Q Q

B

[1] R. Balzer: An 8-state minimal time solution to the firing squad synchronization problem. Information and Control, vol. 10 (1967), pp. 22-42.

Right State

A

Left State

A

Q G A B C D

Q Q Left State

Left State

A A

*

Right State

G

B

D

B

A Q

A

G

B Q

B

A

C

A

A

Q Q

B

B

C

C G

C

G

[4] O. Henn: Linear speed-up for cellular automata synchronizers and applications. Theoretical Computer Science, 188 (1997) 45-57.

C

Q

D Q

A

A

A

*

A

A

A

Q

*

B

D

D

[5] J. Mazoyer: A six-state minimal time solution to the firing squad synchronization problem. Theoretical Computer Science, vol. 50 (1987), pp. 183-238.

Transition table for the seven-state implementation

[6] 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.

III. C ONCLUSION

[7] H. Umeo: Firing squad synchronization problem in cellular automata. In Encyclopedia of Complexity and System Science, R. A. Meyers (Ed.), Springer, Vol.4(2009), pp.3537-3574.

We have proposed a synchronization algorithm and given its 7-state implementation having O(n2 ) synchronization steps. By the similar way above, we can develop an algorithm with O(2n ) synchronization steps. Its implementation can be also given on a 15-state cellular automaton.

[8] A. Waksman: An optimum solution to the firing squad synchronization problem. Information and Control, vol. 9 (1966), pp. 66-78.

333000111