Functional programming paradigms in reinforcement learning problems (2022)
Machine learning, and more specifically, Reinforcement learning, has been one of the areas of computer science with the most promise and has advanced at an accelerated rate since its inception. However, these advancements have come at the cost of sacrificing best practices, especially in the libraries that compromise standards to gear them towards practical use. One such fact can be noticed in the use of Object-Oriented Programming in the development of Machine learning algorithms since stateful programs tend to be harder to test and grow efficiently and have an ever-growing amount of side effects in every process. This is why this thesis attempts to create a Reinforcement learning library that is purely functional using Racket.