In [29]:
import nengo
import nengo.spa as spa
import numpy as np
dimensions = 64
vocab = spa.Vocabulary(dimensions)
model = spa.SPA(label='RadiusTest')
with model:
model.mem = spa.Memory(
dimensions=dimensions, subdimensions=16,
neurons_per_dimension=50, vocab=vocab)
for ens in model.mem.all_ensembles:
ens.radius = np.sqrt(float(ens.dimensions)/dimensions)
model.input = spa.Input(mem=lambda t: 'TEST' if t<0.5 else '0')
pMem = nengo.Probe(model.mem.state.output, synapse=0.03)
sim = nengo.Simulator(model)
sim.run(1)
plt.figure()
plt.plot(sim.trange(), spa.similarity(sim.data, pMem))
plt.legend(pMem.target.vocab.keys, fontsize=12)
plt.show()
In [ ]: