## Use Smoothiness to classify rules

For discussion of other cellular automata.

### Re: Use Smoothiness to classify rules

Guys.

I am sorry but I made a big mistake about the orientation of the NHT matrix. The input-output axis was flipped in previous posts. They should be fixed by now.
(The "reshape": command in matlab fill in the elements by column, not by row. )
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:A somewhat difficult question: How much information can we extract from the transition matrix?

Here is one possible way to visualise the information contained in NHT:
Plot the within-N entropy against the entropy weight of N (which is -F(N)*log2(F(N))), repeat this for every neighborhood to get a scatter plot. On such scatter plots, complex behavior looks fairly different from chaotic ones.

We should be able to develop some statistics from here. Note for complex behavior dots scatter onto x-axis with no height, while for chaos dots are not attracted to x-axis. This partially confirm my idea that "complex is more deterministic than chaos"
Attachments
stable.jpg (29.88 KiB) Viewed 5970 times
complex4.jpg (42.84 KiB) Viewed 5970 times
chaos1.jpg (50.71 KiB) Viewed 5970 times
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Here's somehow effective statistics to describe complexity.
(x,y) where x=variance explained by trend in sum(entropyA*entropyB) time series.
y=mean( sum(entropyA*entropyB) time series )

But manual inspection reveal that right-bottom corner do contain complex behavior falsely classifed as chaotic. BUT their scale is usually higher than the neighborhood taken.
Attachments
v1res.jpg (32.98 KiB) Viewed 5955 times
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Under the earlier notation, I did a manual scan based on the recommendation parameters. As it turns out, these statistics captures some aspects of the behavior, but not quite precise the emergent nature yet.

The complied list is partially color coded.
Yellow: abundant moving heads/gliders/stable recognisable recurrent separable objects
Orange: same as yellow, but plagued with chaotic mess, usually in the centre (complex behavior at edge)
Dark orange: more chaos
dark to light purple: These rules tend to fall stable quickly/ oscillator rich, but little long-range spatial communication.
Blue/Cyan: these rules are very stable, but they exhibit fractal behavior in some aspect.
Blank: Not interesting enough/ very ordered/ close related to some other rules here. They are kept mainly for comparative analysis between close related rules.

Let's vote for your favorite color!!!

UPDATE:The signatures for these rules have been complied into NHT_ambig. I am currently storing them as .jpg files. Would love switch to some 3D format if there is any recommendation.
Attachments
ent_collect.xls.tar.gz
Last edited by shouldsee on August 14th, 2016, 6:33 pm, edited 1 time in total.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Further to the aforementioned 'within-NH entropy" and "between-NH entropy/forward uncertainty" plot.

I found it helpful to also include the 'backward uncertainty' as well as 'forward uncertainty', and to record the scatter plot over time. This provides a better signature of the dynamics.

The collection is uploaded as NHT1

Let's extract some statistics from these distributions.
Attachments
B367S02358 _soup62.jpg (233.12 KiB) Viewed 5926 times
B01234S012357_soup37.jpg (194.42 KiB) Viewed 5926 times
B3S23 _soup2.jpg (140.88 KiB) Viewed 5926 times
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

EDIT: Actually I messed up with forward uncertainty and backward uncertainty.
Let me be concise.
1.Forward predictability+chaos = complex
2.Backward predictability = order
3.No predictability = chaos
4. For complex behaviour, the states contributing to each element must directly inter-convert.
These are conjectures only and await more evidence.

Let's try to define 'interesting'.

One idea has knocked around since study on CA begins- we can use compressibility to define spaceship, because spaceships exhibit behavior periodic in time but aperiodic in space.

This idea naturally leads to the conjecture, that interesting rules are reversible. Imagine we got a universe of spaceships, we can easily deduce the configuration at an earlier time by reverse the speed of all spaceships. Thus, the more reversible behavior in a universe, the more interesting it is.

We can evaluate the reversibility by counting the states with a backward uncertainty near zero. For example, B01367S01 has a big collection of states near Bunc=0. B3S23 has a smaller collection. This reflects the fact that B01367S01 has more spontaneous spaceships/replicators than B3S23.

This criteria above is not enough to gurantee interesting behavior, it's only essential. Another essential is that these Bunc=0 states need to be connected to uncertain chaotic states that is unpredictable both forward and backward. Otherwise there will be no unpredictability in the universe.

