Smallest Spaceships Supporting Specific Speeds (5s) Project

For discussion of other cellular automata.
wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by wildmyron » December 20th, 2017, 2:02 am

I think this is worth a new post

6c/7 orthogonal, 40 cells. Based on the frontend of the puffer found by A for Awesome

Code: Select all

x = 13, y = 10, rule = B2ac3ae4ar5ceiq6ai/S02i3ain4aqr5cikr6i
b3o5bob2o$3bo4bob3o$o5bo3bo$2bo6b4o$9bo$9bo$2bo6b4o$o5bo3bo$3bo4bob3o$
b3o5bob2o!
I found this with a slightly modified version of ruleSearch-matchPatt.py which I hope could be used to find stabilisations (both in rule and pattern) of other frontends with unique speeds. I tried it out on the (5,1)c/8 frontend - also posted by A for Awesome - but that rulespace seems to be a bit too explosive for this idea to work. Here are some results from application to the 4c/5 from the database:

smaller 4c/5 orthogonal, 17 cells

Code: Select all

x = 10, y = 7, rule = B2ac5a/S01e
6bo$b3o4b2o$o2bo$3bo$o2bo$b3o4b2o$6bo!
smaller 8c/10 orthogonal, 15 cells

Code: Select all

x = 9, y = 7, rule = B2ac3n4rt5jqr/S01e3y4k5r6i
5bo$3o4b2o$2bo$2bo$2bo$3o4b2o$5bo!
12c/15 orthogonal, 11 cells

Code: Select all

x = 8, y = 7, rule = B2acn3cy4kt6c/S01e3k5e
o3bo$2bo3b2o2$bo2$2bo3b2o$o3bo!
16c/20 orthogonal, 16 cells

Code: Select all

x = 15, y = 7, rule = B2ac3n4q5jnqr6ce/S01e2n3ky4ky5r
11bo$6b3o4b2o$8bo$o7bo$8bo$6b3o4b2o$11bo!
20c/25 orthogonal, 17 cells

Code: Select all

x = 11, y = 7, rule = B2ac3cn4ry/S01e3cqy4c5y
o6bo$2b3o4b2o$4bo$4bo$4bo$2b3o4b2o$o6bo!
24c/30 orthogonal, 17 cells

Code: Select all

x = 10, y = 7, rule = B2ac3cn4c5jqy6c/S01e3qy4cq5jy
bo4bo$ob2o4b2o$3bo$3bo$3bo$ob2o4b2o$bo4bo!
32c/40 orthogonal, 25 cells

Code: Select all

x = 20, y = 7, rule = B2ac3a4ckrty5nq6e8/S01e3y4cr
9bo6bo$6bo4b3o4b2o$3bo9bo$o3bobobo4bo$3bo9bo$6bo4b3o4b2o$9bo6bo!
----

There are currently many light speed periods with no example in the database. These ships from my own search results fill a few of the gaps, though I'm sure that there are more already known.

14c/14 orthogonal, 5 cells

Code: Select all

x = 5, y = 3, rule = B2acn4cy/S
obo$4bo$2bobo!
16c/16 orthogonal, 10 cells

Code: Select all

x = 9, y = 7, rule = B2ac/S
o7bo$8bo$o5bo2$o5bo$8bo$o7bo!
24c/24 orthogonal, 16 cells

Code: Select all

x = 11, y = 7, rule = B2acn3ry4iyz5e6i/S
2bo3bo3bo$obo5bobo2$obo2$obo5bobo$2bo3bo3bo!
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » December 20th, 2017, 7:40 am

Awesome! Nice work wildmyron! I have been updating the files on my computer a lot lately, and they should be pushed to the Drive soon. Will this script be released soon? It would be helpful for these relativistic ships.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
LaundryPizza03
Posts: 2295
Joined: December 15th, 2017, 12:05 am
Location: Unidentified location "https://en.wikipedia.org/wiki/Texas"

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by LaundryPizza03 » December 22nd, 2017, 12:32 am

It may be easier to obtain relativistic speeds and things like c/2 diagonal in rules with B0.

Here are some results from the B0 rulespace:
c/2 diagonal, 3 cells:

Code: Select all

x = 2, y = 2, rule = B013a6k/S2ae6e
bo$2o!
2c/4 diagonal (glider 211), 3 cells:

