| Author |
Message |
Inventor
Stream Operator

Joined: Oct 13, 2007 Posts: 6221 Location: near Austin, Tx, USA
Audio files: 267
|
Posted: Wed Jul 02, 2008 7:47 am Post subject:
Cognitive Maps in ChucK Subject description: How to make them? |
 |
|
If you're not familiar with them, a cognitive map is a graph that shows the dependency of different factors that are interrelated. For example we could have a cognitive map that had nodes labeled "food consumption", "exercise rate", and "body fat storage". We then assign a weight to links between these nodes, give the nodes initial values, and then let the simulation iterate over time to see the final steady-state of the system (which may be dynamic).
I would like to create a cognitive map of a country's economy using ChucK. Though there are probably many ways to do this, I imagine that it would be best to use ChucK's UGens for this, then ChucK any one or group of them to the dac and listen to the simulation and resulting stabilization of the system. If it never stabilizes or if it stabilizes to an oscillation, that would be detectable by the dac as well.
If I were to use, say, a Dyno set on .limit() for each node and a Gain for each link, then my question is: "how would I set the initial value?". I want the initial value to exist at the beginning of the simulation and not persist, so I can't just hook up a Step UGen to the input of each node (Dyno). Is there some way in ChucK to set the initial value of a UGen? Perhaps I could hook up a Step to each Dyno and then turn off that step after the first 1::samp occurs.
Hmm, perhaps it would be wise to use a LPF at the input of each node to allow the system to relax at lower audio frequencies and prevent harsh high-frequency oscillations. Then here is a node:
| Code: |
LPF lpf[n] => Dyno dyno[n];
Step step[n] => dyno[n];
|
How would you do this? _________________ "Let's make noise for peace." - Kijjaz |
|
|
Back to top
|
|
 |
Inventor
Stream Operator

Joined: Oct 13, 2007 Posts: 6221 Location: near Austin, Tx, USA
Audio files: 267
|
Posted: Wed Jul 02, 2008 6:16 pm Post subject:
|
 |
|
Never mind, I figured it out after a lot of trial and error. I don't need the initial conditions except on the input node and I'm using DelayA instead of LPF. Works great. _________________ "Let's make noise for peace." - Kijjaz |
|
|
Back to top
|
|
 |
Inventor
Stream Operator

Joined: Oct 13, 2007 Posts: 6221 Location: near Austin, Tx, USA
Audio files: 267
|
|
|
Back to top
|
|
 |
|