Furthermore, for classical behavior like B3S23, we also need a stable background. This background will manifest as highly predictable (low uncertainty) both forward and backward, and constitute a large fraction of the universe (high entropic weight).
Attachments
B01367S01_soup11.jpg (209.42 KiB) Viewed 5880 times
B3S23_soup202.jpg (147.26 KiB) Viewed 5880 times
Last edited by shouldsee on August 15th, 2016, 1:16 pm, edited 1 time in total.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:We can evaluate the reversibility by counting the states with a backward uncertainty near zero. For example, B01367S01 has a big collection of states near Bunc=0. B3S23 has a smaller collection. This reflects the fact that B01367S01 has more spontaneous spaceships/replicators than B3S23.

The rule B378S126 may be a good sample to test. How many states are there near Bunc=0?
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:
shouldsee wrote:We can evaluate the reversibility by counting the states with a backward uncertainty near zero. For example, B01367S01 has a big collection of states near Bunc=0. B3S23 has a smaller collection. This reflects the fact that B01367S01 has more spontaneous spaceships/replicators than B3S23.

The rule B378S126 may be a good sample to test. How many states are there near Bunc=0?

The collection is uploaded as Logic
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Still refining the definition of interesting.

UPDATE: As it came out, the points with forward/backward uncertainty of zero are largely due to the base period 2 in B0 rules, which has led me to falsely conjectured a connection between these points and the interestingness of rules. After normalising the plot, the points are scatter along the plane x=y.

If we consider a spaceship moving through space, the vain in front of it is destined to get occupied by the spaceship, thus they are forward predictable. The vain to the tail of the spaceship, however, is bound to be occupied by the spaceship previously, thus they are backward predictable. Between these two edges, something happens in between.

Thus, by measuring the propensity of transition between these edges, we can get to taste the nature of this rule.

Attaches is another round of interesting rules. For some reason my collection is enriched of B0 rules.
Attachments
flux_collect.xls.tar.gz
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Some visualisation of the chaotic core in rulespace.

The red dots are complex rules from my test collection. The blue dots are random samples.

UPDATE: Legend added and B3/S23 pointed out.

FE=forward entropy
BE=backward entropy
flux are measured along the FE+BE, FE-BE axis, and weighted by the number of transition between corresponding input configurations. To remove the strobing effect, transition is taken every 6 steps.

A 3D version in form of matlab .fig can be found here

I have also updated the front page of this post.

raw statistics can be found here. Columns 2,3,4 are mf(FE+BE) mf(FE-BE), m(input entropy), 5,6,7 gives standard deviation std() instead of mean().

Sadly, the arm region indicated with red dots doesn't constitute an exclusive area, i.e interesting rules in curated collection are bound to lie in such region, but points in such region are not necessary interesting. This indicates that we may still need extra dimension to expand this 'arm' region.
Attachments
BSrulespace_2d.jpg (81.71 KiB) Viewed 5812 times
BSrulespace.jpg (82.6 KiB) Viewed 5813 times
Last edited by shouldsee on August 21st, 2016, 12:48 pm, edited 2 times in total.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

agar crawlers