Code: Select all

x = 4, y = 2, rule = B026/S1
3bo$obo!
3c/4 orthogonal, 3 cells:

Code: Select all

x = 2, y = 3, rule = B012c3ain5e7c/S01c2a3i5i6ac
o$bo$o!
(1, 2)c/4, 3 cells:

Code: Select all

x = 3, y = 2, rule = B01e2cek3i4jrt5c6ik/S1e2aei3n5n
2bo$obo!
Note, however, that all B0 ships have even period due to the strobing background.

Code: Select all

x = 4, y = 3, rule = B3-q4z5y/S234k5j
2b2o$b2o$2o!
LaundryPizza03 at Wikipedia

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » December 22nd, 2017, 10:52 am

LaundryPizza03 wrote:It may be easier to obtain relativistic speeds and things like c/2 diagonal in rules with B0.
It is easier to find those in B0, but this whole project began with banning B0, and I think it should stay that way. Those are nice ships though, how did you find them?
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
LaundryPizza03
Posts: 2295
Joined: December 15th, 2017, 12:05 am
Location: Unidentified location "https://en.wikipedia.org/wiki/Texas"

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by LaundryPizza03 » December 22nd, 2017, 1:49 pm

I found those manually.

Code: Select all

x = 4, y = 3, rule = B3-q4z5y/S234k5j
2b2o$b2o$2o!
LaundryPizza03 at Wikipedia

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by Majestas32 » December 22nd, 2017, 3:48 pm

From Slowest 2-state spaceships of each cell count:
Saka wrote:3 cells (Rocknlol), c/313:

Code: Select all

x = 2, y = 3, rule = B2cen3jkq4eiqrz5-jn6eik7e8/S02n3anq4knqr5jy6ein7c
bo$o$bo!
All of these 3-cell spaceships:
Rhombic wrote:This spaceship is 1D in two of its phases:

Code: Select all

x = 8, y = 1, rule = B2ce3aeijr4ijnwy5ik6c7/S1e2ce3cqr4ciqtwy5aknqr6ce8
obob2obo!
EDIT: c/18 with the same properties

Code: Select all

x = 8, y = 1, rule = B2ce3-akqr4kryz5ajq6-in7e/S1e2c3ae7c8
obob2obo!
and a 4c/16

Code: Select all

x = 8, y = 1, rule = B2ce3ceijn4t5ajkqr6ac78/S1e2cin3-acky4ijnqr5-kq6-en7e8
obob2obo!
and 3c/14

Code: Select all

x = 8, y = 1, rule = B2ce3aeijy4ertwy5jr6ik8/S1e2ci3ae5y6en8
obob2obo!
and 3c/50

Code: Select all

x = 8, y = 1, rule = B2ce3-ckn4ekyz5eijnq6-ce7e8/S1e2c3acei4ackw5aj6aek
obob2obo!
and 2c/59

Code: Select all

x = 8, y = 1, rule = B2ce3-knry4jn5ckq6ack7e8/S1e2-ak3ceqr4eknqrz5ejkqy6akn78
obob2obo!
All examples found by iterRulesrc:

Code: Select all

x = 8, y = 1, rule = B2ce3eijny4iknz5er6n78/S1e2cin3einqr4ekz5aijky6ack7e

obob2obo!



