A Reinforcement Learning Framework in Scala 3
summary
A small Scala 3 library implements tabular reinforcement learning for experimenting and comparing algorithms, with a working tic‑tac‑toe agent that learns via epsilon‑greedy 90/10 and a temporal‑difference updater that pushes 0.9 of the exploited state value back to previous states; terminal wins are seeded as 1, losses/draws 0 and others 0.5. It leverages Scala 3 opaque types and union types for lightweight typed values, compiles quickly, and currently lacks function approximation (planned next).
AI-written summary · about
chapters (7)
- 0:00Introduction and motivation
- 2:31What is reinforcement learning
- 7:44Multi-arm bandit example
- 13:37Scala 3 library design
- 18:10Tic-tac-toe demo
- 20:18Why Scala 3 features
- 25:53Future plans and resources
related talks
39mLet LLMs Wander: Engineering RL Environments
56mAn Introduction to Reinforcement Learning - Snake Your Way Out of a Paper Bag
16mMachine Learning with Matches and Confetti
29mFormal Specification and Testing for Reinforcement Learning
29mLearning Scalaz
29mReinforcement Learning in the Browser
15mAI Self - Learning Game Playing
28mDeep Reinforcement Learning: theory, intuition, code