`x = 69, y = 220, rule = B0345678/S0158:T69,2202obo2bobo2bobobobobo2bobo2bobobobobo2bobobobobobobobobobobobobob2obo\$69o2\$69o2\$bobo2bobo2bobobobobo2bobo2bobobobobo2bobobobobobobobobobobobobob2obo2\$69o2\$69o\$obob2obob2obobobobob2obob2obobobobob2obobobobobobobobobobobobobo2bobo\$69o2\$69o2\$obob2obob2obobobobob2obob2obobobobob2obobobobobobobobobobobobobo2bobo2\$69o2\$28o5b36o\$bobo2bobo2bobobobobo2bobo2b7obo2bobobobobobobobobobobobobob2obo\$29obob37o\$30bo\$29o3b37o\$27b2o3b2o\$bobo2bobo2bobobobobo2bobob2obobob3o2bobobobobobobobobobobobobob2obo\$29bobo\$30ob38o\$30bo\$29obob2ob34o\$obob2obob2obobobobob2obobobo2bobo4bobobobobobobobobobobobobobo2bobo\$29obob37o\$30bo\$30ob38o\$27b2o\$obob2obob2obobobobob2obob9obobobobobobobobobobobobobobobo2bobo\$27b2o2bo\$69o2\$69o\$bobo2bobo2bobobobobo2bobobobo7bobobobobobobobobobobobobobob2obo\$30obobob34o2\$69o2\$bobo2bobo2bobobobobo2bobob13obobobobobobobobobobobobob2obo\$28bobobobobo\$69o2\$69o\$obob2obob2obobobobob2obo17bobobobobobobobobobobobo2bobo\$25obobobobobobobob29o2\$69o2\$obob2obob2obobobobob24obobobobobobobobobobo2bobo\$23bobobobobobobobobobo\$69o2\$69o\$bobo2bobo2bobobobobobo24bobobobobobobobobob2obo\$24obobobobobobobobobobob24o2\$69o2\$bobo2bobo2bobobobobobobob24obobobobobobobob2obo\$26bobobobobobobobobobobo\$69o2\$69o\$obob2obob2obobobobobobobobo24bobobobobobobo2bobo\$29obobobobobobobobobobob19o2\$69o2\$obob2obob2obobobobobobobobobob24obobobobobo2bobo\$31bobobobobobobobobobobo\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobo24bobobobob2obo\$34obobobobobobobobobobob14o2\$69o2\$bobo2bobo2bobobobobobobobobobobobob24obobob2obo\$36bobobobobobobobobobobo\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobo24bobo2bobo\$39obobobobobobobobobobob9o2\$69o2\$obob2obob2obobobobobobobobobobobobobobob24o2bobo\$41bobobobobobobobobobobo\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobobobobobobo23bobo\$44obobobobobobobobobob6o2\$69o2\$bobo2bobo2bobobobobobobobobobobobobobobobobob17obobobo\$46bobobobobobobobo\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobobobobobobo13bobobobobo\$49obobobobob11o2\$69o2\$obob2obob2obobobobobobobobobobobobobobobobobobobob7obobobobobobo\$51bobobo\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobo3bobobobobobobo\$69o2\$69o2\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$bobo2bobo2bobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$69o2\$69o2\$obob2obob2obobobobobobobobobobobobobobobobobobobobobobobobobobobobobo2\$69o2\$69o!`

`x = 243, y = 12, rule = B12348/S123468:T243,1296obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobob2o\$95bobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$94obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$93bobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobob2o\$94obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$82b2o9bobobobobobobobobob5obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$94obobobobobobobobob7obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobob2o\$81b3o11bobobobobobobobob7obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$96obobobobobobobob5obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobob2o\$82b2o13bobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo\$98obobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobob2o\$o96bobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobobo!`
Last edited by shouldsee on September 2nd, 2016, 2:04 am, edited 1 time in total.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:To remove the strobing effect, transition is taken every 6 steps.

2 steps is enough.

shouldsee wrote:Sadly, the arm region indicated with red dots doesn't constitute an exclusive area, i.e interesting rules in curated collection are bound to lie in such region, but points in such region are not necessary interesting.

Points in such region, of course, are not necessary interesting, but most of them are interesting:
`G:Glider-PossibleN:Natural-Glider-PossibleS:SpecialA:Ameoba dynamicsF:Fast-DecayB357/S238        NB013568/S0123    NB012358/S01237   GB3468/S028       GB01245/S14       GB0123457/S0126   NB2346/S124678    S[The negative rule is b358s01378, which is N]B0127/S0135      GB358/S136        NB01367/S01       G[Possibly N]B123568/S123678  S[The negative rule is b348s148, which is N]B01347/S13       NB0127/S0235      GB2578/S0234678   S[The negative rule is b37s24578, which is G]B378/S024678     NB01237/S236      S[It has natural puffers, but not natural gliders]B013678/S0       NB012456/S023     NB0123567/S02346  G[Possibly N]B378/S02458      G[Possibly N]B3678/S135       NB012467/S1235    NB358/S12678      NB12/S12478       S[Biphasic. May be regarded as complex behaviour]B37/S0245        N[Has a 4c/25 glider: b5o\$o4bo\$o4bo\$b5o!]B3568/S136       NB012345/S0246    NB0134568/S0234   N[The natural ship is actually an infinite class of ships]B013457/S0123    G[There are too many replicators]B013458/S02      G[There are too many replicators]B01267/S0125     AB358/S1267       NB123478/S24678   S[The negative rule is b3578s238, which is G, and have a replicator]B01258/S025      G[Possibly N]B024678/S04678   S[The negative rule is b3567s3578, which is G]B0134568/S1234   S[It has natural puffers, but not natural gliders]B01238/S1246     GB012/S015        FB34/S368         FB012357/S14678   S[The negative rule is b3578s238, which is N]B01234567/S035   AB0123578/S135    AB01246/S01234678 S[The negative rule is b3s0135, which is both N and puffer-natural]B346/S0567       GB3468/S01        G[Sometimes explodes]B012458/S4       AB0123457/S023678 S[The negative rule of b347s02, which is G]B012567/S014     A[It converges to some strange states]B348/S037        GB123458/S024678  S[Negative of b357s128, which is G]B012/S145        AB356/S034        G[Maybe F]B1578/S234678    S[Negative of b378s24568, which is full of gliders]B0123456/S01235  F[Has a glider]B01278/S012468   S[Biphasic. May be regarded as complex behaviour]B0138/S4         NB0123578/S1236   G[Heavy ameoba dynamics]B3568/S0146      N    `