B2ce3aeijy4et/S1e2ci3e4e5i7e	(3,0)/	13
B2ce3eijnr4y7e/S1e2c3e5e	(1,0)/	16
B2ce3aeijqy4iky5aceijnr6en7e8/S1e2c3eqr4aer5ei6ai	(3,0)/	58
B2ce3aeijy4ei5e6i8/S1e2c3ae4r5iq	(2,0)/	16
B2ce3aeijnqry4ejnq5q6c/S1e2ce3er4iy5iy6a	(3,0)/	16
B2ce3aceijqry4e6c7e/S1e2c3ej4qr	(3,0)/	16
B2ce3eij4nqy/S1e2cen3cejkq4cqwz5ary6ace7c8	(2,0)/	47
B2ce3aeijy4y5i7e/S1e2cei3e4aei8	(3,0)/	17
B2ce3aeijn4z5ej/S1e2cei3er4i5y7e	(3,0)/	17
B2ce3eijn/S1e2cei3aeqr4airw5i	(2,0)/	25
B2ce3aeijr4ijnry5i6ai7e8/S1e2c3eijn4aejn5aejy6ci7e	(2,0)/	36
B2ce3aeijr4e/S1e2cin3ae4a	(3,0)/	22
B2ce3aeij8/S1e2c3ei4i6ci	(3,0)/	15
B2ce3eijry4k5ei/S1e2c3eqr	(3,0)/	17
B2ce3eijn5i6c/S1e2cei3e	(5,0)/	36
B2ce3eijy4jz/S1e2cei3enr4e8	(4,0)/	19
B2ce3aeijny/S1e2cein3e4aj5iy6ci	(4,0)/	19
B2ce3aeij4enr5ir6c7e8/S1e2ci3aek4aenr5e6ci7e	(2,0)/	19
B2ce3aeijqry4einwyz5e6akn/S1e2c3aejq4knr5y6c	(17,0)/	44
B2ce3aeijnqy4ejnw5aikn6i7e/S1e2ci3cen4aew6ac	(1,0)/	45
B2ce3aeij4jrw5ikq8/S1e2ci3eir4ey5iy6aik	(7,0)/	112
B2ce3eijqry4e5q6ac8/S1e2ce3eiqr4irw5a6ci7e	(4,0)/	19
B2ce3aceijqry4ejnt5einr6ik7e8/S1e2cn3aeiknr4cnz5cnqry6ei78	(5,0)/	31
B2ce3ceij4kt5kn6c/S1e2ce3eiq4enr5ey6ck	(2,0)/	18
B2ce3aeijnry4kny5ei7e/S1e2c3en6i	(2,0)/	16
B2ce3aeijy4t7e/S1e2ci3e4ei5i	(3,0)/	13
B2ce3aeijny4en6c/S1e2ci3ae4krw5eiy6e	(3,0)/	20
B2ce3ceijn/S1e2c3eknqr4i	(2,0)/	20
B2ce3aeijqry4ein6c/S1e2c3e5i	(2,0)/	21
B2ce3eijy4et5aei/S1e2c3ejkr4r5i7e	(4,0)/	16
B2ce3ceijry4er5i6c/S1e2c3ei4ij7e	(3,0)/	16
B2ce3eijq4kw5q/S1e2ci3aei4aijq5eiy6c	(3,0)/	24
B2ce3aeijy4iz5e6i/S1e2cei3aeqr5iy6i	(3,0)/	19
B2ce3eij4e/S1e2c3aei4r6i8	(2,0)/	39
B2ce3aceijny4entw5iq/S1e2c3cei4ai7e8	(1,0)/	22
B2ce3ceij4knqt5cij6acek7/S1e2c3aejqr4cijkz5iy6k7e	(4,0)/	61
B2ce3eijn4enq7e8/S1e2ce3einq4cj8	(2,0)/	16
B2ce3aeijny4jnr5e6i7e/S1e2c3ceijr4i6i	(2,0)/	19
B2ce3aeijy4ent6c/S1e2ci3e4a5iy6c7e	(3,0)/	14
(Apologies if AforAmpere already added them in his update)
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » December 27th, 2017, 5:08 pm

Files are updated. Thanks for the help.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
Rhombic
Posts: 1072
Joined: June 1st, 2013, 5:41 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by Rhombic » January 2nd, 2018, 6:18 pm

Tiny true knightship (2,1)/9

Code: Select all

x = 3, y = 2, rule = B2-ak3j4a6cn/S12cei3aiq4ijnqryz5akr6-an78
b2o$o!
SoL : FreeElectronics : DeadlyEnemies : 6a-ite : Rule X3VI
what is “sesame oil”?

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » January 2nd, 2018, 6:27 pm

That is a cool ship, but there already is one in the collection. And it is on the wiki too.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by Majestas32 » January 8th, 2018, 1:13 pm

2c/103 orthogonal, 4 cells:

Code: Select all

x = 3, y = 3, rule = B2-a/S12-i3ij4y
o$b2o$o!
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by wildmyron » January 12th, 2018, 3:47 am

Smaller 10c/12 ortho, 9 cells

Code: Select all

