## apgsearch v4.0

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

### Re: apgsearch v4.0

calcyman wrote:I imagine that you're calling apgmera (4.15) which realises that the rules don't match, so it calls recompile.sh and builds apgluxe (4.2) which is subsequently called.

If my suspicion is correct, you'll get 4.15 for exactly one rule/symmetry and 4.2 for everything else.
This definitely seems to be the thing that's happening. The lists of hauls also reads the version as 1.15 as well.
Bored of using the Moore neighbourhood for everything? Introducing the Range-2 von Neumann isotropic non-totalistic rulespace!

A for awesome
Posts: 1948
Joined: September 13th, 2014, 5:36 pm
Location: 0x-1
Contact:

### Re: apgsearch v4.0

Also, pseudo-object separation is not working properly: https://catagolue.appspot.com/haul/b3s2 ... 3f5b110bf4
x₁=ηx
V ⃰_η=c²√(Λη)
K=(Λu²)/2
Pₐ=1−1/(∫^∞_t₀(p(t)ˡ⁽ᵗ⁾)dt)

$$x_1=\eta x$$
$$V^*_\eta=c^2\sqrt{\Lambda\eta}$$
$$K=\frac{\Lambda u^2}2$$
$$P_a=1-\frac1{\int^\infty_{t_0}p(t)^{l(t)}dt}$$

http://conwaylife.com/wiki/A_for_all

Aidan F. Pierce

Apple Bottom
Posts: 1027
Joined: July 27th, 2015, 2:06 pm
Contact:

### Re: apgsearch v4.2

calcyman wrote:Apologies for the double-post, but v4.2 now supports non-totalistic isotropic rules.
Excellent!
calcyman wrote:Judging by the haul timestamps for b37s2-i34q/C1, it appears to be roughly 3 or 4 times faster than the Golly Python version.
This appears to be rule-dependent -- in fact for some rules Golly/Python/apgsearch 0.x is faster, at least for me.