The region is determined by a neural network.

shouldsee wrote:This indicates that we may still need extra dimension to expand this 'arm' region.

Surely.

Would you like to share your program, since I think it's a good idea to use the program to search hexagonal rules:
`x = 16, y = 7, rule = B0126/S015H5bo6bo\$4bo6bo\$obobob8o\$o2bo2b8obo\$bobobob8o\$6bo6bo\$8bo6bo!`
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:
shouldsee wrote:To remove the strobing effect, transition is taken every 6 steps.

2 steps is enough.

I don't think 2 would be enough, since p3 strobing is quite frequent for cooperative oscillators. Use a different lagging length would also change the shape of the landscape. But no harm trying.

Bullet51 wrote:
shouldsee wrote:Sadly, the arm region indicated with red dots doesn't constitute an exclusive area, i.e interesting rules in curated collection are bound to lie in such region, but points in such region are not necessary interesting.

Points in such region, of course, are not necessary interesting, but most of them are interesting:
The region is determined by a neural network.

Did you tried to bulid a classifer under inspection here? Or what's the shape recognised by your NN? DId you just used the 3 features I provided?

Bullet51 wrote:
shouldsee wrote:This indicates that we may still need extra dimension to expand this 'arm' region.

Surely.

After all we managed to filter some out, but not yet enough.
Bullet51 wrote:Would you like to share your program, since I think it's a good idea to use the program to search hexagonal rules:

Sure. It just took some cleaning work. I have updated the link on the frontpage. Although to apply for hexagonal, you would need to undertake a extensive change.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:DId you just used the 3 features I provided?

Yes.

shouldsee wrote:Or what's the shape recognised by your NN?

Somewhat hard to say, since I don't know how to plot the surface of f(x,y,z)=0.

shouldsee wrote:Sure. It just took some cleaning work. I have updated the link on the frontpage. Although to apply for hexagonal, you would need to undertake a extensive change.

Thanks!
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:
shouldsee wrote:Or what's the shape recognised by your NN?

Somewhat hard to say, since I don't know how to plot the surface of f(x,y,z)=0.

Try contour3.

Bullet51 wrote:Thanks!

You are welcome.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:Or what's the shape recognised by your NN?