x = 5, y = 7, rule = B2aci3cny4ant5ijy6ai7e/S1c2ai3en4eyz
4bo$bo2bo$o$4bo$o$bo2bo$4bo!
Smaller 18c/18 ortho, 5 cells [Edit: 7 cells]

Code: Select all

x = 7, y = 3, rule = B2acn3n4iz/S
2bobobo$4bobo$o3bo!
Slightly smaller 24c/24 ortho, 15 cells

Code: Select all

x = 17, y = 8, rule = B2ac4cinty5r/S
14bo$16bo$obobo11bo$4bobo5bo$4bobo5bo$16bo$16bo$14bo!
30c/30 ortho, 7 cells:

Code: Select all

x = 7, y = 5, rule = B2acn4cin/S
obo$6bo$2bo3bo2$obo!
Some results from a search derived from the 6c/12 diagonal:

Smaller 8c/16 diagonal, 4 cells

Code: Select all

x = 3, y = 4, rule = B2acn3eky6e/S12-ei3c
2bo2$b2o$o!
10c/20 diagonal, 4 cells

Code: Select all

x = 3, y = 4, rule = B2acn3ey5j/S12-ei3c5a
2bo2$b2o$o!
12c/24 diagonal, 5 cells

Code: Select all

x = 3, y = 5, rule = B2acn3cey4e5cj/S12-ei3c4an5a6n
bo$2bo2$b2o$o!
20c/40 diagonal, 13 cells (This one is extensible, I believe this is the smallest form)

Code: Select all

x = 8, y = 10, rule = B2acn3cey5cjr/S12-ei3c4an5a6n
bo$obo$bobo$2bobo$3bo$6bo$7bo2$6b2o$5bo!
Some results from a search derived from the (3, 1)c/4:

Much smaller (9, 3)c/12, 6 cells

Code: Select all

x = 3, y = 5, rule = B2acn3ae4artwy5akq6ae/S2-ei3c4erz5eq
obo$bo$2bo$2bo$o!
Much smaller (12, 9)c/16, 8 cells

Code: Select all

x = 3, y = 5, rule = B2acn3aen4arwz5a6ai/S2ack3cy4ekrw5eqr
o$o$3o$b2o$2bo!
(18, 6)c/24, 7 cells

Code: Select all

x = 4, y = 5, rule = B2acn3ae4anry5akqr6ae/S2-ei3c4erz5eqr6ei
2obo$2bo$3bo$3bo$bo!
Last edited by wildmyron on January 12th, 2018, 10:40 am, edited 1 time in total.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
PHPBB12345
Posts: 1096
Joined: August 5th, 2015, 11:55 pm
Contact:

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by PHPBB12345 » January 12th, 2018, 7:36 am

wildmyron wrote:

Code: Select all

x = 8, y = 10, rule = B2acn3cey5cjr/S12-ei3c4an5a6n
bo$obo$bobo$2bobo$3bo$6bo$7bo2$6b2o$5bo!
Growing spaceship:

Code: Select all

x = 11, y = 13, rule = B2acn3cey5cjr/S12-ei3c4an5a6n
bo$obo$bobo$2bobo$3bobo$4bobo$5bobo$6bo$9bo$10bo2$9b2o$8bo!

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by BlinkerSpawn » January 12th, 2018, 9:40 am

wildmyron wrote:Smaller 18c/18 ortho, 5 cells

Code: Select all

x = 7, y = 3, rule = B2acn3n4iz/S
2bobobo$4bobo$o3bo!
I don't see a point at which the population drops below 7.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by wildmyron » January 12th, 2018, 10:37 am

BlinkerSpawn wrote:
wildmyron wrote:Smaller 18c/18 ortho, 5 cells

Code: Select all

x = 7, y = 3, rule = B2acn3n4iz/S
2bobobo$4bobo$o3bo!
I don't see a point at which the population drops below 7.
You're right. That seems to be a typo rather than the wrong ship as I have 7 cells in my notes.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
PHPBB12345
Posts: 1096
Joined: August 5th, 2015, 11:55 pm
Contact:

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by PHPBB12345 » January 12th, 2018, 11:08 am

Code: Select all

x = 214, y = 3, rule = B2c3a6ac7e/S1e2cik3ejnr4i
b212o$212b2o$213o!

Code: Select all

#C Position=1284921 Gen=6424863
x = 26, y = 3, rule = B2c3a6ac7e/S1e2cik3ejnr4i
b24o$2bobobobobo3bobo3bo4bo$25o!

