This project investigates the feasibility of deploying online learning algorithms on low-power, low-cost embedded systems. We explore this problem by implementing a mind-reading algorithm inspired by Shannon's Mind Reading Paper and SEER (a sequence extracting robot) on a MicroBit embedded system to play the Matching Pennies game. We compare the performance of heuristic-based and reinforcement learning strategies under various memory and processor constraints. Additionally, we conduct a user study to validate our approach against human opponents. Our results demonstrate that online learning algorithms can be effectively deployed on embedded systems, providing new avenues for expansion, such as machine learning functionality through pruning and quantization, risk-aversion quantification, and federated learning approaches.
This is a demo of the embedded reinforcement learning algorithm beating the user at a game of matching pennies over 20 trials, first to 10.
More code and files can be found on GitHub.