dvgrn wrote:Without a search utility, the best I could do with a few minutes of experimentation on the likeliest candidate was to produce a second parallel glider, making a G18 output...

With a search utility (

catgl1.0.x -- Windows-only version for the moment, unfortunately ) there's clearly a lot of potential, and a lot of filtering work to do.

For example, here's another H-to-G with a new output lane, northwest this time. NW outputs are relatively rare. Unfortunately this converter is fairly big and very very slow (800+ ticks):

Code: Select all

```
x = 56, y = 54, rule = LifeHistory
4B$.4B$2.4B$3.4B$4.4B$5.4B23.2A3.2A$6.4B23.A3.A$7.4B21.A6.A2.A$8.4B
20.2A4.5A$9.4B22.2A$10.4B18.2A.A.4A$11.4B17.2A.A.A2.A$12.4B4.2A14.A$
13.4B4.A$14.4B3.A.A$15.4B3.2A$16.4B$17.3B$18.2B$19.B3$22.A$22.A.A$22.
3A23.2A$24.A23.A$46.A.A$46.2A3$15.2A$16.A$13.3A30.2A$13.A32.2A2$27.A.
2A$25.3A.2A23.2A$24.A29.A$25.3A.2A21.A.A$27.A.A22.2A$27.A.A$28.A3$53.
2A$53.A$30.2C19.A.A$29.C.C19.2A$29.C$28.2C3$35.2C$35.2C!
```

Might not be bad if you happen to need a large delay and a NW glider output -- but where should we keep the thousands of "low-probability-of-usefulness" H-to-G converters that we could generate along these lines?

The last two catalysts, in white -- the eater and block -- suppress a block and a clean R-pentomino, respectively. Below is a sample Herschel track found by running a new search with those last two conduits removed. It's an honest-to-goodness never-before-seen Rx382 Herschel conduit.

Unfortunately it needs support from a p8 oscillator, so... back to the drawing board! The Bellman-assisted search space is enormous, so there are bound to be good new discoveries out there somewhere.

Code: Select all

```
#C Rx382p8 Herschel conduit
#C found 31 January 2014 with Michael Simkins' Catgl 1.0.3
x = 50, y = 78, rule = LifeHistory
22.2C3.2C$23.C3.C$22.C6.C2.C$22.2C4.5C$.2B22.2C$B.2B18.2C.C.4C$.4B17.
CA.C.A2.C$2.4B4.2C11.D2BA3BD$3.4B4.C12.B.3B$4.4B3.C.CB7.6B$5.4B3.CAB.
3B3.7B$6.4B3.D16B$7.4B3.17B$8.4B3.16B$9.4B.17B$10.21B$10.22B$10.2BC
20B$9.3BCBC4B.12B$10.2B3C4B2.11B6.2C$9.5BC4B2.11B6.C$8.12B2.11B2.BC.C
$7.4B6.17B.BAC$7.3B8.18BD$5.4B10.17B$5.CAD12.17B$6.C13.17BD$3.3C14.
16BAC$3.C17.15BAC$16.D2.18BD$17.CD2A14B$14.D3CB2AB2.11B9.2C$14.C4.BD
4.10B9.C$15.3C.2C5.9B3.B2.BC.C$17.C.C.D5.13B.BAC$17.C.C6.16BD$18.CD6.
16B$24.18B$23.18B$22.19B2.2C$21.D17B4.C$20.CA17B.BC.C$19.C.CB2.B.12B.
BAC$19.C8.13BD$18.2C6.15B$25.16B$22.D2.16B$22.CB.17B$21.C.A18B$22.C2B
.B.13B5.2B$22.DB4.12B5.BAB$27.11B7.5B$27.10B4.B2.3ABAB$25.D9B5.2B.A.
2A2B$24.CAB.7B4.4B2A.A$23.C.CB.6B4.3BAB3A$23.C4.6B3.8B$22.2C4.6B2.4B
2.BAB$27.7B2.3BC2.2B$27.6B.B.2BA.C$28.7B.B.AC2.D$28.7B7.AC$27.8B7.C.C
$27.7B3.2A5.C$27.6B3.D2CD4.2C$26.2B3D2B$26.4BD2B$25.4B3DB$24.9B$24.9B
$24.9B$24.8B4$25.2E$24.E2.E$25.2E!
```

Catgl generated 700+ different catalyst arrangements before I canceled it, and the above is what I came up with for just the first arrangement I looked at. It's probably not worth chasing this particular reaction any further, though there might be other ways of getting rid of the block by combining this with some of Guam's stable B-block-killing mechanisms.