Code: Select all

#C 4048751/20235166
x = 425, y = 3, rule = B2c3a6ac7e/S1e2cik3ejnr4i
b423o$423b2o$424o!

wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by wildmyron » January 12th, 2018, 11:24 am

PHPBB12345 wrote:

Code: Select all

x = 214, y = 3, rule = B2c3a6ac7e/S1e2cik3ejnr4i
b212o$212b2o$213o!
If that actually becomes periodic then I presume it is well beyond the scope of this project. Please post such things elsewhere - the "Miscellaneous Discoveries" thread, for example.
PHPBB12345 wrote:

Code: Select all

#C Position=1284921 Gen=6424863
x = 26, y = 3, rule = B2c3a6ac7e/S1e2cik3ejnr4i
b24o$2bobobobobo3bobo3bo4bo$25o!
53c/265, 46 cells. That ship is already in the database.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » January 12th, 2018, 1:54 pm

wildmyron wrote: If that actually becomes periodic then I presume it is well beyond the scope of this project. Please post such things elsewhere - the "Miscellaneous Discoveries" thread, for example.
I did a systematic search of a similar rule (B2c3aj4a6ack7/S1e2-an3ejnr4i6k7e) up to p23 with qfind a few days ago, and I now suspect every rational speed exists in that rule, if the raw speed is reduced.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » January 12th, 2018, 8:06 pm

If anyone wants to search rules like the ones above for weird speeds, this script (highly unoptomized), made from a bunch of parts of other search programs, searches randomly for ships of a length given by drawing the base pattern of the length of ship you want to find. Try using this pattern as a test:

Code: Select all

x = 3, y = 7, rule = B2c3aj4a6ack7/S1e2-an3ejnr4i6k7e
bo$obo$obo$obo$obo$obo$2bo!
The code, the first two lines are how many ships to find, and what file to output them to.

Code: Select all

numships = 30
resultsFile = 'Push-cell_rule_search_1.txt'

import golly as g
import random
testPop = int(g.getpop())
permtestRect = g.getrect()
testPatt = g.transform(g.getcells(permtestRect),-permtestRect[0],-permtestRect[1])
permtestPatt= g.transform(g.getcells(permtestRect),-permtestRect[0],-permtestRect[1])
permtestRect = [0,0,permtestRect[2],permtestRect[3]]
g.show(str(permtestRect))
a=0
def chunks(l, n):
    for i in range(0, len(l), n):
        yield l[i:i+n]
def giveRLE(clist):
    # clist_chunks = list (chunks (g.evolve(clist,0), 2))
    clist_chunks = list(chunks(clist, 2))
    clist_chunks.sort(key=lambda l:l[0])
    clist_chunks.sort(key=lambda l:l[1])
    mcc = min(clist_chunks)
    rl_list = [[x[0]-mcc[0],x[1]-mcc[1]] for x in clist_chunks]
    rle_res = ""
    rle_len = 1
    rl_y = rl_list[0][1] - 1
    rl_x = 0
    for rl_i in rl_list:
        if rl_i[1] == rl_y:
            if rl_i[0] == rl_x + 1:
                rle_len += 1
            else:
                if rle_len == 1: rle_strA = ""
                else: rle_strA = str (rle_len)
                if rl_i[0] - rl_x - 1 == 1: rle_strB = ""
                else: rle_strB = str (rl_i[0] - rl_x - 1)
                
                rle_res = rle_res + rle_strA + "o" + rle_strB + "b"
                rle_len = 1
        else:
            if rle_len == 1: rle_strA = ""
            else: rle_strA = str (rle_len)
            if rl_i[1] - rl_y == 1: rle_strB = ""
            else: rle_strB = str (rl_i[1] - rl_y)
            if rl_i[0] == 1: rle_strC = "b"
            elif rl_i[0] == 0: rle_strC = ""
            else: rle_strC = str (rl_i[0]) + "b"
            
            rle_res = rle_res + rle_strA + "o" + rle_strB + "$" + rle_strC
            rle_len = 1
            
        rl_x = rl_i[0]
        rl_y = rl_i[1]
    
    if rle_len == 1: rle_strA = ""
    else: rle_strA = str (rle_len)
    rle_res = rle_res[2:] + rle_strA + "o"
    
    return rle_res+"!"
