Bringing Conway to Life

For general discussion about Conway's Game of Life.
Post Reply
VadeveSi
Posts: 9
Joined: April 29th, 2020, 1:00 pm

Bringing Conway to Life

Post by VadeveSi » December 15th, 2020, 3:27 pm

Hello everyone.

Lately I have been playing around with backwards Life algorithms, i.e. algorithms that search for a parent state instead of the child state.
I figured it would be fun to find parents of images, so I set on finding the parent state of John Horton Conway himself! (And thus, bringing him to Life. :) )

I found the following state:

Code: Select all

x = 64, y = 64
$4b1o3b2o2b2o3b1o1b2o2b2o1b2o2b2o1b2o3b1o5b2o1b2o1b1o2b1o6b1o$1b1o4b10o2b19o3b1o1b8o2b1o$2b1o2b5o1b6o1b2o2b2o1b3o1b2o3b1o6b3o1b1o1b1o1b1o1b3o2b1o4b1o$4b1o1b1o1b2o1b2o2b2o1b2o2b2o3b1o3b1o1b1o4b1o3b8o1b2o1b1o3b1o1b1o$3b3o1b2o1b3o1b2o1b2o4b1o1b2o1b1o3b1o3b1o3b1o5b1o1b1o1b2o7b3o$3b5o1b4o1b2o2b1o3b1o1b2o3b2o3b2o1b1o3b2o1b1o1b2o1b1o2b5o3b2o$1b1o1b4o2b2o2b1o1b1o1b1o1b2o7b1o2b1o1b1o4b2o5b4o1b11o$2b1o1b1o2b4o2b2o1b1o3b1o2b1o2b2o4b1o3b1o2b1o2b1o3b4o1b1o3b1o2b3o1b1o$1b2o2b1o1b8o2b1o4b2o1b2o2b2o2b1o1b2o4b2o1b2o3b4o1b2o1b1o3b1o$1b2o4b1o2b1o2b1o3b2o1b1o8b2o2b1o4b2o5b1o2b1o2b1o1b3o3b1o1b2o$2b5o1b1o2b1o2b1o1b1o2b1o2b1o2b1o1b1o4b1o4b1o1b1o2b1o3b1o3b3o3b1o4b2o$2b1o1b3o8b1o5b1o1b2o1b1o1b1o2b1o1b1o1b2o3b1o1b2o1b1o2b1o1b2o2b1o4b1o1b1o$1b3o1b2o2b1o4b1o2b2o1b1o8b2o3b1o2b1o1b1o4b1o2b1o2b1o1b1o1b1o1b1o3b3o$1b7o5b2o2b2o3b1o2b1o1b1o4b1o5b1o2b1o3b1o2b1o1b6o2b1o1b3o$2b2o3b2o3b1o2b1o8b1o1b1o1b4o4b1o3b1o1b2o2b1o6b4o1b1o2b1o$1b1o3b3o1b1o6b1o3b1o2b3o1b5o1b1o1b1o3b1o4b1o2b1o1b1o5b1o1b3o1b2o$3b5o4b2o1b1o3b1o2b1o1b2o2b1o1b2o9b1o3b1o2b1o1b3o1b1o2b2o1b3o$5b1o1b2o3b1o2b9o1b2o1b1o1b3o4b1o3b2o1b1o2b1o3b1o2b1o2b1o2b2o$2b1o1b2o2b3o6b5o1b3o1b3o1b1o1b1o2b1o2b1o2b1o2b1o2b1o6b1o1b2o1b3o$3b3o1b2o3b2o1b6o1b4o1b1o1b2o1b6o1b1o4b1o1b1o2b2o1b2o3b6o$4b3o1b2o2b2o3b5o1b1o2b3o1b2o1b2o1b3o2b1o1b1o3b1o2b1o2b4o1b1o2b1o$1b1o2b3o2b2o7b5o1b1o2b1o2b2o5b1o2b1o1b1o2b1o8b2o1b3o1b1o$5b1o6b1o5b1o1b2o1b3o1b2o1b2o5b1o1b1o4b1o1b1o2b2o1b4o2b5o$1b1o3b3o1b1o2b2o2b4o1b1o2b1o1b4o2b2o2b3o2b1o1b1o3b2o2b1o3b4o1b3o$2b1o1b2o3b2o3b4o1b4o1b2o4b1o1b6o2b1o1b1o2b1o10b6o$1b3o1b2o1b1o2b1o3b1o1b3o1b6o1b4o3b2o2b1o4b1o1b1o2b2o1b2o2b4o2b1o$1b3o1b3o4b2o4b1o1b1o5b4o2b2o7b1o1b1o1b3o1b2o2b3o1b2o1b1o$2b2o2b1o2b2o2b1o1b1o1b5o1b1o3b1o2b1o3b1o2b2o1b1o1b1o3b1o8b3o$2b3o1b3o1b1o4b2o1b2o1b2o2b1o1b2o2b1o3b2o2b1o4b1o1b2o1b2o1b2o2b2o4b1o$3b1o1b1o1b3o2b2o1b2o1b1o2b1o2b1o2b2o2b2o1b1o6b1o1b1o2b2o4b8o$1b1o2b2o3b2o2b2o2b1o6b1o2b1o1b1o3b1o3b2o1b1o1b2o2b2o1b1o3b1o2b2o$2b4o3b2o3b1o3b1o1b2o1b1o2b1o1b1o1b1o2b4o2b3o1b1o2b1o1b3o2b2o$1b2o1b2o1b1o1b1o1b1o1b2o1b1o2b1o2b1o1b1o3b2o2b3o1b4o1b2o2b1o2b1o2b1o1b2o1b2o2b1o1b1o$1b2o2b1o2b2o3b2o2b1o4b7o2b3o1b3o2b2o2b1o2b3o3b2o4b1o$2b1o1b2o1b4o3b2o1b2o1b1o1b2o1b1o1b2o2b1o1b5o1b2o1b1o2b1o1b6o2b7o$2b5o1b1o1b4o1b4o1b1o2b1o1b4o1b1o2b8o2b1o2b2o3b2o2b2o1b2o$1b5o1b2o1b2o1b2o3b9o1b3o2b1o2b4o2b1o2b4o1b1o2b2o2b1o1b2o1b1o$1b4o1b1o1b3o2b2o1b1o2b2o1b2o2b5o2b2o6b1o2b1o1b1o1b1o2b1o1b2o1b2o1b2o1b1o$2b1o3b3o1b4o2b1o1b2o3b1o3b4o2b1o4b1o1b1o2b1o3b1o1b2o1b2o2b5o$1b1o2b4o1b1o2b2o4b1o2b3o1b1o1b1o2b1o2b1o4b1o2b1o2b1o1b12o2b1o1b1o$6b3o1b1o1b2o1b4o4b5o2b1o2b1o1b1o1b1o3b1o2b1o2b1o4b1o1b3o1b3o$4b4o1b3o1b1o3b1o1b1o1b1o2b2o2b1o2b1o2b1o3b1o1b1o3b1o4b1o3b3o1b1o1b2o$1b2o3b2o1b1o2b1o1b1o1b2o2b2o2b1o3b1o2b1o2b1o2b1o2b4o7b1o1b4o1b1o1b3o$7b5o1b5o2b2o2b1o1b1o3b1o2b1o2b2o4b2o3b1o4b2o3b1o1b2o$1b2o2b1o2b2o1b2o2b2o3b1o2b1o1b1o1b1o1b1o2b1o2b1o3b2o3b3o3b2o1b1o2b7o$6b2o3b1o2b2o3b2o1b1o1b1o3b1o2b1o2b1o3b1o2b1o2b1o8b4o1b1o1b1o$4b1o1b4o1b2o1b2o3b2o4b1o2b7o2b1o4b2o7b1o1b5o1b1o$1b2o3b2o3b2o2b1o1b1o1b2o1b1o1b1o2b3o1b1o3b1o3b2o4b1o2b3o1b1o1b1o3b2o1b1o$5b1o1b4o1b2o1b2o2b2o2b1o2b4o9b1o2b1o3b1o1b1o3b2o2b5o$1b2o4b2o1b2o1b2o1b2o5b1o2b2o1b2o1b6o4b2o5b4o5b2o$5b1o1b4o1b3o2b2o3b1o1b1o2b1o1b1o1b4o1b4o1b1o2b2o1b1o1b2o1b2o2b2o3b1o$5b1o2b6o2b2o1b2o3b1o1b3o1b1o3b2o1b4o5b1o1b4o1b5o$1b1o1b9o2b4o1b2o2b1o2b6o1b2o1b4o2b2o3b3o1b1o2b3o$2b4o1b2o3b2o1b2o1b2o5b2o6b1o2b1o1b1o2b1o2b2o1b4o1b2o3b1o2b1o$3b2o1b3o2b3o3b3o5b2o1b1o1b1o3b4o1b2o6b1o2b6o6b1o$1b1o2b2o1b1o3b2o1b1o1b2o1b2o1b2o2b2o3b2o1b2o2b2o2b3o1b1o1b2o2b10o$4b2o1b2o3b7o1b5o1b4o1b3o1b2o4b8o1b3o2b5o1b2o$5b1o1b7o1b1o1b8o2b1o3b1o2b1o3b2o1b2o4b3o1b1o8b3o$3b1o1b8o1b3o1b1o1b3o1b1o7b2o7b2o1b9o2b2o1b4o$5b5o2b2o2b6o2b2o2b3o2b2o6b5o1b6o7b1o1b1o$3b1o2b1o1b1o2b1o2b23o1b1o3b10o8b1o$6b1o1b1o4b1o1b2o2b2o1b2o2b2o2b2o1b2o5b1o3b2o2b2o3b1o1b1o6b1o$$
Compare for yourself!
(Don't forget to turn down the speed at which the next generation is shown.)

Image

Hunting
Posts: 4395
Joined: September 11th, 2017, 2:54 am

Re: Bringing Conway to Life

Post by Hunting » December 15th, 2020, 10:37 pm


VadeveSi
Posts: 9
Joined: April 29th, 2020, 1:00 pm

Re: Bringing Conway to Life

Post by VadeveSi » December 16th, 2020, 3:38 am

WLS and LLS are indeed capable of backsearch, but I did some small tests and it seems like it would take a long time for them to find the parent of a 64x64 grid.
My tool was capable of finding a parent in a matter of minutes.

Hunting
Posts: 4395
Joined: September 11th, 2017, 2:54 am

Re: Bringing Conway to Life

Post by Hunting » December 16th, 2020, 3:51 am

VadeveSi wrote:
December 16th, 2020, 3:38 am
WLS and LLS are indeed capable of backsearch, but I did some small tests and it seems like it would take a long time for them to find the parent of a 64x64 grid.
My tool was capable of finding a parent in a matter of minutes.
How comes? Did you read the link? LifeFind is, at least, several times slower than WLS, and it can easily find the predecessor of a 100x100 pattern, in just over 1 minute.

VadeveSi
Posts: 9
Joined: April 29th, 2020, 1:00 pm

Re: Bringing Conway to Life

Post by VadeveSi » December 18th, 2020, 8:50 am

I'm sorry, I'm unable to read the post on the link as I don't have the correct fonts installed.
I'm wondering where I went wrong in my testing then.
In my tests, LLS needed on average 250 seconds to calculate the predecessor of a 20x20 grid, and Lifesrc needed 410 seconds for a 19x19.

Sadly I cannot test the tool used in the link you mentioned, as I do not have access to Wolfram Mathematica.

Yoel
Posts: 384
Joined: July 2nd, 2020, 1:02 am
Location: Electronic jungle
Contact:

Re: Bringing Conway to Life

Post by Yoel » February 15th, 2021, 8:37 pm

VadeveSi wrote:
December 18th, 2020, 8:50 am
Sadly I cannot test the tool used in the link you mentioned, as I do not have access to Wolfram Mathematica.
There are several several open source platforms that run Wolfram language. I don't know how accurately these alternative implementations work though. Never tried it myself. BTW, Mathematica is free on Raspberry Pi (and on Android architecture in general). You can run it on your phone or tablet under Debian. This requires rooting the device and installing Linux on it, of course. The capabilities of Android devices are limited though in comparison to typical academic heavy usages of Mathematica. I guess, that's why it's free. It's merely a marketing toy encouraging people to purchase it for a big computer.

User avatar
PushDecimal
Posts: 29
Joined: November 21st, 2018, 4:23 pm

Re: Bringing Conway to Life

Post by PushDecimal » May 27th, 2021, 11:55 am

Yoel wrote:The capabilities of Android devices are limited
Smartphones and tablets aren't all that different from conventional PCs; their only limitations are space and whatever is imposed by the manufacturer. As you can tell, it is still possible to install a custom operating system.

Yoel
Posts: 384
Joined: July 2nd, 2020, 1:02 am
Location: Electronic jungle
Contact:

Re: Bringing Conway to Life

Post by Yoel » June 7th, 2021, 3:34 pm

PushDecimal wrote:
May 27th, 2021, 11:55 am
Yoel wrote:The capabilities of Android devices are limited
Smartphones and tablets aren't all that different from conventional PCs; their only limitations are space and whatever is imposed by the manufacturer. As you can tell, it is still possible to install a custom operating system.
ARM, especially older 32-bit architectures, is not optimized for heavy number crunching. In my experience, a low-range PC performs something like a multiplication of a 1000x1000 matrix about 20-50 times faster than a relatively fresh Android. When it comes to float point algebra (not the case here), the difference is even greater. In any case, it's probably better to use open source algebra software like Maxima with a Wolfram language interpreter, because then you can freely add, modify and debug your code, which may be difficult or practically impossible on proprietary platforms like Mathematica or Maple.

Post Reply