Reinforcement learning on an Arduino to control an arm
C++ TeX Python C Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


A couple of projects implementing reinforcement learning approaches to problems in arm control.

See the two joint readme or the six joint readme for more.

Also includes:

  • Logging utilities (written in Python) to parse data sent over serial
  • Plotting utilities


Reinforcement learning is a powerful and flexible approach to learning from interaction. Embedded reinforcement learning agents could be a key component to creating engaging, interactive experiences with everyday objects. However, RL methods have not typically been designed with memory constraints in mind. To investigate the issues embedded agents face, I wanted to see how common learning algorithms would work in the 2kb of SRAM available on an Atmel 328p (Arduino Uno/Pro Mini) or the 32kb available on an ARM M0(Teensy 3.2).