while a<numships:
	g.putcells(permtestPatt)
	g.select([1,2,1,permtestRect[3]-4])
	g.randfill(random.randrange(1,99))
	testRect = permtestRect
        testPop = int(g.getpop())
        testPatt = g.transform(g.getcells(permtestRect),0,0)
	for ii in xrange(2000):
        	g.run(1)
        	pop = int(g.getpop())
                if (pop>7):
            		r = g.getrect()
            		if testPatt == g.transform(g.getcells(r),-r[0],-r[1]):
                		period = ii+1
                		if (r[0] == 0 and r[1] == 0 ):
                	            break
                		elif ( period >= 3):
                	        # Spaceship (reject if low period)
				    a += 1
				    c=testPatt
				    f="Found at: "+str(abs(r[1]))+ "c/" + str(period)
                		    g.show (f)
				    with open(resultsFile, 'a+') as rF:
                                         rF.write(f+'\n'+giveRLE(testPatt)+'\n'+'\n')
                		break
	g.new('')
g.putcells(testPatt)
g.show(giveRLE(testPatt))
The above test pattern, when running the script, should output C/5 ships. Please see if you can find new speeds with this, it would be great to have some tests. This script should also work on other rules that function similarly.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
PHPBB12345
Posts: 1096
Joined: August 5th, 2015, 11:55 pm
Contact:

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by PHPBB12345 » January 13th, 2018, 1:18 am

AforAmpere wrote:If anyone wants to search rules like the ones above for weird speeds, this script (highly unoptomized), made from a bunch of parts of other search programs, searches randomly for ships of a length given by drawing the base pattern of the length of ship you want to find. Try using this pattern as a test:

Code: Select all

x = 3, y = 7, rule = B2c3aj4a6ack7/S1e2-an3ejnr4i6k7e
bo$obo$obo$obo$obo$obo$2bo!
The code, the first two lines are how many ships to find, and what file to output them to.

Code: Select all

numships = 30
resultsFile = 'Push-cell_rule_search_1.txt'

import golly as g
import random
testPop = int(g.getpop())
permtestRect = g.getrect()
testPatt = g.transform(g.getcells(permtestRect),-permtestRect[0],-permtestRect[1])
permtestPatt= g.transform(g.getcells(permtestRect),-permtestRect[0],-permtestRect[1])
permtestRect = [0,0,permtestRect[2],permtestRect[3]]
g.show(str(permtestRect))
a=0
def chunks(l, n):
    for i in range(0, len(l), n):
        yield l[i:i+n]
def giveRLE(clist):
    # clist_chunks = list (chunks (g.evolve(clist,0), 2))
    clist_chunks = list(chunks(clist, 2))
    clist_chunks.sort(key=lambda l:l[0])
    clist_chunks.sort(key=lambda l:l[1])
    mcc = min(clist_chunks)
    rl_list = [[x[0]-mcc[0],x[1]-mcc[1]] for x in clist_chunks]
    rle_res = ""
    rle_len = 1
    rl_y = rl_list[0][1] - 1
    rl_x = 0
    for rl_i in rl_list:
        if rl_i[1] == rl_y:
            if rl_i[0] == rl_x + 1:
                rle_len += 1
            else:
                if rle_len == 1: rle_strA = ""
                else: rle_strA = str (rle_len)
                if rl_i[0] - rl_x - 1 == 1: rle_strB = ""
                else: rle_strB = str (rl_i[0] - rl_x - 1)
                
                rle_res = rle_res + rle_strA + "o" + rle_strB + "b"
                rle_len = 1
        else:
            if rle_len == 1: rle_strA = ""
            else: rle_strA = str (rle_len)
            if rl_i[1] - rl_y == 1: rle_strB = ""
            else: rle_strB = str (rl_i[1] - rl_y)
            if rl_i[0] == 1: rle_strC = "b"
            elif rl_i[0] == 0: rle_strC = ""
            else: rle_strC = str (rl_i[0]) + "b"
            
            rle_res = rle_res + rle_strA + "o" + rle_strB + "$" + rle_strC
            rle_len = 1
            
        rl_x = rl_i[0]
        rl_y = rl_i[1]
    
    if rle_len == 1: rle_strA = ""
    else: rle_strA = str (rle_len)
    rle_res = rle_res[2:] + rle_strA + "o"
    
    return rle_res+"!"
