Various replicators in Wireworld
Posted: September 19th, 2011, 4:23 pm
Hello all, this is my first post on this forum.
But enough about me, I have been experimenting with the WWEJ3 ruleset in golly and have created a number of replicators, builders and even a gun.
1. Builder/Replicator 1:
This builder/replicator was the first proper machine that I made (apart from some silly experiments as a newbie).
It uses a simple psuedo ternary system as instructions to output the basic building commands (forwards, backwards and so on). This is the machine that I am most fond of and also the one I use to construct the tapes for the other replicators (more on that later). Both machines suffer from slow-down although they are still very quick. The replicator finishes building at gen 265, 649, 777 (step 8^6 is good) . Because the tape writing arms get in the way of the reading arms, it is necessary to remove them, and this is accomplished by the "kill" state removing everything in the way and rebuilding a new arm.
2. Builder/Replicator 2:
This builder/replicator set is, in my opinion, very interesting. It consists of two "batteries" of instructions which continuously output, extenting two arms. When a wire cell is encountered, the machine outputs a signal based upon the gap between that cell and the previous. This machine can output any of the signal types present. A consequence of this setup is that there is no slow-down, at the cost of an arbitrarily large number of active signals. In comparison to the first replicator, the equivalent tape is read by the machine and completed in 10, 921, 365 generations! (step 8^3)
3. Builder 3:
This builder (no replicator for this one) uses what I call a "shifting" mechanism to decide the output. the input tape consists of wire cells and isolator cells. The isolator cells "shift" the output forwards by 1, the wire cells shift backwards by 1. Blank cells indicate to out put that particular signal.
4. Builder 4:
This builder is similar to the first above, but with a more efficient layout. It uses a similar code as well. This builder is essentially a better version of builder 1.
5. Replicator 3 v1:
I was inspired by the Hutton replicator (JVN ruleset) to come up with my own version in wireworld. The premise is simple, each signal takes part in creating a mini-machine, and is subsequently fed through it. Every time the white signal passes through the machine it triggers a small change which enables the new tape to be completed. It is best to see it in action to understand the mechanisms. It finishes at gen 34, 641.
6. Replicator 3 v2:
This is a very interesting configuration. It is essentially the same as above, except the "parent" machine is deleted,
and two "children" are created at right angles to each other. What is really interesting, however, is how chaotic the result turns out to be, with some children dying, others creating seemingly random batches of cells, and others that simply carry on in a straight line with no intention of stopping. Feedback on this one is very appreciated.
7. Translator:
Earlier I mentioned that I used builder 1 to create the tape for the other builders/replicators, this machine is how I did it. The standard instructions are entered into the builder 1 towards the bottom right. It's outputs then split off, one going up to the builder 2 decoder, which inserts the correct number of gaps into a long tape. The other output goes into a large machine to create instructions for builder 3. This involves converting the signal, and its predecessor into binary, subtracting one from the other and outputting the appropriate number of cells in the upward direction. The subtraction is accomplished by negating one of the binary signals (using two's complement) and adding the results together.
8. Gun:
Just for fun, this creates a gun and fires it off in alternating directions. I did not find the spaceship used, someone on this forum found it (sorry, I don't know your name).
In conclusion, I would appreciate feedback and criticism. Feel free to play around with these patterns and post what you come up with!
But enough about me, I have been experimenting with the WWEJ3 ruleset in golly and have created a number of replicators, builders and even a gun.
1. Builder/Replicator 1:
This builder/replicator was the first proper machine that I made (apart from some silly experiments as a newbie).
It uses a simple psuedo ternary system as instructions to output the basic building commands (forwards, backwards and so on). This is the machine that I am most fond of and also the one I use to construct the tapes for the other replicators (more on that later). Both machines suffer from slow-down although they are still very quick. The replicator finishes building at gen 265, 649, 777 (step 8^6 is good) . Because the tape writing arms get in the way of the reading arms, it is necessary to remove them, and this is accomplished by the "kill" state removing everything in the way and rebuilding a new arm.
2. Builder/Replicator 2:
This builder/replicator set is, in my opinion, very interesting. It consists of two "batteries" of instructions which continuously output, extenting two arms. When a wire cell is encountered, the machine outputs a signal based upon the gap between that cell and the previous. This machine can output any of the signal types present. A consequence of this setup is that there is no slow-down, at the cost of an arbitrarily large number of active signals. In comparison to the first replicator, the equivalent tape is read by the machine and completed in 10, 921, 365 generations! (step 8^3)
3. Builder 3:
This builder (no replicator for this one) uses what I call a "shifting" mechanism to decide the output. the input tape consists of wire cells and isolator cells. The isolator cells "shift" the output forwards by 1, the wire cells shift backwards by 1. Blank cells indicate to out put that particular signal.
4. Builder 4:
This builder is similar to the first above, but with a more efficient layout. It uses a similar code as well. This builder is essentially a better version of builder 1.
5. Replicator 3 v1:
I was inspired by the Hutton replicator (JVN ruleset) to come up with my own version in wireworld. The premise is simple, each signal takes part in creating a mini-machine, and is subsequently fed through it. Every time the white signal passes through the machine it triggers a small change which enables the new tape to be completed. It is best to see it in action to understand the mechanisms. It finishes at gen 34, 641.
6. Replicator 3 v2:
This is a very interesting configuration. It is essentially the same as above, except the "parent" machine is deleted,
and two "children" are created at right angles to each other. What is really interesting, however, is how chaotic the result turns out to be, with some children dying, others creating seemingly random batches of cells, and others that simply carry on in a straight line with no intention of stopping. Feedback on this one is very appreciated.
7. Translator:
Earlier I mentioned that I used builder 1 to create the tape for the other builders/replicators, this machine is how I did it. The standard instructions are entered into the builder 1 towards the bottom right. It's outputs then split off, one going up to the builder 2 decoder, which inserts the correct number of gaps into a long tape. The other output goes into a large machine to create instructions for builder 3. This involves converting the signal, and its predecessor into binary, subtracting one from the other and outputting the appropriate number of cells in the upward direction. The subtraction is accomplished by negating one of the binary signals (using two's complement) and adding the results together.
8. Gun:
Just for fun, this creates a gun and fires it off in alternating directions. I did not find the spaceship used, someone on this forum found it (sorry, I don't know your name).
In conclusion, I would appreciate feedback and criticism. Feel free to play around with these patterns and post what you come up with!