Code library simplifies learning reinforcement learning and control

RLLBC-Lib: An Educational Code Library for Reinforcement Learning and Learning-Based Control

Machine LearningArtificial Intelligence

Summary

Reinforcement learning is a complex method for teaching computers to make decisions, which can be hard to understand without hands-on examples. The authors created a code library called RLLBC-Lib to help learners easily explore both basic and advanced reinforcement learning techniques. Its design emphasizes clear connections between simple and deep learning methods, making the concepts easier to grasp. Furthermore, it provides useful examples and tools for creating graded programming assignments.

What this means in practice

  • For computer science instructors: Create interactive programming assignments that automatically grade reinforcement learning concepts for student coursework.
  • For ai software developers: Prototype and compare basic and deep reinforcement learning methods in a single consistent library to accelerate experimentation.

Authors

Bernd Frauenknecht, Emma Cramer, Artur Eisele, Paul Kruse, Lukas Kesper, Jonas Hertrampf, Ramil Sabirov, Jyotirmaya Patra, Johannes Berger, Paul Brunzema, Friedrich Solowjow, Sebastian Trimpe

Abstract

Reinforcement learning (RL) is an exciting concept as well as a remarkable success story worth sharing. However, RL builds on rather complex interactions between different objects that play out over several cycles. Such dynamics are often best explained with an easily accessible implementation. We present RLLBC-Lib, a carefully crafted code library with the goal of lowering the entry barrier for students and other learners of RL in the context of learning-based control. At its heart, RLLBC-Lib comprises a comprehensive library of tabular RL approaches to enforce a clear understanding of the theoretical foundations. A deep RL library follows the same design principles, underscoring the parallels between simple tabular and state-of-the-art deep RL approaches. Additionally, RLLBC-Lib provides a collection of implementations illustrating core RL principles and contrasting RL to other learning-based control approaches. Finally, RLLBC-Lib provides an ideal basis for creating programming assignments with automated grading.