ConwayLife.com - A community for Conway's Game of Life and related cellular automata
Home  •  LifeWiki  •  Forums  •  Download Golly

Slow salvo synthesis ideas

For general discussion about Conway's Game of Life.

Slow salvo synthesis ideas

Postby glider_rider » April 11th, 2013, 11:37 pm

This topic is for ideas in slow salvo technology. One idea I have is to create a clump of blocks using slow salvos, then collide a glider with that and blockicly construct object (There's a lot of blockic technology, so far as I know). I found some methods of moving, duplicating, and rephasing blinkers, so maybe, gliders could collide with the blinkers to make blocks wherever you want. I have some potentially useful collisions below.
x = 149, y = 96, rule = B3/S23
88bo$86bobo$87b2o8$104bo$102bobo$o102b2o$b2o$2o10$116bo$41bobo73b2o$
42b2ob3o68b2o$11bobo28bo$12b2ob3o$12bo12$63bo2b3o$64bo$62b3o$127bo$
125bobo$44bo81b2o$42bobo$43b2o2$45bo$45bo$45bo3$59bobo$60b2o$60bo$63b
3o$140bo$138bobo$139b2o5$143bo$144bo$142b3ob3o12$62bo$63bo$61b3o4$72bo
$73bo$71b3o5$81bo$82bo$80b3o!

Of course, you need to allow p2 synthesis for these to work.
Bi-blocks are a problem, but you could slow synthesize those.
Nico Brown
User avatar
glider_rider
 
Posts: 67
Joined: February 20th, 2013, 5:41 pm
Location: CA

Re: Slow salvo synthesis ideas

Postby dvgrn » June 5th, 2013, 9:41 am

Just ran across an old line of exploration that still seems interesting. Back in August 2003 I put together a minimal set of slow salvos that could be used to do slow-salvo constructions around a corner -- I thought of it as doing INC and DEC on a construction-arm elbow, and also firing either color of glider (WHITE or BLACK) 90 degrees from the elbow, without affecting the elbow:

#C INC, DEC, WHITE and BLACK salvos
#C   making up a universal toolkit that can be used to build
#C   any slow salvo at right angles to the original salvo,
#C   using a single block as an elbow.
#C   6, 14, 26, and 26 gliders, respectively -- total = 72.
x = 659, y = 227, rule = B3/S23
196b2o3b2o$196b2o3bobo$201bo3$216b2o$216bobo$216bo11$b2o$b2o3$2o$obo7b
2o$o9bobo$10bo2$231b2o$25b2o204bobo$25bobo203bo$25bo4$211b2o$211bobo$
211bo9$246b2o$246bobo$246bo2$216b2o$40b2o174bobo42b2o$40bobo173bo44bob
o$40bo220bo5$20b2o$20bobo$20bo5$238b2o$238bobo$238bo2$55b2o$55bobo$55b
o2$25b2o249b2o$25bobo42b2o204bobo$25bo44bobo203bo$70bo4$256b2o$256bobo
$256bo6$47b2o$47bobo$47bo$291b2o129b2o3b2o$291bobo128b2o3bobo$291bo
135bo2$261b2o$85b2o174bobo42b2o134b2o$85bobo173bo44bobo133bobo$85bo
220bo135bo5$65b2o$65bobo$65bo5$283b2o$283bobo$283bo2$100b2o$100bobo$
100bo2$70b2o249b2o134b2o$70bobo42b2o204bobo133bobo$70bo44bobo203bo135b
o$115bo4$301b2o134b2o$301bobo133bobo$301bo135bo6$92b2o$92bobo519b2o3b
2o$92bo242b3o276b2o3bobo$335bo136b2o145bo$336bo135bobo$472bo$634b2o$
306b2o134b2o190bobo$130b2o174bobo133bobo42b2o145bo$130bobo173bo135bo
44bobo$130bo356bo2$335b3o$335bo$336bo$110b2o$110bobo$110bo5$464b2o$
464bobo$144b2o318bo$144bobo$144bo182b3o$327bo$328bo320b2o$649bobo$115b
2o385b2o145bo$115bobo384bobo$115bo386bo3$629b2o$629bobo$482b2o145bo$
482bobo$338b3o141bo$338bo$339bo3$345b3o$345bo$346bo3$136b3o$136bo497b
2o$137bo208b3o285bobo$346bo140b2o145bo$347bo139bobo$359b3o125bo$359bo
154b2o8b2o$360bo153bobo7bobo$514bo9bo2$371b3o$371bo$372bo$147b3o$147bo
$148bo$656b2o$656bobo$154b3o352b2o145bo$154bo354bobo$155bo219b3o131bo$
375bo$376bo3$155b3o$155bo$156bo$168b3o$168bo$169bo3$180b3o$180bo$181bo
8$184b3o$184bo$185bo!

However, it now occurs to me that it's only for the first 90-degree turn that it's important to have an elbow moving strictly forward and backward along one diagonal. We have much better technology for that first 90-degree turn already, where it's allowable to synchronize pairs of gliders on one or two lanes, and we can get all the elbow moves and glider outputs we need.

Once we're around that first corner and definitely in slow-salvo territory, it's perfectly okay for the elbow to drift a bit left and right as it's moving backward and forward -- and it isn't really a requirement that the elbow should stay in exactly the same location when a 90-degree output glider is being released. So we can get away with a lot fewer gliders:

#C DEC3/2, INC1/2, and GLIDER salvos --
#C  a universal toolkit with only 9 gliders.
#C Composite DEC3 and INC1 shown below for reference.
x = 218, y = 116, rule = B3/S23
4b3o$2o2bo75b2o78b2o$2o3bo74b2o78b2o3$79b3o86b3o$79bo88bo$80bo88bo13$
84b3o$84bo91b3o6b3o$85bo90bo8bo$177bo8bo13$105b3o94b3o$105bo96bo$106bo
96bo16$215b3o$215bo$216bo14$4b3o$2o2bo75b2o$2o3bo74b2o4$80b3o$80bo$81b
o3$5b3o$5bo$6bo3$114b3o$114bo$115bo3$85b3o41b3o$85bo43bo$86bo43bo13$
107b3o$107bo$108bo5$144b3o$144bo$145bo!

Seems to me it's possible to send a slow salvo around an arbitrary number of corners (at exponentially increasing cost, with an elbow block at each corner) with just these three salvos. Anyone see any problems with the theory? If any elbow drifts inconveniently far left or right from its original location, the INC1/2 can easily correct it. Both INC1/2 and DEC3/2 change the color of the target block, so you can easily get either color of output glider.

Thus I think it's possible to for a NW-traveling slow glider salvo to eventually reach in and destroy the central still life in the following pattern, without disturbing any of the diagonal lines:

x = 153, y = 154, rule = B3/S23
76b2ob2o$75bobobobo$74bo7bo$73bo9bo$72bo11bo$71bo13bo$70bo15bo$69bo17b
o$68bo19bo$67bo21bo$66bo23bo$65bo25bo$64bo27bo$63bo29bo$62bo31bo$61bo
33bo$60bo35bo$59bo37bo$58bo39bo$57bo41bo$56bo43bo$55bo45bo$54bo47bo$
53bo49bo$52bo51bo$51bo53bo$50bo55bo$49bo57bo$48bo59bo$47bo30b2o29bo$
46bo31b2o30bo$45bo65bo$44bo67bo$43bo69bo$42bo71bo$41bo73bo$40bo75bo$
39bo77bo$38bo79bo$37bo81bo$36bo83bo$35bo85bo$34bo87bo$33bo89bo$32bo91b
o$31bo93bo$30bo95bo$29bo97bo$28bo99bo$27bo101bo$26bo103bo$25bo105bo$
24bo107bo$23bo109bo$22bo111bo$21bo113bo$20bo115bo$19bo117bo$18bo119bo$
17bo121bo$16bo123bo$15bo125bo$14bo61b2ob2o61bo$13bo61bobobobo61bo$12bo
61bo7bo61bo$11bo61bo9bo61bo$10bo61bo11bo61bo$9bo61bo13bo61bo$8bo61bo
15bo61bo$7bo61bo7b2o8bo61bo$6bo61bo7bo2bo8bo61bo$5bo61bo8bo2bo9bo61bo$
4bo61bo7b2o4b2o8bo61bo$3bo61bo7bo8bo8bo59b2o$2bo61bo8bo8bo9bo28b2o$bo
61bo10b2o4b2o9b2o28b2o28b2o$o61bo13bo2bo72bo$2o60b2o12bo2bo71bo$77b2o
71bo$2o30b2o28b2o85bo$o31b2o28bo85bo$bo61bo83bo$2bo61bo81bo$3bo61bo79b
o$4bo61bo77bo$5bo61bo75bo$6bo61bo73bo$7bo61bo71bo$8bo61bo69bo$9bo61bo
67bo$10bo61bo65bo$11bo61bo63bo$12bo61bo27b2o32bo$13bo61bo26b2o31bo$14b
o61bo57bo$15bo61bo55bo$16bo61bo53bo$17bo61bo51bo$18bo61bo49bo$19bo61bo
47bo$20bo61bo45bo$21bo61bo43bo$22bo61bo41bo$23bo61bo39bo$24bo61bo37bo$
25bo61bo35bo$26bo61bo33bo$27bo61bo31bo$28bo61bo29bo$29bo61bo27bo$30bo
61bo25bo$31bo61bo23bo$32bo61bo21bo$33bo61bo19bo$34bo61bo17bo$35bo61bo
15bo$36bo61bo13bo$37bo61bo11bo$38bo61bo9bo$39bo61bo7bo$40bo61bobobobo$
41bo61b2ob2o$42bo$43bo$44bo$45bo$46bo$47bo$48bo$49bo$50bo$51bo$52bo$
53bo$54bo$55bo$56bo$57bo$58bo$59bo$60bo$61bo$62bo$63bo$64bo$65bo$66bo$
67bo$68bo$69bo$70bo$71bo$72bobo29b2o$73b2o29b2o!

It should even be possible to accomplish the same trick after deleting the four elbow blocks inside the spiral -- the block at the entrance can be pushed back and split progressively, though it will take a lot more gliders.

Are there universal-elbow slow-salvo sets with fewer than nine gliders? Obviously there are larger sets that can do some of the work more efficiently -- especially long-distance block moves. My next post here will be a table of recent Glue results that allows a block to be moved almost anywhere in (+/-100, +/-100) with 32 gliders or less.
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby dvgrn » June 8th, 2013, 10:50 pm

dvgrn wrote:My next post here will be a table of recent Glue results that allows a block to be moved almost anywhere in (+/-100, +/-100) with 32 gliders or less.

Okay, here's a nice picture of the cheapest ways I know to move a block from (0,0) to (X,Y) with a slow salvo containing no more than 32 gliders. The color indicates the minimum number of gliders needed:

Image

I've attached a Golly pattern for the image, in case anyone wants a better look at what colors correspond to which numbers. I've also attached the table of "atomic" block moves that I'm using, and the table of composite (molecular?) block moves on which the above image was based.

Technically this is only a small fraction of the available 32-slow-glider block moves, because the table contains "atomic" block-move salvos only up to length 9. There are certainly a huge number of atomic block moves with 10- to 32-glider salvos, but nine gliders seemed like a good place to stop the search. As it is, a 32-glider limit allows almost 100,000 different composite block moves.

Any block move that takes more than 9 gliders is actually composed of two or more sub-salvos with 9 gliders or less, with each sub-salvo starting and ending with a block. The sub-salvos can be shuffled around in any order without changing the final result. This may come in handy sometimes when the compiler is trying to find a way to move the construction arm's "hand" block to the next location without affecting any still lifes that have already been built.

Even for the up-to-9-glider "atomic" salvos, there are usually at least a few hundred different variants that produce the same block move -- this is why the original "blockmove2-fixedwidth" table is so big (67 megabytes). Different salvos might shoot down junk in a different order, or use one of six adjacent glider lanes to clean up an extra block, or whatever. So there are 908,177 moves in the full table, but only 2279 different atomic (X,Y) coordinates.
Attachments
BlockMoveCombinations-32G.txt
Table of combinations of atomic block-moves
(3.94 MiB) Downloaded 238 times
blockmove2-fixedwidth.zip
Full atomic block-move table
(8.65 MiB) Downloaded 298 times
P2-32G-Block-Moves.zip
Golly ruletable and map of (X,Y) block-move offsets up to 32 slow gliders
(34 KiB) Downloaded 261 times
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby triller » June 9th, 2013, 11:23 am

Dave,
I don't understand the coding.
Here's the first line of 'BlockMoveCombination'.
Would you parse it so I'll be able to translate the table?

[105, 79, 22, 'm10,14 m35,13 m30,26 m30,26']


Thanks.
Triller
The most exciting phrase to hear in science, the one that heralds new
discoveries, is not "Eureka!" (I found it!) but "That's funny ..."
-- Isaac Asimov
User avatar
triller
 
Posts: 99
Joined: September 3rd, 2009, 2:41 pm

Re: Slow salvo synthesis ideas

Postby dvgrn » June 9th, 2013, 11:59 am

triller wrote:\Here's the first line of 'BlockMoveCombination'.
Would you parse it so I'll be able to translate the table?

[105, 79, 22, 'm10,14 m35,13 m30,26 m30,26']

Okay, sure. That's a block move of (105,79), X and Y directions respectively, which can be done with 22 gliders.

It's made up of four atomic block moves (from blockmove-fixedwidth.zip), so it's really (10,14) + (35,13) + (30,26) + (30,26). Those sub-moves can be done in any order that's convenient.

The first atomic move is (10,14), which is in the table as

d=7 x=10 y=14 l=9 6,9 82,-7 197,-1 291,7 376,-47 472,29 582

"d" is the depth, the number of gliders; "l" is the list of glider lanes and timings. This list means
    send an even-phase glider on lane 9 at time T=6;
    send an even-phase glider on lane 9 again at time T=82 or later;
    odd-phase glider on lane -7 at T=197 or later;
    odd-phase glider, lane -1, T=291 or later;
    even-phase, lane 7, T=376+;
    even-phase, lane -47 (!), T=472+;
    even-phase, lane 29, T=582+
The slow-salvo-making script I posted would want this recipe in the form
m10,14:E9 E9 O-7 O-1 E7 E-47 E29

which does in fact produce a (10,14) block-move salvo:
x = 937, y = 923, rule = LifeHistory
2E$2E19$24.3A$24.A$25.A148$174.3A$174.A$175.A148$317.2A$316.2A$318.A
148$470.2A$469.2A$471.A148$623.3A$623.A$624.A148$746.3A$746.A$747.A
148$934.3A$934.A$935.A!

-- Bother. Now I have to figure out why the rest of the atomic sub-moves aren't listed in the version of the blockmove table that I posted! More shortly...
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby triller » June 9th, 2013, 4:44 pm

Dave,
I'm confused on your paradigm of 'lane'.

3Glider-8x7.jpg
3Glider-8x7.jpg (180.65 KiB) Viewed 11538 times


From my way of thinking, the 0 or reference lane is the 1/2 diagonal corresponding to the lower left corner of the bait block (in orange).
In this case, all formative components (including those interim) are all spartan, so even or odd phase of glider is moot.

1st Glider: bait block (black) > honey farm east
2nd Glider: honey farm > two block horizontal spread (blue blocks)
3rd Glider: kill extraneous block (right blue block)

End result is a block @ -8,7 from initial bait (left blue block).

From this excerpt from the table in 'blockmove2-fixedwidth', the only variance is in the last glider, those being each of the six adjacent lanes that provide a kill block reaction. I infer that my graphic is the last of the six.

d=3 x=-8 y=7 l=9 6,29 62,9 176
d=3 x=-8 y=7 l=9 6,29 62,11 176
d=3 x=-8 y=7 l=9 6,29 62,13 174
d=3 x=-8 y=7 l=9 6,29 62,15 172
d=3 x=-8 y=7 l=9 6,29 62,17 170
d=3 x=-8 y=7 l=9 6,29 62,19 168

My paradigm has glider 1 on lane 4 (i.e. 4 x 1/2 diagonals from the reference lane), glider 2 on lane 14. Widths (horizontal offsets) shown with violet stripe. Your lanes are 9 and 29. I'm observing a 2x factor that I can't quite wrap my head around.

Oh, BTW my neanderthal sensibilities have precluded my evolution to LifeHistory. I'm an RLE guy. Sorry.

Help!
triller

EDIT Please excuse my ineptitude in attaching.
The most exciting phrase to hear in science, the one that heralds new
discoveries, is not "Eureka!" (I found it!) but "That's funny ..."
-- Isaac Asimov
User avatar
triller
 
Posts: 99
Joined: September 3rd, 2009, 2:41 pm

Re: Slow salvo synthesis ideas

Postby dvgrn » June 9th, 2013, 7:27 pm

triller wrote:I'm confused on your paradigm of 'lane'... From my way of thinking, the 0 or reference lane is the 1/2 diagonal corresponding to the lower left corner of the bait block (in orange)...

Hmm, yes, I guess that explanation, such as it is, is over on the Geminoid Challenge thread:

dvgrn wrote:
    - The initial target is a block.

    - Lane numbers are symmetrical around 0, so you could get a mirror-image recipe by negating all the lane numbers.

    - There are no even lanes... or rather, gliders can't travel on the even lanes, though mirror-symmetric diagonal spaceships could.

    - An even-phase glider is always sent first. After that, a comma signals that the next glider should be even-phase, and a semicolon means it should be odd-phase.

This is actually Paul Chapman's lane-numbering system, so lately I've been calling them "PC-lanes". At first it's strange having only odd-numbered lanes, but that's the format that Glue output comes in... and they've gradually grown on me.

triller wrote:My paradigm has glider 1 on lane 4 (i.e. 4 x 1/2 diagonals from the reference lane), glider 2 on lane 14. Widths (horizontal offsets) shown with violet stripe. Your lanes are 9 and 29. I'm observing a 2x factor that I can't quite wrap my head around.

You're welcome to turn my PC-lane numbers into your lane numbers -- just subtract one and then cut the result in half, as you seem to figured out already. However, to get the mirror-image of some long salvo, all I have to do is negate all the lane numbers, whereas you'll have to take -X-1 (I think) (it was always hard for me to keep that straight!)
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby dvgrn » June 10th, 2013, 7:31 am

dvgrn wrote:-- Bother. Now I have to figure out why the rest of the atomic sub-moves aren't listed in the version of the blockmove table that I posted! More shortly...

Whew, no big problem to find -- was just looking in the wrong place. The original Glue table only lists recipes with y>=x. So there's no (30,26) and no (35,13), but there are (26,30) and (13,35) recipes:

d=6 x=26  y=30  l=-9 6,-15 76,-31 153,-13 266,-3 562,-17 714
d=7 x=13  y=35  l=-9 6,-7 82,-35 185,-11 266,-23 368,-43 461,-11 520

Negate all the lane numbers and you'll get mirror-image block move recipes, so the three atomic salvos making up a (105,79) block move would be as follows. The first recipe is used twice, since it's the cheapest big move in that general direction:

EDIT 2013/11/26: adjusted to use EO-format instead of unreadable old comma and semicolon delimiters.
m30,26:E9 E15 O31 E13 E3 E17
m35,13:E9 E7 O35 E11 E23 O43 E11
m10,14:E9 E9 O-7 O-1 E7 E-47 E29
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby triller » June 22nd, 2013, 1:50 pm

Pentadecathlon in 22 Gliders

This is another of those tangents I revisit on occasion.
While there must be other ways, I've found the following combination to be a worthy pentadecathlon predecessor:
x = 7, y = 11, rule = B3/S23
2b3o7$2b3o$bo3bo$o5bo$o5bo!

The Queen Bee/Blinker combo is surely attainable in many different ways. Sadly, the ship/glider to Queen Bee collision is unviable:
x = 75, y = 29, rule = B3/S23
3o3$70b3o2$2b2o28b2o$bobo27bobo$b2o28b2o3$70b3o$69bo3bo$68bo5bo$68bo5bo2$30b3o11$16b3o27b3o$16bo29bo$17bo29bo!

The true Teardrop (9x9 bounding box vs. 1/2 Honey farm @ 8x8) is another fine QB seed, leaving a Traffic Light to clean up. However, the smallest Teardrop recipe I could come up with is glider costly:

x = 251, y = 143, rule = B3/S23
131bo$2b3o126bo$131bo9$2o122b2o$2o122b2o9$5b3o121b3o$5bo123bo$6bo123bo
11$16b3o121b3o$16bo123bo$17bo123bo3$33b3o$33bo124b3o$34bo123bo$159bo2$
143b3o$143bo$144bo3$25b2o16b3o$25bobo15bo$25bo18bo122b3o$167bo$168bo5$
34b2o$34bobo16b3o$34bo18bo$54bo3$166b2o$166bobo$166bo2$44b2o$44bobo16b
3o109b3o$44bo18bo111bo$64bo111bo5$187b3o$187bo$54b2o132bo$54bobo17b3o$
54bo19bo$75bo4$195b3o15bo$195bo16b2o$196bo15bobo$63b2o$63bobo18b3o$63b
o20bo$85bo4$202b3o$202bo$203bo$73b2o$73bobo20b3o$73bo22bo122b3o$97bo
121bo$220bo7$107b3o98b2o$83b2o22bo100bobo20b3o$83bobo22bo99bo22bo$83bo
148bo8$242b3o$93b2o123b2o22bo$93bobo122bobo22bo$93bo124bo6$113b3o$113b
o$114bo$228b2o$228bobo$228bo6$248b3o$248bo$249bo!

That said, there's still the issue of positioning and phasing the reactive blinker for the payoff. I settled on the following, which starts with an ugly 2 block/2 beehive/blinker spread. Converting the upper beehive to the correct blinker is a 10 glider affair.
On the plus side, the 2nd to the last two gliders are the only pair that require lane parity/glider color sync. For the standard Chapman/Greene black/white glider construction salvoes, this recipe is viable with the blinker forming glider and the pi>QB forming glider being attainable without extraneous phase/lane shifting reactions.
x = 181, y = 182, rule = B3/S23
2o$2o13$9b3o$9bo$10bo13$20b3o$20bo$21bo19$66b2o$66bobo$66bo14$74b3o$
74bo$47b3o18b3o4bo$47bo20bo$48bo20bo3$74b3o$74bo$75bo3$80b3o$80bo$81bo
3$86b3o$86bo$87bo3$92b3o$92bo32b3o$93bo31bo$126bo2$98b3o$98bo$99bo4b3o
$104bo$105bo4$109b3o$109bo$110bo4$115b3o$115bo$116bo6$129b3o$129bo$
130bo4$135b3o$135bo$136bo7$148b3o$148bo$149bo3$144b3o$144bo$145bo3$
154bo$153b2o$153bobo12$151b3o$151bo$152bo23$178b3o$178bo$179bo!

I'll follow this up with the full recipe through my p120 construction arm soon.
As always, optimization encouraged. I'd love to see a concise block>true Teardrop recipe.

Enjoy,
triller
The most exciting phrase to hear in science, the one that heralds new
discoveries, is not "Eureka!" (I found it!) but "That's funny ..."
-- Isaac Asimov
User avatar
triller
 
Posts: 99
Joined: September 3rd, 2009, 2:41 pm

Re: Slow salvo synthesis ideas

Postby dvgrn » June 24th, 2013, 9:44 am

triller wrote:Pentadecathlon in 22 Gliders...
As always, optimization encouraged. I'd love to see a concise block>true Teardrop recipe.

This can be improved to 19 gliders, at least, using the latest Glue block-move toolkit. Here's the lane encoding to copy into the slow-salvo-builder script:

pd19g:E9 E1 E5 E9 E-25 E11 E13 E11 O5 O23 E3 E19 E17 E25 E31 O19 O29 O-9 E-13

x = 916, y = 923, rule = B3/S23
2o$2o19$24b3o$24bo$25bo48$70b3o$70bo$71bo48$122b3o$122bo$123bo48$174b
3o$174bo$175bo48$207b3o$207bo$208bo48$275b3o$275bo$276bo48$326b3o$326b
o$327bo48$375b3o$375bo$376bo48$423b2o$422b2o$424bo48$482b2o$481b2o$
483bo48$521b3o$521bo$522bo48$579b3o$579bo$580bo48$628b3o$628bo$629bo
48$682b3o$682bo$683bo48$735b3o$735bo$736bo48$780b2o$779b2o$781bo48$
835b2o$834b2o$836bo48$866b2o$865b2o$867bo48$913b3o$913bo$914bo!

I'm fairly sure that more gliders could be saved with better early choices, though -- I was a little too stubborn about getting a recipe out of the first thing I tried. Here's what I did:

    1. Found a cheap blinker-plus-junk recipe using the Seeds of Destruction game (3 gliders)
    2. Converted the junk to a block (1 glider)
    3. Noticed that the blinker got in the way of moving the block to where I wanted it (bah, humbug)
    4. Moved the blinker a little further away (1 glider)
    5. Moved the block to the right location relative to the blinker (4 gliders from a 6-glider block-move)
    6. Cleaned up the extra half-honeyfarm (1 glider)
    7. Converted the extra beehive to a well-separated block again (2 gliders)
    8. Moved this final block to its target location (5 gliders)
    9. Triggered the pentadecathlon seed (1 glider)
    10. Cleaned up the final beehive (1 glider).
I'm guessing you could get down to around 15 gliders with a better starting pattern -- find a cheaper blinker-plus-block-plus junk recipe, let's say, with the blinker and first block at the right offset, and the junk already a good distance away. But it's probably worth investigating teardrop recipes first...!
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby triller » June 24th, 2013, 9:38 pm

Nice. But !......
Here's where I continue to run into problems when dealing with recipes from Glue.
Consider the basic four arm salvoes: white, black, push, pull.

Basic4.jpg
Basic4.jpg (97.48 KiB) Viewed 11394 times


Given the starting position of the elbow block, any shift in or out shifts the reference diagonal from the elbow by 2 half-diagonals. The White glider forms up and travels at -18 half-diagonals from the elbow reference; the Black at -9 half-diagonals (blue stripes).

Also, in addition to the odd lane parity difference, the white/black gliders are out of phase by an add number of ticks (note Gen counter at 200). My salvo gun processes at p120, but even an odd period salvo gun would introduce problems when dealing with formative steps in the recipe that included p2 objects. Every other consecutive glider of the same color lane parity would have an opposite phasing on arrival at the target. No problem for stable objects but problematic for periodic components.

Dave, your improved PD recipe would break down in my construction arm at glider 5.
Your lanes: 9,1,5,9,-25.
Evaluate to my 1/2 diagonals: +4, 0, +2, +4, -13.
The 2nd glider forms a traffic light; the 3rd reacts with all and leaves a blinker (the boat unscathed).
Both gliders are the same phase on even lanes. No problem so far.
However, the 5th glider reacts with the resultant blinker from glider 3, but it's the same phase as the 3rd (blinker forming) glider. Given the white/black salvoes shown above, that glider is unattainable without extraneous processing. Glider 5 would be oddly phased vis a vis glider 3 (from my gun) because of the lane parity difference.

Perhaps I've overlooked a step in the evolution of elbow based slow salvo theory that it would behoove me to be aware of. If so, examples would be most appreciated.

triller
The most exciting phrase to hear in science, the one that heralds new
discoveries, is not "Eureka!" (I found it!) but "That's funny ..."
-- Isaac Asimov
User avatar
triller
 
Posts: 99
Joined: September 3rd, 2009, 2:41 pm

Re: Slow salvo synthesis ideas

Postby dvgrn » June 25th, 2013, 7:52 am

triller wrote:Dave, your improved PD recipe would break down in my construction arm at glider 5...

Well, or perhaps my "improved" recipe just plain isn't an improvement for your purposes! I haven't done much with those original WHITE/BLACK/INC/DEC salvos for a while -- too many different input lanes. Newer Geminoid replicator units need just two input lanes to move the elbow and fire both colors of glider. You could actually do the trick with pairs of gliders on just one lane, but that might be going a bit too far.

Anyway, you're absolutely right that my 19-glider recipe wouldn't work in the old 2003 prototype construction arm, which used those salvos. The original idea was to use only stable intermediate patterns, on the theory that not having to handle separate WHITE-ODD, WHITE-EVEN, BLACK-ODD, BLACK-EVEN salvos would make the circuitry enormously simpler. With stable intermediate patterns, the phases of the BLACK and WHITE gliders would never matter; construction options are much more limited, but it still appears to be a universal construction toolkit.

triller wrote:Perhaps I've overlooked a step in the evolution of elbow based slow salvo theory that it would behoove me to be aware of. If so, examples would be most appreciated.

The Gemini spaceship used the exact same salvos from your image -- but Andrew Wade's radical simplification was to remove all the complicated clock and tape-reading circuitry. He ran the construction arm completely asynchronously with twelve streams of gliders (he had to, to get the gliders from his two construction arms synchronized properly). With Gemini's asynchronous memory, it's trivial to produce any phase of BLACK or WHITE output glider just by changing the phase of the input gliders.

The newer Geminoid constructor arms shamelessly copy this innovation, but reduce the amount of circuitry by a couple more orders of magnitude by using just two channels instead of twelve -- removing one more layer of complexity by feeding each of the two lanes leading to the elbow directly with its own channel. In other words, the INC/DEC/BLACK/WHITE recipes are stored directly in glider-stream "memory", not encoded in any way.

As a handy side effect, it' now makes perfect sense to have dozens of INC, DEC, BLACK, and WHITE recipes instead of just one each. It makes slow-salvo construction a lot more efficient when you can do a one-step INC7 or DEC22 instead of seven or twenty-two separate operations...!

This also means that my 19-glider PD recipe works fine in a Geminoid replicator unit -- it can easily handle what I call "P2 slow salvo" constructions. Succeeding gliders from the elbow don't have to arrive at any particular time, but they do have to have the right phase mod 2 whenever they arrive, because intermediate patterns are allowed to be either period-2 or stable.

(Really in a Geminoid design it's perfectly possible to allow intermediates that are period-3 or higher, but there are relatively few easy-to-reach P3+ oscillators... including pulsars as targets doesn't really add much construction versatility, so it's simpler to exclude everything above P2.)

I think the first thread in this post has some P2-slow recipes, come to think of it. It might be possible to convert them to something usable by a construction arm with a period-120 clock, though... what should we call this kind of thing? P2 intermediate patterns, but you're only allowed to hit them with WHITE-ODD or BLACK-EVEN gliders. "Phase-limited P2", maybe?

It's still fairly likely that the 22-glider PD recipe could be improved a bit by tricks like the ones I used. You'd just have to use Paul Chapman's original P1 slow-salvo block-move table instead of the new (more efficient) P2 one, and be careful that your initial junk includes a blinker in the right phase that doesn't have to be moved... and that last part is probably a good idea anyway!
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby triller » June 26th, 2013, 12:14 am

Just (finally) downloaded golly-2.5! Seems that my prehensile tail is now vestigial.
Interestingly, I can now see in spectra beyond RLE. AND I don't need to know anything about RULE TABLES and COLOR TABLES and/or any other side tables that might be required for viewing in LifeHistory. Just Paste and View. Suddenly all of this Geminoid dialog that was (for me) encrypted is now visually accretable. This should flatten my learning curve appreciably.

Thanks Andrew, Tom and Dave for the software. Thanks to myriad forum contributors for continuing innovation and inspiration. Approaching 56 years of age, it's amazing that only music as a pastime holds the same allure for me as GOL, which I was introduced to at seventeen (I seem to recall coding in something called FORTRAN, but it's hazy). Perhaps the music part explains my periodic bent. Please excuse my digression in this thread.

Mark (triller)
The most exciting phrase to hear in science, the one that heralds new
discoveries, is not "Eureka!" (I found it!) but "That's funny ..."
-- Isaac Asimov
User avatar
triller
 
Posts: 99
Joined: September 3rd, 2009, 2:41 pm

Re: Slow salvo synthesis ideas

Postby codeholic » November 4th, 2013, 1:21 pm

I've found a simple (though somewhat dirty) seed for the dead spark coil in the hope that it can be useful for building Paul Callahan's classic Herschel transmitter with a slow salvo.
x = 17, y = 12, rule = B3/S23
bo$obo$obo$bo2$5b2o$4bo2bo$5b2o$2b2o$bobo10b2o$3bo9bo2bo$14b2o!
Ivan Fomichev
User avatar
codeholic
Moderator
 
Posts: 1129
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Slow salvo synthesis ideas

Postby codeholic » November 7th, 2013, 3:26 pm

2sL pentadecathlon seed:
x = 17, y = 7, rule = B3/S23
7b2o$2b2o3bobo$2bo5bo$obo$2o12b2o$14bobo$14bo!

Another 2 piece seed:
x = 16, y = 9, rule = B3/S23
8b2o$7bo2bo$7bobo$8bo$13bo$12bo2bo$b2o9bo2bo$obo11bo$2bo!
Ivan Fomichev
User avatar
codeholic
Moderator
 
Posts: 1129
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Slow salvo synthesis ideas

Postby codeholic » November 8th, 2013, 5:03 am

2 Spartan piece seed for a backward HWSS (I hope a beacon can be considered Spartan):
x = 18, y = 18, rule = B3/S23
17bo$17bo$17bo11$14b2o$15bo$b2o9bo$obo9b2o$2bo!

Other results are to follow.
Ivan Fomichev
User avatar
codeholic
Moderator
 
Posts: 1129
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Slow salvo synthesis ideas

Postby codeholic » November 8th, 2013, 5:23 am

How about putting known seeds (and perhaps also slow salvo syntheses) on the wiki? I think this kind of information would be worth to systematize. At least, for most patterns it has more practical value than glider syntheses (if there can be any practical value in the GoL at all ;)), and glider syntheses are listed on the wiki. Would wiki moderators mind if I add these sections to Template:PatternDownload?
Ivan Fomichev
User avatar
codeholic
Moderator
 
