amling wrote: ↑February 16th, 2024, 2:59 pm
DroneBetter wrote: ↑February 16th, 2024, 2:10 pm
As another idea for future endeavours, could your program be very efficient at enumerating oscillators of specific period without the constraint of volatility 1? Mark Niemiec's
Life Object Counts page (which I have now copied into
LifeWiki:Object counts, albeit containing only proven values and expanded with your results) has p2 oscillators up to population 21 (at which there are 6596), whereas you were able to find true-period c/2's up to 127 (1370036). However, LLSSS can only reach up to and excluding twice the smallest population of a given simplified speed, so I am presuming you wouldn't be able to go beyond eight cells (or four plus the minimal population of an actual example, if you required a pattern does not oscillate at a subperiod) due to noninteracting blocks, currently. Would it be infeasible to implement object separation and branch disqualification to be able to expand any other rows of the table any further?
I guess I will take a brief look at p4 and p5...
8 GB gets p4 to pop 8 and extrapolates even 120 GB would only get to pop 10 (pop 11 predicted 350 GB+ memory).
8 GB gets p5 to pop 5 and extrapolates even 120 GB would only get to pop 7 (pop 8 predicted 270 GB+ memory).
Such extrapolation is dicey, especially on such limited and erratic data, but it still makes adding anything to the table somewhat unlikely. I have started runs to 60 GB for the assumed worst phases and will update my extrapolations when that finishes and we'll see if anything seems possible.
By the way, does anyone have any idea how p4 pop 11 is known? It wouldn't be covered by the big pop 10 work and I can't find anything specific about p4 on the linked original page.
EDIT: Extrapolation turned out pretty wrong. p4 pop 11 (worst phase only) finished fine w/in 60 GB but then something horrible happened for p4 pop 12. Due to the p2 wildcard initialization there are nonzero columns (as in not all zero in all generations) which are nonetheless zero weight (no cells in the generation we're counting population in). This means nontrivial cycles in the graph and so when it reaches the depth where it would find mold it also has arbitrary stuff like this:
Code: Select all
x = 101, y = 6, rule = LifeHistory
F.15B2A5B.F.2BABABABABA4B2A5B.F.15B2A5B.F.2BABABABABA4B2A5B.F$F.14BA
2BA4B.F.14BA2BA4B.F.14BA2BA4B.F.14BA2BA4B.F$F.13BABABA4B.F.13BABABA4B
.F.12BA2BABA4B.F.15BABA4B.F$F.13BA2BA5B.F.12B3ABA5B.F.16BA5B.F.13B2AB
A5B.F$F.12BA9B.F.12B3A7B.F.12BAB2A6B.F.13B3A6B.F$F.13BABA6B.F.22B.F.
13BA8B.F.13B2A7B.F!
I got no output other than stack overflow presumably because it hit one of these cycles before completing a first result. I will have to rethink how to handle finding and showing results here. It's a terrible combination of wanting all results at or below a given population but also needing to deal with cycles. Also how on earth are we gonna go back and solve or disprove possible tops for such an infinite mess of possible p2 starting rows? I'm beginning to think this might not be within reach...
I believe p5 is not going to have this problem since it's still-life wildcard initial rows and so any nonzero columns will be nonzero in the key generation. Already pop 6 finished and with materially less memory used than extrapolated. Pop 7+ still WIP.
EDIT2: p5 worst phase finished to pop 8 (but not pop 9) w/in 60 GB. I think I'm gonna forget trying to extrapolate and just put this project in the (long) line for the 120 GB box.
EDIT3: I've realized the p4 pop 12 search shouldn't have been having trouble with mold until 2 rows later than where it crashed, but something like this (p2 in all but last two rows) is the sort of thing it could have been choking on (the last 4 rows of), assuming it could find the pieces even with the pop 12 filtering:
Code: Select all
x = 89, y = 14, rule = LifeHistory
F.19B.F.19B.F.19B.F.19B.F$F.19B.F.19B.F.19B.F.19B.F$F.6B2A11B.F.6B2A
11B.F.6B2A11B.F.6B2A11B.F$F.3BABA2BA10B.F.3BABA2BA10B.F.3BABA2BA10B.F
.3BABA2BA10B.F$F.3B2ABABA2BA7B.F.3B2ABABA2BA7B.F.3B2ABABA2BA7B.F.3B2A
BABA2BA7B.F$F.6BABABABA6B.F.6BABABABA6B.F.6BABABABA6B.F.6BABABABA6B.F
$F.6BA2BA2BA6B.F.6BA2BA2BA6B.F.6BA2BA2BA6B.F.6BA2BA2BA6B.F$F.5B2A5B2A
5B.F.5B2A5B2A5B.F.5B2A5B2A5B.F.5B2A5B2A5B.F$F.4BA2B5A2BA4B.F.7B5A7B.F
.4BA2B5A2BA4B.F.7B5A7B.F$F.6BA5BA6B.F.3BAB2A5B2ABA3B.F.6BA5BA6B.F.3BA
B2A5B2ABA3B.F$F.2BABA2B3ABA2BABA2B.F.2BA4BAB2A5BA2B.F.2BABA2BAB3A2BAB
A2B.F.2BA5B2ABA4BA2B.F$F.2B2A4B2A5B2A2B.F.2B2A3BAB2A4B2A2B.F.2B2A5B2A
4B2A2B.F.2B2A4B2ABA3B2A2B.F$F.19B.F.19B.F.19B.F.19B.F$F.19B.F.19B.F.
19B.F.19B.F!