So, I've run into pentadecathlons three times now [edit: or maybe two times and it resumed on the same pattern]. Does this mean I've checked something like 1.6mil patterns? (alternatively, I got unlucky, I guess)
(Also, thinking about the stability and object counting problems...)
Also, how much work would it be to make this golly-independent? That way it would be a bit easier to run it on random computers that one finds idle here and there
Census Program Idea
Re: Census Program Idea
Vi veri veniversum vivus vici.
Re: Census Program Idea
I think it's a lot less than that -- more like 1.6M divided by the average number of objects in the ash of 20x20 patterns.Elithrion wrote:So, I've run into pentadecathlons three times now [edit: or maybe two times and it resumed on the same pattern]. Does this mean I've checked something like 1.6mil patterns? (alternatively, I got unlucky, I guess)
As it happens, I've also seen three different natural pentadecathlon syntheses after fairly short soup-straining sessions, the quickest of which could be boiled down to a queen-bee plus a blinker, or a blinker+block+pi:
Code: Select all
x = 20, y = 20, rule = B3/S23
2bo3b2ob3o3bo3bo$b2ob2o2bo4bo5bo$2b2ob2obobobo4bo$o5bo5b2o$bo8bobob2o
2b2o$2bob2o9bo3bo$o2bobo3bo5bo$4bo3bo2bo2bo2bo$2o2b2o2bo3bo2bo$b3o2b4o
8b2o$3bo3b2ob2o4b3o$ob2ob2obob2ob3ob2o$o2bo3b3obo4b3o$b3o6bo2bobobo$bo
b2o6b2o3bobo$4bo3b2ob3obo2bo$b2obob2o2b2ob2o2bo$3bo2b2ob2obo3b2obo$2o
3bo7b2ob2o$2b3o7b2o2b2obo!
Code: Select all
x = 21, y = 10, rule = B3/S23
2$19bo$19b2o$bo$bo$bo10b3o$15bo$12b3o!
Code: Select all
#C Co-axial pentadecathlon from 5 gliders
#C by Mark Niemiec 96/10/02
x = 21, y = 6
6bo13bo$4bobo13bo$o4b2o13bo$b2o5b3o$2o8bo$9bo!
Wouldn't the script work a lot faster using the hashlife algorithm instead of quicklife? When it gets stuck on a pentadecathlon, I keep being surprised by how few generations Golly has managed to get through before I notice the problem -- in hashlife the generation count would have run away into the zillions, pretty much instantly.
Also, the conwaylife.com/soup page doesn't make the verification step very clear -- I hand-verified a few patterns but didn't have any obvious way of communicating the results. (Figured they'd be obsolete in a few days anyway, so I didn't bother investigating any further.)
But I'm also guessing v1.01 will be able to dodge the manual verification step somehow. For B3/S23 it's fairly easy to backtrack each submitted pattern, presumably on the client side (maybe using the hashlife algo again, and a binary search) to find the last non-periodic dying spark... Haven't tried to figure out whether that would generalize well to rules with a larger variety of common spaceships, or what have you. Maybe there will be some new tricks from the census-tool project that will apply here?
- Nathaniel
- Site Admin
- Posts: 862
- Joined: December 10th, 2008, 3:48 pm
- Location: New Brunswick, Canada
- Contact:
Re: Census Program Idea
Eh, I'd really rather use Golly for this particular script, since it has so many nice built-in features to take advantage of (like the superfast QuickLife algo). For the still life counter, I would definitely do that Golly-Independent though, since Python just wouldn't be fast enough.Also, how much work would it be to make this golly-independent? That way it would be a bit easier to run it on random computers that one finds idle here and there
A few days (and it will have a working census in it)dvgrn wrote:In any case, there's definitely more than one person pining away for Version 1.01 of soup_search...!
Nope, HashLife woks great there because it's designed for precisely that situation: when things are predictable and periodic. However, the *vast* majority of the time, patterns examined by this script aren't periodic/predictable, so HashLife usually chokes. I just did a brief test and averaged about 80 patterns per minute with HashLife versus about 140 patterns per minute with QuickLife on my laptop.dvgrn wrote:Wouldn't the script work a lot faster using the hashlife algorithm instead of quicklife? When it gets stuck on a pentadecathlon, I keep being surprised by how few generations Golly has managed to get through before I notice the problem -- in hashlife the generation count would have run away into the zillions, pretty much instantly.
I'm expanding the /soup page considerably with 1.01 so things that need explaining will actually be explained. Also, I've added web-based admin tools for verification of methuselah lifespans, so if anyone would like to be a soup search admin, fire me a personal message applying for the positiondvgrn wrote:Also, the conwaylife.com/soup page doesn't make the verification step very clear -- I hand-verified a few patterns but didn't have any obvious way of communicating the results.
You have more faith in me than I do, that's for sure. I really have almost no idea how to do something like this that is rule-independent (but then again I said that a few days ago about a basic census script, so this might change not too long from now). The problem is even worse in HighLife due to bombers/replicators, and there are some cases where it's difficult even for ME to manually see what the last non-periodic phase is (bombers usually arise eventually if you have a replicator that crashes into some junk on one side, but bombers look almost identical to replicators, so... ew).dvgrn wrote:But I'm also guessing v1.01 will be able to dodge the manual verification step somehow. For B3/S23 it's fairly easy to backtrack each submitted pattern, presumably on the client side (maybe using the hashlife algo again, and a binary search) to find the last non-periodic dying spark... Haven't tried to figure out whether that would generalize well to rules with a larger variety of common spaceships, or what have you. Maybe there will be some new tricks from the census-tool project that will apply here?
Re: Census Program Idea
A bit late, but I only just discovered this forum... that's not really true. It needs to have the spaceships in the currently open library, but patterns in a library can use any rule.Another worry I have with that is that it seems to be quite Life-specific (part of the algorithm works by checking know spaceships)