Posts: 1129
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Slow salvo synthesis ideas

Postby codeholic » January 14th, 2014, 11:03 am

What are the shortest clean LWSS, MWSS and HWSS syntheses currently known?
Ivan Fomichev
User avatar
codeholic
Moderator
 
Posts: 1129
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: Slow salvo synthesis ideas

Postby mniemiec » January 26th, 2014, 1:29 am

codeholic wrote:2 Spartan piece seed for a backward HWSS (I hope a beacon can be considered Spartan)

The beacon can be replaced by two gliders (one's positining and timing are critical, but the other just removes a debris block, so it can be as flexible as desired). The positioning is also very convenient for sideways insertion, and allows this to substantially improve two HWSS-HWSS flotillae when the frontmost spaceship is added after the fact:
x = 134, y = 56, rule = B3/S23
bbo69bo$obo67bobo$boo68boo$$6bobo67bobo$7boo68boo$7bo69bo17$16bo69bo$
17bo69bo$15b3o67b3o$19bo69bo$19bo69bo$19bo69bo19$31bo22b3o4bo62b3o$30b
3o21bobbobb3o61bobbo$29boobo21bo4boobo38bo22bo6bo$29b3o22bo3b4o38b3o
21bo5b3o$29b3o22bo3b4o38boboo20bo5boboo$29b3o22bo4b3o39b3o20bo6b3o$30b
oo23bobobboo39b3o21bobbobb3o$101b3o23bo3b3o$101boo28boo!


codeholic wrote:What are the shortest clean LWSS, MWSS and HWSS syntheses currently known?

Do you mean spartan syntheses, or any syntheses at all? And by "shortest", do you mean "taking the shortest amount of time"?
mniemiec
 
Posts: 715
Joined: June 1st, 2013, 12:00 am

Re: Slow salvo synthesis ideas

Postby dvgrn » January 26th, 2014, 8:23 am

mniemiec wrote:
codeholic wrote:What are the shortest clean LWSS, MWSS and HWSS syntheses currently known?

Do you mean spartan syntheses, or any syntheses at all? And by "shortest", do you mean "taking the shortest amount of time"?

Well, slow salvos live in their own very strange corner of the Life universe. "Shortest" in this context means "least number of slow-salvo gliders". The gliders all have to be coming from the same direction, and it has to be possible to add an arbitrarily large delay between any two successive gliders -- no synchronization between gliders is allowed.

Traditionally the slow salvo has generally been aimed at a block, but recently things have been getting a little more confusing. For the 31c/240 caterpillar spaceship project it's no longer clear what the most useful starting point is. A blinker is certainly just as good an initial target as a block, and I don't see any harm in allowing at least honeyfarms and traffic lights as well. Really, cheap edge-shooting *WSS slow salvos would be very interesting if they started from anything in the Top Ten.

Now, "cheap" also changes its meaning a bit in the context of 31c/240 slow salvos, since some slow salvos are much easier to generate than others. But we can't just think about cost in terms of 31c/240 rephasers -- eventually it should also be possible to apply slow construction methods to shorten the original Caterpillar spaceship considerably. The lane cost weighting will be completely different, but the helix constructions can be made to work in the same way.

One more newish development: the old 2003 prototype universal constructor used true, or "P1", slow salvos -- all the intermediate targets were stable, so you could add an arbitrary delay at any point in a slow salvo and it would still work fine. P1 slow salvos still allow for universal construction, but they're very inefficient compared to P2 slow salvos: if blinkers, beacons, and toads are allowed as intermediate targets, constructions will get done much quicker. (Other period-2 oscillators like clocks are also allowed, of course, but in practice they don't show up often enough to matter).

