5S project in Catagolue: can we finally do this thing?

For general discussion about Conway's Game of Life.
Post Reply
User avatar
muzik
Posts: 5614
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

5S project in Catagolue: can we finally do this thing?

Post by muzik » May 12th, 2021, 5:52 pm

Quoting all involved in the original 2019 conversation, as to give easily readable context on the matter as well as to summon everyone for the discussion's continuation (my apologies in advance to everyone else affected):
muzik wrote:
August 7th, 2019, 3:19 pm
Absolutely insane crackpot idea: What if Catagolue were to become the host of the 5s project somehow, similarly to how it made the wiki's list of Catagolue-investigated rules redundant? I have literally no idea how it would work, but it's something that popped into my head.
testitemqlstudop wrote:
August 10th, 2019, 7:05 am
muzik wrote:Absolutely insane crackpot idea: What if Catagolue were to become the host of the 5s project somehow, similarly to how it made the wiki's list of Catagolue-investigated rules redundant? I have literally no idea how it would work, but it's something that popped into my head.
It can work: Make every spaceship an object, with the following format:

SS<period>_<Xdelta>_<Ydelta>_<rule>_<canonical apgcode>, and have the # of occurrences be equal to 100000 - (its population) so minimum population ships are shown first.

Make sure it becomes a census like b3s23/synthesis_costs or people can destroy the census by uploading hauls.
calcyman wrote:
August 10th, 2019, 7:43 am
testitemqlstudop wrote:It can work: Make every spaceship an object, with the following format:

SS<period>_<Xdelta>_<Ydelta>_<rule>_<canonical apgcode>, and have the # of occurrences be equal to 100000 - (its population) so minimum population ships are shown first.

Make sure it becomes a census like b3s23/synthesis_costs or people can destroy the census by uploading hauls.
Good idea! I think the closer analogue is to make every velocity an object with the format velocity<period>_<xdelta>_<ydelta>, and include spaceships attaining that velocity as metadata (in the same way we store sample occurrences and glider syntheses).

More fundamentally, though, what would be the advantage of hosting this on Catagolue rather than the existing system?
testitemqlstudop wrote:
August 10th, 2019, 7:49 am
The current hosting on the wiki is broken and requires human updating. The Google Drive hosting - I can't access, and it's also sorted in a terrifically annoying way. Catagolue may allow the updating to be done autonomously and also allow for easy browsing.
Saka wrote:
August 10th, 2019, 7:57 am
calcyman wrote: More fundamentally, though, what would be the advantage of hosting this on Catagolue rather than the existing system?
Currently, the most up-to-date collection is located at the 5S Google Drive folder as *.txt files. Those files simply contain a list of all ships, and the only separation is by the direction they go in, orthogonal, diagonal, or oblique.

If we put the collection on Catagolue, this would make the collection more accessible and easier to look at / browse through. Although I think the main challenge once this goes up is keeping the Catagolue version up to date, but that should be easier than updating the wiki (I think).

Another problem I can think of are the pages for high-but-=<-100-period ships, since they would be very laggy as there would be lots of ships, each having an animated SVG.

I also think that we need a better way to organize the ships. If we only organize by periods, there would be all of the orthogonals, diagonals, and obliques in each period's tabulation page, which I don't really like because you can't easily tell the direction of the ships in the SVGs, but I guess that's the purpose of including the displacement values in the apgcode.

I also don't think we need to include the rule, as the rule range is displayed on the object page, and it would make the tabulations look nicer in my opinion.
muzik wrote:
August 11th, 2019, 9:30 pm
There's a few things that come to mind, if it's to be like the current tabulation:

- Should we come up with a new set of colours for the key that fit better with Catagolue's colour theme?

- The big summary table would have a tab system of sorts, like I've had in mind for a year or so now, so we can control all three values. The bit at the top would have to get thicker and thicker to prevent duplicate entries as we modify one of the displacement values, though.