-------------------------------------------------

The following is a walkthrough of the setup I used. If anyone else wants to discover their very own H-to-G converter or Herschel conduit, this general line of attack has fairly good odds of finding one (maybe using a different one of Kazyan's Bellman catalysts.)

1) Put catgl.exe and catgl.py in a folder called "Catgl" in Golly's Scripts folder. (This currently assumes that Golly's Scripts folder pointer is pointing to the default location.)

2) Paste a start pattern similar to the following into Golly:

Code: Select all

```
x = 37, y = 39, rule = LifeHistory
19.2C3.2C$20.C3.C$19.C6.C2.C$19.2C4.5C$22.2C$19.2C.C.4C$19.CA.C.A2.C$
7.2C11.D2BA3BD$8.C12.B.3B$8.C.CB7.6B$9.CAB.3B3.7B$10.D16B$11.17B$12.
16B$11.17B$9.19B$7.22B$7.3B.19B$6.4B.B.3B.12B$7.3B3.3B2.11B6.2C$6.6B.
3B2.11B6.C$5.10B4.11B2.BC.C$4.4B10.13B.BAC$4.3B11.15BD$2.4B12.15B$2.C
AD12.17B$3.C13.17BD$3C14.8BA7BAC$C17.8B3A4BAC$13.D2.10BAB2A4BD$14.CD
2A12BAB$11.D3CB2AB2.2B5ABA2B$11.C4.BD4.2B4A4B$12.3C.2C5.2B2A4B$14.C.C
.D7.3BAB$14.C.C9.B4A$15.CD9.A3BA$26.A2BA$27.3A!
```

This is generation 190 of the original pattern:

Code: Select all

```
x = 37, y = 37, rule = LifeHistory
19.2C3.2C$20.C3.C$19.C6.C2.C$19.2C4.5C$22.2C$19.2C.C.4C$19.CA.C.A2.C$
7.2C11.D2.A3.D$8.C$8.C.C$9.CA$10.D6$9.A$9.A.A$9.3A23.2C$11.A23.C$33.C
.C$33.AC$33.D2$2.CAD$3.C30.D$3C30.AC$C32.AC$13.D20.D$14.CD2A$11.D3C.
2A$11.C5.D$12.3C.2C$14.C.C.D$14.C.C$15.CD!
```

-- but there's no point in adding catalysts too soon, especially if we're primarily trying to find new Herschel conduits, not just new H-to-G or H-to-junk converters. Allowing catalysts to be added between T=180 and T=200 or so will close off the reaction and leave no place for a Herschel to escape.

Notice the red cells showing cells that must stay OFF -- if they turn on, the catalyst is basically doomed. These can be added by hand, or catgl's output used to include them automatically for use in incremental searches.

3) Run catgl.py and choose which catalysts you want to use in the search, and when you want them placed. I used the following, somewhat at random:

Code: Select all

```
Catalysts to use:
eat1
eat2
bloc
Generations for placing catalysts: 10 through 100.
Catalysts must survive 70 generations.
2 catalysts maximum (2 maximum in one generation).
```

[This is the way it's reported in the output reactions.txt file -- translate as appropriate to get the right numbers into the catgl.py GUI fields. Notice that "10" and "100" presume that the start pattern has already been run for 190 ticks, so really this would mean we're looking to place two catalysts between T=200 and T=290.]

3b) It's probably a good idea to add catalysts just one or two at a time, and when you find a promising reaction, run a new search with the new catalyst(s) pre-added. Three or more catalysts will often just guarantee that your search will never finish -- but your mileage may vary, if you have tight limits in space or time and really want to cover all the bases in a search.

4) If everything is set up right, a DOS window will open and you'll see a slowly-changing progress report:

Code: Select all

```
30000 calls to advance1gen().
2 catalysts, which react at gens.: 35 38
Generation reached: 58
-----
31000 calls to advance1gen().
2 catalysts, which react at gens.: 35 40
Generation reached: 40
-----
```

4b) When the first reaction time (35 in the above sample) gets close to the "last generation" value that you set (100, or whatever) then the search is almost done.

5) Eventually catgl's Tkinter dialog box will close, and a list of successful catalyzed reactions will be shown on the current layer in Golly. Review these and choose the best ones for further searches if necessary. If you're really lucky, when you run reactions.rle you'll see new clean glider outputs, or even the dinosaur-head of a B, R, or Herschel escaping from one side or another of the envelope.