Census Program Idea

For general discussion about Conway's Game of Life.
Elithrion
Posts: 100
Joined: February 3rd, 2009, 4:02 pm
Contact:

Re: Census Program Idea

Post by Elithrion » June 23rd, 2009, 4:56 pm

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 :twisted:
Vi veri veniversum vivus vici.

User avatar
dvgrn
Moderator
Posts: 10682
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Census Program Idea

Post by dvgrn » June 27th, 2009, 4:28 am

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)
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.

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!
Nothing really new here -- apparently Mark Niemiec has known about this pentadecathlon synthesis since 1996:

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!
In any case, there's definitely more than one person pining away for Version 1.01 of soup_search...!

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?

User avatar
Nathaniel
Site Admin
Posts: 862
Joined: December 10th, 2008, 3:48 pm
Location: New Brunswick, Canada
Contact:

Re: Census Program Idea

Post by Nathaniel » June 27th, 2009, 5:59 am

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 :twisted:
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.
dvgrn wrote:In any case, there's definitely more than one person pining away for Version 1.01 of soup_search...!
A few days :) (and it will have a working census in it)
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.
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: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.
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 position ;)
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?
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).

winlife32
Posts: 4
Joined: June 26th, 2010, 9:30 pm
Location: California, USA
Contact:

Re: Census Program Idea

Post by winlife32 » June 26th, 2010, 9:38 pm

Another worry I have with that is that it seems to be quite Life-specific (part of the algorithm works by checking know spaceships)
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.

Post Reply