while a<numships:
	g.putcells(permtestPatt)
	g.select([1,2,1,permtestRect[3]-4])
	g.randfill(random.randrange(1,99))
	testRect = permtestRect
        testPop = int(g.getpop())
        testPatt = g.transform(g.getcells(permtestRect),0,0)
	for ii in xrange(2000):
        	g.run(1)
        	pop = int(g.getpop())
                if (pop>7):
            		r = g.getrect()
            		if testPatt == g.transform(g.getcells(r),-r[0],-r[1]):
                		period = ii+1
                		if (r[0] == 0 and r[1] == 0 ):
                	            break
                		elif ( period >= 3):
                	        # Spaceship (reject if low period)
				    a += 1
				    c=testPatt
				    f="Found at: "+str(abs(r[1]))+ "c/" + str(period)
                		    g.show (f)
				    with open(resultsFile, 'a+') as rF:
                                         rF.write(f+'\n'+giveRLE(testPatt)+'\n'+'\n')
                		break
	g.new('')
g.putcells(testPatt)
g.show(giveRLE(testPatt))
The above test pattern, when running the script, should output C/5 ships. Please see if you can find new speeds with this, it would be great to have some tests. This script should also work on other rules that function similarly.
e.g. c/3:

Code: Select all

x = 88, y = 3, rule = B2c3aj4a6ack7/S1e2-an3ejnr4i6k7e
b86o$2bobobo3bo5bobobo3bo5bobobo3bo5bobobo3bo5bobobo3bo5bobobo3bo5b2o$
87o!

Code: Select all

x = 90, y = 3, rule = B2c3a6ac7e/S1e2cik3ejnr4i
2b87o$o3bobobo3bo5bobobo3bo5bobobo3bo5bobobo3bo5bobobo3bo5bobobo3bo5b
2o$b88o!

dani
Posts: 1222
Joined: October 27th, 2017, 3:43 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by dani » January 19th, 2018, 11:42 pm

Since the limit appears to be gone, 929c/1858, 409 cells:

Code: Select all

x = 45, y = 33, rule = B2e3ain4-cjqtw5ceiry6-ac78/S2ac3ajknq4eiqwy5-ain6-e78
23b3o2$19bob8o2$17b15o2$13bob20o$42b2o$11b15obo2b8obo4bo$34bo4b2ob2o$
7bob17obobo4b3obo$28b2o4b3obo$2b3o2b19o8bo4b2ob2o$ob4o17bo6b8obo4bo$ob
ob16o2bob2o2bo13b2o$obob2o13b6o2b8o$obobob13o7bo$obob2o13b6o2b8o$obob
16o2bob2o2bo13b2o$ob4o17bo6b8obo4bo$2b3o2b19o8bo4b2ob2o$28b2o4b3obo$7b
ob17obobo4b3obo$34bo4b2ob2o$11b15obo2b8obo4bo$42b2o$13bob20o2$17b15o2$
19bob8o2$23b3o!
I haven't checked but I'm at least 99.999... with 1858 9's% that this speed is not known.

User avatar
77topaz
Posts: 1496
Joined: January 12th, 2018, 9:19 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by 77topaz » January 19th, 2018, 11:47 pm

danny wrote:Since the limit appears to be gone, 929c/1858, 409 cells:

Code: Select all

RLE
I haven't checked but I'm at least 99.999... with 1858 9's% that this speed is not known.
That's a really pretty ship, with how its tail constantly dances on the edge between order and chaos.

wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by wildmyron » January 22nd, 2018, 2:06 am

Smaller 3c/4 orthogonal, 7 cells:

Code: Select all

x = 3, y = 7, rule = B2aci3ay4j5jk/S03j4it
2bo2$2bo$3o$2bo2$2bo!
Smaller 6c/8 orthogonal, 8 cells:

Code: Select all