The NN may seem somewhat inaccurate, but in fact, it has a accuracy of 94.5%, just because I weighted the complex rules 94x higher.
1.png (16.2 KiB) Viewed 5759 times
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:[
Points in such region, of course, are not necessary interesting, but most of them are interesting:
`G:Glider-PossibleN:Natural-Glider-PossibleS:SpecialA:Ameoba dynamicsF:Fast-DecayB357/S238        NB013568/S0123    NB012358/S01237   GB3468/S028       GB01245/S14       GB0123457/S0126   NB2346/S124678    S[The negative rule is b358s01378, which is N]B0127/S0135      GB358/S136        NB01367/S01       G[Possibly N]B123568/S123678  S[The negative rule is b348s148, which is N]B01347/S13       NB0127/S0235      GB2578/S0234678   S[The negative rule is b37s24578, which is G]B378/S024678     NB01237/S236      S[It has natural puffers, but not natural gliders]B013678/S0       NB012456/S023     NB0123567/S02346  G[Possibly N]B378/S02458      G[Possibly N]B3678/S135       NB012467/S1235    NB358/S12678      NB12/S12478       S[Biphasic. May be regarded as complex behaviour]B37/S0245        N[Has a 4c/25 glider: b5o\$o4bo\$o4bo\$b5o!]B3568/S136       NB012345/S0246    NB0134568/S0234   N[The natural ship is actually an infinite class of ships]B013457/S0123    G[There are too many replicators]B013458/S02      G[There are too many replicators]B01267/S0125     AB358/S1267       NB123478/S24678   S[The negative rule is b3578s238, which is G, and have a replicator]B01258/S025      G[Possibly N]B024678/S04678   S[The negative rule is b3567s3578, which is G]B0134568/S1234   S[It has natural puffers, but not natural gliders]B01238/S1246     GB012/S015        FB34/S368         FB012357/S14678   S[The negative rule is b3578s238, which is N]B01234567/S035   AB0123578/S135    AB01246/S01234678 S[The negative rule is b3s0135, which is both N and puffer-natural]B346/S0567       GB3468/S01        G[Sometimes explodes]B012458/S4       AB0123457/S023678 S[The negative rule of b347s02, which is G]B012567/S014     A[It converges to some strange states]B348/S037        GB123458/S024678  S[Negative of b357s128, which is G]B012/S145        AB356/S034        G[Maybe F]B1578/S234678    S[Negative of b378s24568, which is full of gliders]B0123456/S01235  F[Has a glider]B01278/S012468   S[Biphasic. May be regarded as complex behaviour]B0138/S4         NB0123578/S1236   G[Heavy ameoba dynamics]B3568/S0146      N    `

The region is determined by a neural network.

Since my simulator does not distinguish between rules and their negative equivalents, we should classify postive and negative rules into the same class. i.e. if an S rule has a G negative counterpart, itself should be G instead of S. The plague of biphasic behavior is somewhat confusing, since there is not a general framework to classify within this discipline. Although I did observe some gliders, the heterogeneity in the randomly generated background make it hard to undertake systematic search, although I think randomagar should be able to cope with such things.

The presence of fast decay rules is also very intriguing, since they are usually scattered on the other side of the distribution. One possibility is these F rules are closely related to some more interesting rules and thus inherited some characteristics.

Regarding the usage of neural network, there really can't do any better than human eye on this occasion. The shape of distribution is already recognisable by inspection. But NN might be a good tool when we have more than 3 features.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:Sure. It just took some cleaning work. I have updated the link on the frontpage. Although to apply for hexagonal, you would need to undertake a extensive change.

It seems that some files are missing in your package:
`Undefined function or variable 'update_rule'.Error in CA_console_opt2 (line 296)           update_rule`

I have no idea about what "update_rule" is.

shouldsee wrote:The presence of fast decay rules is also very intriguing, since they are usually scattered on the other side of the distribution. One possibility is these F rules are closely related to some more interesting rules and thus inherited some characteristics.

There does exist some nearby rules, but I'm not sure if any characteristic is inherited.
`F Rule          Nearby N ruleB012/S015       B0125/S015  B34/S368        B34/S0368B0123456/S01235 B012456/S01235`
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:It seems that some files are missing in your package:

Thanks for the notice, I forgot to include that in the package. It should be fixed now. I will test them before release next time.

Also, if you are fitting a NN, definitly try to include the standard deviations of stats as well as means of stats as your feature, which should help discriminate "stable" complex and "transient“ complex.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

Dear Shouldsee,

I am puzzled by your definition of forward entropy and backward entropy. How are they different?
And what does the average of the 2-norm of [D_input' V_input(:,2)] mean? Why not just use the mean of the 2-norm of D_input' ?
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:Dear Shouldsee,

I am puzzled by your definition of forward entropy and backward entropy. How are they different?
And what does the average of the 2-norm of [D_input' V_input(:,2)] mean? Why not just use the mean of the 2-norm of D_input' ?

They are obsolete statistics that are no longer recorded in the 'process_outputs'.
`    dVV=[VV(1:3,:)-VV(4:6,:)];            wt=D_Tinput;    wt=wt/sum(wt);    v=[D_input' V_input(:,2)];    wtdVV=dVV(1:3,:).*repmat(wt,3,1);    v1=mean(dot(v,v,2)); %% this is obsolete    v2=mean(abs(wtdVV(1,:)));    v3=mean(abs(wtdVV(2,:)));%     v4=mean(wtdVV,2)'%%these are actually recorded.    phaseX=v2;    phaseY=v3;    phaseZ=H_input;;`

Every time before running the console, a list 'scalars' is input to specify the variables to record during each soup. If you look into 'collect.m' you should find the following.

`outnumber=8;  %% number of scalar outputs in the stat file scalars={'phaseX','phaseY','phaseZ','H_input','HD_linput'}; %% varaibles recorded during souping---v1 and v are not recorded`

Another thing, I have finally figured out how to cluster a correlation matrix properly. The correlation is calculated between counts of a custom neighborhood (the central cell it self ONLY!!). And the cell state is determined by its 6-gen history. Effectively we are taking a 6*1 slice on the space-time dimension.

ignore 'sumcov=..', it's not really sumcov.
Attachments
B0145678S157_soup61.jpg (223.13 KiB) Viewed 5672 times
B01234568S346_soup50.jpg (212.23 KiB) Viewed 5672 times
B3S23 _soup1.jpg (182.15 KiB) Viewed 5672 times
Last edited by shouldsee on August 23rd, 2016, 8:13 am, edited 1 time in total.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:They are obsolete statistics that are no longer recorded in the 'process_outputs'.
`    dVV=[VV(1:3,:)-VV(4:6,:)];            wt=D_Tinput;    wt=wt/sum(wt);    v=[D_input' V_input(:,2)];    wtdVV=dVV(1:3,:).*repmat(wt,3,1);    v1=mean(dot(v,v,2)); %% this is obsolete    v2=mean(abs(wtdVV(1,:)));    v3=mean(abs(wtdVV(2,:)));%     v4=mean(wtdVV,2)'%%these are actually recorded.    phaseX=v2;    phaseY=v3;    phaseZ=H_input;;`

I have figured out that H_input is the entropy of {NH now, NH 1 step before}, but what is the meaning of dVV?
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:
I have figured out that H_input is the entropy of {NH now, NH 1 step before}, but what is the meaning of dVV?

`    HV=sum(VSD_Tinput,1)'; %% supposedly this should be forward entropy    HH=sum(HSD_Tinput,2); %% supposedly backward entropy    V_input=[HD_input' HV+HH HV-HH  (1:18)']; %% combining into array    V=V_input(:,[2,3 ,1])'; %% reordering    VV=combvec(V,V);      %% enumerate combination of points in the aforementioned 3d space      dVV=[VV(1:3,:)-VV(4:6,:)];   %% calulate vectors in 3d space, each corresponding to an NHT    wt=D_Tinput;            %% read the number for each transition of NH (NHT)    wt=wt/sum(wt);       %% normalise    wtdVV=dVV(1:3,:).*repmat(wt,3,1);  %% weighting     v2=mean(abs(wtdVV(1,:)));      v3=mean(abs(wtdVV(2,:)));`

BTW, H_input is the input entropy for the current generation. It takes a 9*9 slice and assign it a neighborhood according to B/S notation, and calculate entropy according to neighborhood distribution. Effectively input=neighborhood.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

### Re: Use Smoothiness to classify rules

shouldsee wrote:
`    HV=sum(VSD_Tinput,1)'; %% supposedly this should be forward entropy    HH=sum(HSD_Tinput,2); %% supposedly backward entropy    V_input=[HD_input' HV+HH HV-HH  (1:18)']; %% combining into array    V=V_input(:,[2,3 ,1])'; %% reordering    VV=combvec(V,V);      %% enumerate combination of points in the aforementioned 3d space      dVV=[VV(1:3,:)-VV(4:6,:)];   %% calulate vectors in 3d space, each corresponding to an NHT    wt=D_Tinput;            %% read the number for each transition of NH (NHT)    wt=wt/sum(wt);       %% normalise    wtdVV=dVV(1:3,:).*repmat(wt,3,1);  %% weighting     v2=mean(abs(wtdVV(1,:)));      v3=mean(abs(wtdVV(2,:)));`

Sure. It seems that the 4th column of V_input is never used.
Still drifting.
Bullet51

Posts: 533
Joined: July 21st, 2014, 4:35 am

### Re: Use Smoothiness to classify rules

Bullet51 wrote:Sure. It seems that the 4th column of V_input is never used.

It was a grouping index in rp_visual4.m for visualisation purpose.
shouldsee

Posts: 406
Joined: April 8th, 2016, 8:29 am

PreviousNext