McCulloch & Pitts Neural Net Simulator

New Neuron

Delete

Flip

Delete

Toggle

Pause Step Restart

Load Save Use copy and paste here

How does this work?

Each neuron has input fibers and output fibers which connect it to other neurons. A neuron fires after it receives a number of signals from its input fibers, greater or equal to its threshold (the number written on it.) Fibers which have a circle at the end are called inhibitory fibers. If a neuron receives an inhibitory signal, it will not fire, regardless of how many signals it receives.

Create Neuron Right click and select "New Neuron"

Right click and select "New Neuron" Move Neuron Click and drag on a neuron.

Click and drag on a neuron. Delete Neuron Select a neuron and press the delete key.

Select a neuron and press the delete key. Flip Neuron Right click on a neuron and select "Flip".

Right click on a neuron and select "Flip". Set Threshold Select a neuron and press a number key (0-9).

Select a neuron and press a number key (0-9). Create Fiber Hover near the outside of a cell. Click and drag to create a fiber.

Hover near the outside of a cell. Click and drag to create a fiber. Delete Fiber Right click on a fiber and select "Delete".

Right click on a fiber and select "Delete". Toggle Inhibit/Excite Right click on a fiber and select "Toggle".

Examples

Memory Gate a switch which remembers when it has been turned on.

Unary Scaler produces one pulse for every N. However, it uses a lot of neurons.

Binary Scaler produces one pulse for every 2. But, it can be combined effeciently.

Chained Scaler produces one pulse for every 8. Chained binary scalar.

?d={YOUR URL}

What are McCulloch & Pitts Neural Nets?

In many of the examples, you need to get them started by turning on one of the input fibers by setting its threshold to 0. Most also come with a reset fiber which you can use to turn it off.You can share your own neural nets too! Copy the saved text to an online location (like a Gist) and append it to the end of the URL like so:. Contribute yours to the list

McCulloch and Pitts were researchers in neuroscience who became pioneers in artificial intelligence. In 1943 they created a computation model of how neurons fire in our brains. This project is a simulator of that model.

Even though these neural nets are inspired by biology, they aren't an accurate representation of their physical properties. They are a simplification for computational purposes. Marvin Minsky says:

It should be understood clearly that neither McCulloch, Pitts, nor the present writer considers these devices and machines to serve as accurate physiological models of nerve cells and tissues. They were not designed with that purpose in mind. They are designed for the representation and analysis of the logic of situations that arise in any discrete process, be it in brain, computer, or anywhere else. In theories which are more seriously intended to be brain models, the "neurons" have to be much more complicated. The real biological neuron is much more complex than our simple logical units for the evolution of nerve cells has led to very intricate and specialized organs.

Their work later became important in the Theory of Computation. In 1951, Kleene proved that the patterns which are recognizable by the neural nets are precisely the Regular Expressions. This is commonly known as Kleene's Theorem. Finite state machines and neural nets are computationally equivalent.

If you want to learn more, I recommend Marvin Minsky's book: Computation: Finite & Infinite.