There's a tradeoff -- you start having to pay attention to the phase of incoming gliders -- but you can still add arbitrarily large delays, they just have to be even numbers. With Geminoid-style memory tapes or 31c/240 rephasers, P2 slow salvos can be produced at almost exactly the same cost as P1 slow salvos.

But once we've taken that step down the slippery slope, there are more branches of the slow-salvo search tree that are worth exploring: what about P6 slow salvos, allowing P2 oscillators plus a pulsar? Or P30 slow salvos, allowing P2s, pulsars, and pentadecathlons (oh, my)? We could even handle a tumbler with no problem if one ever showed up.

Basically we can generalize to period-N slow salvos with no significant extra construction cost. Higher-period oscillators provide more branches on the search tree, and therefore ultimately more efficient constructions. Depending on what's generating the slow gliders, some recipes will still be much cheaper than others -- but theoretically any oscillating intermediate target is fair game for a Pn-slow salvo.
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby mniemiec » February 5th, 2014, 3:19 pm

dvgrn wrote:
mniemiec wrote:
codeholic wrote:What are the shortest clean LWSS, MWSS and HWSS syntheses currently known?

Do you mean spartan syntheses, or any syntheses at all? And by "shortest", do you mean "taking the shortest amount of time"?

Well, slow salvos live in their own very strange corner of the Life universe. "Shortest" in this context means "least number of slow-salvo gliders". The gliders all have to be coming from the same direction, and it has to be possible to add an arbitrarily large delay between any two successive gliders -- no synchronization between gliders is allowed.


