Page 1 of 1
Glider capable of rotating 90 degrees apon impact
Posted: September 5th, 2014, 9:27 pm
by CellularPseudonym
Hi guys, new user here. I've been playing around with cellular automata for about a year now, mostly through my home-brew Java application.
I've recently added a more powerful way to define rules & neighbourhoods through the use of configurable grids, as seen at the start of the video.
One of the first interesting discoveries I made was a situation where a naturally occurring glider collided with a naturally occurring still-life, resulting in the rotation and continuation of the glider. Neat!
Video:
https://www.youtube.com/watch?v=20fQDog ... e=youtu.be
The neighbourhood is a Size-2 Moore neighbourhood, and the two-state (0, 1) totalistic rule (Ranges inclusive of shown numbers) is:
Code: Select all
Become 0 between 10 and [maximum neighbours]
Become 1 between 7 and 8
Become 0 between 0 and 4
Also, it's worth mentioning
http://www.reddit.com/r/cellular_automata - a reddit community I frequent, based around the sharing and discussion of CA related content.
Hello world!
Re: Glider capable of rotating 90 degrees apon impact
Posted: September 6th, 2014, 12:40 pm
by bprentice
Does a zip file containing the Java source code of your program exist anywhere? I found this link:
https://github.com/InfiniteSearchSpace/ ... cience/src
but no archive containing everything.
Brian Prentice
Re: Glider capable of rotating 90 degrees apon impact
Posted: September 6th, 2014, 5:39 pm
by CellularPseudonym
Sorry about that. The shown program is a fork of my previous project, but I still haven't learnt the ropes with git yet.
Here's a link to a new repo, along with a runnable .JAR for the program used to generate the shown CA:
https://github.com/InfiniteSearchSpace/ ... stic-Gen-4
The main controls are mouse-based, utilising Left-click (place blocks), Right-click (play/pause), and Mousewheel-click (clear screen). Mousewheel scrolling defaults to block size, although the bindings can be changed from the "Mousewheel Bind" menu
To configure rulesets & neighbourhoods, create a new 'editor' from the menu. The controls are Left-click (increment cell by 1), Right-click (decrement cell by 1), and Mousewheel-click (set to custom value)
In the editor, to see and/or modify the pre-set neighbourhood and rulesets, use the menu "Rule Config" > "Get Neighbourhood" or "Get Rule", which will populate the grid.
I'll add a video showing the full editing process in a moment.
Video Demo:
https://www.youtube.com/watch?v=WILKxjp ... e=youtu.be
Cheers
Re: Glider capable of rotating 90 degrees apon impact
Posted: September 6th, 2014, 10:09 pm
by c0b0p0
CellularPseudonym wrote:One of the first interesting discoveries I made was a situation where a naturally occurring glider collided with a naturally occurring still-life, resulting in the rotation and continuation of the glider. Neat!
Perhaps the simplest reaction of this type in CGoL is the boat + G -> G reaction below. The boat is naturally occurring, and the glider occurs in almost any soup.
Code: Select all
x = 9, y = 7, rule = B3/S23
b2o$obo$bo2$6b2o$6bobo$6bo!
On an unrelated note, what happens in your rule when a cell has 5, 6, or 9 neighbors?
Re: Glider capable of rotating 90 degrees apon impact
Posted: September 6th, 2014, 10:20 pm
by CellularPseudonym
Ah, I'll have to check that out. I haven't spent too much time playing with the intricacies of CGoL.
c0b0p0 wrote:On an unrelated note, what happens in your rule when a cell has 5, 6, or 9 neighbors?
To the individual cell being assessed, no action would be taken. It would retain its current state through to the next generation.