A strange method of soup-searching
-
- Posts: 292
- Joined: February 28th, 2019, 4:49 pm
- Location: Sqrt(-1)
A strange method of soup-searching
So I was wondering what would happen if you repeatedly filled the same, per se, 20x20 square every time the pattern settled down. however, I am not good at python and cannot make a script to do it, so I am fairly sure there's some easy way to do it, but I am not sure how.
woomy on a vroomy
Re: A strange method of soup-searching
I had a similar idea in the early 90s and I am sure others have. It sounds like you are looking for some kind of fixed point in which the settled pattern works as a catalyst. I never had much luck with that, but it may be worth exploring with more modern tools and faster computers. Sorry, I can't help with the scripting, but I am curious to hear other replies.googoIpIex wrote:So I was wondering what would happen if you repeatedly filled the same, per se, 20x20 square every time the pattern settled down. however, I am not good at python and cannot make a script to do it, so I am fairly sure there's some easy way to do it, but I am not sure how.
One thing I would recommend is that you don't fill a 20x20 square every time but start with something smaller.
-
- Posts: 292
- Joined: February 28th, 2019, 4:49 pm
- Location: Sqrt(-1)
Re: A strange method of soup-searching
Maybe have the area it fills be one cell larger each time, starting with a 3x3 square?pcallahan wrote:I had a similar idea in the early 90s and I am sure others have. It sounds like you are looking for some kind of fixed point in which the settled pattern works as a catalyst. I never had much luck with that, but it may be worth exploring with more modern tools and faster computers. Sorry, I can't help with the scripting, but I am curious to hear other replies.googoIpIex wrote:So I was wondering what would happen if you repeatedly filled the same, per se, 20x20 square every time the pattern settled down. however, I am not good at python and cannot make a script to do it, so I am fairly sure there's some easy way to do it, but I am not sure how.
One thing I would recommend is that you don't fill a 20x20 square every time but start with something smaller.
woomy on a vroomy
Re: A strange method of soup-searching
I wrote a script based on a similar idea but randomising the small bounding box every generation rather than when the pattern has stabilised. It's here: http://conwaylife.com/forums/viewtopic. ... 839#p31839googoIpIex wrote:So I was wondering what would happen if you repeatedly filled the same, per se, 20x20 square every time the pattern settled down. however, I am not good at python and cannot make a script to do it, so I am fairly sure there's some easy way to do it, but I am not sure how.
It wouldn't be too hard to use apgsearch's naivestab to in between randomising, but how to do it really depends on what you want to achieve. Do you just want to watch cgol evolve and automatically have activity reintroduced whenever it dies down, or do you need greater efficiency to answer a bigger question about long term behaviour?
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.
Semi-active here - recovering from a severe case of LWTDS.
-
- Posts: 292
- Joined: February 28th, 2019, 4:49 pm
- Location: Sqrt(-1)
Re: A strange method of soup-searching
The 1st one.wildmyron wrote:I wrote a script based on a similar idea but randomising the small bounding box every generation rather than when the pattern has stabilised. It's here: http://conwaylife.com/forums/viewtopic. ... 839#p31839googoIpIex wrote:So I was wondering what would happen if you repeatedly filled the same, per se, 20x20 square every time the pattern settled down. however, I am not good at python and cannot make a script to do it, so I am fairly sure there's some easy way to do it, but I am not sure how.
It wouldn't be too hard to use apgsearch's naivestab to in between randomising, but how to do it really depends on what you want to achieve. Do you just want to watch cgol evolve and automatically have activity reintroduced whenever it dies down, or do you need greater efficiency to answer a bigger question about long term behaviour?
woomy on a vroomy
Re: A strange method of soup-searching
This script should do what you are looking for. It only uses a fixed size area to introduce randomness into the world but you can adjust it by changing width and height. You can also adjust the delay which is there because i think it makes the soup evolution a bit more enjoyable. Set to 0 to run faster.
Code: Select all
# active_soup.py
import golly as g
from time import time
width = 4
height = 4
rect = [0, 0, width, height]
ii = 0
delay = 0.005
# Stabilisation detection based on naivestab() from apgsearch by Adam P Goucher
# Tests for population periodicity:
def naivestab():
length = 1000
security = 3
period = 24
depth = 0
prevpop = 0
for i in xrange(length):
for k in xrange(period):
t1 = time()
while (time() < t1 + delay):
pass
g.run(1)
g.update()
currpop = int(g.getpop())
if (currpop == prevpop):
depth += 1
else:
depth = 0
prevpop = currpop
if (depth == security):
# Population is periodic.
return True
return False
g.show("Press 'Esc' to stop the fountain.")
g.new("")
while True:
g.select(rect)
# p = 10 * random.randint(3,8)
p = 50
g.randfill(p)
g.select([])
g.update()
naivestab()
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.
Semi-active here - recovering from a severe case of LWTDS.