Example SimulationsNeuro: E/I Microcircuit

Neuro: E/I Microcircuit

This scenario simulates a small network with excitatory (E) and inhibitory (I) neurons. It’s designed to show how inhibition can stabilize activity and how networks can exhibit emergent patterns you don’t see in a single neuron.

What you’re simulating

  • Excitatory neurons tend to amplify activity.
  • Inhibitory neurons counterbalance that activity.
  • Together, they can form a regime that is stable, oscillatory, or runaway depending on parameters.

Run it (web UI)

  1. Open Examples
  2. Choose Neuro → E/I Microcircuit
  3. Click Run

Run it (local SimUI)

From the B‑Simulant library repo:

pip install "bsim[ui]"
python examples/neuro_simui_demo.py --mode circuit --port 8765

Open http://localhost:8765/ui/.

What results to expect

  • Raster plots: which neurons spike and when (E vs I may differ).
  • Population rate: how overall activity rises, falls, or stabilizes.
  • Voltage traces: sample neurons show how spikes are generated.

Parameter presets (and what they mean)

GoalStepsdt (s)Expected resultWhat it means
Quick preview1,5000.0001Some activity + a rough rate curve.Useful to confirm the circuit is active, not to judge stability.
Standard run3,0000.0001Sustained spiking with a bounded population rate.A balanced regime: inhibition prevents runaway excitation.
Longer run20,0000.0001Stable, oscillatory, or drifting regimes become obvious.Long runs reveal whether “balance” holds or slowly fails.
Faster (less detail)3,0000.0002Activity may look noisier; timing less precise.Larger dt is faster but can blur timing-dependent effects.

How to interpret what you see

  • If activity dies out, inhibition or insufficient drive may be too strong.
  • If activity explodes, inhibition may be too weak (or excitation too strong).
  • If activity settles into a rhythm, you may be seeing a stable balance or oscillatory regime.

This example is a good mental model for “balance” in real circuits: inhibition isn’t just stopping spikes, it can shape and stabilize computation.