Welcome to %s forums

BrainModular Users Forum

Login Register

Life - Early Proof of Concept - Bug

I need help on a Patch
Post Reply
shawnb
Member
Posts: 190
Location: San Francisco
Contact:

Unread post by shawnb » 08 May 2015, 20:50

OK, I don't know if this is my bug or an HH issue. More likely a bug on my part. Looking for a brave soul to help...

Background:
I've been attempting to create 'smart shapes' to generate an automaton. Down the road, I will enhance the automaton in various ways, e.g., associating sound with each, maybe motion, different algorithms, etc., etc. But for starters, I want to just do a simple Proof of Concept based on the game of LIFE.

In LIFE, each object looks at the output from his 8 neighbors, adds them up, applies a rule, then generates its own output. This iterates over time, generating complex interactions that look a little too much like amoebae in a petri dish.

More on LIFE here, for those not familiar with it:
http://www.math.com/students/wonders/life/life.html

Here's my bug:
The input from the 8 neighbors does not seem to be getting summed properly. I can confirm the individual outputs are OK. But any given input does not seem to be the sum of its 8 neighbors.

Why are my 8 inputs not getting summed correctly? Can someone take a peek & tell me what I'm doing wrong?

http://www.sensomusic.com/forums/upload ... =LIFE4.zip

Notes:

Open the Life 4.pat. (Lifepatch-v2.pat is invoked by Life 4.pat, & does not run on its own.)

The 'Gen' button propagates the Lifepatch-v2 shapes, & should be done first. Turn the audio engine OFF before pressing Gen. DO NOT press the GEN button with the audio engine on. Yes, I need to do the generation process during idle time. Not there yet, this is just an early proof of concept - to help me figure out if this can work at all...

It's important to turn the audio engine back on after Gen completes.

The 'Init' button generates random input.

The 'Cycle' button performs one iteration thru the process. Later I will tie this to the Master Sync, but for debugging purposes, I have a button. Since summing doesn't work as desired, the 'Cycle' button basically always blanks the screen out. This is what I'm trying to fix...

Yes, it's awfully fun to change the # of rows & columns and let this baby fly. See pic below...

Shawn
Image
Address the process rather than the outcome. Then, the outcome becomes more likely. - Fripp

User avatar
oli_lab
Member
Posts: 1263
Location: Brittany, France
Contact:

Unread post by oli_lab » 08 May 2015, 22:13

http://oli-lab.org

Win11 Ryzen9/32GB RAM - RME MADIFACE - SSL alpha link 4-16 - OSC capable interfaces

follow OLI_LAB adventures on Mastodon
@olivar_premier@mastodon.social

shawnb
Member
Posts: 190
Location: San Francisco
Contact:

Unread post by shawnb » 08 May 2015, 22:51

Yeah, but now we need an HH2 entry there!

I'd like to be able to utilize all of the HH2 shape & music generation features.
Address the process rather than the outcome. Then, the outcome becomes more likely. - Fripp

shawnb
Member
Posts: 190
Location: San Francisco
Contact:

Unread post by shawnb » 12 May 2015, 01:40

GOT IT!!! My CREATE_LINKs were incorrect.

What's funny is now I have no idea what they were, in fact, connecting... They were producing data, just not the data I intended. No errors, just a connection to some random phantom datasource...

Anyway, now I'll start to pretty this up. In the meanwhile...

IT'S ALIVE!

*** The link above in the first post has been updated to include this proof of concept. All the warnings & caveats still apply.***

Screenshot below. I'm actually shocked HH2 can handle this... Very very stable...

Image
Address the process rather than the outcome. Then, the outcome becomes more likely. - Fripp

shawnb
Member
Posts: 190
Location: San Francisco
Contact:

Unread post by shawnb » 12 May 2015, 08:29

New version uploaded. All caveats & notes above still apply.

Had to fix the algorithm a bit. Now it properly honors the "B3S23" rule.

(Born if 3 neighbors, Survive if 2 or 3 neighbors... - B3S23)
Address the process rather than the outcome. Then, the outcome becomes more likely. - Fripp

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 12 May 2015, 14:24

wow thats webby^^^ cool if that works, but using matrix would be much easier for your maintenance in case of later tweaks, and higly reduce the number of wires

shawnb
Member
Posts: 190
Location: San Francisco
Contact:

Unread post by shawnb » 12 May 2015, 15:49

Works great!

Maintenance is easy - it writes itself using IML.

In its current incarnation, though, you want the audio engine off during generation. & keep the # of rows & columns low, < 30.
Address the process rather than the outcome. Then, the outcome becomes more likely. - Fripp

User avatar
oli_lab
Member
Posts: 1263
Location: Brittany, France
Contact:

Unread post by oli_lab » 15 May 2015, 12:58

http://oli-lab.org

Win11 Ryzen9/32GB RAM - RME MADIFACE - SSL alpha link 4-16 - OSC capable interfaces

follow OLI_LAB adventures on Mastodon
@olivar_premier@mastodon.social

shawnb
Member
Posts: 190
Location: San Francisco
Contact:

Unread post by shawnb » 15 May 2015, 20:11

Understood, the algorithm is trivial. That's part of its appeal!

My goal isn't just to do "Life"... I would like to have this evolve into an easily reusable (no SDK or script required) HH2 patch that I (or others) can modify to do similar iterative algorithms in the future.

I now have a working copy posted here:
http://www.sensomusic.com/forums/viewtopic.php?id=4929
Address the process rather than the outcome. Then, the outcome becomes more likely. - Fripp

Post Reply

Who is online

Users browsing this forum: No registered users and 57 guests