git @ Cat's Eye Technologies Jaccia / 5866989
CRLF line terminators -> LF line terminators. catseye 7 years ago
1 changed file(s) with 81 addition(s) and 81 deletion(s). Raw diff Collapse all Expand all
0 The Jaccia and Jacciata Cellular Automata
1 =========================================
2
3 Overview
4 --------
5
6 Jaccia and Jacciata are cellular automata inspired by the Announcement of
7 [Scientific Proof that Slime Molds are Intelligent Maze Solvers][].
8
9 Basically, the slime mold solves the maze by:
10
11 - initially being everywhere in the maze
12 - there being food at the entrance and exit of the maze
13 - minimizing its surface area by retreating from anywhere it can't get
14 food.
15
16 Jaccia operates the same way. In the Jaccia automaton, slime cells
17 survive if they have immediate neighbours in at least two cardinal
18 directions that provide sustenance, i.e. are either food or other slime
19 cells. The result is the same: paths of slime cells that lead down dead
20 ends have one end which provides no sustenance and dies off. Eventually,
21 only paths of slime cells that reach from food to food (or uninterrupted
22 circular paths of slime cells) remain. Jacciata is a more involved
23 automaton which finds only the shortest path.
24
25 [Scientific Proof that Slime Molds are Intelligent Maze Solvers]: http://web.archive.org/web/20020220163303/http://www.riken.go.jp/lab-www/frontier-div/NEWSLETTER/feb2001/ameboid_e.htm
26
27 Properties
28 ----------
29
30 Jaccia has the property that, when started from this condition (entire
31 maze filled with slime cells), the automaton will eventually reach a
32 fixed point (steady state) which contains all possible orthogonal paths
33 from food to food. (Orthogonal paths means, a diagonal isn't considered
34 a path.)
35
36 Jacciata is similar, but has the property that when it reaches a fixed
37 point, it will contain the *shortest* path from food to food, if such a
38 path exists and is unique. If no such path exists, or is not unique, the
39 result is undefined. It is otherwise similar to Jaccia.
40
41 Definition
42 ----------
43
44 Both Jaccia and Jacciata are defined in ALPACA v1.0. Jaccia is defined
45 in the file `jaccia.alp` and Jacciata in `jacciata.alp`. The ALPACA
46 definition is authoritative; what is given here is merely advisory.
47
48 Both automata use basically the same set of symbols. An initial Jaccia
49 playfield generally serves as an initial Jacciata playfield with the
50 same kind of solution.
51
52 - ` ` - empty space
53 - `#` - wall (purely decorative)
54 - `%` - slime mold
55 - `F` - food
56 - `S` - "start" food (needed in Jacciata, optional in Jaccia)
57 - `-` - exploratory head (Jacciata only)
58 - `?` - exploratory body (Jacciata only)
59 - `@` - solved (Jacciata only)
60
61 Discussion
62 ----------
63
64 Jacciata's definition is not very elegant, especially when compared to
65 Jaccia. In order for it to work, the two sources of food need to be
66 labelled differently (`S` and `F`), there needs to be a "head" of an
67 exploratory shoot that looks for solutions, and so on. It could probably
68 be made more elegant with some work.
69
70 [New in 1.1] The definition of these automata in ALPACA 0.94 suggested some
71 possible improvements to ALPACA, particularly the definition of
72 neighbourhoods different from the assumed von Neumann neighbourhood, and
73 their use in the count operator. The Jaccia and Jacciata descriptions were
74 rewritten in ALPACA 1.0, and do now take advantage of these features in order
75 to be written more succinctly.
76
77 Happy intelligence! Such as it is.
78 Chris Pressey
79 April 11, 2009
80 Bellevue, WA
0 The Jaccia and Jacciata Cellular Automata
1 =========================================
2
3 Overview
4 --------
5
6 Jaccia and Jacciata are cellular automata inspired by the Announcement of
7 [Scientific Proof that Slime Molds are Intelligent Maze Solvers][].
8
9 Basically, the slime mold solves the maze by:
10
11 - initially being everywhere in the maze
12 - there being food at the entrance and exit of the maze
13 - minimizing its surface area by retreating from anywhere it can't get
14 food.
15
16 Jaccia operates the same way. In the Jaccia automaton, slime cells
17 survive if they have immediate neighbours in at least two cardinal
18 directions that provide sustenance, i.e. are either food or other slime
19 cells. The result is the same: paths of slime cells that lead down dead
20 ends have one end which provides no sustenance and dies off. Eventually,
21 only paths of slime cells that reach from food to food (or uninterrupted
22 circular paths of slime cells) remain. Jacciata is a more involved
23 automaton which finds only the shortest path.
24
25 [Scientific Proof that Slime Molds are Intelligent Maze Solvers]: http://web.archive.org/web/20020220163303/http://www.riken.go.jp/lab-www/frontier-div/NEWSLETTER/feb2001/ameboid_e.htm
26
27 Properties
28 ----------
29
30 Jaccia has the property that, when started from this condition (entire
31 maze filled with slime cells), the automaton will eventually reach a
32 fixed point (steady state) which contains all possible orthogonal paths
33 from food to food. (Orthogonal paths means, a diagonal isn't considered
34 a path.)
35
36 Jacciata is similar, but has the property that when it reaches a fixed
37 point, it will contain the *shortest* path from food to food, if such a
38 path exists and is unique. If no such path exists, or is not unique, the
39 result is undefined. It is otherwise similar to Jaccia.
40
41 Definition
42 ----------
43
44 Both Jaccia and Jacciata are defined in ALPACA v1.0. Jaccia is defined
45 in the file `jaccia.alp` and Jacciata in `jacciata.alp`. The ALPACA
46 definition is authoritative; what is given here is merely advisory.
47
48 Both automata use basically the same set of symbols. An initial Jaccia
49 playfield generally serves as an initial Jacciata playfield with the
50 same kind of solution.
51
52 - ` ` - empty space
53 - `#` - wall (purely decorative)
54 - `%` - slime mold
55 - `F` - food
56 - `S` - "start" food (needed in Jacciata, optional in Jaccia)
57 - `-` - exploratory head (Jacciata only)
58 - `?` - exploratory body (Jacciata only)
59 - `@` - solved (Jacciata only)
60
61 Discussion
62 ----------
63
64 Jacciata's definition is not very elegant, especially when compared to
65 Jaccia. In order for it to work, the two sources of food need to be
66 labelled differently (`S` and `F`), there needs to be a "head" of an
67 exploratory shoot that looks for solutions, and so on. It could probably
68 be made more elegant with some work.
69
70 [New in 1.1] The definition of these automata in ALPACA 0.94 suggested some
71 possible improvements to ALPACA, particularly the definition of
72 neighbourhoods different from the assumed von Neumann neighbourhood, and
73 their use in the count operator. The Jaccia and Jacciata descriptions were
74 rewritten in ALPACA 1.0, and do now take advantage of these features in order
75 to be written more succinctly.
76
77 Happy intelligence! Such as it is.
78 Chris Pressey
79 April 11, 2009
80 Bellevue, WA