Neuromorphic Computation

The project I am working on is on neuromorphic computation. As part of the project, circuits that can implement architectures with neural inspiration will be developed using memristors. So what are memristors? They are an element of electronic circuits, sometimes being called "the fourth circuit element". What is different about them is that they can change their resistance according to the voltage, but can also "remember" their resistance after they are disconnected.

The reason why they can be used for neuromorphic learning is that the property just mentioned can be thought of as being similar to neuron synapses. Therefore they can be used in a model of learning in neural networks. Specifically, we will see if a pattern of neural spikes can be learned by neurons (one or more) using Spike Timing Dependent Plasticity, or STDP. What happens is that, when a neuron is given a repeating pattern, early firing will cause stronger synaptic weight and shorter postsynaptic latency. It will thus be more sensitive to the given pattern, thereby learning it. It must also be mentioned that the learning will occur in a completely unsupervised manner; there is no signal telling the neuron when to start to learn.

For the project, we will understand and use some initial code, and then improve it to work more efficiently and to allow different learning scenarios. More information on neuromorphic computing can be found here.