For B2cek4ejt5aj6c/S123a5i, apgluxe 4.2-ll1.2 achieved a throughput of around 140 soups/second. apgsearch 0.54+0.33i (Aidan't latest) is currently at an overall speed of 164 soups/second. I let both versions run for several million soups.

EDIT: having trouble with B2e3ai4arw5678/S3-an4ar5i678 as well. The searcher ran normally for the first ~30 seconds, but then stopped printing status messages:

Code: Select all

Greetings, this is apgluxe v4.2-ll1.2, configured for b2e3ai4arw5678s3-an4ar5i678/C1.

Lifelib version: ll1.2
Compiler version: 6.3.0
Python version: '2.7.13 (default, Mar 13 2017, 20:56:15)  [GCC 5.4.0]'

Using seed l_6FAAv4uqrTwD
Computing 2^18-entry lookup table...done!
Computing 2^24-entry lookup table...done!
Computing 2^18-entry mixing table...done!
Running 1000000 soups per haul:
Pathological object detected!!!
Pathological object detected!!!
Chaotic-growth pattern detected: zz_EXPLOSIVE
Chaotic-growth pattern detected: zz_EXPLOSIVE
Linear-growth pattern detected: yl5_1_12_e9bbac9b9846d3dea87ce05747612167
b2e3ai4arw5678s3-an4ar5i678/C1: 324 soups completed (30.59 soups/second current, 30.59 overall).
Linear-growth pattern detected: yl70_1_154_d318e653f629e19bd4405b01e73b30fa
Linear-growth pattern detected: yl40_1_64_9d05869e5d8ce330f50cdb1195d95a1c
b2e3ai4arw5678s3-an4ar5i678/C1: 483 soups completed (12.60 soups/second current, 20.81 overall).
Linear-growth pattern detected: yl5_1_12_e9bbac9b9846d3dea87ce05747612167
Linear-growth pattern detected: yl10_1_18_9674a2002734cbb22c757d40a957cf27
Pathological object detected!!!
Linear-growth pattern detected: yl10_1_28_98e7fc1396301ae1daab62dc86ecd310
b2e3ai4arw5678s3-an4ar5i678/C1: 776 soups completed (21.06 soups/second current, 20.90 overall).
Linear-growth pattern detected: yl10_1_18_9674a2002734cbb22c757d40a957cf27

I killed it after ~10 hours; total memory consumption at the time was ~11.5 GB.
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

drc
Posts: 1664
Joined: December 3rd, 2015, 4:11 pm
Location: creating useless things in OCA

### Re: apgsearch v4.0

More phantom objects are being reported, what is happening? This should be affecting other rules too I think-
\100\97\110\105

Rhombic
Posts: 1063
Joined: June 1st, 2013, 5:41 pm

### Re: apgsearch v4.0

drc wrote:More phantom objects are being reported, what is happening? This should be affecting other rules too I think-
This seems an important issue.

Side suggestion:
When apgluxe returns
Failed to detect periodic behaviour!
it should probably skip the soup. Or something like that, alternatively. At the moment apgluxe (for me, at least) ceases to search more, which probably means it's just evolving that aperiodic explosive soup.
SoL : FreeElectronics : DeadlyEnemies : 6a-ite : Rule X3VI
what is “sesame oil”?

muzik
Posts: 3772
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

### Re: apgsearch v4.0

Rhombic wrote: Side suggestion:
When apgluxe returns
Failed to detect periodic behaviour!
it should probably skip the soup. Or something like that, alternatively. At the moment apgluxe (for me, at least) ceases to search more, which probably means it's just evolving that aperiodic explosive soup.
I think that message appears when an extremely high-period object shows up that apgsearch cant classify, not an exploding soup. From my massive-finger typos resulting in searching explosive rules it seems that apgsearch just gives up entirely producing no errors.

On another topic: I wonder what's coming next to apgsearch.
Bored of using the Moore neighbourhood for everything? Introducing the Range-2 von Neumann isotropic non-totalistic rulespace!

calcyman
Posts: 2125
Joined: June 1st, 2009, 4:32 pm

### Re: apgsearch v4.0

muzik wrote:
Rhombic wrote:Failed to detect periodic behaviour!
I think that message appears when an extremely high-period object shows up that apgsearch cant classify, not an exploding soup. From my massive-finger typos resulting in searching explosive rules it seems that apgsearch just gives up entirely producing no errors.
Even if it fails to detect periodic behaviour, it might correctly classify certain high-period oscillators. In particular, it only attempts to run soups for about 120000 generations, but can detect individual objects with periods up to 2^20:

https://catagolue.appspot.com/object/xp ... izf/b026s1

...which is unfortunately just a disjoint union of a p2864 and a p724. (I think B0 rules don't bother invoking ppbosc() to separate pseudo-oscillators; otherwise, it would take considerably longer to search.)

Edit: muzik, seriously? Is there really any point searching this rule? https://catagolue.appspot.com/object/ov ... 24s113t225
What do you do with ill crystallographers? Take them to the mono-clinic!

Saka
Posts: 3138
Joined: June 19th, 2015, 8:50 pm
Location: In the kingdom of Sultan Hamengkubuwono X

### Re: apgsearch v4.0

muzik wrote: On another topic: I wonder what's coming next to apgsearch.
Non-totalistic generations?
Airy Clave White It Nay

Code: Select all

x = 17, y = 10, rule = B3/S23
b2ob2obo5b2o$11b4obo$2bob3o2bo2b3o$bo3b2o4b2o$o2bo2bob2o3b4o$bob2obo5b o2b2o$2b2o4bobo2b3o$bo3b5ob2obobo$2bo5bob2o$4bob2o2bobobo!  (Check gen 2) muzik Posts: 3772 Joined: January 28th, 2016, 2:47 pm Location: Scotland ### Re: apgsearch v4.0 calcyman wrote:Edit: muzik, seriously? Is there really any point searching this rule? https://catagolue.appspot.com/object/ov ... 24s113t225 Well I do want there to be a record of every rule which has an officially recognised name. Saka wrote: muzik wrote: On another topic: I wonder what's coming next to apgsearch. Non-totalistic generations? Seems like a valid next step. The other two main ones I can think of would be B0 non-totalistic and LTL Generations. Bored of using the Moore neighbourhood for everything? Introducing the Range-2 von Neumann isotropic non-totalistic rulespace! drc Posts: 1664 Joined: December 3rd, 2015, 4:11 pm Location: creating useless things in OCA ### Re: apgsearch v4.0 Apgsearch v4.0 seems to have frozen up, how can I tell what current soup it's on? It's on a non-explosive rule/symmetry, b2-ac3i4as12/D8_1. EDIT: This happened in haul l_YgxgVTdymhXD , at some soup between 182968-200000 \100\97\110\105 calcyman Posts: 2125 Joined: June 1st, 2009, 4:32 pm ### Re: apgsearch v4.0 muzik wrote: Saka wrote: muzik wrote: On another topic: I wonder what's coming next to apgsearch. Non-totalistic generations? Seems like a valid next step. The other two main ones I can think of would be B0 non-totalistic and LTL Generations. In terms of further rule families, the next one I intend to implement is outer-totalistic rules up to range 5. What do you do with ill crystallographers? Take them to the mono-clinic! muzik Posts: 3772 Joined: January 28th, 2016, 2:47 pm Location: Scotland ### Re: apgsearch v4.0 Sounds riveting! How would they be notated though? Bored of using the Moore neighbourhood for everything? Introducing the Range-2 von Neumann isotropic non-totalistic rulespace! Saka Posts: 3138 Joined: June 19th, 2015, 8:50 pm Location: In the kingdom of Sultan Hamengkubuwono X ### Re: apgsearch v4.0 calcyman wrote: In terms of further rule families, the next one I intend to implement is outer-totalistic rules up to range 5. Outer totalistic? What's that mean? Airy Clave White It Nay Code: Select all x = 17, y = 10, rule = B3/S23 b2ob2obo5b2o$11b4obo$2bob3o2bo2b3o$bo3b2o4b2o$o2bo2bob2o3b4o$bob2obo5b
o2b2o$2b2o4bobo2b3o$bo3b5ob2obobo$2bo5bob2o$4bob2o2bobobo!

(Check gen 2)

Apple Bottom
Posts: 1027
Joined: July 27th, 2015, 2:06 pm
Contact:

### Re: apgsearch v4.0

Saka wrote:Outer totalistic? What's that mean?
In an outer-totalistic CA, the state of a given cell in the next generation depends only on the cell's own state and the total number of live cells in the cell's neighborhood.

It's called "totalistic" because only the total number of live cells is considered, not their alignment, and "outer-totalistic" because the live cells thus considered are the "outer" cells, i.e. those not identical to the center cell itself, which may be considered separately. (Obviously including the center cell in the count of live cells yields an equivalent definition, so long as that cell's state is still considered individually.)

"Semi-totalistic" is a synonym for "outer-totalistic", BTW. And "totalistic" is sometimes used instead, but strictly speaking that's a smaller class of CAs that excludes e.g. Conway Life.
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

Saka
Posts: 3138
Joined: June 19th, 2015, 8:50 pm
Location: In the kingdom of Sultan Hamengkubuwono X

### Re: apgsearch v4.0

Apple Bottom wrote:
In an outer-totalistic CA, the state of a given cell in the next generation depends only on the cell's own state and the total number of live cells in the cell's neighborhood...
Hmm, I still dont get it, so basically just like LTL but with specific birth/survivals and not the "..." thing, right?
Airy Clave White It Nay

Code: Select all

x = 17, y = 10, rule = B3/S23
b2ob2obo5b2o$11b4obo$2bob3o2bo2b3o$bo3b2o4b2o$o2bo2bob2o3b4o$bob2obo5b o2b2o$2b2o4bobo2b3o$bo3b5ob2obobo$2bo5bob2o$4bob2o2bobobo!  (Check gen 2) Apple Bottom Posts: 1027 Joined: July 27th, 2015, 2:06 pm Contact: ### Re: apgsearch v4.0 Saka wrote:Hmm, I still dont get it, so basically just like LTL but with specific birth/survivals and not the "..." thing, right? Larger than Life rules (as defined on the wiki) are all outer-totalistic (so far as I can tell). If the middle cell is included in the neighborhood count (M1), they're actually totalistic as well, but of course all totalistic rules are also outer-totalistic. I couldn't speculate on what Calcyman's planning, but so far all LtL rules that apgluxe supports are totalistic (M1), so my best guess is that he's working on also supporting those that aren't (M0). (Side note: depending on the context, "outer-totalistic" may tacitly imply "Life-like". Obviously that's not the case here, but if you see outer-totalistic rules being talked about elsewhere, it might just be the usual B.../S... rules, like B3/S23, B3678/S34678, etc.) If you speak, your speech must be better than your silence would have been. — Arabian proverb Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_ Proud member of the Pattern Raiders! calcyman Posts: 2125 Joined: June 1st, 2009, 4:32 pm ### Re: apgsearch v4.0 Apple Bottom wrote: Saka wrote:Hmm, I still dont get it, so basically just like LTL but with specific birth/survivals and not the "..." thing, right? Larger than Life rules (as defined on the wiki) are all outer-totalistic (so far as I can tell). If the middle cell is included in the neighborhood count (M1), they're actually totalistic as well, but of course all totalistic rules are also outer-totalistic. I couldn't speculate on what Calcyman's planning, but so far all LtL rules that apgluxe supports are totalistic (M1), so my best guess is that he's working on also supporting those that aren't (M0). (Side note: depending on the context, "outer-totalistic" may tacitly imply "Life-like". Obviously that's not the case here, but if you see outer-totalistic rules being talked about elsewhere, it might just be the usual B.../S... rules, like B3/S23, B3678/S34678, etc.) The M0/M1 is just a notational convenience; for an 'M0' rule, increment all of the survivals to turn it into an equivalent 'M1' rule, and vice-versa. I meant specific birth/survivals, as Saka said -- so your B/S rules needn't be intervals. B38/S23, for instance, is outer-totalistic but not LtL. What do you do with ill crystallographers? Take them to the mono-clinic! muzik Posts: 3772 Joined: January 28th, 2016, 2:47 pm Location: Scotland ### Re: apgsearch v4.0 It still excites me that apgsearch will be able to search a family of rules that even golly can't even simulate yet (unless ruletables support larger neighbourhoods). Bored of using the Moore neighbourhood for everything? Introducing the Range-2 von Neumann isotropic non-totalistic rulespace! Apple Bottom Posts: 1027 Joined: July 27th, 2015, 2:06 pm Contact: ### Re: apgsearch v4.0 calcyman wrote:The M0/M1 is just a notational convenience; for an 'M0' rule, increment all of the survivals to turn it into an equivalent 'M1' rule, and vice-versa. Oh, yes; you're right, of course. D'oh, that really should've been obvious to me. If you speak, your speech must be better than your silence would have been. — Arabian proverb Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_ Proud member of the Pattern Raiders! M. I. Wright Posts: 372 Joined: June 13th, 2015, 12:04 pm ### Re: apgsearch v4.0 Code: Select all ./apgluxe -n 20000000 Greetings, this is apgluxe v4.2-ll1.2, configured for b3s23/C1. Lifelib version: ll1.2 Compiler version: 6.3.0 20170406 Python version: '2.7.13 (default, Jan 19 2017, 14:48:08) [GCC 6.3.0 20170118]' Peer-reviewing hauls: Illegal instruction (core dumped) Ubuntu 17.04 Where does it dump to and/or where should I go from here? gamer54657 wrote:God save us all. God save humanity. hgkhjfgh nutshelltlifeDiscord 'Conwaylife Lounge' calcyman Posts: 2125 Joined: June 1st, 2009, 4:32 pm ### Re: apgsearch v4.0 M. I. Wright wrote: Code: Select all Illegal instruction (core dumped) Ubuntu 17.04 Where does it dump to and/or where should I go from here? The most useful information would be to post the contents of cat /proc/cpuinfo. I'd expect to see this error if you're not on a x86-64 architecture (e.g. ARM or a 32-bit i386 architecture). As for where core dumps are stored, that's a different story. It used to be the case that they were dumped into the working directory, even if you don't have write permissions; this was later exploited to run arbitrary code as root (by writing a broken program and calling it from cron.d, then waiting...). What do you do with ill crystallographers? Take them to the mono-clinic! M. I. Wright Posts: 372 Joined: June 13th, 2015, 12:04 pm ### Re: apgsearch v4.0 Alright! (uname -m does show x86_64, for the record): Code: Select all $ cat /proc/cpuinfo
processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 6
model name	: AMD Phenom(tm) II X2 511 Processor
stepping	: 3
microcode	: 0x10000c8
cpu MHz		: 800.000
cache size	: 1024 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
bugs		: tlb_mmatch fxsave_leak sysret_ss_attrs null_seg
bogomips	: 6783.67
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

processor	: 1
vendor_id	: AuthenticAMD
cpu family	: 16
model		: 6
model name	: AMD Phenom(tm) II X2 511 Processor
stepping	: 3
microcode	: 0x10000c8
cpu MHz		: 800.000
cache size	: 1024 KB
physical id	: 0
siblings	: 2
core id		: 1
cpu cores	: 2
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt hw_pstate vmmcall npt lbrv svm_lock nrip_save
bugs		: tlb_mmatch fxsave_leak sysret_ss_attrs null_seg
bogomips	: 6783.67
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate
gamer54657 wrote:God save us all.
God save humanity.

hgkhjfgh
nutshelltlifeDiscord 'Conwaylife Lounge'

calcyman
Posts: 2125
Joined: June 1st, 2009, 4:32 pm

### Re: apgsearch v4.0

You have both SSE and SSE2, so it should be able to run outer-totalistic rules without any problems. Unless I've accidentally used an instruction from a higher instruction set without noticing.
What do you do with ill crystallographers? Take them to the mono-clinic!

Rocknlol
Posts: 83
Joined: April 15th, 2012, 9:06 am

### Re: apgsearch v4.0

Catagolue seems to be returning incorrect sample soups for B0 rules with C2_2 symmetry.

Some examples of this are here, here, and here.

M. I. Wright
Posts: 372
Joined: June 13th, 2015, 12:04 pm

### Re: apgsearch v4.0

calcyman wrote:You have both SSE and SSE2, so it should be able to run outer-totalistic rules without any problems. Unless...
Apparently not Thank you for checking though!
gamer54657 wrote:God save us all.
God save humanity.

hgkhjfgh
nutshelltlifeDiscord 'Conwaylife Lounge'