.. _sphx_glr_auto_examples_pong:
NEST-pong
=========
This program simultaneously trains two networks of spiking neurons to play
the classic game of Pong.
Requirements
------------
- NEST 3.3 or later
- NumPy
- Matplotlib
Instructions
------------
To start training between two networks with R-STDP plasticity, run
the ``run_simulations.py`` script. By default, one of the networks will
be stimulated with Gaussian white noise, showing that this is necessary
for learning under this paradigm. In addition to R-STDP, a learning rule
based on the ``stdp_dopamine_synapse`` and temporal difference learning
is implemented, see ``networks.py`` for details.
The learning progress and resulting game can be visualized with the
``generate_gif.py`` script; this requires the ``imageio`` package.
.. raw:: html
.. thumbnail-parent-div-open
.. raw:: html
.. only:: html
.. image:: /auto_examples/pong/images/thumb/sphx_glr_pong_thumb.png
:alt:
:ref:`sphx_glr_auto_examples_pong_pong.py`
.. raw:: html
Classes for running simulations of the classic game Pong
.. raw:: html
.. only:: html
.. image:: /auto_examples/pong/images/thumb/sphx_glr_run_simulations_thumb.png
:alt:
:ref:`sphx_glr_auto_examples_pong_run_simulations.py`
.. raw:: html
Application to train networks to play pong against each other
.. raw:: html
.. only:: html
.. image:: /auto_examples/pong/images/thumb/sphx_glr_generate_gif_thumb.png
:alt:
:ref:`sphx_glr_auto_examples_pong_generate_gif.py`
.. raw:: html
Script to visualize a simulated Pong game.
.. raw:: html
.. only:: html
.. image:: /auto_examples/pong/images/thumb/sphx_glr_networks_thumb.png
:alt:
:ref:`sphx_glr_auto_examples_pong_networks.py`
.. raw:: html
Classes to encapsulate the neuronal networks.
.. thumbnail-parent-div-close
.. raw:: html
.. toctree::
:hidden:
/auto_examples/pong/pong
/auto_examples/pong/run_simulations
/auto_examples/pong/generate_gif
/auto_examples/pong/networks