Couplings Overview


Agents in odor world can be connected to other workspace components using couplings. The image below uses the graphical notation set up on the couplings page.

Couplings are mainly attached to agents. Consumers take in information and use it to control the agent via effectors, moving it and producing speech bubbles. Producers take information "coming out" of the agent's sensors and send it elsewhere in simbrain, e.g. to neurons or neuron groups.

One confusing point here is that sensors don't seem like "producers" (they are sensing things after all, which seems like consuming), and effectors don't seem like "consumers". That seems backwards. To address this, think of the agent as a body only, without a brain, and think of producers and consumers relative to that brain. When the agent smell's something, or hears something, it must send that information to the brain. So it is receiving information from the environmnt then producing that information for the brain. Similarly, effectors must receive information from the brain via a consumer, and then move the agent's body.

Currently, the most heavily used odor world couplings are the smell sensors / producers. Scalar sensor attributes are linked to particular components of the sensor vector associated with a smell sensor, and vector sensor sensors are associated with the whole sensor vector. In the example above we see the vector producer for the left smell sensor and also the scalar producer for its third component.

Effectors and the other sensor types are more straightforward. For example, a scalar consumer for straight movement will move the agent forward by an amount proportional to the producer's value. A tile sensor / producer will send out a scalar value whenever the agent is at a particular location in the world. The speech effector / consumer makes the agent say something in a speech bubble (this makes more sense when the agent is a person!). The hearing producer sends out a scalar single whenever the agent "hears" another agent say something with its speech effector.