x = 3, y = 7, rule = B2aci3ae4q5n/S03j4i5e
obo2$2bo$b2o$2bo2$obo!
@danny: The c/2 ships from your latest self-inverse rule are fascinating. I'm sure a search script could be written to find a large variety of them, and likely smaller versions of the other much larger one you found (1692c/3384). While the limit's not strictly imposed, I think that it's still the case that only fairly unique ships above p1000 (maybe even above p200) have been added. For example, we haven't even yet added all of the adjustable period ships for c/2n, c/(2n+1) and other examples up to p2000. For that matter, there's certainly a lot of engineered, higher period c/2 and c/3 ships from CGoL which haven't yet been included. Perhaps that's more attributable to a lack of effort applied in that direction but I think it's also partly due to not knowing where to stop with that side of the project. If some mechanism for creating ships of arbitrarily high period (and correspondingly large size) were found for your new rule, then I just don't know how we'd be able to manage them in this project - though I think the 929c/1858 example posted here certainly warrants being included right now. (That speed is not yet in the database, as you suspected.)
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » January 22nd, 2018, 11:49 am

Cool ships wildmyron!
6c/11:

Code: Select all

x = 2, y = 3, rule = B2acn3aek4k5iy/S1c2i3ij4ak5y6c
bo$o$bo!
EDIT: Smaller 18c/18

Code: Select all

x = 5, y = 5, rule = B2ac3k4kyz5ajn6a/S2aik
bobo$4bo$2b3o2$o!
EDIT 2, 36 cell 6c/7:

Code: Select all

x = 14, y = 12, rule = B2ac3ae4ar5ciq6i/S02i3ain4anr5cir6ci7e
10b3o$5bo4b4o$2bo9b2o$o5bo3bo2bo$2bo5bo$12bo$12bo$2bo5bo$o5bo3bo2bo$2b
o9b2o$5bo4b4o$10b3o!
EDIT 3, I am pretty sure this can't be completed in any rule, but a 9c/11 partial:

Code: Select all

x = 5, y = 9, rule = B2ac3e4ar5ceiq6ai/S02ai3ain4aqr5cikr6i
b3o$2bobo$4bo2$o2b2o2$4bo$2bobo$b3o!
EDIT 4, 12 cell 4c/5:

Code: Select all

x = 8, y = 7, rule = B2ac4jny/S01e3y
bo2bo$o5b2o$3bo2$3bo$o5b2o$bo2bo!
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by AforAmpere » January 22nd, 2018, 3:20 pm

I think this is worth a new post, 8 cell 4c/5:

Code: Select all

x = 5, y = 7, rule = B2ac3y4nr/S01e3y
4bo2$2bobo$o3bo$2bobo2$4bo!
9 cell 8c/10:

Code: Select all

x = 8, y = 7, rule = B2ac4t5y/S01e3r
4bo$6b2o$o$3bo$o$6b2o$4bo!
9 cell 12c/15:

Code: Select all

x = 5, y = 7, rule = B2ac3c4cqy5qr6c7e/S01e2n3cjkqy4iwy5ey
4bo$o$bo2bo$4bo$bo2bo$o$4bo!
15 cell 16c/20:

Code: Select all

x = 12, y = 7, rule = B2acn4c5i/S01e3kq4c
5bo2bo$10b2o$bo3bo$o5bobo$bo3bo$10b2o$5bo2bo!
EDIT, 10 cell 5c/6:

Code: Select all

x = 4, y = 7, rule = B2aci3y4t5iq6ai7e/S1c2ai3en5k6i
3bo$o2bo$o$o2bo$o$o2bo$3bo!
20c/24:

Code: Select all

x = 16, y = 7, rule = B2aci3cy4kqt5acijn6in7e/S1c2ai3aen4etw5aq
15bo$6bo5bo2bo$obo5b2obo$7bo2bo4bo$obo5b2obo$6bo5bo2bo$15bo!
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
PHPBB12345
Posts: 1096
Joined: August 5th, 2015, 11:55 pm
Contact:

Re: Smallest Spaceships Supporting Specific Speeds (5s) Project

Post by PHPBB12345 » January 22nd, 2018, 10:47 pm

Code: Select all

x = 27, y = 1, rule = W104
2obob2o8b2obob2obob2o!

Code: Select all

x = 15, y = 1, rule = W104
2obobobobobob2o!

Code: Select all

x = 55, y = 1, rule = W104
2obobobobobobobobobobobobobobobobobobobobobobobobobob2o!
what is 7c/8 spaceship, 8c/9, etc?

Post Reply