Rulegolfing
| This article is a stub. You can help LifeWiki by expanding it. |
Rulegolfing is an activity of constructing new rules or looking for variants of rules via successive incremental modifications to the rule definition, for example by adding or removing birth/survival conditions in the rulestring written using Hensel notation, or by changing lines in a rule table. Rulegolfing may involve multiple modifications of a rule, for example attempting to understand which changes make the rule explosive/chaotic, and trying to reach a rule with some desired properties. In general, any given "syntactic" change in the rule definition (such as adding a certain birth condition, or removing a certain survival condition, or adding/removing a line in a rule table) may have very different effects when the "syntactic" change is applied to different rules.[1][2][3][4][5]
An example of a rule that was found via rulegolfing is the Langton's Ant simulator (B3-cjkq4knqy5cnr7/S02-cn3-ak4eiq5kq6e7e).[6]
Existence of a well-recognised widespread notation to define rules from a given rulespace can be a powerful tool for rulegolfing, when the notation splits the rule definition into intuitively understandable parts that can be modified independently from each other.[7][5]
Strategies for selecting 'interesting' rules from a large rulespace were discussed as early as 1994:[8]
| “ | […] The real difficulty lies in *visualizing* what you are doing when you change values in the tables and drawing inferences about what values to change to produce what results. […] a strategy might be as follows. From randomized transition tables with random initial configurations, look for `interesting' small scale structures, such as gliders, blinkers, quasars, rotators, etc. Isolate these structures and analytically or experimentally determine their minimal transition tables, ie, the array of *necessary* transitions to produce the structure along with indications of the "Don't Care" transitions. Repeat until you have a decent library of these tables in a database. Now automate a search, compare and integrate process that will combine compatible transition tables. Investigate these new transition tables with random initial configurations. At a minimum, all compatible structures will be preserved and there will be the possibility of new, perhaps more complex structures. Isolate them and repeat the process until, at a limit, all "Don't Care" transitions are filled. This is more or less what I do, but I really haven't thought out the automated part of it. […] | ” |
| — Dr. Robert Andreen, Re: CA rules (04 Apr 94)[8] | ||
See also
References
- ↑ Moosey (March 4, 2021). Re: Miscellaneous Discoveries in Other Cellular Automata (discussion thread) at the ConwayLife.com forums
- ↑ Tropylium (October 15th, 2021). Re: Thread For Your Unrecognised CA (discussion thread) at the ConwayLife.com forums
- ↑ hotcrystal0 (February 25, 2022). Re: Reflectorless Rotating Oscillators (RRO) (discussion thread) at the ConwayLife.com forums
- ↑ Period1GliderGun (July 31, 2022). Re: Miscellaneous Discoveries in Other Cellular Automata (discussion thread) at the ConwayLife.com forums
- ↑ 5.0 5.1 Heav (November 22, 2022). Re: Why so little interest in multistate rules? (discussion thread) at the ConwayLife.com forums
- ↑ silversmith (January 21, 2023). Re: Thread for basic non-CGOL questions (discussion thread) at the ConwayLife.com forums
- ↑ praosylen (May 12, 2021). Re: 3-state range-1 outer-totalistic rulespace (discussion thread) at the ConwayLife.com forums
- ↑ 8.0 8.1 Dr. Robert Andreen (April 4, 1994). "Re: CA rules". archives of alife/topics/cas/threads/natural/.
External links
- Request a Rule to be "Tamed" (discussion thread) at the ConwayLife.com forums
- Rulegolfer script (discussion thread) at the ConwayLife.com forums -- a Python script based on qfind for finding spaceship-friendly rules
- Re: Golly scripts (discussion thread) at the ConwayLife.com forums -- an automated rulegolfing script for 2-state INT rules