- The big summary table could also continue on infinitely in all three directions, but split across pages in reasonable increments (144 seems reasonable to me).

- Would it even be worth having the more in-depth pages anyway, or should we scrap them in favour of a summary table? All the info about the ships would be accessible by clicking on the number anyway.
As has been mentioned, the current tabulations used for the 5s project, while functional, is only barely so, and requires a considerable amount of manual labour, both on the part of those searching and those compiling the collection. In addition, attempts have been made previously to document the results in a more accessible, visually pleasing way (the wiki), however the methods used required even more manual labour to maintain and as such remain pretty inactive and outdated to my knowledge. As Catagolue had fairly recently seen support as a database for Life glider syntheses with automatic verification, categorisation and sorting of user-submitted files, a lot of us can agree that Catagolue has similar levels of potential for transforming the 5s project into something far more usable.

Here are some of the things we'd gain by switching to Catagolue, some mentioned before as well as others I've thought of in the meantime:

- Ability to access the results. Currently, every single ship in the 5S project is stored in one of three text files for each class of direction. Not only are these text files unfathomably huge and take up a relative ton of disk space, actually loading the ship onto the simulator of choice requires manually copy and pasting it, which is far from the best option. For Catagolue, however, everything would be accessible in a matter of clicks, and for each ship you'd be led to its dedicated Catagolue page, with an automatically generated LifeViewer window for its instant simulation (which also allows for you to use its Identify function to verify its trajectory as well as generate other important statistics), as well as providing its RLE in an easier to copy format in case you want to simulate in golly or such anyway.
- Automation. As stated previously, searchers must manually post their results in order for said results to be again manually added to/replace inferior examples on the list of velocities. Most use of catagolue is completely automatic - the searching, uploading, and addition of objects to censuses - so this should be absolutely possible to have work in a 5S context as well.
- File size. Currently all the ships are stored with RLE, which is inefficient for most cases (3-cell ships are very common). apgcodes are a far more efficient way of expressing the patterns. We also ditch useless information such as the specified rle coordinates as well.
- There have been some mentions of scraping Catagolue for speeds it may harbour that aren't currently in 5S, which could be done alongside the process of transferring existing 5S data to its new home.
- Another minor potential problem this would also clan up is that not all ships are expressed in their minimum rule. As catagolue is capable of calculating the range of rules in which a pattern functions this too could be ironed out in the transfer/upload process.

Of course, questions remain. For example: where do we start in implementing this thing?

And would we arrange it differently from other census types? Personally I think it'd be better if, for each period, instead of a list, there was a table of all possible velocities (for higher periods this would be truncated accordingly - max size 144 across and 144 down, with those exceeding it split into pages of 145-288 across 0-144 down, ...) for that period, with links taking you to the object pages. This would fit a lot more velocities into a smaller space, stop the need for generating tons of laggy images, and so on. I can create example tables on the wiki if needed.

Continue this discussion below, and hopefully we can have this thing implemented finally some time in the reasonably not-far future!

User avatar
muzik
Posts: 5614
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: 5S project in Catagolue: can we finally do this thing?

Post by muzik » May 13th, 2021, 11:04 am

My proposal for layout: all periods would have a dedicated page with a table. The main census page would have a list of natural numbers (integers 1 and up) which correspond to known periods and would when clicked take readers to the table page.

I've created an example table layout at this page. For periods 143 and under, all displacements would be shown, with duplicate columns deducted to avoid redundancy, and cells would be colored accordingly depending on whether a velocity is unknown, known but possibly not minimal, and known and confirmed minimal (3 for many cases).

For periods 144 and above, the table sections would end at 143, and arrow buttons would be present to take readers to the next section of the table. This value of 144 could be changed to something more desirable in implementation if desired.

This layout would also allow for the incorporation of known oscillator periods in 5S under the displacement of (0,0)c/n.

Post Reply