I know they have a very different focus. I just wasn't sure what the context of the question was. I rarely deal with them in my synthesis work, since they are frequently more expensive than less constrained methods, and more importantly, I have very little personal experience with them. I have occasionally added a few when they're reasonably inexpensive, or otherwise useful (e.g. the recent slow-salvo HWSS that makes certain incremental flotilla syntheses cheaper than using previous methods).

dvgrn wrote:But once we've taken that step down the slippery slope, there are more branches of the slow-salvo search tree that are worth exploring: what about P6 slow salvos, allowing P2 oscillators plus a pulsar? Or P30 slow salvos, allowing P2s, pulsars, and pentadecathlons (oh, my)? We could even handle a tumbler with no problem if one ever showed up.


Since pulsars, pentadecathlons, and other exotic occur very rarely (e.g. in Achim Flammenkamp's soup experiments, pulsars were around 7000 times as rare as blinkers or blocks, pentadecathlons half a million times as rare, and other oscillators with periods above 2 are even more rare). While some constructions might take advantage of such oscillators, it's likely that few would be able to do so, and i doubt they would add many useful mechanisms to the mix, as there are likely many more useful results from shooting a glider into two nearby simple still-lifes than one high-period oscillator.

Even for non-slow syntheses, I've found little use for such oscillators, except in cases where a small rotor is modified on an existing stator, e.g. complex jams are used to make complex molds, mold is used as a basic for Silver's P5, and Elkie's P5 is sometimes cheaper to chill into a related still-life than to build the still-life directly - not to mention complex billiard tables that are often built incrementally. Sometimes such oscillator syntheses can be used to create temporary predecessors, e.g. Jack uses a pre-pulsar to make two finger sparks, and temporary pentadecathlons can occasionally used to create long straight lines - but these are go well outside the topic of this discussion.
mniemiec
 
Posts: 715
Joined: June 1st, 2013, 12:00 am

Re: Slow salvo synthesis ideas

Postby dvgrn » February 5th, 2014, 3:39 pm

mniemiec wrote:I rarely deal with [slow-salvo constructions] in my synthesis work, since they are frequently more expensive than less constrained methods, and more importantly, I have very little personal experience with them. I have occasionally added a few when they're reasonably inexpensive, or otherwise useful (e.g. the recent slow-salvo HWSS that makes certain incremental flotilla syntheses cheaper than using previous methods).

Yes, I've been thinking off and on about how to take advantage of slow-salvo technology in the 17-bit still life synthesis thread, but so far I've only found one good application.

Certainly many more uses could be found -- for example, we could take the part of the Glue search tree that terminates with no live cells, and sort out those reaction to look for useful sparks. I suppose some kind of brute-force distributed search could apply unknown Glue sparks to every possible point of every known >15-bit still life, and just see which ones happened to create 17-bit or bigger objects.

But there's no particular reason to use only slow salvos in that kind of Big Spark Search. Even using unidirectional salvos would only be for the sake of convenience -- it's maybe a little easier to be sure that the incoming gliders won't conflict with other parts of a construction.
dvgrn
Moderator
 
Posts: 3361
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI

Re: Slow salvo synthesis ideas

Postby mniemiec » February 14th, 2014, 7:45 pm

dvgrn wrote:Certainly many more uses could be found -- for example, we could take the part of the Glue search tree that terminates with no live cells, and sort out those reaction to look for useful sparks. I suppose some kind of brute-force distributed search could apply unknown Glue sparks to every possible point of every known >15-bit still life, and just see which ones happened to create 17-bit or bigger objects.


Although I'm not personally familiar with Glue, this is similar to the approach I use to eliminate the "trivial" objects from most lists. Rather than using brute force to grow all known objects by all known tools to get bigger objects, I do the reverse - try to derive all known objects via all known tools from smaller predecessors. This gets rid of around 95% of still-lifes, and even more of pseudo-still-lifes, leaving only not-so-obvious ones behind. Unfortunately, this only applies one tool at a time, so many objects that can be trivially synthesized by combining pairs of tools are still left for this to be done manually. (In other words, if any objects can't be trivially deduced backwards using my tool, it's also unlikely they will be trivially deduced forwards using Glue). But there's no harm in trying - CPU cycles are getting cheaper, and Life tools are getting better, so more and more can be found by brute force with a minimum of human intervention.
mniemiec
 
Posts: 715
Joined: June 1st, 2013, 12:00 am


Return to General Discussion

Who is online

Users browsing this forum: No registered users and 2 guests